diff --git "a/\346\225\264\347\220\206/CrossTestTable.py" "b/\346\225\264\347\220\206/CrossTestTable.py" new file mode 100644 index 0000000..3df368e --- /dev/null +++ "b/\346\225\264\347\220\206/CrossTestTable.py" @@ -0,0 +1,55 @@ +import numpy as np +import json +import cv2 +import shapely +import os +import argparse +import csv + +with open("CrossTest.csv", 'w', newline='') as csvfileOut: + detects = ['yolo-Result-best-rulebase', 'unet-Result-best-rulebase', 'marge'] + regres = ['RARETYPE1', 'RARERGB','RAREBINARY', 'dataColor.RARERGB', + 'CRNNTYPE1','CRNNRGB','CRNNBINARY', 'dataColor.CRNNRGB', + 'RosettaTYPE1','RosettaRGB','RosettaBINARY', 'dataColor.RosettaRGB', + 'STARNetTYPE1', 'STARNetRGB','STARNetBINARY', 'dataColor.STARNetRGB', + 'dataColor.NoneResNetBiLSTMCTCRGB', + "voteRGB", "vote2RGB"] + table = np.zeros((18, len(detects), len(regres))) + for filename in os.listdir("./CrossTest/"): + name, ext = os.path.splitext(filename) + + detect, regre, color = name.split("_") + regre = regre+color + print(filename, detect, regre) + with open(os.path.join('./CrossTest/', filename), newline='') as csvfile: + rows = csv.reader(csvfile, delimiter=':') + for i, row in enumerate(rows): + row = row[0].split(",") + if detect not in detects: + # print(detect, "not in ") + continue + if regre not in regres: + # print(regre, "not in ") + continue + table[i, detects.index(detect), regres.index(regre)] = float(row[-1]) + print("table", table.shape) + tableMean = np.mean(table, axis=0) + # print(detects) + # print(regres) + # print(table) + + writer = csv.writer(csvfileOut) + writer.writerow([""]+detects) + for i in range(len(tableMean[0])): + print(row) + row = tableMean[:,i] + writer.writerow([regres[i]]+row.tolist()) + + with open("CrossTestbest.csv", 'w', newline='') as csvfileOut2: + writer2 = csv.writer(csvfileOut2) + tableMaxIdx = np.argmax(table.reshape((18, len(detects)*len(regres))), axis=1) + tableMaxIdx = np.unravel_index(tableMaxIdx, (len(detects), len(regres))) + print(tableMaxIdx) + for i in range(len(tableMaxIdx[0])): + print(i, detects[tableMaxIdx[0][i]].split("-")[0], regres[tableMaxIdx[1][i]], table[i,tableMaxIdx[0][i],tableMaxIdx[1][i]]) + writer2.writerow(["FPK_"+str(i+1).zfill(2)+".jpg", detects[tableMaxIdx[0][i]].split("-")[0], regres[tableMaxIdx[1][i]], table[i,tableMaxIdx[0][i],tableMaxIdx[1][i]]]) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/LICENSE" "b/\346\225\264\347\220\206/EAST/LICENSE" new file mode 100644 index 0000000..865d458 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/LICENSE" @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 SakuraRiven + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git "a/\346\225\264\347\220\206/EAST/README.md" "b/\346\225\264\347\220\206/EAST/README.md" new file mode 100644 index 0000000..d750db8 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/README.md" @@ -0,0 +1,75 @@ +## Description +This is a PyTorch Re-Implementation of [EAST: An Efficient and Accurate Scene Text Detector](http://openaccess.thecvf.com/content_cvpr_2017/papers/Zhou_EAST_An_Efficient_CVPR_2017_paper.pdf). + +* Only RBOX part is implemented. +* Using dice loss instead of class-balanced cross-entropy loss. Some codes refer to [argman/EAST](https://github.com/argman/EAST) and [songdejia/EAST](https://github.com/songdejia/EAST) +* The pre-trained model provided achieves __82.79__ F-score on ICDAR 2015 Challenge 4 using only the 1000 images. see [here](http://rrc.cvc.uab.es/?ch=4&com=evaluation&view=method_info&task=1&m=52405) for the detailed results. + +| Model | Loss | Recall | Precision | F-score | +| - | - | - | - | - | +| Original | CE | 72.75 | 80.46 | 76.41 | +| Re-Implement | Dice | 81.27 | 84.36 | 82.79 | + +## Prerequisites +Only tested on +* Anaconda3 +* Python 3.7.1 +* PyTorch 1.0.1 +* Shapely 1.6.4 +* opencv-python 4.0.0.21 +* lanms 1.0.2 + +When running the script, if some module is not installed you will see a notification and installation instructions. __if you failed to install lanms, please update gcc and binutils__. The update under conda environment is: + + conda install -c omgarcia gcc-6 + conda install -c conda-forge binutils + +The original lanms code has a bug in ```normalize_poly``` that the ref vertices are not fixed when looping the p's ordering to calculate the minimum distance. We fixed this bug in [LANMS](https://github.com/SakuraRiven/LANMS) so that anyone could compile the correct lanms. However, this repo still uses the original lanms. + +## Installation +### 1. Clone the repo + +``` +git clone https://github.com/SakuraRiven/EAST.git +cd EAST +``` + +### 2. Data & Pre-Trained Model +* Download Train and Test Data: [ICDAR 2015 Challenge 4](http://rrc.cvc.uab.es/?ch=4&com=downloads). Cut the data into four parts: train_img, train_gt, test_img, test_gt. + +* Download pre-trained VGG16 from PyTorch: [VGG16](https://drive.google.com/open?id=1HgDuFGd2q77Z6DcUlDEfBZgxeJv4tald) and our trained EAST model: [EAST](https://drive.google.com/open?id=1AFABkJgr5VtxWnmBU3XcfLJvpZkC2TAg). Make a new folder ```pths``` and put the download pths into ```pths``` + +``` +mkdir pths +mv east_vgg16.pth vgg16_bn-6c64b313.pth pths/ +``` + +Here is an example: +``` +. +├── EAST +│   ├── evaluate +│   └── pths +└── ICDAR_2015 + ├── test_gt + ├── test_img + ├── train_gt + └── train_img +``` +## Train +Modify the parameters in ```train.py``` and run: +``` +CUDA_VISIBLE_DEVICES=0,1 python train.py +``` +## Detect +Modify the parameters in ```detect.py``` and run: +``` +CUDA_VISIBLE_DEVICES=0 python detect.py +``` +## Evaluate +* The evaluation scripts are from [ICDAR Offline evaluation](http://rrc.cvc.uab.es/?ch=4&com=mymethods&task=1) and have been modified to run successfully with Python 3.7.1. +* Change the ```evaluate/gt.zip``` if you test on other datasets. +* Modify the parameters in ```eval.py``` and run: +``` +CUDA_VISIBLE_DEVICES=0 python eval.py +``` diff --git "a/\346\225\264\347\220\206/EAST/__pycache__/dataset.cpython-36.pyc" "b/\346\225\264\347\220\206/EAST/__pycache__/dataset.cpython-36.pyc" new file mode 100644 index 0000000..53bfb1c Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/__pycache__/dataset.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/EAST/__pycache__/detect.cpython-36.pyc" "b/\346\225\264\347\220\206/EAST/__pycache__/detect.cpython-36.pyc" new file mode 100644 index 0000000..f3f7c7b Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/__pycache__/detect.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/EAST/__pycache__/model.cpython-36.pyc" "b/\346\225\264\347\220\206/EAST/__pycache__/model.cpython-36.pyc" new file mode 100644 index 0000000..d7bd543 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/__pycache__/model.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/EAST/dataCreate/createData3.py" "b/\346\225\264\347\220\206/EAST/dataCreate/createData3.py" new file mode 100644 index 0000000..1bfd8e9 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/dataCreate/createData3.py" @@ -0,0 +1,284 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import math +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] + + +def loadFonts(fontPath = "./fonts/"): + fonts = [] + count = 0 + count2 = 0 + for i in os.listdir(fontPath): + count2+=1 + for j in range(10, 60): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + count+=1 + print(count, count2) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor + +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + # textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + # hasNoStr = random.randint(0, 10) > 8 + # if(hasNoStr): + # return img, target, None + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + boxs = [] + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + + txtHeap = "" + for char in text: + twidth, theight = draw.textsize(char, font=font) + + if(nextX + twidth > endX): + boxs.append([baseX, nextY + ,nextX, nextY + ,nextX, nextY+textheight + ,baseX, nextY+textheight, txtHeap]) + txtHeap = "" + nextX = baseX + nextY += textheight + + if(nextY + textheight > endY): + # print("break") + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + txtHeap += char + if (drawUnderLine): + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + # ttwidth, ttheight = draw.textsize(char, font=font) + if(nextY + textheight > endY): + print("break nextY") + break + if(nextX + twidth > endX): + print("break nextX") + break + # target[nextY : nextY + textheight, nextX : nextX + twidth, :] = 255 + nextX += twidth + if(len(txtHeap) != 0): + boxs.append([baseX, nextY + ,nextX, nextY + ,nextX, nextY+textheight + ,baseX, nextY+textheight, txtHeap]) + + img = np.array(img_pil) + + img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + if(random.randint(0, 10) > 5): + angle = 0 + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + + # targetTemp = rotate(target[baseY:endY ,baseX:endX], angle, (0,0,0)) + # ret, targetTemp = cv2.threshold(targetTemp,254,255,cv2.THRESH_BINARY) + # target[baseY:endY, baseX:endX] = np.expand_dims(targetTemp, axis = 2) + + # print(targetTemp.shape) + # contours, hierarchy = cv2.findContours(targetTemp,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) + # if(len(contours) > 1): + # print(error) + # exit() + + # for contour in contours: + # x, y, w, h = cv2.boundingRect(contour) + # cv2.rectangle(targetTemp, (baseX+x, baseY+y), (baseX+x + w, baseY+y + h), (0, 0, 255), 2) + for box in boxs: + box[0], box[1] = get_point(box[0], box[1], (baseX+endX)//2, (baseY+endY)//2, angle) + box[2], box[3] = get_point(box[2], box[3], (baseX+endX)//2, (baseY+endY)//2, angle) + box[4], box[5] = get_point(box[4], box[5], (baseX+endX)//2, (baseY+endY)//2, angle) + box[6], box[7] = get_point(box[6], box[7], (baseX+endX)//2, (baseY+endY)//2, angle) + + return img, target, boxs +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(80, 600) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 1), np.uint8) + img[:,:] = backgroundColor[:] #圖片背景顏色 + boxs = [] + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target, boxsXY = drawText(img, target, (x, y), fonts, gridSize, gridColor) + if(boxsXY): + boxs += boxsXY + drawLine(img) + return img, target, boxs +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./train_img/" + pathTargetStore = "./train_mask/" + pathTargetStoreTxt = "./train_gt/" + maxImgCount = 20000 + fonts = loadFonts() + for i in range(1, maxImgCount+1): + print(i, "/", maxImgCount) + img, target, boxs = createImg(fonts) + cv2.imwrite(pathImgStore + "img_" + str(i) + ".png", img) + # cv2.imwrite(pathTargetStore + "gt_img_" + str(i)+ ".png", target) + + data = [] + for box in boxs: + data.append(",".join([str(num) for num in box]) + "\n") + # print(data) + with open(pathTargetStoreTxt + "gt_img_" + str(i)+ ".txt", "w", encoding='UTF-8') as f: + f.writelines(data) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/dataCreate/createData4.py" "b/\346\225\264\347\220\206/EAST/dataCreate/createData4.py" new file mode 100644 index 0000000..1c17622 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/dataCreate/createData4.py" @@ -0,0 +1,285 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import math +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] +def loadFonts(fontPath = "./fonts/"): + fonts = [] + count = 0 + count2 = 0 + for i in os.listdir(fontPath): + count2+=1 + for j in range(10, 60): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + count+=1 + print(count, count2) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + # textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + # hasNoStr = random.randint(0, 10) > 8 + # if(hasNoStr): + # return img, target, None + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + startX = nextX + startY = nextY + maxX = 0 + + txtHeap = "" + for char in text: + twidth, theight = draw.textsize(char, font=font) + + if(nextX + twidth > endX): + maxX = nextX + nextX = baseX + nextY += textheight + + if(nextY + textheight > endY): + # print("break") + nextY -= textheight + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + txtHeap += char + if (drawUnderLine): + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + # ttwidth, ttheight = draw.textsize(char, font=font) + if(nextY + textheight > endY): + print("break nextY") + break + if(nextX + twidth > endX): + print("break nextX") + break + target[nextY : nextY + textheight, nextX : nextX + twidth, :] = 255 + nextX += twidth + + + img = np.array(img_pil) + + img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + + targetTemp = rotate(target[baseY:endY ,baseX:endX], angle, (0,0,0)) + # ret, targetTemp = cv2.threshold(targetTemp,254,255,cv2.THRESH_BINARY) + target[baseY:endY, baseX:endX] = np.expand_dims(targetTemp, axis = 2) + + # print(targetTemp.shape) + contours, hierarchy = cv2.findContours(targetTemp,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) + if(len(contours) > 1): + print(error) + exit() + + for contour in contours: + x, y, w, h = cv2.boundingRect(contour) + cv2.rectangle(targetTemp, (baseX+x, baseY+y), (baseX+x + w, baseY+y + h), (0, 0, 255), 2) + maxX = nextX if nextX>maxX else maxX + returnBox = [startX, startY + ,startX, nextY+textheight + ,maxX, nextY+textheight + ,maxX, startY, txtHeap] + returnBox[0], returnBox[1] = get_point(returnBox[0], returnBox[1], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[2], returnBox[3] = get_point(returnBox[2], returnBox[3], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[4], returnBox[5] = get_point(returnBox[4], returnBox[5], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[6], returnBox[7] = get_point(returnBox[6], returnBox[7], (baseX+endX)//2, (baseY+endY)//2, angle) + + x1 = min(returnBox[0], returnBox[2], returnBox[4], returnBox[6]) + x2 = max(returnBox[0], returnBox[2], returnBox[4], returnBox[6]) + y1 = min(returnBox[1], returnBox[3], returnBox[5], returnBox[7]) + y2 = max(returnBox[1], returnBox[3], returnBox[5], returnBox[7]) + + returnBox = [x1, y1, x1, y2, x2, y2, x2, y1] + + return img, target, returnBox +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(100, 600) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 1), np.uint8) + img[:,:] = backgroundColor[:] #圖片背景顏色 + boxs = [] + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target, boxsXY = drawText(img, target, (x, y), fonts, gridSize, gridColor) + if(boxsXY): + boxs.append(boxsXY) + drawLine(img) + return img, target, boxs +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./block/train_img/" + pathTargetStore = "./block/train_mask/" + pathTargetStoreTxt = "./block/train_gt/" + maxImgCount = 100000 + fonts = loadFonts() + for i in range(1, maxImgCount+1): + print(i, "/", maxImgCount) + img, target, boxs = createImg(fonts) + cv2.imwrite(pathImgStore + "img_" + str(i) + ".png", img) + # cv2.imwrite(pathTargetStore + "gt_img_" + str(i)+ ".png", target) + + data = [] + for box in boxs: + data.append(",".join([str(num) for num in box]) + "\n") + # print(data) + with open(pathTargetStoreTxt + "gt_img_" + str(i)+ ".txt", "w", encoding='UTF-8') as f: + f.writelines(data) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/dataCreate/show.py" "b/\346\225\264\347\220\206/EAST/dataCreate/show.py" new file mode 100644 index 0000000..8fd712f --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/dataCreate/show.py" @@ -0,0 +1,49 @@ +import os +import torch +import cv2 +import numpy as np +from PIL import Image, ImageDraw +def extract_vertices(lines): + '''extract vertices info from txt lines + Input: + lines : list of string info + Output: + vertices: vertices of text regions + labels : 1->valid, 0->ignore, + ''' + labels = [] + vertices = [] + for line in lines: + vertices.append(list(map(int,line.rstrip('\n').lstrip('\ufeff').split(',')[:8]))) + label = 0 if '###' in line else 1 + labels.append(label) + return np.array(vertices), np.array(labels) +def plot_boxes(img, boxes): + '''plot boxes on image + ''' + if boxes is None: + return img + + draw = ImageDraw.Draw(img) + for box in boxes: + draw.polygon([box[0], box[1], box[2], box[3], box[4], box[5], box[6], box[7]], outline=(0,255,0)) + # print(box) + return img + +img_flooder_path = './block/train_img/' +txt_flooder_path = './block/train_gt/' +test_flooder_path = './block/train_test/' +for img_filename in os.listdir(img_flooder_path): + print(img_filename) + name, ext = os.path.splitext(img_filename) + img_path = os.path.join(img_flooder_path, img_filename) + txt_path = os.path.join(txt_flooder_path, "gt_"+name+".txt") + test_path = os.path.join(test_flooder_path, img_filename) + + img = Image.open(img_path) + + with open(txt_path, 'r', encoding='UTF-8') as f: + lines = f.readlines() + boxes = extract_vertices(lines)[0] + plot_img = plot_boxes(img, boxes) + plot_img.save(test_path) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/dataset.py" "b/\346\225\264\347\220\206/EAST/dataset.py" new file mode 100644 index 0000000..b518dd3 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/dataset.py" @@ -0,0 +1,409 @@ +from shapely.geometry import Polygon +import numpy as np +import cv2 +from PIL import Image +import math +import os +import torch +import torchvision.transforms as transforms +from torch.utils import data + + +def cal_distance(x1, y1, x2, y2): + '''calculate the Euclidean distance''' + return math.sqrt((x1 - x2)**2 + (y1 - y2)**2) + + +def move_points(vertices, index1, index2, r, coef): + '''move the two points to shrink edge + Input: + vertices: vertices of text region + index1 : offset of point1 + index2 : offset of point2 + r : [r1, r2, r3, r4] in paper + coef : shrink ratio in paper + Output: + vertices: vertices where one edge has been shinked + ''' + index1 = index1 % 4 + index2 = index2 % 4 + x1_index = index1 * 2 + 0 + y1_index = index1 * 2 + 1 + x2_index = index2 * 2 + 0 + y2_index = index2 * 2 + 1 + + r1 = r[index1] + r2 = r[index2] + length_x = vertices[x1_index] - vertices[x2_index] + length_y = vertices[y1_index] - vertices[y2_index] + length = cal_distance(vertices[x1_index], vertices[y1_index], vertices[x2_index], vertices[y2_index]) + if length > 1: + ratio = (r1 * coef) / length + vertices[x1_index] += ratio * (-length_x) + vertices[y1_index] += ratio * (-length_y) + ratio = (r2 * coef) / length + vertices[x2_index] += ratio * length_x + vertices[y2_index] += ratio * length_y + return vertices + + +def shrink_poly(vertices, coef=0.3): + '''shrink the text region + Input: + vertices: vertices of text region + coef : shrink ratio in paper + Output: + v : vertices of shrinked text region + ''' + x1, y1, x2, y2, x3, y3, x4, y4 = vertices + r1 = min(cal_distance(x1,y1,x2,y2), cal_distance(x1,y1,x4,y4)) + r2 = min(cal_distance(x2,y2,x1,y1), cal_distance(x2,y2,x3,y3)) + r3 = min(cal_distance(x3,y3,x2,y2), cal_distance(x3,y3,x4,y4)) + r4 = min(cal_distance(x4,y4,x1,y1), cal_distance(x4,y4,x3,y3)) + r = [r1, r2, r3, r4] + + # obtain offset to perform move_points() automatically + if cal_distance(x1,y1,x2,y2) + cal_distance(x3,y3,x4,y4) > \ + cal_distance(x2,y2,x3,y3) + cal_distance(x1,y1,x4,y4): + offset = 0 # two longer edges are (x1y1-x2y2) & (x3y3-x4y4) + else: + offset = 1 # two longer edges are (x2y2-x3y3) & (x4y4-x1y1) + + v = vertices.copy() + v = move_points(v, 0 + offset, 1 + offset, r, coef) + v = move_points(v, 2 + offset, 3 + offset, r, coef) + v = move_points(v, 1 + offset, 2 + offset, r, coef) + v = move_points(v, 3 + offset, 4 + offset, r, coef) + return v + + +def get_rotate_mat(theta): + '''positive theta value means rotate clockwise''' + return np.array([[math.cos(theta), -math.sin(theta)], [math.sin(theta), math.cos(theta)]]) + + +def rotate_vertices(vertices, theta, anchor=None): + '''rotate vertices around anchor + Input: + vertices: vertices of text region + theta : angle in radian measure + anchor : fixed position during rotation + Output: + rotated vertices + ''' + v = vertices.reshape((4,2)).T + if anchor is None: + anchor = v[:,:1] + rotate_mat = get_rotate_mat(theta) + res = np.dot(rotate_mat, v - anchor) + return (res + anchor).T.reshape(-1) + + +def get_boundary(vertices): + '''get the tight boundary around given vertices + Input: + vertices: vertices of text region + Output: + the boundary + ''' + x1, y1, x2, y2, x3, y3, x4, y4 = vertices + x_min = min(x1, x2, x3, x4) + x_max = max(x1, x2, x3, x4) + y_min = min(y1, y2, y3, y4) + y_max = max(y1, y2, y3, y4) + return x_min, x_max, y_min, y_max + + +def cal_error(vertices): + '''default orientation is x1y1 : left-top, x2y2 : right-top, x3y3 : right-bot, x4y4 : left-bot + calculate the difference between the vertices orientation and default orientation + Input: + vertices: vertices of text region + Output: + err : difference measure + ''' + x_min, x_max, y_min, y_max = get_boundary(vertices) + x1, y1, x2, y2, x3, y3, x4, y4 = vertices + err = cal_distance(x1, y1, x_min, y_min) + cal_distance(x2, y2, x_max, y_min) + \ + cal_distance(x3, y3, x_max, y_max) + cal_distance(x4, y4, x_min, y_max) + return err + + +def find_min_rect_angle(vertices): + '''find the best angle to rotate poly and obtain min rectangle + Input: + vertices: vertices of text region + Output: + the best angle + ''' + angle_interval = 1 + angle_list = list(range(-90, 90, angle_interval)) + area_list = [] + for theta in angle_list: + rotated = rotate_vertices(vertices, theta / 180 * math.pi) + x1, y1, x2, y2, x3, y3, x4, y4 = rotated + temp_area = (max(x1, x2, x3, x4) - min(x1, x2, x3, x4)) * \ + (max(y1, y2, y3, y4) - min(y1, y2, y3, y4)) + area_list.append(temp_area) + + sorted_area_index = sorted(list(range(len(area_list))), key=lambda k : area_list[k]) + min_error = float('inf') + best_index = -1 + rank_num = 10 + # find the best angle with correct orientation + for index in sorted_area_index[:rank_num]: + rotated = rotate_vertices(vertices, angle_list[index] / 180 * math.pi) + temp_error = cal_error(rotated) + if temp_error < min_error: + min_error = temp_error + best_index = index + return angle_list[best_index] / 180 * math.pi + + +def is_cross_text(start_loc, length, vertices): + '''check if the crop image crosses text regions + Input: + start_loc: left-top position + length : length of crop image + vertices : vertices of text regions + Output: + True if crop image crosses text region + ''' + if vertices.size == 0: + return False + start_w, start_h = start_loc + a = np.array([start_w, start_h, start_w + length, start_h, \ + start_w + length, start_h + length, start_w, start_h + length]).reshape((4,2)) + p1 = Polygon(a).convex_hull + for vertice in vertices: + p2 = Polygon(vertice.reshape((4,2))).convex_hull + inter = p1.intersection(p2).area + if 0.01 <= inter / p2.area <= 0.99: + return True + return False + + +def crop_img(img, vertices, labels, length): + '''crop img patches to obtain batch and augment + Input: + img : PIL Image + vertices : vertices of text regions + labels : 1->valid, 0->ignore, + length : length of cropped image region + Output: + region : cropped image region + new_vertices: new vertices in cropped region + ''' + h, w = img.height, img.width + # confirm the shortest side of image >= length + if h >= w and w < length: + img = img.resize((length, int(h * length / w)), Image.BILINEAR) + elif h < w and h < length: + img = img.resize((int(w * length / h), length), Image.BILINEAR) + ratio_w = img.width / w + ratio_h = img.height / h + assert(ratio_w >= 1 and ratio_h >= 1) + + new_vertices = np.zeros(vertices.shape) + if vertices.size > 0: + new_vertices[:,[0,2,4,6]] = vertices[:,[0,2,4,6]] * ratio_w + new_vertices[:,[1,3,5,7]] = vertices[:,[1,3,5,7]] * ratio_h + + # find random position + remain_h = img.height - length + remain_w = img.width - length + flag = True + cnt = 0 + while flag and cnt < 1000: + cnt += 1 + start_w = int(np.random.rand() * remain_w) + start_h = int(np.random.rand() * remain_h) + try: + flag = is_cross_text([start_w, start_h], length, new_vertices[labels==1,:]) + except Exception as e: + print(new_vertices, labels, new_vertices.shape) + raise + + box = (start_w, start_h, start_w + length, start_h + length) + region = img.crop(box) + if new_vertices.size == 0: + return region, new_vertices + + new_vertices[:,[0,2,4,6]] -= start_w + new_vertices[:,[1,3,5,7]] -= start_h + return region, new_vertices + + +def rotate_all_pixels(rotate_mat, anchor_x, anchor_y, length): + '''get rotated locations of all pixels for next stages + Input: + rotate_mat: rotatation matrix + anchor_x : fixed x position + anchor_y : fixed y position + length : length of image + Output: + rotated_x : rotated x positions + rotated_y : rotated y positions + ''' + x = np.arange(length) + y = np.arange(length) + x, y = np.meshgrid(x, y) + x_lin = x.reshape((1, x.size)) + y_lin = y.reshape((1, x.size)) + coord_mat = np.concatenate((x_lin, y_lin), 0) + rotated_coord = np.dot(rotate_mat, coord_mat - np.array([[anchor_x], [anchor_y]])) + \ + np.array([[anchor_x], [anchor_y]]) + rotated_x = rotated_coord[0, :].reshape(x.shape) + rotated_y = rotated_coord[1, :].reshape(y.shape) + return rotated_x, rotated_y + + +def adjust_height(img, vertices, ratio=0.2): + '''adjust height of image to aug data + Input: + img : PIL Image + vertices : vertices of text regions + ratio : height changes in [0.8, 1.2] + Output: + img : adjusted PIL Image + new_vertices: adjusted vertices + ''' + ratio_h = 1 + ratio * (np.random.rand() * 2 - 1) + old_h = img.height + new_h = int(np.around(old_h * ratio_h)) + img = img.resize((img.width, new_h), Image.BILINEAR) + + new_vertices = vertices.copy() + if vertices.size > 0: + new_vertices[:,[1,3,5,7]] = vertices[:,[1,3,5,7]] * (new_h / old_h) + return img, new_vertices + + +def rotate_img(img, vertices, angle_range=10): + '''rotate image [-10, 10] degree to aug data + Input: + img : PIL Image + vertices : vertices of text regions + angle_range : rotate range + Output: + img : rotated PIL Image + new_vertices: rotated vertices + ''' + center_x = (img.width - 1) / 2 + center_y = (img.height - 1) / 2 + angle = angle_range * (np.random.rand() * 2 - 1) + img = img.rotate(angle, Image.BILINEAR) + new_vertices = np.zeros(vertices.shape) + for i, vertice in enumerate(vertices): + new_vertices[i,:] = rotate_vertices(vertice, -angle / 180 * math.pi, np.array([[center_x],[center_y]])) + return img, new_vertices + + +def get_score_geo(img, vertices, labels, scale, length): + '''generate score gt and geometry gt + Input: + img : PIL Image + vertices: vertices of text regions + labels : 1->valid, 0->ignore, + scale : feature map / image + length : image length + Output: + score gt, geo gt, ignored + ''' + score_map = np.zeros((int(img.height * scale), int(img.width * scale), 1), np.float32) + geo_map = np.zeros((int(img.height * scale), int(img.width * scale), 5), np.float32) + ignored_map = np.zeros((int(img.height * scale), int(img.width * scale), 1), np.float32) + + index = np.arange(0, length, int(1/scale)) + index_x, index_y = np.meshgrid(index, index) + ignored_polys = [] + polys = [] + + for i, vertice in enumerate(vertices): + if labels[i] == 0: + ignored_polys.append(np.around(scale * vertice.reshape((4,2))).astype(np.int32)) + continue + + poly = np.around(scale * shrink_poly(vertice).reshape((4,2))).astype(np.int32) # scaled & shrinked + polys.append(poly) + temp_mask = np.zeros(score_map.shape[:-1], np.float32) + cv2.fillPoly(temp_mask, [poly], 1) + + theta = find_min_rect_angle(vertice) + rotate_mat = get_rotate_mat(theta) + + rotated_vertices = rotate_vertices(vertice, theta) + x_min, x_max, y_min, y_max = get_boundary(rotated_vertices) + rotated_x, rotated_y = rotate_all_pixels(rotate_mat, vertice[0], vertice[1], length) + + d1 = rotated_y - y_min + d1[d1<0] = 0 + d2 = y_max - rotated_y + d2[d2<0] = 0 + d3 = rotated_x - x_min + d3[d3<0] = 0 + d4 = x_max - rotated_x + d4[d4<0] = 0 + geo_map[:,:,0] += d1[index_y, index_x] * temp_mask + geo_map[:,:,1] += d2[index_y, index_x] * temp_mask + geo_map[:,:,2] += d3[index_y, index_x] * temp_mask + geo_map[:,:,3] += d4[index_y, index_x] * temp_mask + geo_map[:,:,4] += theta * temp_mask + + cv2.fillPoly(ignored_map, ignored_polys, 1) + cv2.fillPoly(score_map, polys, 1) + return torch.Tensor(score_map).permute(2,0,1), torch.Tensor(geo_map).permute(2,0,1), torch.Tensor(ignored_map).permute(2,0,1) + + +def extract_vertices(lines): + '''extract vertices info from txt lines + Input: + lines : list of string info + Output: + vertices: vertices of text regions + labels : 1->valid, 0->ignore, + ''' + labels = [] + vertices = [] + for line in lines: + vertices.append(list(map(int,line.rstrip('\n').lstrip('\ufeff').split(',')[:8]))) + label = 0 if '###' in line else 1 + labels.append(label) + return np.array(vertices), np.array(labels) + + +class custom_dataset(data.Dataset): + def __init__(self, img_path, gt_path, scale=0.25, length=512): + super(custom_dataset, self).__init__() + self.img_files = [os.path.join(img_path, img_file) for img_file in sorted(os.listdir(img_path))] + self.gt_files = [os.path.join(gt_path, gt_file) for gt_file in sorted(os.listdir(gt_path))] + self.scale = scale + self.length = length + + def __len__(self): + return len(self.img_files) + + def __getitem__(self, index): + with open(self.gt_files[index], 'r', encoding='UTF-8') as f: + lines = f.readlines() + vertices, labels = extract_vertices(lines) + + + img = Image.open(self.img_files[index]) + img, vertices = adjust_height(img, vertices) + img, vertices = rotate_img(img, vertices) + try: + img, vertices = crop_img(img, vertices, labels, self.length) + except Exception as e: + print(lines) + print(labels) + print(self.gt_files[index]) + raise + + transform = transforms.Compose([transforms.ColorJitter(0.5, 0.5, 0.5, 0.25), \ + transforms.ToTensor(), \ + transforms.Normalize(mean=(0.5,0.5,0.5),std=(0.5,0.5,0.5))]) + + score_map, geo_map, ignored_map = get_score_geo(img, vertices, labels, self.scale, self.length) + return transform(img), score_map, geo_map, ignored_map + diff --git "a/\346\225\264\347\220\206/EAST/detect.py" "b/\346\225\264\347\220\206/EAST/detect.py" new file mode 100644 index 0000000..c13e9d6 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/detect.py" @@ -0,0 +1,203 @@ +import torch +from torchvision import transforms +from PIL import Image, ImageDraw +from model import EAST +import os +from dataset import get_rotate_mat +import numpy as np +import lanms +from PIL import ImageFont + +def resize_img(img): + '''resize image to be divisible by 32 + ''' + w, h = img.size + resize_w = w + resize_h = h + + resize_h = resize_h if resize_h % 32 == 0 else int(resize_h / 32) * 32 + resize_w = resize_w if resize_w % 32 == 0 else int(resize_w / 32) * 32 + img = img.resize((resize_w, resize_h), Image.BILINEAR) + ratio_h = resize_h / h + ratio_w = resize_w / w + + return img, ratio_h, ratio_w + + +def load_pil(img): + '''convert PIL Image to torch.Tensor + ''' + t = transforms.Compose([transforms.ToTensor(), transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])]) + return t(img).unsqueeze(0) + + +def is_valid_poly(res, score_shape, scale): + '''check if the poly in image scope + Input: + res : restored poly in original image + score_shape: score map shape + scale : feature map -> image + Output: + True if valid + ''' + cnt = 0 + for i in range(res.shape[1]): + if res[0,i] < 0 or res[0,i] >= score_shape[1] * scale or \ + res[1,i] < 0 or res[1,i] >= score_shape[0] * scale: + cnt += 1 + return True if cnt <= 1 else False + + +def restore_polys(valid_pos, valid_geo, score_shape, scale=4): + '''restore polys from feature maps in given positions + Input: + valid_pos : potential text positions + valid_geo : geometry in valid_pos + score_shape: shape of score map + scale : image / feature map + Output: + restored polys , index + ''' + polys = [] + index = [] + valid_pos *= scale + d = valid_geo[:4, :] # 4 x N + angle = valid_geo[4, :] # N, + + for i in range(valid_pos.shape[0]): + x = valid_pos[i, 0] + y = valid_pos[i, 1] + y_min = y - d[0, i] + y_max = y + d[1, i] + x_min = x - d[2, i] + x_max = x + d[3, i] + rotate_mat = get_rotate_mat(-angle[i]) + + temp_x = np.array([[x_min, x_max, x_max, x_min]]) - x + temp_y = np.array([[y_min, y_min, y_max, y_max]]) - y + coordidates = np.concatenate((temp_x, temp_y), axis=0) + res = np.dot(rotate_mat, coordidates) + res[0,:] += x + res[1,:] += y + + if is_valid_poly(res, score_shape, scale): + index.append(i) + polys.append([res[0,0], res[1,0], res[0,1], res[1,1], res[0,2], res[1,2],res[0,3], res[1,3]]) + return np.array(polys), index + + +def get_boxes(score, geo, score_thresh=0.9, nms_thresh=0.2): + '''get boxes from feature map + Input: + score : score map from model + geo : geo map from model + score_thresh: threshold to segment score map + nms_thresh : threshold in nms + Output: + boxes : final polys + ''' + score = score[0,:,:] + xy_text = np.argwhere(score > score_thresh) # n x 2, format is [r, c] + if xy_text.size == 0: + return None + + xy_text = xy_text[np.argsort(xy_text[:, 0])] + valid_pos = xy_text[:, ::-1].copy() # n x 2, [x, y] + valid_geo = geo[:, xy_text[:, 0], xy_text[:, 1]] # 5 x n + polys_restored, index = restore_polys(valid_pos, valid_geo, score.shape) + if polys_restored.size == 0: + return None + + boxes = np.zeros((polys_restored.shape[0], 9), dtype=np.float32) + boxes[:, :8] = polys_restored + boxes[:, 8] = score[xy_text[index, 0], xy_text[index, 1]] + boxes = lanms.merge_quadrangle_n9(boxes.astype('float32'), nms_thresh) + return boxes + + +def adjust_ratio(boxes, ratio_w, ratio_h): + '''refine boxes + Input: + boxes : detected polys + ratio_w: ratio of width + ratio_h: ratio of height + Output: + refined boxes + ''' + if boxes is None or boxes.size == 0: + return None + boxes[:,[0,2,4,6]] /= ratio_w + boxes[:,[1,3,5,7]] /= ratio_h + return np.around(boxes) + + + +def detect(img, model, device): + '''detect text regions of img using model + Input: + img : PIL Image + model : detection model + device: gpu if gpu is available + Output: + detected polys + ''' + img, ratio_h, ratio_w = resize_img(img) + with torch.no_grad(): + score, geo = model(load_pil(img).to(device)) + boxes = get_boxes(score.squeeze(0).cpu().numpy(), geo.squeeze(0).cpu().numpy()) + return adjust_ratio(boxes, ratio_w, ratio_h) + +font = ImageFont.load_default() +def plot_boxes(img, boxes): + '''plot boxes on image + ''' + if boxes is None: + return img + + draw = ImageDraw.Draw(img) + for box in boxes: + draw.polygon([box[0], box[1], box[2], box[3], box[4], box[5], box[6], box[7]], outline=(0,255,0)) + # print(box) + draw.text((box[0], box[1]), str(box[8]), (0,0,255), font=font) + return img + + +def detect_dataset(model, device, test_img_path, submit_path): + '''detection on whole dataset, save .txt results in submit_path + Input: + model : detection model + device : gpu if gpu is available + test_img_path: dataset path + submit_path : submit result for evaluation + ''' + img_files = os.listdir(test_img_path) + img_files = sorted([os.path.join(test_img_path, img_file) for img_file in img_files]) + + for i, img_file in enumerate(img_files): + print('evaluating {} image'.format(i), end='\r') + boxes = detect(Image.open(img_file), model, device) + seq = [] + if boxes is not None: + seq.extend([','.join([str(int(b)) for b in box[:-1]]) + '\n' for box in boxes]) + name, ext = os.path.splitext(img_file) + # print('res_' + os.path.basename(img_file).replace(ext,'.txt'), ext) + with open(os.path.join(submit_path, 'res_' + os.path.basename(img_file).replace(ext,'.txt')), 'w') as f: + f.writelines(seq) + + +if __name__ == '__main__': + img_path = './data/test_img/img_2.jpg' + model_path = './pths/east_vgg16.pth' + res_img = './res.bmp' + device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") + model = EAST().to(device) + model.load_state_dict(torch.load(model_path)) + model.eval() + img = Image.open(img_path) + + boxes = detect(img, model, device) + # print(boxes) + plot_img = plot_boxes(img, boxes) + plot_img.save(res_img) + + diff --git "a/\346\225\264\347\220\206/EAST/eval.py" "b/\346\225\264\347\220\206/EAST/eval.py" new file mode 100644 index 0000000..37a173f --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/eval.py" @@ -0,0 +1,44 @@ +import time +import torch +import subprocess +import os +from model import EAST +from detect import detect_dataset +import numpy as np +import shutil +import zipfile + + +def eval_model(model_name, test_img_path, submit_path, save_flag=True): + if os.path.exists(submit_path): + shutil.rmtree(submit_path) + os.mkdir(submit_path) + + device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") + model = EAST(False).to(device) + model.load_state_dict(torch.load(model_name)) + model.eval() + + start_time = time.time() + detect_dataset(model, device, test_img_path, submit_path) + + with zipfile.ZipFile('submit.zip', 'w') as zf: + for filename in os.listdir(submit_path): + zf.write(os.path.join(submit_path, filename), filename) + + + res = subprocess.getoutput('python ./evaluate/script.py –g=./dataCreate/test_gt.zip –s=./submit.zip') + print(res) + os.remove('./submit.zip') + # print('eval time is {}'.format(time.time()-start_time)) + + if not save_flag: + shutil.rmtree(submit_path) + + +if __name__ == '__main__': + model_name = './pths/Create/model_epoch_8.pth' + test_img_path = os.path.abspath('./dataCreate/test_img/') + submit_path = './submit' + eval_model(model_name, test_img_path, submit_path) + diff --git "a/\346\225\264\347\220\206/EAST/evalAll.py" "b/\346\225\264\347\220\206/EAST/evalAll.py" new file mode 100644 index 0000000..8d1ed5e --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/evalAll.py" @@ -0,0 +1,47 @@ +import time +import torch +import subprocess +import os +from model import EAST +from detect import detect_dataset +import numpy as np +import shutil +import zipfile + + +def eval_model(model_name, test_img_path, submit_path, save_flag=True): + if os.path.exists(submit_path): + shutil.rmtree(submit_path) + os.mkdir(submit_path) + + device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") + model = EAST(False).to(device) + model.load_state_dict(torch.load(model_name)) + model.eval() + + start_time = time.time() + detect_dataset(model, device, test_img_path, submit_path) + with zipfile.ZipFile('submit.zip', 'w') as zf: + for filename in os.listdir(submit_path): + zf.write(os.path.join(submit_path, filename), filename) + # res = subprocess.getoutput('python ./evaluate/script.py –g=./dataCreate/test_gt.zip –s=./submit.zip') + res = subprocess.getoutput('python ./evaluate/script.py –g=./evaluate/gt.zip –s=./submit.zip') + print(res) + os.remove('./submit.zip') + print('eval time is {}'.format(time.time()-start_time)) + + if not save_flag: + shutil.rmtree(submit_path) + + +if __name__ == '__main__': + model_dir = "./pths/Create/" + for model_name in os.listdir(model_dir): + model_path = os.path.join(model_dir, model_name) + print(model_path) + # test_img_path = os.path.abspath('./dataCreate/test_img/') + test_img_path = os.path.abspath('./data/test_img/') + submit_path = './submit' + eval_model(model_path, test_img_path, submit_path) + +#cl adaptor.cpp ./include/clipper/clipper.cpp /I ./include /I "C:\Users\2504\AppData\Local\Programs\Python\Python35\include" /LD /Fe:adaptor.pyd /link/LIBPATH:"C:\Users\2504\AppData\Local\Programs\Python\Python35\libs" \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/evaluate/__pycache__/rrc_evaluation_funcs.cpython-36.pyc" "b/\346\225\264\347\220\206/EAST/evaluate/__pycache__/rrc_evaluation_funcs.cpython-36.pyc" new file mode 100644 index 0000000..16c1f80 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/evaluate/__pycache__/rrc_evaluation_funcs.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/EAST/evaluate/gt.zip" "b/\346\225\264\347\220\206/EAST/evaluate/gt.zip" new file mode 100644 index 0000000..aaa2ac3 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/evaluate/gt.zip" differ diff --git "a/\346\225\264\347\220\206/EAST/evaluate/rrc_evaluation_funcs.py" "b/\346\225\264\347\220\206/EAST/evaluate/rrc_evaluation_funcs.py" new file mode 100644 index 0000000..111cdde --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/evaluate/rrc_evaluation_funcs.py" @@ -0,0 +1,364 @@ +import json +import sys;sys.path.append('./') +import zipfile +import re +import sys +import os +import codecs +import importlib +from io import StringIO + +def print_help(): + sys.stdout.write('Usage: python %s.py -g= -s= [-o= -p=]' %sys.argv[0]) + sys.exit(2) + + +def load_zip_file_keys(file,fileNameRegExp=''): + """ + Returns an array with the entries of the ZIP file that match with the regular expression. + The key's are the names or the file or the capturing group definied in the fileNameRegExp + """ + try: + archive=zipfile.ZipFile(file, mode='r', allowZip64=True) + except : + raise Exception('Error loading the ZIP archive.') + + pairs = [] + + for name in archive.namelist(): + addFile = True + keyName = name + if fileNameRegExp!="": + m = re.match(fileNameRegExp,name) + if m == None: + addFile = False + else: + if len(m.groups())>0: + keyName = m.group(1) + + if addFile: + pairs.append( keyName ) + + return pairs + + +def load_zip_file(file,fileNameRegExp='',allEntries=False): + """ + Returns an array with the contents (filtered by fileNameRegExp) of a ZIP file. + The key's are the names or the file or the capturing group definied in the fileNameRegExp + allEntries validates that all entries in the ZIP file pass the fileNameRegExp + """ + try: + archive=zipfile.ZipFile(file, mode='r', allowZip64=True) + except : + raise Exception('Error loading the ZIP archive') + + pairs = [] + for name in archive.namelist(): + addFile = True + keyName = name + if fileNameRegExp!="": + m = re.match(fileNameRegExp,name) + if m == None: + addFile = False + else: + if len(m.groups())>0: + keyName = m.group(1) + + if addFile: + pairs.append( [ keyName , archive.read(name)] ) + else: + if allEntries: + raise Exception('ZIP entry not valid: %s' %name) + + return dict(pairs) + +def decode_utf8(raw): + """ + Returns a Unicode object on success, or None on failure + """ + try: + raw = codecs.decode(raw,'utf-8', 'replace') + #extracts BOM if exists + raw = raw.encode('utf8') + if raw.startswith(codecs.BOM_UTF8): + raw = raw.replace(codecs.BOM_UTF8, '', 1) + return raw.decode('utf-8') + except: + return None + +def validate_lines_in_file(fileName,file_contents,CRLF=True,LTRB=True,withTranscription=False,withConfidence=False,imWidth=0,imHeight=0): + """ + This function validates that all lines of the file calling the Line validation function for each line + """ + utf8File = decode_utf8(file_contents) + if (utf8File is None) : + raise Exception("The file %s is not UTF-8" %fileName) + + lines = utf8File.split( "\r\n" if CRLF else "\n" ) + for line in lines: + line = line.replace("\r","").replace("\n","") + if(line != ""): + try: + validate_tl_line(line,LTRB,withTranscription,withConfidence,imWidth,imHeight) + except Exception as e: + raise Exception(("Line in sample not valid. Sample: %s Line: %s Error: %s" %(fileName,line,str(e))).encode('utf-8', 'replace')) + + + +def validate_tl_line(line,LTRB=True,withTranscription=True,withConfidence=True,imWidth=0,imHeight=0): + """ + Validate the format of the line. If the line is not valid an exception will be raised. + If maxWidth and maxHeight are specified, all points must be inside the imgage bounds. + Posible values are: + LTRB=True: xmin,ymin,xmax,ymax[,confidence][,transcription] + LTRB=False: x1,y1,x2,y2,x3,y3,x4,y4[,confidence][,transcription] + """ + get_tl_line_values(line,LTRB,withTranscription,withConfidence,imWidth,imHeight) + + +def get_tl_line_values(line,LTRB=True,withTranscription=False,withConfidence=False,imWidth=0,imHeight=0): + """ + Validate the format of the line. If the line is not valid an exception will be raised. + If maxWidth and maxHeight are specified, all points must be inside the imgage bounds. + Posible values are: + LTRB=True: xmin,ymin,xmax,ymax[,confidence][,transcription] + LTRB=False: x1,y1,x2,y2,x3,y3,x4,y4[,confidence][,transcription] + Returns values from a textline. Points , [Confidences], [Transcriptions] + """ + confidence = 0.0 + transcription = ""; + points = [] + + numPoints = 4; + + if LTRB: + + numPoints = 4; + + if withTranscription and withConfidence: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-1].?[0-9]*)\s*,(.*)$',line) + if m == None : + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-1].?[0-9]*)\s*,(.*)$',line) + raise Exception("Format incorrect. Should be: xmin,ymin,xmax,ymax,confidence,transcription") + elif withConfidence: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-1].?[0-9]*)\s*$',line) + if m == None : + raise Exception("Format incorrect. Should be: xmin,ymin,xmax,ymax,confidence") + elif withTranscription: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,(.*)$',line) + if m == None : + raise Exception("Format incorrect. Should be: xmin,ymin,xmax,ymax,transcription") + else: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,?\s*$',line) + if m == None : + raise Exception("Format incorrect. Should be: xmin,ymin,xmax,ymax") + + xmin = int(m.group(1)) + ymin = int(m.group(2)) + xmax = int(m.group(3)) + ymax = int(m.group(4)) + if(xmax0 and imHeight>0): + validate_point_inside_bounds(xmin,ymin,imWidth,imHeight); + validate_point_inside_bounds(xmax,ymax,imWidth,imHeight); + + else: + + numPoints = 8; + + if withTranscription and withConfidence: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-1].?[0-9]*)\s*,(.*)$',line) + if m == None : + raise Exception("Format incorrect. Should be: x1,y1,x2,y2,x3,y3,x4,y4,confidence,transcription") + elif withConfidence: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*([0-1].?[0-9]*)\s*$',line) + if m == None : + raise Exception("Format incorrect. Should be: x1,y1,x2,y2,x3,y3,x4,y4,confidence") + elif withTranscription: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,(.*)$',line) + if m == None : + raise Exception("Format incorrect. Should be: x1,y1,x2,y2,x3,y3,x4,y4,transcription") + else: + m = re.match(r'^\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*,\s*(-?[0-9]+)\s*$',line) + if m == None : + raise Exception("Format incorrect. Should be: x1,y1,x2,y2,x3,y3,x4,y4") + + points = [ float(m.group(i)) for i in range(1, (numPoints+1) ) ] + + validate_clockwise_points(points) + + if (imWidth>0 and imHeight>0): + validate_point_inside_bounds(points[0],points[1],imWidth,imHeight); + validate_point_inside_bounds(points[2],points[3],imWidth,imHeight); + validate_point_inside_bounds(points[4],points[5],imWidth,imHeight); + validate_point_inside_bounds(points[6],points[7],imWidth,imHeight); + + + if withConfidence: + try: + confidence = float(m.group(numPoints+1)) + except ValueError: + raise Exception("Confidence value must be a float") + + if withTranscription: + posTranscription = numPoints + (2 if withConfidence else 1) + transcription = m.group(posTranscription) + m2 = re.match(r'^\s*\"(.*)\"\s*$',transcription) + if m2 != None : #Transcription with double quotes, we extract the value and replace escaped characters + transcription = m2.group(1).replace("\\\\", "\\").replace("\\\"", "\"") + + return points,confidence,transcription + + +def validate_point_inside_bounds(x,y,imWidth,imHeight): + if(x<0 or x>imWidth): + raise Exception("X value (%s) not valid. Image dimensions: (%s,%s)" %(xmin,imWidth,imHeight)) + if(y<0 or y>imHeight): + raise Exception("Y value (%s) not valid. Image dimensions: (%s,%s) Sample: %s Line:%s" %(ymin,imWidth,imHeight)) + +def validate_clockwise_points(points): + """ + Validates that the points that the 4 points that dlimite a polygon are in clockwise order. + """ + + if len(points) != 8: + raise Exception("Points list not valid." + str(len(points))) + + point = [ + [int(points[0]) , int(points[1])], + [int(points[2]) , int(points[3])], + [int(points[4]) , int(points[5])], + [int(points[6]) , int(points[7])] + ] + edge = [ + ( point[1][0] - point[0][0])*( point[1][1] + point[0][1]), + ( point[2][0] - point[1][0])*( point[2][1] + point[1][1]), + ( point[3][0] - point[2][0])*( point[3][1] + point[2][1]), + ( point[0][0] - point[3][0])*( point[0][1] + point[3][1]) + ] + + summatory = edge[0] + edge[1] + edge[2] + edge[3]; + if summatory>0: + raise Exception("Points are not clockwise. The coordinates of bounding quadrilaterals have to be given in clockwise order. Regarding the correct interpretation of 'clockwise' remember that the image coordinate system used is the standard one, with the image origin at the upper left, the X axis extending to the right and Y axis extending downwards.") + +def get_tl_line_values_from_file_contents(content,CRLF=True,LTRB=True,withTranscription=False,withConfidence=False,imWidth=0,imHeight=0,sort_by_confidences=True): + """ + Returns all points, confindences and transcriptions of a file in lists. Valid line formats: + xmin,ymin,xmax,ymax,[confidence],[transcription] + x1,y1,x2,y2,x3,y3,x4,y4,[confidence],[transcription] + """ + pointsList = [] + transcriptionsList = [] + confidencesList = [] + + lines = content.split( "\r\n" if CRLF else "\n" ) + for line in lines: + line = line.replace("\r","").replace("\n","") + if(line != "") : + points, confidence, transcription = get_tl_line_values(line,LTRB,withTranscription,withConfidence,imWidth,imHeight); + pointsList.append(points) + transcriptionsList.append(transcription) + confidencesList.append(confidence) + + if withConfidence and len(confidencesList)>0 and sort_by_confidences: + import numpy as np + sorted_ind = np.argsort(-np.array(confidencesList)) + confidencesList = [confidencesList[i] for i in sorted_ind] + pointsList = [pointsList[i] for i in sorted_ind] + transcriptionsList = [transcriptionsList[i] for i in sorted_ind] + + return pointsList,confidencesList,transcriptionsList + +def main_evaluation(p,default_evaluation_params_fn,validate_data_fn,evaluate_method_fn,show_result=True,per_sample=True): + """ + This process validates a method, evaluates it and if it succed generates a ZIP file with a JSON entry for each sample. + Params: + p: Dictionary of parmeters with the GT/submission locations. If None is passed, the parameters send by the system are used. + default_evaluation_params_fn: points to a function that returns a dictionary with the default parameters used for the evaluation + validate_data_fn: points to a method that validates the corrct format of the submission + evaluate_method_fn: points to a function that evaluated the submission and return a Dictionary with the results + """ + + if (p == None): + p = dict([s[1:].split('=') for s in sys.argv[1:]]) + if(len(sys.argv)<3): + print_help() + + evalParams = default_evaluation_params_fn() + if 'p' in p.keys(): + evalParams.update( p['p'] if isinstance(p['p'], dict) else json.loads(p['p'][1:-1]) ) + + resDict={'calculated':True,'Message':'','method':'{}','per_sample':'{}'} + try: + validate_data_fn(p['g'], p['s'], evalParams) + evalData = evaluate_method_fn(p['g'], p['s'], evalParams) + resDict.update(evalData) + + except Exception as e: + resDict['Message']= str(e) + resDict['calculated']=False + + if 'o' in p: + if not os.path.exists(p['o']): + os.makedirs(p['o']) + + resultsOutputname = p['o'] + '/results.zip' + outZip = zipfile.ZipFile(resultsOutputname, mode='w', allowZip64=True) + + del resDict['per_sample'] + if 'output_items' in resDict.keys(): + del resDict['output_items'] + + outZip.writestr('method.json',json.dumps(resDict)) + + if not resDict['calculated']: + if show_result: + sys.stderr.write('Error!\n'+ resDict['Message']+'\n\n') + if 'o' in p: + outZip.close() + return resDict + + if 'o' in p: + if per_sample == True: + for k,v in evalData['per_sample'].items(): + outZip.writestr( k + '.json',json.dumps(v)) + + if 'output_items' in evalData.keys(): + for k, v in evalData['output_items'].items(): + outZip.writestr( k,v) + + outZip.close() + + if show_result: + sys.stdout.write("Calculated!") + sys.stdout.write(json.dumps(resDict['method'])) + + return resDict + + +def main_validation(default_evaluation_params_fn,validate_data_fn): + """ + This process validates a method + Params: + default_evaluation_params_fn: points to a function that returns a dictionary with the default parameters used for the evaluation + validate_data_fn: points to a method that validates the corrct format of the submission + """ + try: + p = dict([s[1:].split('=') for s in sys.argv[1:]]) + evalParams = default_evaluation_params_fn() + if 'p' in p.keys(): + evalParams.update( p['p'] if isinstance(p['p'], dict) else json.loads(p['p'][1:-1]) ) + + validate_data_fn(p['g'], p['s'], evalParams) + print('SUCCESS') + sys.exit(0) + except Exception as e: + print(str(e)) + sys.exit(101) diff --git "a/\346\225\264\347\220\206/EAST/evaluate/script.py" "b/\346\225\264\347\220\206/EAST/evaluate/script.py" new file mode 100644 index 0000000..fae46f1 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/evaluate/script.py" @@ -0,0 +1,312 @@ +from collections import namedtuple +import rrc_evaluation_funcs +import importlib + +def evaluation_imports(): + """ + evaluation_imports: Dictionary ( key = module name , value = alias ) with python modules used in the evaluation. + """ + return { + 'shapely.geometry':'plg', + 'numpy':'np' + } + +def default_evaluation_params(): + """ + default_evaluation_params: Default parameters to use for the validation and evaluation. + """ + return { + 'IOU_CONSTRAINT' :0.5, + 'AREA_PRECISION_CONSTRAINT' :0.5, + 'GT_SAMPLE_NAME_2_ID':'gt_img_([0-9]+).txt', + 'DET_SAMPLE_NAME_2_ID':'res_img_([0-9]+).txt', + 'LTRB':False, #LTRB:2points(left,top,right,bottom) or 4 points(x1,y1,x2,y2,x3,y3,x4,y4) + 'CRLF':False, # Lines are delimited by Windows CRLF format + 'CONFIDENCES':False, #Detections must include confidence value. AP will be calculated + 'PER_SAMPLE_RESULTS':True #Generate per sample results and produce data for visualization + } + +def validate_data(gtFilePath, submFilePath,evaluationParams): + """ + Method validate_data: validates that all files in the results folder are correct (have the correct name contents). + Validates also that there are no missing files in the folder. + If some error detected, the method raises the error + """ + gt = rrc_evaluation_funcs.load_zip_file(gtFilePath,evaluationParams['GT_SAMPLE_NAME_2_ID']) + + subm = rrc_evaluation_funcs.load_zip_file(submFilePath,evaluationParams['DET_SAMPLE_NAME_2_ID'],True) + + #Validate format of GroundTruth + for k in gt: + rrc_evaluation_funcs.validate_lines_in_file(k,gt[k],evaluationParams['CRLF'],evaluationParams['LTRB'],True) + + #Validate format of results + for k in subm: + if (k in gt) == False : + raise Exception("The sample %s not present in GT" %k) + + rrc_evaluation_funcs.validate_lines_in_file(k,subm[k],evaluationParams['CRLF'],evaluationParams['LTRB'],False,evaluationParams['CONFIDENCES']) + + +def evaluate_method(gtFilePath, submFilePath, evaluationParams): + """ + Method evaluate_method: evaluate method and returns the results + Results. Dictionary with the following values: + - method (required) Global method metrics. Ex: { 'Precision':0.8,'Recall':0.9 } + - samples (optional) Per sample metrics. Ex: {'sample1' : { 'Precision':0.8,'Recall':0.9 } , 'sample2' : { 'Precision':0.8,'Recall':0.9 } + """ + + for module,alias in evaluation_imports().items(): + globals()[alias] = importlib.import_module(module) + + def polygon_from_points(points): + """ + Returns a Polygon object to use with the Polygon2 class from a list of 8 points: x1,y1,x2,y2,x3,y3,x4,y4 + """ + resBoxes=np.empty([1,8],dtype='int32') + resBoxes[0,0]=int(points[0]) + resBoxes[0,4]=int(points[1]) + resBoxes[0,1]=int(points[2]) + resBoxes[0,5]=int(points[3]) + resBoxes[0,2]=int(points[4]) + resBoxes[0,6]=int(points[5]) + resBoxes[0,3]=int(points[6]) + resBoxes[0,7]=int(points[7]) + pointMat = resBoxes[0].reshape([2,4]).T + return plg.Polygon(pointMat) + + def rectangle_to_polygon(rect): + resBoxes=np.empty([1,8],dtype='int32') + resBoxes[0,0]=int(rect.xmin) + resBoxes[0,4]=int(rect.ymax) + resBoxes[0,1]=int(rect.xmin) + resBoxes[0,5]=int(rect.ymin) + resBoxes[0,2]=int(rect.xmax) + resBoxes[0,6]=int(rect.ymin) + resBoxes[0,3]=int(rect.xmax) + resBoxes[0,7]=int(rect.ymax) + + pointMat = resBoxes[0].reshape([2,4]).T + + return plg.Polygon(pointMat) + + def rectangle_to_points(rect): + points = [int(rect.xmin), int(rect.ymax), int(rect.xmax), int(rect.ymax), int(rect.xmax), int(rect.ymin), int(rect.xmin), int(rect.ymin)] + return points + + def get_union(pD,pG): + areaA = pD.area; + areaB = pG.area; + return areaA + areaB - get_intersection(pD, pG); + + def get_intersection_over_union(pD,pG): + try: + return get_intersection(pD, pG) / get_union(pD, pG); + except: + return 0 + + def get_intersection(pD,pG): + if not pD.intersects(pG): + return 0 + pInt = pD & pG + return pInt.area + + def compute_ap(confList, matchList,numGtCare): + correct = 0 + AP = 0 + if len(confList)>0: + confList = np.array(confList) + matchList = np.array(matchList) + sorted_ind = np.argsort(-confList) + confList = confList[sorted_ind] + matchList = matchList[sorted_ind] + for n in range(len(confList)): + match = matchList[n] + if match: + correct += 1 + AP += float(correct)/(n + 1) + + if numGtCare>0: + AP /= numGtCare + + return AP + + perSampleMetrics = {} + + matchedSum = 0 + + Rectangle = namedtuple('Rectangle', 'xmin ymin xmax ymax') + gt = rrc_evaluation_funcs.load_zip_file(gtFilePath,evaluationParams['GT_SAMPLE_NAME_2_ID']) + subm = rrc_evaluation_funcs.load_zip_file(submFilePath,evaluationParams['DET_SAMPLE_NAME_2_ID'],True) + + numGlobalCareGt = 0; + numGlobalCareDet = 0; + + arrGlobalConfidences = []; + arrGlobalMatches = []; + + for resFile in gt: + + gtFile = rrc_evaluation_funcs.decode_utf8(gt[resFile]) + recall = 0 + precision = 0 + hmean = 0 + + detMatched = 0 + + iouMat = np.empty([1,1]) + + gtPols = [] + detPols = [] + + gtPolPoints = [] + detPolPoints = [] + + #Array of Ground Truth Polygons' keys marked as don't Care + gtDontCarePolsNum = [] + #Array of Detected Polygons' matched with a don't Care GT + detDontCarePolsNum = [] + + pairs = [] + detMatchedNums = [] + + arrSampleConfidences = []; + arrSampleMatch = []; + sampleAP = 0; + + evaluationLog = "" + + pointsList,_,transcriptionsList = rrc_evaluation_funcs.get_tl_line_values_from_file_contents(gtFile,evaluationParams['CRLF'],evaluationParams['LTRB'],True,False) + for n in range(len(pointsList)): + points = pointsList[n] + transcription = transcriptionsList[n] + dontCare = transcription == "###" + if evaluationParams['LTRB']: + gtRect = Rectangle(*points) + gtPol = rectangle_to_polygon(gtRect) + else: + gtPol = polygon_from_points(points) + gtPols.append(gtPol) + gtPolPoints.append(points) + if dontCare: + gtDontCarePolsNum.append( len(gtPols)-1 ) + + evaluationLog += "GT polygons: " + str(len(gtPols)) + (" (" + str(len(gtDontCarePolsNum)) + " don't care)\n" if len(gtDontCarePolsNum)>0 else "\n") + + if resFile in subm: + + detFile = rrc_evaluation_funcs.decode_utf8(subm[resFile]) + + pointsList,confidencesList,_ = rrc_evaluation_funcs.get_tl_line_values_from_file_contents(detFile,evaluationParams['CRLF'],evaluationParams['LTRB'],False,evaluationParams['CONFIDENCES']) + for n in range(len(pointsList)): + points = pointsList[n] + + if evaluationParams['LTRB']: + detRect = Rectangle(*points) + detPol = rectangle_to_polygon(detRect) + else: + detPol = polygon_from_points(points) + detPols.append(detPol) + detPolPoints.append(points) + if len(gtDontCarePolsNum)>0 : + for dontCarePol in gtDontCarePolsNum: + dontCarePol = gtPols[dontCarePol] + intersected_area = get_intersection(dontCarePol,detPol) + pdDimensions = detPol.area + precision = 0 if pdDimensions == 0 else intersected_area / pdDimensions + if (precision > evaluationParams['AREA_PRECISION_CONSTRAINT'] ): + detDontCarePolsNum.append( len(detPols)-1 ) + break + + evaluationLog += "DET polygons: " + str(len(detPols)) + (" (" + str(len(detDontCarePolsNum)) + " don't care)\n" if len(detDontCarePolsNum)>0 else "\n") + + if len(gtPols)>0 and len(detPols)>0: + #Calculate IoU and precision matrixs + outputShape=[len(gtPols),len(detPols)] + iouMat = np.empty(outputShape) + gtRectMat = np.zeros(len(gtPols),np.int8) + detRectMat = np.zeros(len(detPols),np.int8) + for gtNum in range(len(gtPols)): + for detNum in range(len(detPols)): + pG = gtPols[gtNum] + pD = detPols[detNum] + iouMat[gtNum,detNum] = get_intersection_over_union(pD,pG) + + for gtNum in range(len(gtPols)): + for detNum in range(len(detPols)): + if gtRectMat[gtNum] == 0 and detRectMat[detNum] == 0 and gtNum not in gtDontCarePolsNum and detNum not in detDontCarePolsNum : + if iouMat[gtNum,detNum]>evaluationParams['IOU_CONSTRAINT']: + gtRectMat[gtNum] = 1 + detRectMat[detNum] = 1 + detMatched += 1 + pairs.append({'gt':gtNum,'det':detNum}) + detMatchedNums.append(detNum) + evaluationLog += "Match GT #" + str(gtNum) + " with Det #" + str(detNum) + "\n" + + if evaluationParams['CONFIDENCES']: + for detNum in range(len(detPols)): + if detNum not in detDontCarePolsNum : + #we exclude the don't care detections + match = detNum in detMatchedNums + + arrSampleConfidences.append(confidencesList[detNum]) + arrSampleMatch.append(match) + + arrGlobalConfidences.append(confidencesList[detNum]); + arrGlobalMatches.append(match); + + numGtCare = (len(gtPols) - len(gtDontCarePolsNum)) + numDetCare = (len(detPols) - len(detDontCarePolsNum)) + if numGtCare == 0: + recall = float(1) + precision = float(0) if numDetCare >0 else float(1) + sampleAP = precision + else: + recall = float(detMatched) / numGtCare + precision = 0 if numDetCare==0 else float(detMatched) / numDetCare + if evaluationParams['CONFIDENCES'] and evaluationParams['PER_SAMPLE_RESULTS']: + sampleAP = compute_ap(arrSampleConfidences, arrSampleMatch, numGtCare ) + + hmean = 0 if (precision + recall)==0 else 2.0 * precision * recall / (precision + recall) + + matchedSum += detMatched + numGlobalCareGt += numGtCare + numGlobalCareDet += numDetCare + + if evaluationParams['PER_SAMPLE_RESULTS']: + perSampleMetrics[resFile] = { + 'precision':precision, + 'recall':recall, + 'hmean':hmean, + 'pairs':pairs, + 'AP':sampleAP, + 'iouMat':[] if len(detPols)>100 else iouMat.tolist(), + 'gtPolPoints':gtPolPoints, + 'detPolPoints':detPolPoints, + 'gtDontCare':gtDontCarePolsNum, + 'detDontCare':detDontCarePolsNum, + 'evaluationParams': evaluationParams, + 'evaluationLog': evaluationLog + } + + # Compute MAP and MAR + AP = 0 + if evaluationParams['CONFIDENCES']: + AP = compute_ap(arrGlobalConfidences, arrGlobalMatches, numGlobalCareGt) + + methodRecall = 0 if numGlobalCareGt == 0 else float(matchedSum)/numGlobalCareGt + methodPrecision = 0 if numGlobalCareDet == 0 else float(matchedSum)/numGlobalCareDet + methodHmean = 0 if methodRecall + methodPrecision==0 else 2* methodRecall * methodPrecision / (methodRecall + methodPrecision) + + methodMetrics = {'precision':methodPrecision, 'recall':methodRecall,'hmean': methodHmean, 'AP': AP } + + resDict = {'calculated':True,'Message':'','method': methodMetrics,'per_sample': perSampleMetrics} + + + return resDict; + + + +if __name__=='__main__': + + rrc_evaluation_funcs.main_evaluation(None,default_evaluation_params,validate_data,evaluate_method) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/.gitignore" "b/\346\225\264\347\220\206/EAST/lanms-master/.gitignore" new file mode 100644 index 0000000..926f18b --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/.gitignore" @@ -0,0 +1,7 @@ +lanms/adaptor.so +__pycache__ +build +lanms.egg-info +.idea +venv3 +dist diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/LICENSE" "b/\346\225\264\347\220\206/EAST/lanms-master/LICENSE" new file mode 100644 index 0000000..30ace6a --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/LICENSE" @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {one line to give the program's name and a brief idea of what it does.} + Copyright (C) {year} {name of author} + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + {project} Copyright (C) {year} {fullname} + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. \ No newline at end of file diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/MANIFEST.in" "b/\346\225\264\347\220\206/EAST/lanms-master/MANIFEST.in" new file mode 100644 index 0000000..8a56efc --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/MANIFEST.in" @@ -0,0 +1,34 @@ +# Include the license file +include LICENSE + +# Include the library file +include lanms/adaptor.so + +# Include cpp source files and Makefile +include adaptor.cpp +include lanms.h +include Makefile + + +include include/clipper/clipper.hpp +include include/clipper/clipper.cpp +include include/pybind11/stl_bind.h +include include/pybind11/embed.h +include include/pybind11/attr.h +include include/pybind11/class_support.h +include include/pybind11/pytypes.h +include include/pybind11/complex.h +include include/pybind11/operators.h +include include/pybind11/eval.h +include include/pybind11/pybind11.h +include include/pybind11/descr.h +include include/pybind11/eigen.h +include include/pybind11/buffer_info.h +include include/pybind11/chrono.h +include include/pybind11/options.h +include include/pybind11/common.h +include include/pybind11/cast.h +include include/pybind11/numpy.h +include include/pybind11/typeid.h +include include/pybind11/functional.h +include include/pybind11/stl.h diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/Makefile" "b/\346\225\264\347\220\206/EAST/lanms-master/Makefile" new file mode 100644 index 0000000..ab26e71 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/Makefile" @@ -0,0 +1,13 @@ +CXXFLAGS = -I include -std=c++11 -O3 $(shell python3-config --cflags) +LDFLAGS = $(shell python3-config --ldflags) + +DEPS = lanms.h $(shell find include -xtype f) +CXX_SOURCES = adaptor.cpp include/clipper/clipper.cpp + +LIB_SO = lanms/adaptor.so + +$(LIB_SO): $(CXX_SOURCES) $(DEPS) + $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS) $(CXX_SOURCES) --shared -fPIC + +clean: + rm -rf $(LIB_SO) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/README.rst" "b/\346\225\264\347\220\206/EAST/lanms-master/README.rst" new file mode 100644 index 0000000..09c57f3 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/README.rst" @@ -0,0 +1,29 @@ +Locality-Aware Non-Maximum Suppression (LANMS) +============================================== + +We provide a python package for the compiled version of the LANMS as described by Zhout et al. +in their paper "EAST: An Efficient and Accurate Scene Text Detector", CVPR 2017. The code is from the TensorFlow +implementation available on: https://github.com/argman/EAST + +We only packaged the code. For any questions or suggestions, please refer to: https://github.com/argman/EAST + +Installation +============ + +* Create a virtual environment: + +.. code-block:: bash + + python3 -m venv venv3 + +* Activate it: + +.. code-block:: bash + + source venv3/bin/activate + +* Install lanms with pip: + +.. code-block:: bash + + pip3 install lanms diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/adaptor.cpp" "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.cpp" new file mode 100644 index 0000000..7d38278 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.cpp" @@ -0,0 +1,61 @@ +#include "pybind11/pybind11.h" +#include "pybind11/numpy.h" +#include "pybind11/stl.h" +#include "pybind11/stl_bind.h" + +#include "lanms.h" + +namespace py = pybind11; + + +namespace lanms_adaptor { + + std::vector> polys2floats(const std::vector &polys) { + std::vector> ret; + for (size_t i = 0; i < polys.size(); i ++) { + auto &p = polys[i]; + auto &poly = p.poly; + ret.emplace_back(std::vector{ + float(poly[0].X), float(poly[0].Y), + float(poly[1].X), float(poly[1].Y), + float(poly[2].X), float(poly[2].Y), + float(poly[3].X), float(poly[3].Y), + float(p.score), + }); + } + + return ret; + } + + + /** + * + * \param quad_n9 an n-by-9 numpy array, where first 8 numbers denote the + * quadrangle, and the last one is the score + * \param iou_threshold two quadrangles with iou score above this threshold + * will be merged + * + * \return an n-by-9 numpy array, the merged quadrangles + */ + std::vector> merge_quadrangle_n9( + py::array_t quad_n9, + float iou_threshold) { + auto pbuf = quad_n9.request(); + if (pbuf.ndim != 2 || pbuf.shape[1] != 9) + throw std::runtime_error("quadrangles must have a shape of (n, 9)"); + auto n = pbuf.shape[0]; + auto ptr = static_cast(pbuf.ptr); + return polys2floats(lanms::merge_quadrangle_n9(ptr, n, iou_threshold)); + } + +} + +PYBIND11_PLUGIN(adaptor) { + py::module m("adaptor", "NMS"); + + m.def("merge_quadrangle_n9", &lanms_adaptor::merge_quadrangle_n9, + "merge quadrangels"); + + return m.ptr(); +} + diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/adaptor.exp" "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.exp" new file mode 100644 index 0000000..41c0f87 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.exp" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/adaptor.lib" "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.lib" new file mode 100644 index 0000000..e0ad786 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.lib" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/adaptor.obj" "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.obj" new file mode 100644 index 0000000..4476cb9 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.obj" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/adaptor.pyd" "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.pyd" new file mode 100644 index 0000000..de49cd1 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms-master/adaptor.pyd" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/clipper.obj" "b/\346\225\264\347\220\206/EAST/lanms-master/clipper.obj" new file mode 100644 index 0000000..156fe60 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms-master/clipper.obj" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.cpp" "b/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.cpp" new file mode 100644 index 0000000..4993ba9 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.cpp" @@ -0,0 +1,4622 @@ +/******************************************************************************* +* * +* Author : Angus Johnson * +* Version : 6.4.0 * +* Date : 2 July 2015 * +* Website : http://www.angusj.com * +* Copyright : Angus Johnson 2010-2015 * +* * +* License: * +* Use, modification & distribution is subject to Boost Software License Ver 1. * +* http://www.boost.org/LICENSE_1_0.txt * +* * +* Attributions: * +* The code in this library is an extension of Bala Vatti's clipping algorithm: * +* "A generic solution to polygon clipping" * +* Communications of the ACM, Vol 35, Issue 7 (July 1992) pp 56-63. * +* http://portal.acm.org/citation.cfm?id=129906 * +* * +* Computer graphics and geometric modeling: implementation and algorithms * +* By Max K. Agoston * +* Springer; 1 edition (January 4, 2005) * +* http://books.google.com/books?q=vatti+clipping+agoston * +* * +* See also: * +* "Polygon Offsetting by Computing Winding Numbers" * +* Paper no. DETC2005-85513 pp. 565-575 * +* ASME 2005 International Design Engineering Technical Conferences * +* and Computers and Information in Engineering Conference (IDETC/CIE2005) * +* September 24-28, 2005 , Long Beach, California, USA * +* http://www.me.berkeley.edu/~mcmains/pubs/DAC05OffsetPolygon.pdf * +* * +*******************************************************************************/ + +/******************************************************************************* +* * +* This is a translation of the Delphi Clipper library and the naming style * +* used has retained a Delphi flavour. * +* * +*******************************************************************************/ + +#include "clipper.hpp" +#include +#include +#include +#include +#include +#include +#include +#include + +namespace ClipperLib { + +static double const pi = 3.141592653589793238; +static double const two_pi = pi *2; +static double const def_arc_tolerance = 0.25; + +enum Direction { dRightToLeft, dLeftToRight }; + +static int const Unassigned = -1; //edge not currently 'owning' a solution +static int const Skip = -2; //edge that would otherwise close a path + +#define HORIZONTAL (-1.0E+40) +#define TOLERANCE (1.0e-20) +#define NEAR_ZERO(val) (((val) > -TOLERANCE) && ((val) < TOLERANCE)) + +struct TEdge { + IntPoint Bot; + IntPoint Curr; //current (updated for every new scanbeam) + IntPoint Top; + double Dx; + PolyType PolyTyp; + EdgeSide Side; //side only refers to current side of solution poly + int WindDelta; //1 or -1 depending on winding direction + int WindCnt; + int WindCnt2; //winding count of the opposite polytype + int OutIdx; + TEdge *Next; + TEdge *Prev; + TEdge *NextInLML; + TEdge *NextInAEL; + TEdge *PrevInAEL; + TEdge *NextInSEL; + TEdge *PrevInSEL; +}; + +struct IntersectNode { + TEdge *Edge1; + TEdge *Edge2; + IntPoint Pt; +}; + +struct LocalMinimum { + cInt Y; + TEdge *LeftBound; + TEdge *RightBound; +}; + +struct OutPt; + +//OutRec: contains a path in the clipping solution. Edges in the AEL will +//carry a pointer to an OutRec when they are part of the clipping solution. +struct OutRec { + int Idx; + bool IsHole; + bool IsOpen; + OutRec *FirstLeft; //see comments in clipper.pas + PolyNode *PolyNd; + OutPt *Pts; + OutPt *BottomPt; +}; + +struct OutPt { + int Idx; + IntPoint Pt; + OutPt *Next; + OutPt *Prev; +}; + +struct Join { + OutPt *OutPt1; + OutPt *OutPt2; + IntPoint OffPt; +}; + +struct LocMinSorter +{ + inline bool operator()(const LocalMinimum& locMin1, const LocalMinimum& locMin2) + { + return locMin2.Y < locMin1.Y; + } +}; + +//------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ + +inline cInt Round(double val) +{ + if ((val < 0)) return static_cast(val - 0.5); + else return static_cast(val + 0.5); +} +//------------------------------------------------------------------------------ + +inline cInt Abs(cInt val) +{ + return val < 0 ? -val : val; +} + +//------------------------------------------------------------------------------ +// PolyTree methods ... +//------------------------------------------------------------------------------ + +void PolyTree::Clear() +{ + for (PolyNodes::size_type i = 0; i < AllNodes.size(); ++i) + delete AllNodes[i]; + AllNodes.resize(0); + Childs.resize(0); +} +//------------------------------------------------------------------------------ + +PolyNode* PolyTree::GetFirst() const +{ + if (!Childs.empty()) + return Childs[0]; + else + return 0; +} +//------------------------------------------------------------------------------ + +int PolyTree::Total() const +{ + int result = (int)AllNodes.size(); + //with negative offsets, ignore the hidden outer polygon ... + if (result > 0 && Childs[0] != AllNodes[0]) result--; + return result; +} + +//------------------------------------------------------------------------------ +// PolyNode methods ... +//------------------------------------------------------------------------------ + +PolyNode::PolyNode(): Childs(), Parent(0), Index(0), m_IsOpen(false) +{ +} +//------------------------------------------------------------------------------ + +int PolyNode::ChildCount() const +{ + return (int)Childs.size(); +} +//------------------------------------------------------------------------------ + +void PolyNode::AddChild(PolyNode& child) +{ + unsigned cnt = (unsigned)Childs.size(); + Childs.push_back(&child); + child.Parent = this; + child.Index = cnt; +} +//------------------------------------------------------------------------------ + +PolyNode* PolyNode::GetNext() const +{ + if (!Childs.empty()) + return Childs[0]; + else + return GetNextSiblingUp(); +} +//------------------------------------------------------------------------------ + +PolyNode* PolyNode::GetNextSiblingUp() const +{ + if (!Parent) //protects against PolyTree.GetNextSiblingUp() + return 0; + else if (Index == Parent->Childs.size() - 1) + return Parent->GetNextSiblingUp(); + else + return Parent->Childs[Index + 1]; +} +//------------------------------------------------------------------------------ + +bool PolyNode::IsHole() const +{ + bool result = true; + PolyNode* node = Parent; + while (node) + { + result = !result; + node = node->Parent; + } + return result; +} +//------------------------------------------------------------------------------ + +bool PolyNode::IsOpen() const +{ + return m_IsOpen; +} +//------------------------------------------------------------------------------ + +#ifndef use_int32 + +//------------------------------------------------------------------------------ +// Int128 class (enables safe math on signed 64bit integers) +// eg Int128 val1((long64)9223372036854775807); //ie 2^63 -1 +// Int128 val2((long64)9223372036854775807); +// Int128 val3 = val1 * val2; +// val3.AsString => "85070591730234615847396907784232501249" (8.5e+37) +//------------------------------------------------------------------------------ + +class Int128 +{ + public: + ulong64 lo; + long64 hi; + + Int128(long64 _lo = 0) + { + lo = (ulong64)_lo; + if (_lo < 0) hi = -1; else hi = 0; + } + + + Int128(const Int128 &val): lo(val.lo), hi(val.hi){} + + Int128(const long64& _hi, const ulong64& _lo): lo(_lo), hi(_hi){} + + Int128& operator = (const long64 &val) + { + lo = (ulong64)val; + if (val < 0) hi = -1; else hi = 0; + return *this; + } + + bool operator == (const Int128 &val) const + {return (hi == val.hi && lo == val.lo);} + + bool operator != (const Int128 &val) const + { return !(*this == val);} + + bool operator > (const Int128 &val) const + { + if (hi != val.hi) + return hi > val.hi; + else + return lo > val.lo; + } + + bool operator < (const Int128 &val) const + { + if (hi != val.hi) + return hi < val.hi; + else + return lo < val.lo; + } + + bool operator >= (const Int128 &val) const + { return !(*this < val);} + + bool operator <= (const Int128 &val) const + { return !(*this > val);} + + Int128& operator += (const Int128 &rhs) + { + hi += rhs.hi; + lo += rhs.lo; + if (lo < rhs.lo) hi++; + return *this; + } + + Int128 operator + (const Int128 &rhs) const + { + Int128 result(*this); + result+= rhs; + return result; + } + + Int128& operator -= (const Int128 &rhs) + { + *this += -rhs; + return *this; + } + + Int128 operator - (const Int128 &rhs) const + { + Int128 result(*this); + result -= rhs; + return result; + } + + Int128 operator-() const //unary negation + { + if (lo == 0) + return Int128(-hi, 0); + else + return Int128(~hi, ~lo + 1); + } + + operator double() const + { + const double shift64 = 18446744073709551616.0; //2^64 + if (hi < 0) + { + if (lo == 0) return (double)hi * shift64; + else return -(double)(~lo + ~hi * shift64); + } + else + return (double)(lo + hi * shift64); + } + +}; +//------------------------------------------------------------------------------ + +Int128 Int128Mul (long64 lhs, long64 rhs) +{ + bool negate = (lhs < 0) != (rhs < 0); + + if (lhs < 0) lhs = -lhs; + ulong64 int1Hi = ulong64(lhs) >> 32; + ulong64 int1Lo = ulong64(lhs & 0xFFFFFFFF); + + if (rhs < 0) rhs = -rhs; + ulong64 int2Hi = ulong64(rhs) >> 32; + ulong64 int2Lo = ulong64(rhs & 0xFFFFFFFF); + + //nb: see comments in clipper.pas + ulong64 a = int1Hi * int2Hi; + ulong64 b = int1Lo * int2Lo; + ulong64 c = int1Hi * int2Lo + int1Lo * int2Hi; + + Int128 tmp; + tmp.hi = long64(a + (c >> 32)); + tmp.lo = long64(c << 32); + tmp.lo += long64(b); + if (tmp.lo < b) tmp.hi++; + if (negate) tmp = -tmp; + return tmp; +}; +#endif + +//------------------------------------------------------------------------------ +// Miscellaneous global functions +//------------------------------------------------------------------------------ + +bool Orientation(const Path &poly) +{ + return Area(poly) >= 0; +} +//------------------------------------------------------------------------------ + +double Area(const Path &poly) +{ + int size = (int)poly.size(); + if (size < 3) return 0; + + double a = 0; + for (int i = 0, j = size -1; i < size; ++i) + { + a += ((double)poly[j].X + poly[i].X) * ((double)poly[j].Y - poly[i].Y); + j = i; + } + return -a * 0.5; +} +//------------------------------------------------------------------------------ + +double Area(const OutPt *op) +{ + const OutPt *startOp = op; + if (!op) return 0; + double a = 0; + do { + a += (double)(op->Prev->Pt.X + op->Pt.X) * (double)(op->Prev->Pt.Y - op->Pt.Y); + op = op->Next; + } while (op != startOp); + return a * 0.5; +} +//------------------------------------------------------------------------------ + +double Area(const OutRec &outRec) +{ + return Area(outRec.Pts); +} +//------------------------------------------------------------------------------ + +bool PointIsVertex(const IntPoint &Pt, OutPt *pp) +{ + OutPt *pp2 = pp; + do + { + if (pp2->Pt == Pt) return true; + pp2 = pp2->Next; + } + while (pp2 != pp); + return false; +} +//------------------------------------------------------------------------------ + +//See "The Point in Polygon Problem for Arbitrary Polygons" by Hormann & Agathos +//http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.88.5498&rep=rep1&type=pdf +int PointInPolygon(const IntPoint &pt, const Path &path) +{ + //returns 0 if false, +1 if true, -1 if pt ON polygon boundary + int result = 0; + size_t cnt = path.size(); + if (cnt < 3) return 0; + IntPoint ip = path[0]; + for(size_t i = 1; i <= cnt; ++i) + { + IntPoint ipNext = (i == cnt ? path[0] : path[i]); + if (ipNext.Y == pt.Y) + { + if ((ipNext.X == pt.X) || (ip.Y == pt.Y && + ((ipNext.X > pt.X) == (ip.X < pt.X)))) return -1; + } + if ((ip.Y < pt.Y) != (ipNext.Y < pt.Y)) + { + if (ip.X >= pt.X) + { + if (ipNext.X > pt.X) result = 1 - result; + else + { + double d = (double)(ip.X - pt.X) * (ipNext.Y - pt.Y) - + (double)(ipNext.X - pt.X) * (ip.Y - pt.Y); + if (!d) return -1; + if ((d > 0) == (ipNext.Y > ip.Y)) result = 1 - result; + } + } else + { + if (ipNext.X > pt.X) + { + double d = (double)(ip.X - pt.X) * (ipNext.Y - pt.Y) - + (double)(ipNext.X - pt.X) * (ip.Y - pt.Y); + if (!d) return -1; + if ((d > 0) == (ipNext.Y > ip.Y)) result = 1 - result; + } + } + } + ip = ipNext; + } + return result; +} +//------------------------------------------------------------------------------ + +int PointInPolygon (const IntPoint &pt, OutPt *op) +{ + //returns 0 if false, +1 if true, -1 if pt ON polygon boundary + int result = 0; + OutPt* startOp = op; + for(;;) + { + if (op->Next->Pt.Y == pt.Y) + { + if ((op->Next->Pt.X == pt.X) || (op->Pt.Y == pt.Y && + ((op->Next->Pt.X > pt.X) == (op->Pt.X < pt.X)))) return -1; + } + if ((op->Pt.Y < pt.Y) != (op->Next->Pt.Y < pt.Y)) + { + if (op->Pt.X >= pt.X) + { + if (op->Next->Pt.X > pt.X) result = 1 - result; + else + { + double d = (double)(op->Pt.X - pt.X) * (op->Next->Pt.Y - pt.Y) - + (double)(op->Next->Pt.X - pt.X) * (op->Pt.Y - pt.Y); + if (!d) return -1; + if ((d > 0) == (op->Next->Pt.Y > op->Pt.Y)) result = 1 - result; + } + } else + { + if (op->Next->Pt.X > pt.X) + { + double d = (double)(op->Pt.X - pt.X) * (op->Next->Pt.Y - pt.Y) - + (double)(op->Next->Pt.X - pt.X) * (op->Pt.Y - pt.Y); + if (!d) return -1; + if ((d > 0) == (op->Next->Pt.Y > op->Pt.Y)) result = 1 - result; + } + } + } + op = op->Next; + if (startOp == op) break; + } + return result; +} +//------------------------------------------------------------------------------ + +bool Poly2ContainsPoly1(OutPt *OutPt1, OutPt *OutPt2) +{ + OutPt* op = OutPt1; + do + { + //nb: PointInPolygon returns 0 if false, +1 if true, -1 if pt on polygon + int res = PointInPolygon(op->Pt, OutPt2); + if (res >= 0) return res > 0; + op = op->Next; + } + while (op != OutPt1); + return true; +} +//---------------------------------------------------------------------- + +bool SlopesEqual(const TEdge &e1, const TEdge &e2, bool UseFullInt64Range) +{ +#ifndef use_int32 + if (UseFullInt64Range) + return Int128Mul(e1.Top.Y - e1.Bot.Y, e2.Top.X - e2.Bot.X) == + Int128Mul(e1.Top.X - e1.Bot.X, e2.Top.Y - e2.Bot.Y); + else +#endif + return (e1.Top.Y - e1.Bot.Y) * (e2.Top.X - e2.Bot.X) == + (e1.Top.X - e1.Bot.X) * (e2.Top.Y - e2.Bot.Y); +} +//------------------------------------------------------------------------------ + +bool SlopesEqual(const IntPoint pt1, const IntPoint pt2, + const IntPoint pt3, bool UseFullInt64Range) +{ +#ifndef use_int32 + if (UseFullInt64Range) + return Int128Mul(pt1.Y-pt2.Y, pt2.X-pt3.X) == Int128Mul(pt1.X-pt2.X, pt2.Y-pt3.Y); + else +#endif + return (pt1.Y-pt2.Y)*(pt2.X-pt3.X) == (pt1.X-pt2.X)*(pt2.Y-pt3.Y); +} +//------------------------------------------------------------------------------ + +bool SlopesEqual(const IntPoint pt1, const IntPoint pt2, + const IntPoint pt3, const IntPoint pt4, bool UseFullInt64Range) +{ +#ifndef use_int32 + if (UseFullInt64Range) + return Int128Mul(pt1.Y-pt2.Y, pt3.X-pt4.X) == Int128Mul(pt1.X-pt2.X, pt3.Y-pt4.Y); + else +#endif + return (pt1.Y-pt2.Y)*(pt3.X-pt4.X) == (pt1.X-pt2.X)*(pt3.Y-pt4.Y); +} +//------------------------------------------------------------------------------ + +inline bool IsHorizontal(TEdge &e) +{ + return e.Dx == HORIZONTAL; +} +//------------------------------------------------------------------------------ + +inline double GetDx(const IntPoint pt1, const IntPoint pt2) +{ + return (pt1.Y == pt2.Y) ? + HORIZONTAL : (double)(pt2.X - pt1.X) / (pt2.Y - pt1.Y); +} +//--------------------------------------------------------------------------- + +inline void SetDx(TEdge &e) +{ + cInt dy = (e.Top.Y - e.Bot.Y); + if (dy == 0) e.Dx = HORIZONTAL; + else e.Dx = (double)(e.Top.X - e.Bot.X) / dy; +} +//--------------------------------------------------------------------------- + +inline void SwapSides(TEdge &Edge1, TEdge &Edge2) +{ + EdgeSide Side = Edge1.Side; + Edge1.Side = Edge2.Side; + Edge2.Side = Side; +} +//------------------------------------------------------------------------------ + +inline void SwapPolyIndexes(TEdge &Edge1, TEdge &Edge2) +{ + int OutIdx = Edge1.OutIdx; + Edge1.OutIdx = Edge2.OutIdx; + Edge2.OutIdx = OutIdx; +} +//------------------------------------------------------------------------------ + +inline cInt TopX(TEdge &edge, const cInt currentY) +{ + return ( currentY == edge.Top.Y ) ? + edge.Top.X : edge.Bot.X + Round(edge.Dx *(currentY - edge.Bot.Y)); +} +//------------------------------------------------------------------------------ + +void IntersectPoint(TEdge &Edge1, TEdge &Edge2, IntPoint &ip) +{ +#ifdef use_xyz + ip.Z = 0; +#endif + + double b1, b2; + if (Edge1.Dx == Edge2.Dx) + { + ip.Y = Edge1.Curr.Y; + ip.X = TopX(Edge1, ip.Y); + return; + } + else if (Edge1.Dx == 0) + { + ip.X = Edge1.Bot.X; + if (IsHorizontal(Edge2)) + ip.Y = Edge2.Bot.Y; + else + { + b2 = Edge2.Bot.Y - (Edge2.Bot.X / Edge2.Dx); + ip.Y = Round(ip.X / Edge2.Dx + b2); + } + } + else if (Edge2.Dx == 0) + { + ip.X = Edge2.Bot.X; + if (IsHorizontal(Edge1)) + ip.Y = Edge1.Bot.Y; + else + { + b1 = Edge1.Bot.Y - (Edge1.Bot.X / Edge1.Dx); + ip.Y = Round(ip.X / Edge1.Dx + b1); + } + } + else + { + b1 = Edge1.Bot.X - Edge1.Bot.Y * Edge1.Dx; + b2 = Edge2.Bot.X - Edge2.Bot.Y * Edge2.Dx; + double q = (b2-b1) / (Edge1.Dx - Edge2.Dx); + ip.Y = Round(q); + if (std::fabs(Edge1.Dx) < std::fabs(Edge2.Dx)) + ip.X = Round(Edge1.Dx * q + b1); + else + ip.X = Round(Edge2.Dx * q + b2); + } + + if (ip.Y < Edge1.Top.Y || ip.Y < Edge2.Top.Y) + { + if (Edge1.Top.Y > Edge2.Top.Y) + ip.Y = Edge1.Top.Y; + else + ip.Y = Edge2.Top.Y; + if (std::fabs(Edge1.Dx) < std::fabs(Edge2.Dx)) + ip.X = TopX(Edge1, ip.Y); + else + ip.X = TopX(Edge2, ip.Y); + } + //finally, don't allow 'ip' to be BELOW curr.Y (ie bottom of scanbeam) ... + if (ip.Y > Edge1.Curr.Y) + { + ip.Y = Edge1.Curr.Y; + //use the more vertical edge to derive X ... + if (std::fabs(Edge1.Dx) > std::fabs(Edge2.Dx)) + ip.X = TopX(Edge2, ip.Y); else + ip.X = TopX(Edge1, ip.Y); + } +} +//------------------------------------------------------------------------------ + +void ReversePolyPtLinks(OutPt *pp) +{ + if (!pp) return; + OutPt *pp1, *pp2; + pp1 = pp; + do { + pp2 = pp1->Next; + pp1->Next = pp1->Prev; + pp1->Prev = pp2; + pp1 = pp2; + } while( pp1 != pp ); +} +//------------------------------------------------------------------------------ + +void DisposeOutPts(OutPt*& pp) +{ + if (pp == 0) return; + pp->Prev->Next = 0; + while( pp ) + { + OutPt *tmpPp = pp; + pp = pp->Next; + delete tmpPp; + } +} +//------------------------------------------------------------------------------ + +inline void InitEdge(TEdge* e, TEdge* eNext, TEdge* ePrev, const IntPoint& Pt) +{ + std::memset(e, 0, sizeof(TEdge)); + e->Next = eNext; + e->Prev = ePrev; + e->Curr = Pt; + e->OutIdx = Unassigned; +} +//------------------------------------------------------------------------------ + +void InitEdge2(TEdge& e, PolyType Pt) +{ + if (e.Curr.Y >= e.Next->Curr.Y) + { + e.Bot = e.Curr; + e.Top = e.Next->Curr; + } else + { + e.Top = e.Curr; + e.Bot = e.Next->Curr; + } + SetDx(e); + e.PolyTyp = Pt; +} +//------------------------------------------------------------------------------ + +TEdge* RemoveEdge(TEdge* e) +{ + //removes e from double_linked_list (but without removing from memory) + e->Prev->Next = e->Next; + e->Next->Prev = e->Prev; + TEdge* result = e->Next; + e->Prev = 0; //flag as removed (see ClipperBase.Clear) + return result; +} +//------------------------------------------------------------------------------ + +inline void ReverseHorizontal(TEdge &e) +{ + //swap horizontal edges' Top and Bottom x's so they follow the natural + //progression of the bounds - ie so their xbots will align with the + //adjoining lower edge. [Helpful in the ProcessHorizontal() method.] + std::swap(e.Top.X, e.Bot.X); +#ifdef use_xyz + std::swap(e.Top.Z, e.Bot.Z); +#endif +} +//------------------------------------------------------------------------------ + +void SwapPoints(IntPoint &pt1, IntPoint &pt2) +{ + IntPoint tmp = pt1; + pt1 = pt2; + pt2 = tmp; +} +//------------------------------------------------------------------------------ + +bool GetOverlapSegment(IntPoint pt1a, IntPoint pt1b, IntPoint pt2a, + IntPoint pt2b, IntPoint &pt1, IntPoint &pt2) +{ + //precondition: segments are Collinear. + if (Abs(pt1a.X - pt1b.X) > Abs(pt1a.Y - pt1b.Y)) + { + if (pt1a.X > pt1b.X) SwapPoints(pt1a, pt1b); + if (pt2a.X > pt2b.X) SwapPoints(pt2a, pt2b); + if (pt1a.X > pt2a.X) pt1 = pt1a; else pt1 = pt2a; + if (pt1b.X < pt2b.X) pt2 = pt1b; else pt2 = pt2b; + return pt1.X < pt2.X; + } else + { + if (pt1a.Y < pt1b.Y) SwapPoints(pt1a, pt1b); + if (pt2a.Y < pt2b.Y) SwapPoints(pt2a, pt2b); + if (pt1a.Y < pt2a.Y) pt1 = pt1a; else pt1 = pt2a; + if (pt1b.Y > pt2b.Y) pt2 = pt1b; else pt2 = pt2b; + return pt1.Y > pt2.Y; + } +} +//------------------------------------------------------------------------------ + +bool FirstIsBottomPt(const OutPt* btmPt1, const OutPt* btmPt2) +{ + OutPt *p = btmPt1->Prev; + while ((p->Pt == btmPt1->Pt) && (p != btmPt1)) p = p->Prev; + double dx1p = std::fabs(GetDx(btmPt1->Pt, p->Pt)); + p = btmPt1->Next; + while ((p->Pt == btmPt1->Pt) && (p != btmPt1)) p = p->Next; + double dx1n = std::fabs(GetDx(btmPt1->Pt, p->Pt)); + + p = btmPt2->Prev; + while ((p->Pt == btmPt2->Pt) && (p != btmPt2)) p = p->Prev; + double dx2p = std::fabs(GetDx(btmPt2->Pt, p->Pt)); + p = btmPt2->Next; + while ((p->Pt == btmPt2->Pt) && (p != btmPt2)) p = p->Next; + double dx2n = std::fabs(GetDx(btmPt2->Pt, p->Pt)); + + if (std::max(dx1p, dx1n) == std::max(dx2p, dx2n) && + std::min(dx1p, dx1n) == std::min(dx2p, dx2n)) + return Area(btmPt1) > 0; //if otherwise identical use orientation + else + return (dx1p >= dx2p && dx1p >= dx2n) || (dx1n >= dx2p && dx1n >= dx2n); +} +//------------------------------------------------------------------------------ + +OutPt* GetBottomPt(OutPt *pp) +{ + OutPt* dups = 0; + OutPt* p = pp->Next; + while (p != pp) + { + if (p->Pt.Y > pp->Pt.Y) + { + pp = p; + dups = 0; + } + else if (p->Pt.Y == pp->Pt.Y && p->Pt.X <= pp->Pt.X) + { + if (p->Pt.X < pp->Pt.X) + { + dups = 0; + pp = p; + } else + { + if (p->Next != pp && p->Prev != pp) dups = p; + } + } + p = p->Next; + } + if (dups) + { + //there appears to be at least 2 vertices at BottomPt so ... + while (dups != p) + { + if (!FirstIsBottomPt(p, dups)) pp = dups; + dups = dups->Next; + while (dups->Pt != pp->Pt) dups = dups->Next; + } + } + return pp; +} +//------------------------------------------------------------------------------ + +bool Pt2IsBetweenPt1AndPt3(const IntPoint pt1, + const IntPoint pt2, const IntPoint pt3) +{ + if ((pt1 == pt3) || (pt1 == pt2) || (pt3 == pt2)) + return false; + else if (pt1.X != pt3.X) + return (pt2.X > pt1.X) == (pt2.X < pt3.X); + else + return (pt2.Y > pt1.Y) == (pt2.Y < pt3.Y); +} +//------------------------------------------------------------------------------ + +bool HorzSegmentsOverlap(cInt seg1a, cInt seg1b, cInt seg2a, cInt seg2b) +{ + if (seg1a > seg1b) std::swap(seg1a, seg1b); + if (seg2a > seg2b) std::swap(seg2a, seg2b); + return (seg1a < seg2b) && (seg2a < seg1b); +} + +//------------------------------------------------------------------------------ +// ClipperBase class methods ... +//------------------------------------------------------------------------------ + +ClipperBase::ClipperBase() //constructor +{ + m_CurrentLM = m_MinimaList.begin(); //begin() == end() here + m_UseFullRange = false; +} +//------------------------------------------------------------------------------ + +ClipperBase::~ClipperBase() //destructor +{ + Clear(); +} +//------------------------------------------------------------------------------ + +void RangeTest(const IntPoint& Pt, bool& useFullRange) +{ + if (useFullRange) + { + if (Pt.X > hiRange || Pt.Y > hiRange || -Pt.X > hiRange || -Pt.Y > hiRange) + throw clipperException("Coordinate outside allowed range"); + } + else if (Pt.X > loRange|| Pt.Y > loRange || -Pt.X > loRange || -Pt.Y > loRange) + { + useFullRange = true; + RangeTest(Pt, useFullRange); + } +} +//------------------------------------------------------------------------------ + +TEdge* FindNextLocMin(TEdge* E) +{ + for (;;) + { + while (E->Bot != E->Prev->Bot || E->Curr == E->Top) E = E->Next; + if (!IsHorizontal(*E) && !IsHorizontal(*E->Prev)) break; + while (IsHorizontal(*E->Prev)) E = E->Prev; + TEdge* E2 = E; + while (IsHorizontal(*E)) E = E->Next; + if (E->Top.Y == E->Prev->Bot.Y) continue; //ie just an intermediate horz. + if (E2->Prev->Bot.X < E->Bot.X) E = E2; + break; + } + return E; +} +//------------------------------------------------------------------------------ + +TEdge* ClipperBase::ProcessBound(TEdge* E, bool NextIsForward) +{ + TEdge *Result = E; + TEdge *Horz = 0; + + if (E->OutIdx == Skip) + { + //if edges still remain in the current bound beyond the skip edge then + //create another LocMin and call ProcessBound once more + if (NextIsForward) + { + while (E->Top.Y == E->Next->Bot.Y) E = E->Next; + //don't include top horizontals when parsing a bound a second time, + //they will be contained in the opposite bound ... + while (E != Result && IsHorizontal(*E)) E = E->Prev; + } + else + { + while (E->Top.Y == E->Prev->Bot.Y) E = E->Prev; + while (E != Result && IsHorizontal(*E)) E = E->Next; + } + + if (E == Result) + { + if (NextIsForward) Result = E->Next; + else Result = E->Prev; + } + else + { + //there are more edges in the bound beyond result starting with E + if (NextIsForward) + E = Result->Next; + else + E = Result->Prev; + MinimaList::value_type locMin; + locMin.Y = E->Bot.Y; + locMin.LeftBound = 0; + locMin.RightBound = E; + E->WindDelta = 0; + Result = ProcessBound(E, NextIsForward); + m_MinimaList.push_back(locMin); + } + return Result; + } + + TEdge *EStart; + + if (IsHorizontal(*E)) + { + //We need to be careful with open paths because this may not be a + //true local minima (ie E may be following a skip edge). + //Also, consecutive horz. edges may start heading left before going right. + if (NextIsForward) + EStart = E->Prev; + else + EStart = E->Next; + if (IsHorizontal(*EStart)) //ie an adjoining horizontal skip edge + { + if (EStart->Bot.X != E->Bot.X && EStart->Top.X != E->Bot.X) + ReverseHorizontal(*E); + } + else if (EStart->Bot.X != E->Bot.X) + ReverseHorizontal(*E); + } + + EStart = E; + if (NextIsForward) + { + while (Result->Top.Y == Result->Next->Bot.Y && Result->Next->OutIdx != Skip) + Result = Result->Next; + if (IsHorizontal(*Result) && Result->Next->OutIdx != Skip) + { + //nb: at the top of a bound, horizontals are added to the bound + //only when the preceding edge attaches to the horizontal's left vertex + //unless a Skip edge is encountered when that becomes the top divide + Horz = Result; + while (IsHorizontal(*Horz->Prev)) Horz = Horz->Prev; + if (Horz->Prev->Top.X > Result->Next->Top.X) Result = Horz->Prev; + } + while (E != Result) + { + E->NextInLML = E->Next; + if (IsHorizontal(*E) && E != EStart && + E->Bot.X != E->Prev->Top.X) ReverseHorizontal(*E); + E = E->Next; + } + if (IsHorizontal(*E) && E != EStart && E->Bot.X != E->Prev->Top.X) + ReverseHorizontal(*E); + Result = Result->Next; //move to the edge just beyond current bound + } else + { + while (Result->Top.Y == Result->Prev->Bot.Y && Result->Prev->OutIdx != Skip) + Result = Result->Prev; + if (IsHorizontal(*Result) && Result->Prev->OutIdx != Skip) + { + Horz = Result; + while (IsHorizontal(*Horz->Next)) Horz = Horz->Next; + if (Horz->Next->Top.X == Result->Prev->Top.X || + Horz->Next->Top.X > Result->Prev->Top.X) Result = Horz->Next; + } + + while (E != Result) + { + E->NextInLML = E->Prev; + if (IsHorizontal(*E) && E != EStart && E->Bot.X != E->Next->Top.X) + ReverseHorizontal(*E); + E = E->Prev; + } + if (IsHorizontal(*E) && E != EStart && E->Bot.X != E->Next->Top.X) + ReverseHorizontal(*E); + Result = Result->Prev; //move to the edge just beyond current bound + } + + return Result; +} +//------------------------------------------------------------------------------ + +bool ClipperBase::AddPath(const Path &pg, PolyType PolyTyp, bool Closed) +{ +#ifdef use_lines + if (!Closed && PolyTyp == ptClip) + throw clipperException("AddPath: Open paths must be subject."); +#else + if (!Closed) + throw clipperException("AddPath: Open paths have been disabled."); +#endif + + int highI = (int)pg.size() -1; + if (Closed) while (highI > 0 && (pg[highI] == pg[0])) --highI; + while (highI > 0 && (pg[highI] == pg[highI -1])) --highI; + if ((Closed && highI < 2) || (!Closed && highI < 1)) return false; + + //create a new edge array ... + TEdge *edges = new TEdge [highI +1]; + + bool IsFlat = true; + //1. Basic (first) edge initialization ... + try + { + edges[1].Curr = pg[1]; + RangeTest(pg[0], m_UseFullRange); + RangeTest(pg[highI], m_UseFullRange); + InitEdge(&edges[0], &edges[1], &edges[highI], pg[0]); + InitEdge(&edges[highI], &edges[0], &edges[highI-1], pg[highI]); + for (int i = highI - 1; i >= 1; --i) + { + RangeTest(pg[i], m_UseFullRange); + InitEdge(&edges[i], &edges[i+1], &edges[i-1], pg[i]); + } + } + catch(...) + { + delete [] edges; + throw; //range test fails + } + TEdge *eStart = &edges[0]; + + //2. Remove duplicate vertices, and (when closed) collinear edges ... + TEdge *E = eStart, *eLoopStop = eStart; + for (;;) + { + //nb: allows matching start and end points when not Closed ... + if (E->Curr == E->Next->Curr && (Closed || E->Next != eStart)) + { + if (E == E->Next) break; + if (E == eStart) eStart = E->Next; + E = RemoveEdge(E); + eLoopStop = E; + continue; + } + if (E->Prev == E->Next) + break; //only two vertices + else if (Closed && + SlopesEqual(E->Prev->Curr, E->Curr, E->Next->Curr, m_UseFullRange) && + (!m_PreserveCollinear || + !Pt2IsBetweenPt1AndPt3(E->Prev->Curr, E->Curr, E->Next->Curr))) + { + //Collinear edges are allowed for open paths but in closed paths + //the default is to merge adjacent collinear edges into a single edge. + //However, if the PreserveCollinear property is enabled, only overlapping + //collinear edges (ie spikes) will be removed from closed paths. + if (E == eStart) eStart = E->Next; + E = RemoveEdge(E); + E = E->Prev; + eLoopStop = E; + continue; + } + E = E->Next; + if ((E == eLoopStop) || (!Closed && E->Next == eStart)) break; + } + + if ((!Closed && (E == E->Next)) || (Closed && (E->Prev == E->Next))) + { + delete [] edges; + return false; + } + + if (!Closed) + { + m_HasOpenPaths = true; + eStart->Prev->OutIdx = Skip; + } + + //3. Do second stage of edge initialization ... + E = eStart; + do + { + InitEdge2(*E, PolyTyp); + E = E->Next; + if (IsFlat && E->Curr.Y != eStart->Curr.Y) IsFlat = false; + } + while (E != eStart); + + //4. Finally, add edge bounds to LocalMinima list ... + + //Totally flat paths must be handled differently when adding them + //to LocalMinima list to avoid endless loops etc ... + if (IsFlat) + { + if (Closed) + { + delete [] edges; + return false; + } + E->Prev->OutIdx = Skip; + MinimaList::value_type locMin; + locMin.Y = E->Bot.Y; + locMin.LeftBound = 0; + locMin.RightBound = E; + locMin.RightBound->Side = esRight; + locMin.RightBound->WindDelta = 0; + for (;;) + { + if (E->Bot.X != E->Prev->Top.X) ReverseHorizontal(*E); + if (E->Next->OutIdx == Skip) break; + E->NextInLML = E->Next; + E = E->Next; + } + m_MinimaList.push_back(locMin); + m_edges.push_back(edges); + return true; + } + + m_edges.push_back(edges); + bool leftBoundIsForward; + TEdge* EMin = 0; + + //workaround to avoid an endless loop in the while loop below when + //open paths have matching start and end points ... + if (E->Prev->Bot == E->Prev->Top) E = E->Next; + + for (;;) + { + E = FindNextLocMin(E); + if (E == EMin) break; + else if (!EMin) EMin = E; + + //E and E.Prev now share a local minima (left aligned if horizontal). + //Compare their slopes to find which starts which bound ... + MinimaList::value_type locMin; + locMin.Y = E->Bot.Y; + if (E->Dx < E->Prev->Dx) + { + locMin.LeftBound = E->Prev; + locMin.RightBound = E; + leftBoundIsForward = false; //Q.nextInLML = Q.prev + } else + { + locMin.LeftBound = E; + locMin.RightBound = E->Prev; + leftBoundIsForward = true; //Q.nextInLML = Q.next + } + + if (!Closed) locMin.LeftBound->WindDelta = 0; + else if (locMin.LeftBound->Next == locMin.RightBound) + locMin.LeftBound->WindDelta = -1; + else locMin.LeftBound->WindDelta = 1; + locMin.RightBound->WindDelta = -locMin.LeftBound->WindDelta; + + E = ProcessBound(locMin.LeftBound, leftBoundIsForward); + if (E->OutIdx == Skip) E = ProcessBound(E, leftBoundIsForward); + + TEdge* E2 = ProcessBound(locMin.RightBound, !leftBoundIsForward); + if (E2->OutIdx == Skip) E2 = ProcessBound(E2, !leftBoundIsForward); + + if (locMin.LeftBound->OutIdx == Skip) + locMin.LeftBound = 0; + else if (locMin.RightBound->OutIdx == Skip) + locMin.RightBound = 0; + m_MinimaList.push_back(locMin); + if (!leftBoundIsForward) E = E2; + } + return true; +} +//------------------------------------------------------------------------------ + +bool ClipperBase::AddPaths(const Paths &ppg, PolyType PolyTyp, bool Closed) +{ + bool result = false; + for (Paths::size_type i = 0; i < ppg.size(); ++i) + if (AddPath(ppg[i], PolyTyp, Closed)) result = true; + return result; +} +//------------------------------------------------------------------------------ + +void ClipperBase::Clear() +{ + DisposeLocalMinimaList(); + for (EdgeList::size_type i = 0; i < m_edges.size(); ++i) + { + TEdge* edges = m_edges[i]; + delete [] edges; + } + m_edges.clear(); + m_UseFullRange = false; + m_HasOpenPaths = false; +} +//------------------------------------------------------------------------------ + +void ClipperBase::Reset() +{ + m_CurrentLM = m_MinimaList.begin(); + if (m_CurrentLM == m_MinimaList.end()) return; //ie nothing to process + std::sort(m_MinimaList.begin(), m_MinimaList.end(), LocMinSorter()); + + m_Scanbeam = ScanbeamList(); //clears/resets priority_queue + //reset all edges ... + for (MinimaList::iterator lm = m_MinimaList.begin(); lm != m_MinimaList.end(); ++lm) + { + InsertScanbeam(lm->Y); + TEdge* e = lm->LeftBound; + if (e) + { + e->Curr = e->Bot; + e->Side = esLeft; + e->OutIdx = Unassigned; + } + + e = lm->RightBound; + if (e) + { + e->Curr = e->Bot; + e->Side = esRight; + e->OutIdx = Unassigned; + } + } + m_ActiveEdges = 0; + m_CurrentLM = m_MinimaList.begin(); +} +//------------------------------------------------------------------------------ + +void ClipperBase::DisposeLocalMinimaList() +{ + m_MinimaList.clear(); + m_CurrentLM = m_MinimaList.begin(); +} +//------------------------------------------------------------------------------ + +bool ClipperBase::PopLocalMinima(cInt Y, const LocalMinimum *&locMin) +{ + if (m_CurrentLM == m_MinimaList.end() || (*m_CurrentLM).Y != Y) return false; + locMin = &(*m_CurrentLM); + ++m_CurrentLM; + return true; +} +//------------------------------------------------------------------------------ + +IntRect ClipperBase::GetBounds() +{ + IntRect result; + MinimaList::iterator lm = m_MinimaList.begin(); + if (lm == m_MinimaList.end()) + { + result.left = result.top = result.right = result.bottom = 0; + return result; + } + result.left = lm->LeftBound->Bot.X; + result.top = lm->LeftBound->Bot.Y; + result.right = lm->LeftBound->Bot.X; + result.bottom = lm->LeftBound->Bot.Y; + while (lm != m_MinimaList.end()) + { + //todo - needs fixing for open paths + result.bottom = std::max(result.bottom, lm->LeftBound->Bot.Y); + TEdge* e = lm->LeftBound; + for (;;) { + TEdge* bottomE = e; + while (e->NextInLML) + { + if (e->Bot.X < result.left) result.left = e->Bot.X; + if (e->Bot.X > result.right) result.right = e->Bot.X; + e = e->NextInLML; + } + result.left = std::min(result.left, e->Bot.X); + result.right = std::max(result.right, e->Bot.X); + result.left = std::min(result.left, e->Top.X); + result.right = std::max(result.right, e->Top.X); + result.top = std::min(result.top, e->Top.Y); + if (bottomE == lm->LeftBound) e = lm->RightBound; + else break; + } + ++lm; + } + return result; +} +//------------------------------------------------------------------------------ + +void ClipperBase::InsertScanbeam(const cInt Y) +{ + m_Scanbeam.push(Y); +} +//------------------------------------------------------------------------------ + +bool ClipperBase::PopScanbeam(cInt &Y) +{ + if (m_Scanbeam.empty()) return false; + Y = m_Scanbeam.top(); + m_Scanbeam.pop(); + while (!m_Scanbeam.empty() && Y == m_Scanbeam.top()) { m_Scanbeam.pop(); } // Pop duplicates. + return true; +} +//------------------------------------------------------------------------------ + +void ClipperBase::DisposeAllOutRecs(){ + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + DisposeOutRec(i); + m_PolyOuts.clear(); +} +//------------------------------------------------------------------------------ + +void ClipperBase::DisposeOutRec(PolyOutList::size_type index) +{ + OutRec *outRec = m_PolyOuts[index]; + if (outRec->Pts) DisposeOutPts(outRec->Pts); + delete outRec; + m_PolyOuts[index] = 0; +} +//------------------------------------------------------------------------------ + +void ClipperBase::DeleteFromAEL(TEdge *e) +{ + TEdge* AelPrev = e->PrevInAEL; + TEdge* AelNext = e->NextInAEL; + if (!AelPrev && !AelNext && (e != m_ActiveEdges)) return; //already deleted + if (AelPrev) AelPrev->NextInAEL = AelNext; + else m_ActiveEdges = AelNext; + if (AelNext) AelNext->PrevInAEL = AelPrev; + e->NextInAEL = 0; + e->PrevInAEL = 0; +} +//------------------------------------------------------------------------------ + +OutRec* ClipperBase::CreateOutRec() +{ + OutRec* result = new OutRec; + result->IsHole = false; + result->IsOpen = false; + result->FirstLeft = 0; + result->Pts = 0; + result->BottomPt = 0; + result->PolyNd = 0; + m_PolyOuts.push_back(result); + result->Idx = (int)m_PolyOuts.size() - 1; + return result; +} +//------------------------------------------------------------------------------ + +void ClipperBase::SwapPositionsInAEL(TEdge *Edge1, TEdge *Edge2) +{ + //check that one or other edge hasn't already been removed from AEL ... + if (Edge1->NextInAEL == Edge1->PrevInAEL || + Edge2->NextInAEL == Edge2->PrevInAEL) return; + + if (Edge1->NextInAEL == Edge2) + { + TEdge* Next = Edge2->NextInAEL; + if (Next) Next->PrevInAEL = Edge1; + TEdge* Prev = Edge1->PrevInAEL; + if (Prev) Prev->NextInAEL = Edge2; + Edge2->PrevInAEL = Prev; + Edge2->NextInAEL = Edge1; + Edge1->PrevInAEL = Edge2; + Edge1->NextInAEL = Next; + } + else if (Edge2->NextInAEL == Edge1) + { + TEdge* Next = Edge1->NextInAEL; + if (Next) Next->PrevInAEL = Edge2; + TEdge* Prev = Edge2->PrevInAEL; + if (Prev) Prev->NextInAEL = Edge1; + Edge1->PrevInAEL = Prev; + Edge1->NextInAEL = Edge2; + Edge2->PrevInAEL = Edge1; + Edge2->NextInAEL = Next; + } + else + { + TEdge* Next = Edge1->NextInAEL; + TEdge* Prev = Edge1->PrevInAEL; + Edge1->NextInAEL = Edge2->NextInAEL; + if (Edge1->NextInAEL) Edge1->NextInAEL->PrevInAEL = Edge1; + Edge1->PrevInAEL = Edge2->PrevInAEL; + if (Edge1->PrevInAEL) Edge1->PrevInAEL->NextInAEL = Edge1; + Edge2->NextInAEL = Next; + if (Edge2->NextInAEL) Edge2->NextInAEL->PrevInAEL = Edge2; + Edge2->PrevInAEL = Prev; + if (Edge2->PrevInAEL) Edge2->PrevInAEL->NextInAEL = Edge2; + } + + if (!Edge1->PrevInAEL) m_ActiveEdges = Edge1; + else if (!Edge2->PrevInAEL) m_ActiveEdges = Edge2; +} +//------------------------------------------------------------------------------ + +void ClipperBase::UpdateEdgeIntoAEL(TEdge *&e) +{ + if (!e->NextInLML) + throw clipperException("UpdateEdgeIntoAEL: invalid call"); + + e->NextInLML->OutIdx = e->OutIdx; + TEdge* AelPrev = e->PrevInAEL; + TEdge* AelNext = e->NextInAEL; + if (AelPrev) AelPrev->NextInAEL = e->NextInLML; + else m_ActiveEdges = e->NextInLML; + if (AelNext) AelNext->PrevInAEL = e->NextInLML; + e->NextInLML->Side = e->Side; + e->NextInLML->WindDelta = e->WindDelta; + e->NextInLML->WindCnt = e->WindCnt; + e->NextInLML->WindCnt2 = e->WindCnt2; + e = e->NextInLML; + e->Curr = e->Bot; + e->PrevInAEL = AelPrev; + e->NextInAEL = AelNext; + if (!IsHorizontal(*e)) InsertScanbeam(e->Top.Y); +} +//------------------------------------------------------------------------------ + +bool ClipperBase::LocalMinimaPending() +{ + return (m_CurrentLM != m_MinimaList.end()); +} + +//------------------------------------------------------------------------------ +// TClipper methods ... +//------------------------------------------------------------------------------ + +Clipper::Clipper(int initOptions) : ClipperBase() //constructor +{ + m_ExecuteLocked = false; + m_UseFullRange = false; + m_ReverseOutput = ((initOptions & ioReverseSolution) != 0); + m_StrictSimple = ((initOptions & ioStrictlySimple) != 0); + m_PreserveCollinear = ((initOptions & ioPreserveCollinear) != 0); + m_HasOpenPaths = false; +#ifdef use_xyz + m_ZFill = 0; +#endif +} +//------------------------------------------------------------------------------ + +#ifdef use_xyz +void Clipper::ZFillFunction(ZFillCallback zFillFunc) +{ + m_ZFill = zFillFunc; +} +//------------------------------------------------------------------------------ +#endif + +bool Clipper::Execute(ClipType clipType, Paths &solution, PolyFillType fillType) +{ + return Execute(clipType, solution, fillType, fillType); +} +//------------------------------------------------------------------------------ + +bool Clipper::Execute(ClipType clipType, PolyTree &polytree, PolyFillType fillType) +{ + return Execute(clipType, polytree, fillType, fillType); +} +//------------------------------------------------------------------------------ + +bool Clipper::Execute(ClipType clipType, Paths &solution, + PolyFillType subjFillType, PolyFillType clipFillType) +{ + if( m_ExecuteLocked ) return false; + if (m_HasOpenPaths) + throw clipperException("Error: PolyTree struct is needed for open path clipping."); + m_ExecuteLocked = true; + solution.resize(0); + m_SubjFillType = subjFillType; + m_ClipFillType = clipFillType; + m_ClipType = clipType; + m_UsingPolyTree = false; + bool succeeded = ExecuteInternal(); + if (succeeded) BuildResult(solution); + DisposeAllOutRecs(); + m_ExecuteLocked = false; + return succeeded; +} +//------------------------------------------------------------------------------ + +bool Clipper::Execute(ClipType clipType, PolyTree& polytree, + PolyFillType subjFillType, PolyFillType clipFillType) +{ + if( m_ExecuteLocked ) return false; + m_ExecuteLocked = true; + m_SubjFillType = subjFillType; + m_ClipFillType = clipFillType; + m_ClipType = clipType; + m_UsingPolyTree = true; + bool succeeded = ExecuteInternal(); + if (succeeded) BuildResult2(polytree); + DisposeAllOutRecs(); + m_ExecuteLocked = false; + return succeeded; +} +//------------------------------------------------------------------------------ + +void Clipper::FixHoleLinkage(OutRec &outrec) +{ + //skip OutRecs that (a) contain outermost polygons or + //(b) already have the correct owner/child linkage ... + if (!outrec.FirstLeft || + (outrec.IsHole != outrec.FirstLeft->IsHole && + outrec.FirstLeft->Pts)) return; + + OutRec* orfl = outrec.FirstLeft; + while (orfl && ((orfl->IsHole == outrec.IsHole) || !orfl->Pts)) + orfl = orfl->FirstLeft; + outrec.FirstLeft = orfl; +} +//------------------------------------------------------------------------------ + +bool Clipper::ExecuteInternal() +{ + bool succeeded = true; + try { + Reset(); + m_Maxima = MaximaList(); + m_SortedEdges = 0; + + succeeded = true; + cInt botY, topY; + if (!PopScanbeam(botY)) return false; + InsertLocalMinimaIntoAEL(botY); + while (PopScanbeam(topY) || LocalMinimaPending()) + { + ProcessHorizontals(); + ClearGhostJoins(); + if (!ProcessIntersections(topY)) + { + succeeded = false; + break; + } + ProcessEdgesAtTopOfScanbeam(topY); + botY = topY; + InsertLocalMinimaIntoAEL(botY); + } + } + catch(...) + { + succeeded = false; + } + + if (succeeded) + { + //fix orientations ... + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + OutRec *outRec = m_PolyOuts[i]; + if (!outRec->Pts || outRec->IsOpen) continue; + if ((outRec->IsHole ^ m_ReverseOutput) == (Area(*outRec) > 0)) + ReversePolyPtLinks(outRec->Pts); + } + + if (!m_Joins.empty()) JoinCommonEdges(); + + //unfortunately FixupOutPolygon() must be done after JoinCommonEdges() + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + OutRec *outRec = m_PolyOuts[i]; + if (!outRec->Pts) continue; + if (outRec->IsOpen) + FixupOutPolyline(*outRec); + else + FixupOutPolygon(*outRec); + } + + if (m_StrictSimple) DoSimplePolygons(); + } + + ClearJoins(); + ClearGhostJoins(); + return succeeded; +} +//------------------------------------------------------------------------------ + +void Clipper::SetWindingCount(TEdge &edge) +{ + TEdge *e = edge.PrevInAEL; + //find the edge of the same polytype that immediately preceeds 'edge' in AEL + while (e && ((e->PolyTyp != edge.PolyTyp) || (e->WindDelta == 0))) e = e->PrevInAEL; + if (!e) + { + if (edge.WindDelta == 0) + { + PolyFillType pft = (edge.PolyTyp == ptSubject ? m_SubjFillType : m_ClipFillType); + edge.WindCnt = (pft == pftNegative ? -1 : 1); + } + else + edge.WindCnt = edge.WindDelta; + edge.WindCnt2 = 0; + e = m_ActiveEdges; //ie get ready to calc WindCnt2 + } + else if (edge.WindDelta == 0 && m_ClipType != ctUnion) + { + edge.WindCnt = 1; + edge.WindCnt2 = e->WindCnt2; + e = e->NextInAEL; //ie get ready to calc WindCnt2 + } + else if (IsEvenOddFillType(edge)) + { + //EvenOdd filling ... + if (edge.WindDelta == 0) + { + //are we inside a subj polygon ... + bool Inside = true; + TEdge *e2 = e->PrevInAEL; + while (e2) + { + if (e2->PolyTyp == e->PolyTyp && e2->WindDelta != 0) + Inside = !Inside; + e2 = e2->PrevInAEL; + } + edge.WindCnt = (Inside ? 0 : 1); + } + else + { + edge.WindCnt = edge.WindDelta; + } + edge.WindCnt2 = e->WindCnt2; + e = e->NextInAEL; //ie get ready to calc WindCnt2 + } + else + { + //nonZero, Positive or Negative filling ... + if (e->WindCnt * e->WindDelta < 0) + { + //prev edge is 'decreasing' WindCount (WC) toward zero + //so we're outside the previous polygon ... + if (Abs(e->WindCnt) > 1) + { + //outside prev poly but still inside another. + //when reversing direction of prev poly use the same WC + if (e->WindDelta * edge.WindDelta < 0) edge.WindCnt = e->WindCnt; + //otherwise continue to 'decrease' WC ... + else edge.WindCnt = e->WindCnt + edge.WindDelta; + } + else + //now outside all polys of same polytype so set own WC ... + edge.WindCnt = (edge.WindDelta == 0 ? 1 : edge.WindDelta); + } else + { + //prev edge is 'increasing' WindCount (WC) away from zero + //so we're inside the previous polygon ... + if (edge.WindDelta == 0) + edge.WindCnt = (e->WindCnt < 0 ? e->WindCnt - 1 : e->WindCnt + 1); + //if wind direction is reversing prev then use same WC + else if (e->WindDelta * edge.WindDelta < 0) edge.WindCnt = e->WindCnt; + //otherwise add to WC ... + else edge.WindCnt = e->WindCnt + edge.WindDelta; + } + edge.WindCnt2 = e->WindCnt2; + e = e->NextInAEL; //ie get ready to calc WindCnt2 + } + + //update WindCnt2 ... + if (IsEvenOddAltFillType(edge)) + { + //EvenOdd filling ... + while (e != &edge) + { + if (e->WindDelta != 0) + edge.WindCnt2 = (edge.WindCnt2 == 0 ? 1 : 0); + e = e->NextInAEL; + } + } else + { + //nonZero, Positive or Negative filling ... + while ( e != &edge ) + { + edge.WindCnt2 += e->WindDelta; + e = e->NextInAEL; + } + } +} +//------------------------------------------------------------------------------ + +bool Clipper::IsEvenOddFillType(const TEdge& edge) const +{ + if (edge.PolyTyp == ptSubject) + return m_SubjFillType == pftEvenOdd; else + return m_ClipFillType == pftEvenOdd; +} +//------------------------------------------------------------------------------ + +bool Clipper::IsEvenOddAltFillType(const TEdge& edge) const +{ + if (edge.PolyTyp == ptSubject) + return m_ClipFillType == pftEvenOdd; else + return m_SubjFillType == pftEvenOdd; +} +//------------------------------------------------------------------------------ + +bool Clipper::IsContributing(const TEdge& edge) const +{ + PolyFillType pft, pft2; + if (edge.PolyTyp == ptSubject) + { + pft = m_SubjFillType; + pft2 = m_ClipFillType; + } else + { + pft = m_ClipFillType; + pft2 = m_SubjFillType; + } + + switch(pft) + { + case pftEvenOdd: + //return false if a subj line has been flagged as inside a subj polygon + if (edge.WindDelta == 0 && edge.WindCnt != 1) return false; + break; + case pftNonZero: + if (Abs(edge.WindCnt) != 1) return false; + break; + case pftPositive: + if (edge.WindCnt != 1) return false; + break; + default: //pftNegative + if (edge.WindCnt != -1) return false; + } + + switch(m_ClipType) + { + case ctIntersection: + switch(pft2) + { + case pftEvenOdd: + case pftNonZero: + return (edge.WindCnt2 != 0); + case pftPositive: + return (edge.WindCnt2 > 0); + default: + return (edge.WindCnt2 < 0); + } + break; + case ctUnion: + switch(pft2) + { + case pftEvenOdd: + case pftNonZero: + return (edge.WindCnt2 == 0); + case pftPositive: + return (edge.WindCnt2 <= 0); + default: + return (edge.WindCnt2 >= 0); + } + break; + case ctDifference: + if (edge.PolyTyp == ptSubject) + switch(pft2) + { + case pftEvenOdd: + case pftNonZero: + return (edge.WindCnt2 == 0); + case pftPositive: + return (edge.WindCnt2 <= 0); + default: + return (edge.WindCnt2 >= 0); + } + else + switch(pft2) + { + case pftEvenOdd: + case pftNonZero: + return (edge.WindCnt2 != 0); + case pftPositive: + return (edge.WindCnt2 > 0); + default: + return (edge.WindCnt2 < 0); + } + break; + case ctXor: + if (edge.WindDelta == 0) //XOr always contributing unless open + switch(pft2) + { + case pftEvenOdd: + case pftNonZero: + return (edge.WindCnt2 == 0); + case pftPositive: + return (edge.WindCnt2 <= 0); + default: + return (edge.WindCnt2 >= 0); + } + else + return true; + break; + default: + return true; + } +} +//------------------------------------------------------------------------------ + +OutPt* Clipper::AddLocalMinPoly(TEdge *e1, TEdge *e2, const IntPoint &Pt) +{ + OutPt* result; + TEdge *e, *prevE; + if (IsHorizontal(*e2) || ( e1->Dx > e2->Dx )) + { + result = AddOutPt(e1, Pt); + e2->OutIdx = e1->OutIdx; + e1->Side = esLeft; + e2->Side = esRight; + e = e1; + if (e->PrevInAEL == e2) + prevE = e2->PrevInAEL; + else + prevE = e->PrevInAEL; + } else + { + result = AddOutPt(e2, Pt); + e1->OutIdx = e2->OutIdx; + e1->Side = esRight; + e2->Side = esLeft; + e = e2; + if (e->PrevInAEL == e1) + prevE = e1->PrevInAEL; + else + prevE = e->PrevInAEL; + } + + if (prevE && prevE->OutIdx >= 0) + { + cInt xPrev = TopX(*prevE, Pt.Y); + cInt xE = TopX(*e, Pt.Y); + if (xPrev == xE && (e->WindDelta != 0) && (prevE->WindDelta != 0) && + SlopesEqual(IntPoint(xPrev, Pt.Y), prevE->Top, IntPoint(xE, Pt.Y), e->Top, m_UseFullRange)) + { + OutPt* outPt = AddOutPt(prevE, Pt); + AddJoin(result, outPt, e->Top); + } + } + return result; +} +//------------------------------------------------------------------------------ + +void Clipper::AddLocalMaxPoly(TEdge *e1, TEdge *e2, const IntPoint &Pt) +{ + AddOutPt( e1, Pt ); + if (e2->WindDelta == 0) AddOutPt(e2, Pt); + if( e1->OutIdx == e2->OutIdx ) + { + e1->OutIdx = Unassigned; + e2->OutIdx = Unassigned; + } + else if (e1->OutIdx < e2->OutIdx) + AppendPolygon(e1, e2); + else + AppendPolygon(e2, e1); +} +//------------------------------------------------------------------------------ + +void Clipper::AddEdgeToSEL(TEdge *edge) +{ + //SEL pointers in PEdge are reused to build a list of horizontal edges. + //However, we don't need to worry about order with horizontal edge processing. + if( !m_SortedEdges ) + { + m_SortedEdges = edge; + edge->PrevInSEL = 0; + edge->NextInSEL = 0; + } + else + { + edge->NextInSEL = m_SortedEdges; + edge->PrevInSEL = 0; + m_SortedEdges->PrevInSEL = edge; + m_SortedEdges = edge; + } +} +//------------------------------------------------------------------------------ + +bool Clipper::PopEdgeFromSEL(TEdge *&edge) +{ + if (!m_SortedEdges) return false; + edge = m_SortedEdges; + DeleteFromSEL(m_SortedEdges); + return true; +} +//------------------------------------------------------------------------------ + +void Clipper::CopyAELToSEL() +{ + TEdge* e = m_ActiveEdges; + m_SortedEdges = e; + while ( e ) + { + e->PrevInSEL = e->PrevInAEL; + e->NextInSEL = e->NextInAEL; + e = e->NextInAEL; + } +} +//------------------------------------------------------------------------------ + +void Clipper::AddJoin(OutPt *op1, OutPt *op2, const IntPoint OffPt) +{ + Join* j = new Join; + j->OutPt1 = op1; + j->OutPt2 = op2; + j->OffPt = OffPt; + m_Joins.push_back(j); +} +//------------------------------------------------------------------------------ + +void Clipper::ClearJoins() +{ + for (JoinList::size_type i = 0; i < m_Joins.size(); i++) + delete m_Joins[i]; + m_Joins.resize(0); +} +//------------------------------------------------------------------------------ + +void Clipper::ClearGhostJoins() +{ + for (JoinList::size_type i = 0; i < m_GhostJoins.size(); i++) + delete m_GhostJoins[i]; + m_GhostJoins.resize(0); +} +//------------------------------------------------------------------------------ + +void Clipper::AddGhostJoin(OutPt *op, const IntPoint OffPt) +{ + Join* j = new Join; + j->OutPt1 = op; + j->OutPt2 = 0; + j->OffPt = OffPt; + m_GhostJoins.push_back(j); +} +//------------------------------------------------------------------------------ + +void Clipper::InsertLocalMinimaIntoAEL(const cInt botY) +{ + const LocalMinimum *lm; + while (PopLocalMinima(botY, lm)) + { + TEdge* lb = lm->LeftBound; + TEdge* rb = lm->RightBound; + + OutPt *Op1 = 0; + if (!lb) + { + //nb: don't insert LB into either AEL or SEL + InsertEdgeIntoAEL(rb, 0); + SetWindingCount(*rb); + if (IsContributing(*rb)) + Op1 = AddOutPt(rb, rb->Bot); + } + else if (!rb) + { + InsertEdgeIntoAEL(lb, 0); + SetWindingCount(*lb); + if (IsContributing(*lb)) + Op1 = AddOutPt(lb, lb->Bot); + InsertScanbeam(lb->Top.Y); + } + else + { + InsertEdgeIntoAEL(lb, 0); + InsertEdgeIntoAEL(rb, lb); + SetWindingCount( *lb ); + rb->WindCnt = lb->WindCnt; + rb->WindCnt2 = lb->WindCnt2; + if (IsContributing(*lb)) + Op1 = AddLocalMinPoly(lb, rb, lb->Bot); + InsertScanbeam(lb->Top.Y); + } + + if (rb) + { + if (IsHorizontal(*rb)) + { + AddEdgeToSEL(rb); + if (rb->NextInLML) + InsertScanbeam(rb->NextInLML->Top.Y); + } + else InsertScanbeam( rb->Top.Y ); + } + + if (!lb || !rb) continue; + + //if any output polygons share an edge, they'll need joining later ... + if (Op1 && IsHorizontal(*rb) && + m_GhostJoins.size() > 0 && (rb->WindDelta != 0)) + { + for (JoinList::size_type i = 0; i < m_GhostJoins.size(); ++i) + { + Join* jr = m_GhostJoins[i]; + //if the horizontal Rb and a 'ghost' horizontal overlap, then convert + //the 'ghost' join to a real join ready for later ... + if (HorzSegmentsOverlap(jr->OutPt1->Pt.X, jr->OffPt.X, rb->Bot.X, rb->Top.X)) + AddJoin(jr->OutPt1, Op1, jr->OffPt); + } + } + + if (lb->OutIdx >= 0 && lb->PrevInAEL && + lb->PrevInAEL->Curr.X == lb->Bot.X && + lb->PrevInAEL->OutIdx >= 0 && + SlopesEqual(lb->PrevInAEL->Bot, lb->PrevInAEL->Top, lb->Curr, lb->Top, m_UseFullRange) && + (lb->WindDelta != 0) && (lb->PrevInAEL->WindDelta != 0)) + { + OutPt *Op2 = AddOutPt(lb->PrevInAEL, lb->Bot); + AddJoin(Op1, Op2, lb->Top); + } + + if(lb->NextInAEL != rb) + { + + if (rb->OutIdx >= 0 && rb->PrevInAEL->OutIdx >= 0 && + SlopesEqual(rb->PrevInAEL->Curr, rb->PrevInAEL->Top, rb->Curr, rb->Top, m_UseFullRange) && + (rb->WindDelta != 0) && (rb->PrevInAEL->WindDelta != 0)) + { + OutPt *Op2 = AddOutPt(rb->PrevInAEL, rb->Bot); + AddJoin(Op1, Op2, rb->Top); + } + + TEdge* e = lb->NextInAEL; + if (e) + { + while( e != rb ) + { + //nb: For calculating winding counts etc, IntersectEdges() assumes + //that param1 will be to the Right of param2 ABOVE the intersection ... + IntersectEdges(rb , e , lb->Curr); //order important here + e = e->NextInAEL; + } + } + } + + } +} +//------------------------------------------------------------------------------ + +void Clipper::DeleteFromSEL(TEdge *e) +{ + TEdge* SelPrev = e->PrevInSEL; + TEdge* SelNext = e->NextInSEL; + if( !SelPrev && !SelNext && (e != m_SortedEdges) ) return; //already deleted + if( SelPrev ) SelPrev->NextInSEL = SelNext; + else m_SortedEdges = SelNext; + if( SelNext ) SelNext->PrevInSEL = SelPrev; + e->NextInSEL = 0; + e->PrevInSEL = 0; +} +//------------------------------------------------------------------------------ + +#ifdef use_xyz +void Clipper::SetZ(IntPoint& pt, TEdge& e1, TEdge& e2) +{ + if (pt.Z != 0 || !m_ZFill) return; + else if (pt == e1.Bot) pt.Z = e1.Bot.Z; + else if (pt == e1.Top) pt.Z = e1.Top.Z; + else if (pt == e2.Bot) pt.Z = e2.Bot.Z; + else if (pt == e2.Top) pt.Z = e2.Top.Z; + else (*m_ZFill)(e1.Bot, e1.Top, e2.Bot, e2.Top, pt); +} +//------------------------------------------------------------------------------ +#endif + +void Clipper::IntersectEdges(TEdge *e1, TEdge *e2, IntPoint &Pt) +{ + bool e1Contributing = ( e1->OutIdx >= 0 ); + bool e2Contributing = ( e2->OutIdx >= 0 ); + +#ifdef use_xyz + SetZ(Pt, *e1, *e2); +#endif + +#ifdef use_lines + //if either edge is on an OPEN path ... + if (e1->WindDelta == 0 || e2->WindDelta == 0) + { + //ignore subject-subject open path intersections UNLESS they + //are both open paths, AND they are both 'contributing maximas' ... + if (e1->WindDelta == 0 && e2->WindDelta == 0) return; + + //if intersecting a subj line with a subj poly ... + else if (e1->PolyTyp == e2->PolyTyp && + e1->WindDelta != e2->WindDelta && m_ClipType == ctUnion) + { + if (e1->WindDelta == 0) + { + if (e2Contributing) + { + AddOutPt(e1, Pt); + if (e1Contributing) e1->OutIdx = Unassigned; + } + } + else + { + if (e1Contributing) + { + AddOutPt(e2, Pt); + if (e2Contributing) e2->OutIdx = Unassigned; + } + } + } + else if (e1->PolyTyp != e2->PolyTyp) + { + //toggle subj open path OutIdx on/off when Abs(clip.WndCnt) == 1 ... + if ((e1->WindDelta == 0) && abs(e2->WindCnt) == 1 && + (m_ClipType != ctUnion || e2->WindCnt2 == 0)) + { + AddOutPt(e1, Pt); + if (e1Contributing) e1->OutIdx = Unassigned; + } + else if ((e2->WindDelta == 0) && (abs(e1->WindCnt) == 1) && + (m_ClipType != ctUnion || e1->WindCnt2 == 0)) + { + AddOutPt(e2, Pt); + if (e2Contributing) e2->OutIdx = Unassigned; + } + } + return; + } +#endif + + //update winding counts... + //assumes that e1 will be to the Right of e2 ABOVE the intersection + if ( e1->PolyTyp == e2->PolyTyp ) + { + if ( IsEvenOddFillType( *e1) ) + { + int oldE1WindCnt = e1->WindCnt; + e1->WindCnt = e2->WindCnt; + e2->WindCnt = oldE1WindCnt; + } else + { + if (e1->WindCnt + e2->WindDelta == 0 ) e1->WindCnt = -e1->WindCnt; + else e1->WindCnt += e2->WindDelta; + if ( e2->WindCnt - e1->WindDelta == 0 ) e2->WindCnt = -e2->WindCnt; + else e2->WindCnt -= e1->WindDelta; + } + } else + { + if (!IsEvenOddFillType(*e2)) e1->WindCnt2 += e2->WindDelta; + else e1->WindCnt2 = ( e1->WindCnt2 == 0 ) ? 1 : 0; + if (!IsEvenOddFillType(*e1)) e2->WindCnt2 -= e1->WindDelta; + else e2->WindCnt2 = ( e2->WindCnt2 == 0 ) ? 1 : 0; + } + + PolyFillType e1FillType, e2FillType, e1FillType2, e2FillType2; + if (e1->PolyTyp == ptSubject) + { + e1FillType = m_SubjFillType; + e1FillType2 = m_ClipFillType; + } else + { + e1FillType = m_ClipFillType; + e1FillType2 = m_SubjFillType; + } + if (e2->PolyTyp == ptSubject) + { + e2FillType = m_SubjFillType; + e2FillType2 = m_ClipFillType; + } else + { + e2FillType = m_ClipFillType; + e2FillType2 = m_SubjFillType; + } + + cInt e1Wc, e2Wc; + switch (e1FillType) + { + case pftPositive: e1Wc = e1->WindCnt; break; + case pftNegative: e1Wc = -e1->WindCnt; break; + default: e1Wc = Abs(e1->WindCnt); + } + switch(e2FillType) + { + case pftPositive: e2Wc = e2->WindCnt; break; + case pftNegative: e2Wc = -e2->WindCnt; break; + default: e2Wc = Abs(e2->WindCnt); + } + + if ( e1Contributing && e2Contributing ) + { + if ((e1Wc != 0 && e1Wc != 1) || (e2Wc != 0 && e2Wc != 1) || + (e1->PolyTyp != e2->PolyTyp && m_ClipType != ctXor) ) + { + AddLocalMaxPoly(e1, e2, Pt); + } + else + { + AddOutPt(e1, Pt); + AddOutPt(e2, Pt); + SwapSides( *e1 , *e2 ); + SwapPolyIndexes( *e1 , *e2 ); + } + } + else if ( e1Contributing ) + { + if (e2Wc == 0 || e2Wc == 1) + { + AddOutPt(e1, Pt); + SwapSides(*e1, *e2); + SwapPolyIndexes(*e1, *e2); + } + } + else if ( e2Contributing ) + { + if (e1Wc == 0 || e1Wc == 1) + { + AddOutPt(e2, Pt); + SwapSides(*e1, *e2); + SwapPolyIndexes(*e1, *e2); + } + } + else if ( (e1Wc == 0 || e1Wc == 1) && (e2Wc == 0 || e2Wc == 1)) + { + //neither edge is currently contributing ... + + cInt e1Wc2, e2Wc2; + switch (e1FillType2) + { + case pftPositive: e1Wc2 = e1->WindCnt2; break; + case pftNegative : e1Wc2 = -e1->WindCnt2; break; + default: e1Wc2 = Abs(e1->WindCnt2); + } + switch (e2FillType2) + { + case pftPositive: e2Wc2 = e2->WindCnt2; break; + case pftNegative: e2Wc2 = -e2->WindCnt2; break; + default: e2Wc2 = Abs(e2->WindCnt2); + } + + if (e1->PolyTyp != e2->PolyTyp) + { + AddLocalMinPoly(e1, e2, Pt); + } + else if (e1Wc == 1 && e2Wc == 1) + switch( m_ClipType ) { + case ctIntersection: + if (e1Wc2 > 0 && e2Wc2 > 0) + AddLocalMinPoly(e1, e2, Pt); + break; + case ctUnion: + if ( e1Wc2 <= 0 && e2Wc2 <= 0 ) + AddLocalMinPoly(e1, e2, Pt); + break; + case ctDifference: + if (((e1->PolyTyp == ptClip) && (e1Wc2 > 0) && (e2Wc2 > 0)) || + ((e1->PolyTyp == ptSubject) && (e1Wc2 <= 0) && (e2Wc2 <= 0))) + AddLocalMinPoly(e1, e2, Pt); + break; + case ctXor: + AddLocalMinPoly(e1, e2, Pt); + } + else + SwapSides( *e1, *e2 ); + } +} +//------------------------------------------------------------------------------ + +void Clipper::SetHoleState(TEdge *e, OutRec *outrec) +{ + TEdge *e2 = e->PrevInAEL; + TEdge *eTmp = 0; + while (e2) + { + if (e2->OutIdx >= 0 && e2->WindDelta != 0) + { + if (!eTmp) eTmp = e2; + else if (eTmp->OutIdx == e2->OutIdx) eTmp = 0; + } + e2 = e2->PrevInAEL; + } + if (!eTmp) + { + outrec->FirstLeft = 0; + outrec->IsHole = false; + } + else + { + outrec->FirstLeft = m_PolyOuts[eTmp->OutIdx]; + outrec->IsHole = !outrec->FirstLeft->IsHole; + } +} +//------------------------------------------------------------------------------ + +OutRec* GetLowermostRec(OutRec *outRec1, OutRec *outRec2) +{ + //work out which polygon fragment has the correct hole state ... + if (!outRec1->BottomPt) + outRec1->BottomPt = GetBottomPt(outRec1->Pts); + if (!outRec2->BottomPt) + outRec2->BottomPt = GetBottomPt(outRec2->Pts); + OutPt *OutPt1 = outRec1->BottomPt; + OutPt *OutPt2 = outRec2->BottomPt; + if (OutPt1->Pt.Y > OutPt2->Pt.Y) return outRec1; + else if (OutPt1->Pt.Y < OutPt2->Pt.Y) return outRec2; + else if (OutPt1->Pt.X < OutPt2->Pt.X) return outRec1; + else if (OutPt1->Pt.X > OutPt2->Pt.X) return outRec2; + else if (OutPt1->Next == OutPt1) return outRec2; + else if (OutPt2->Next == OutPt2) return outRec1; + else if (FirstIsBottomPt(OutPt1, OutPt2)) return outRec1; + else return outRec2; +} +//------------------------------------------------------------------------------ + +bool OutRec1RightOfOutRec2(OutRec* outRec1, OutRec* outRec2) +{ + do + { + outRec1 = outRec1->FirstLeft; + if (outRec1 == outRec2) return true; + } while (outRec1); + return false; +} +//------------------------------------------------------------------------------ + +OutRec* Clipper::GetOutRec(int Idx) +{ + OutRec* outrec = m_PolyOuts[Idx]; + while (outrec != m_PolyOuts[outrec->Idx]) + outrec = m_PolyOuts[outrec->Idx]; + return outrec; +} +//------------------------------------------------------------------------------ + +void Clipper::AppendPolygon(TEdge *e1, TEdge *e2) +{ + //get the start and ends of both output polygons ... + OutRec *outRec1 = m_PolyOuts[e1->OutIdx]; + OutRec *outRec2 = m_PolyOuts[e2->OutIdx]; + + OutRec *holeStateRec; + if (OutRec1RightOfOutRec2(outRec1, outRec2)) + holeStateRec = outRec2; + else if (OutRec1RightOfOutRec2(outRec2, outRec1)) + holeStateRec = outRec1; + else + holeStateRec = GetLowermostRec(outRec1, outRec2); + + //get the start and ends of both output polygons and + //join e2 poly onto e1 poly and delete pointers to e2 ... + + OutPt* p1_lft = outRec1->Pts; + OutPt* p1_rt = p1_lft->Prev; + OutPt* p2_lft = outRec2->Pts; + OutPt* p2_rt = p2_lft->Prev; + + //join e2 poly onto e1 poly and delete pointers to e2 ... + if( e1->Side == esLeft ) + { + if( e2->Side == esLeft ) + { + //z y x a b c + ReversePolyPtLinks(p2_lft); + p2_lft->Next = p1_lft; + p1_lft->Prev = p2_lft; + p1_rt->Next = p2_rt; + p2_rt->Prev = p1_rt; + outRec1->Pts = p2_rt; + } else + { + //x y z a b c + p2_rt->Next = p1_lft; + p1_lft->Prev = p2_rt; + p2_lft->Prev = p1_rt; + p1_rt->Next = p2_lft; + outRec1->Pts = p2_lft; + } + } else + { + if( e2->Side == esRight ) + { + //a b c z y x + ReversePolyPtLinks(p2_lft); + p1_rt->Next = p2_rt; + p2_rt->Prev = p1_rt; + p2_lft->Next = p1_lft; + p1_lft->Prev = p2_lft; + } else + { + //a b c x y z + p1_rt->Next = p2_lft; + p2_lft->Prev = p1_rt; + p1_lft->Prev = p2_rt; + p2_rt->Next = p1_lft; + } + } + + outRec1->BottomPt = 0; + if (holeStateRec == outRec2) + { + if (outRec2->FirstLeft != outRec1) + outRec1->FirstLeft = outRec2->FirstLeft; + outRec1->IsHole = outRec2->IsHole; + } + outRec2->Pts = 0; + outRec2->BottomPt = 0; + outRec2->FirstLeft = outRec1; + + int OKIdx = e1->OutIdx; + int ObsoleteIdx = e2->OutIdx; + + e1->OutIdx = Unassigned; //nb: safe because we only get here via AddLocalMaxPoly + e2->OutIdx = Unassigned; + + TEdge* e = m_ActiveEdges; + while( e ) + { + if( e->OutIdx == ObsoleteIdx ) + { + e->OutIdx = OKIdx; + e->Side = e1->Side; + break; + } + e = e->NextInAEL; + } + + outRec2->Idx = outRec1->Idx; +} +//------------------------------------------------------------------------------ + +OutPt* Clipper::AddOutPt(TEdge *e, const IntPoint &pt) +{ + if( e->OutIdx < 0 ) + { + OutRec *outRec = CreateOutRec(); + outRec->IsOpen = (e->WindDelta == 0); + OutPt* newOp = new OutPt; + outRec->Pts = newOp; + newOp->Idx = outRec->Idx; + newOp->Pt = pt; + newOp->Next = newOp; + newOp->Prev = newOp; + if (!outRec->IsOpen) + SetHoleState(e, outRec); + e->OutIdx = outRec->Idx; + return newOp; + } else + { + OutRec *outRec = m_PolyOuts[e->OutIdx]; + //OutRec.Pts is the 'Left-most' point & OutRec.Pts.Prev is the 'Right-most' + OutPt* op = outRec->Pts; + + bool ToFront = (e->Side == esLeft); + if (ToFront && (pt == op->Pt)) return op; + else if (!ToFront && (pt == op->Prev->Pt)) return op->Prev; + + OutPt* newOp = new OutPt; + newOp->Idx = outRec->Idx; + newOp->Pt = pt; + newOp->Next = op; + newOp->Prev = op->Prev; + newOp->Prev->Next = newOp; + op->Prev = newOp; + if (ToFront) outRec->Pts = newOp; + return newOp; + } +} +//------------------------------------------------------------------------------ + +OutPt* Clipper::GetLastOutPt(TEdge *e) +{ + OutRec *outRec = m_PolyOuts[e->OutIdx]; + if (e->Side == esLeft) + return outRec->Pts; + else + return outRec->Pts->Prev; +} +//------------------------------------------------------------------------------ + +void Clipper::ProcessHorizontals() +{ + TEdge* horzEdge; + while (PopEdgeFromSEL(horzEdge)) + ProcessHorizontal(horzEdge); +} +//------------------------------------------------------------------------------ + +inline bool IsMinima(TEdge *e) +{ + return e && (e->Prev->NextInLML != e) && (e->Next->NextInLML != e); +} +//------------------------------------------------------------------------------ + +inline bool IsMaxima(TEdge *e, const cInt Y) +{ + return e && e->Top.Y == Y && !e->NextInLML; +} +//------------------------------------------------------------------------------ + +inline bool IsIntermediate(TEdge *e, const cInt Y) +{ + return e->Top.Y == Y && e->NextInLML; +} +//------------------------------------------------------------------------------ + +TEdge *GetMaximaPair(TEdge *e) +{ + if ((e->Next->Top == e->Top) && !e->Next->NextInLML) + return e->Next; + else if ((e->Prev->Top == e->Top) && !e->Prev->NextInLML) + return e->Prev; + else return 0; +} +//------------------------------------------------------------------------------ + +TEdge *GetMaximaPairEx(TEdge *e) +{ + //as GetMaximaPair() but returns 0 if MaxPair isn't in AEL (unless it's horizontal) + TEdge* result = GetMaximaPair(e); + if (result && (result->OutIdx == Skip || + (result->NextInAEL == result->PrevInAEL && !IsHorizontal(*result)))) return 0; + return result; +} +//------------------------------------------------------------------------------ + +void Clipper::SwapPositionsInSEL(TEdge *Edge1, TEdge *Edge2) +{ + if( !( Edge1->NextInSEL ) && !( Edge1->PrevInSEL ) ) return; + if( !( Edge2->NextInSEL ) && !( Edge2->PrevInSEL ) ) return; + + if( Edge1->NextInSEL == Edge2 ) + { + TEdge* Next = Edge2->NextInSEL; + if( Next ) Next->PrevInSEL = Edge1; + TEdge* Prev = Edge1->PrevInSEL; + if( Prev ) Prev->NextInSEL = Edge2; + Edge2->PrevInSEL = Prev; + Edge2->NextInSEL = Edge1; + Edge1->PrevInSEL = Edge2; + Edge1->NextInSEL = Next; + } + else if( Edge2->NextInSEL == Edge1 ) + { + TEdge* Next = Edge1->NextInSEL; + if( Next ) Next->PrevInSEL = Edge2; + TEdge* Prev = Edge2->PrevInSEL; + if( Prev ) Prev->NextInSEL = Edge1; + Edge1->PrevInSEL = Prev; + Edge1->NextInSEL = Edge2; + Edge2->PrevInSEL = Edge1; + Edge2->NextInSEL = Next; + } + else + { + TEdge* Next = Edge1->NextInSEL; + TEdge* Prev = Edge1->PrevInSEL; + Edge1->NextInSEL = Edge2->NextInSEL; + if( Edge1->NextInSEL ) Edge1->NextInSEL->PrevInSEL = Edge1; + Edge1->PrevInSEL = Edge2->PrevInSEL; + if( Edge1->PrevInSEL ) Edge1->PrevInSEL->NextInSEL = Edge1; + Edge2->NextInSEL = Next; + if( Edge2->NextInSEL ) Edge2->NextInSEL->PrevInSEL = Edge2; + Edge2->PrevInSEL = Prev; + if( Edge2->PrevInSEL ) Edge2->PrevInSEL->NextInSEL = Edge2; + } + + if( !Edge1->PrevInSEL ) m_SortedEdges = Edge1; + else if( !Edge2->PrevInSEL ) m_SortedEdges = Edge2; +} +//------------------------------------------------------------------------------ + +TEdge* GetNextInAEL(TEdge *e, Direction dir) +{ + return dir == dLeftToRight ? e->NextInAEL : e->PrevInAEL; +} +//------------------------------------------------------------------------------ + +void GetHorzDirection(TEdge& HorzEdge, Direction& Dir, cInt& Left, cInt& Right) +{ + if (HorzEdge.Bot.X < HorzEdge.Top.X) + { + Left = HorzEdge.Bot.X; + Right = HorzEdge.Top.X; + Dir = dLeftToRight; + } else + { + Left = HorzEdge.Top.X; + Right = HorzEdge.Bot.X; + Dir = dRightToLeft; + } +} +//------------------------------------------------------------------------ + +/******************************************************************************* +* Notes: Horizontal edges (HEs) at scanline intersections (ie at the Top or * +* Bottom of a scanbeam) are processed as if layered. The order in which HEs * +* are processed doesn't matter. HEs intersect with other HE Bot.Xs only [#] * +* (or they could intersect with Top.Xs only, ie EITHER Bot.Xs OR Top.Xs), * +* and with other non-horizontal edges [*]. Once these intersections are * +* processed, intermediate HEs then 'promote' the Edge above (NextInLML) into * +* the AEL. These 'promoted' edges may in turn intersect [%] with other HEs. * +*******************************************************************************/ + +void Clipper::ProcessHorizontal(TEdge *horzEdge) +{ + Direction dir; + cInt horzLeft, horzRight; + bool IsOpen = (horzEdge->WindDelta == 0); + + GetHorzDirection(*horzEdge, dir, horzLeft, horzRight); + + TEdge* eLastHorz = horzEdge, *eMaxPair = 0; + while (eLastHorz->NextInLML && IsHorizontal(*eLastHorz->NextInLML)) + eLastHorz = eLastHorz->NextInLML; + if (!eLastHorz->NextInLML) + eMaxPair = GetMaximaPair(eLastHorz); + + MaximaList::const_iterator maxIt; + MaximaList::const_reverse_iterator maxRit; + if (m_Maxima.size() > 0) + { + //get the first maxima in range (X) ... + if (dir == dLeftToRight) + { + maxIt = m_Maxima.begin(); + while (maxIt != m_Maxima.end() && *maxIt <= horzEdge->Bot.X) maxIt++; + if (maxIt != m_Maxima.end() && *maxIt >= eLastHorz->Top.X) + maxIt = m_Maxima.end(); + } + else + { + maxRit = m_Maxima.rbegin(); + while (maxRit != m_Maxima.rend() && *maxRit > horzEdge->Bot.X) maxRit++; + if (maxRit != m_Maxima.rend() && *maxRit <= eLastHorz->Top.X) + maxRit = m_Maxima.rend(); + } + } + + OutPt* op1 = 0; + + for (;;) //loop through consec. horizontal edges + { + + bool IsLastHorz = (horzEdge == eLastHorz); + TEdge* e = GetNextInAEL(horzEdge, dir); + while(e) + { + + //this code block inserts extra coords into horizontal edges (in output + //polygons) whereever maxima touch these horizontal edges. This helps + //'simplifying' polygons (ie if the Simplify property is set). + if (m_Maxima.size() > 0) + { + if (dir == dLeftToRight) + { + while (maxIt != m_Maxima.end() && *maxIt < e->Curr.X) + { + if (horzEdge->OutIdx >= 0 && !IsOpen) + AddOutPt(horzEdge, IntPoint(*maxIt, horzEdge->Bot.Y)); + maxIt++; + } + } + else + { + while (maxRit != m_Maxima.rend() && *maxRit > e->Curr.X) + { + if (horzEdge->OutIdx >= 0 && !IsOpen) + AddOutPt(horzEdge, IntPoint(*maxRit, horzEdge->Bot.Y)); + maxRit++; + } + } + }; + + if ((dir == dLeftToRight && e->Curr.X > horzRight) || + (dir == dRightToLeft && e->Curr.X < horzLeft)) break; + + //Also break if we've got to the end of an intermediate horizontal edge ... + //nb: Smaller Dx's are to the right of larger Dx's ABOVE the horizontal. + if (e->Curr.X == horzEdge->Top.X && horzEdge->NextInLML && + e->Dx < horzEdge->NextInLML->Dx) break; + + if (horzEdge->OutIdx >= 0 && !IsOpen) //note: may be done multiple times + { + op1 = AddOutPt(horzEdge, e->Curr); + TEdge* eNextHorz = m_SortedEdges; + while (eNextHorz) + { + if (eNextHorz->OutIdx >= 0 && + HorzSegmentsOverlap(horzEdge->Bot.X, + horzEdge->Top.X, eNextHorz->Bot.X, eNextHorz->Top.X)) + { + OutPt* op2 = GetLastOutPt(eNextHorz); + AddJoin(op2, op1, eNextHorz->Top); + } + eNextHorz = eNextHorz->NextInSEL; + } + AddGhostJoin(op1, horzEdge->Bot); + } + + //OK, so far we're still in range of the horizontal Edge but make sure + //we're at the last of consec. horizontals when matching with eMaxPair + if(e == eMaxPair && IsLastHorz) + { + if (horzEdge->OutIdx >= 0) + AddLocalMaxPoly(horzEdge, eMaxPair, horzEdge->Top); + DeleteFromAEL(horzEdge); + DeleteFromAEL(eMaxPair); + return; + } + + if(dir == dLeftToRight) + { + IntPoint Pt = IntPoint(e->Curr.X, horzEdge->Curr.Y); + IntersectEdges(horzEdge, e, Pt); + } + else + { + IntPoint Pt = IntPoint(e->Curr.X, horzEdge->Curr.Y); + IntersectEdges( e, horzEdge, Pt); + } + TEdge* eNext = GetNextInAEL(e, dir); + SwapPositionsInAEL( horzEdge, e ); + e = eNext; + } //end while(e) + + //Break out of loop if HorzEdge.NextInLML is not also horizontal ... + if (!horzEdge->NextInLML || !IsHorizontal(*horzEdge->NextInLML)) break; + + UpdateEdgeIntoAEL(horzEdge); + if (horzEdge->OutIdx >= 0) AddOutPt(horzEdge, horzEdge->Bot); + GetHorzDirection(*horzEdge, dir, horzLeft, horzRight); + + } //end for (;;) + + if (horzEdge->OutIdx >= 0 && !op1) + { + op1 = GetLastOutPt(horzEdge); + TEdge* eNextHorz = m_SortedEdges; + while (eNextHorz) + { + if (eNextHorz->OutIdx >= 0 && + HorzSegmentsOverlap(horzEdge->Bot.X, + horzEdge->Top.X, eNextHorz->Bot.X, eNextHorz->Top.X)) + { + OutPt* op2 = GetLastOutPt(eNextHorz); + AddJoin(op2, op1, eNextHorz->Top); + } + eNextHorz = eNextHorz->NextInSEL; + } + AddGhostJoin(op1, horzEdge->Top); + } + + if (horzEdge->NextInLML) + { + if(horzEdge->OutIdx >= 0) + { + op1 = AddOutPt( horzEdge, horzEdge->Top); + UpdateEdgeIntoAEL(horzEdge); + if (horzEdge->WindDelta == 0) return; + //nb: HorzEdge is no longer horizontal here + TEdge* ePrev = horzEdge->PrevInAEL; + TEdge* eNext = horzEdge->NextInAEL; + if (ePrev && ePrev->Curr.X == horzEdge->Bot.X && + ePrev->Curr.Y == horzEdge->Bot.Y && ePrev->WindDelta != 0 && + (ePrev->OutIdx >= 0 && ePrev->Curr.Y > ePrev->Top.Y && + SlopesEqual(*horzEdge, *ePrev, m_UseFullRange))) + { + OutPt* op2 = AddOutPt(ePrev, horzEdge->Bot); + AddJoin(op1, op2, horzEdge->Top); + } + else if (eNext && eNext->Curr.X == horzEdge->Bot.X && + eNext->Curr.Y == horzEdge->Bot.Y && eNext->WindDelta != 0 && + eNext->OutIdx >= 0 && eNext->Curr.Y > eNext->Top.Y && + SlopesEqual(*horzEdge, *eNext, m_UseFullRange)) + { + OutPt* op2 = AddOutPt(eNext, horzEdge->Bot); + AddJoin(op1, op2, horzEdge->Top); + } + } + else + UpdateEdgeIntoAEL(horzEdge); + } + else + { + if (horzEdge->OutIdx >= 0) AddOutPt(horzEdge, horzEdge->Top); + DeleteFromAEL(horzEdge); + } +} +//------------------------------------------------------------------------------ + +bool Clipper::ProcessIntersections(const cInt topY) +{ + if( !m_ActiveEdges ) return true; + try { + BuildIntersectList(topY); + size_t IlSize = m_IntersectList.size(); + if (IlSize == 0) return true; + if (IlSize == 1 || FixupIntersectionOrder()) ProcessIntersectList(); + else return false; + } + catch(...) + { + m_SortedEdges = 0; + DisposeIntersectNodes(); + throw clipperException("ProcessIntersections error"); + } + m_SortedEdges = 0; + return true; +} +//------------------------------------------------------------------------------ + +void Clipper::DisposeIntersectNodes() +{ + for (size_t i = 0; i < m_IntersectList.size(); ++i ) + delete m_IntersectList[i]; + m_IntersectList.clear(); +} +//------------------------------------------------------------------------------ + +void Clipper::BuildIntersectList(const cInt topY) +{ + if ( !m_ActiveEdges ) return; + + //prepare for sorting ... + TEdge* e = m_ActiveEdges; + m_SortedEdges = e; + while( e ) + { + e->PrevInSEL = e->PrevInAEL; + e->NextInSEL = e->NextInAEL; + e->Curr.X = TopX( *e, topY ); + e = e->NextInAEL; + } + + //bubblesort ... + bool isModified; + do + { + isModified = false; + e = m_SortedEdges; + while( e->NextInSEL ) + { + TEdge *eNext = e->NextInSEL; + IntPoint Pt; + if(e->Curr.X > eNext->Curr.X) + { + IntersectPoint(*e, *eNext, Pt); + if (Pt.Y < topY) Pt = IntPoint(TopX(*e, topY), topY); + IntersectNode * newNode = new IntersectNode; + newNode->Edge1 = e; + newNode->Edge2 = eNext; + newNode->Pt = Pt; + m_IntersectList.push_back(newNode); + + SwapPositionsInSEL(e, eNext); + isModified = true; + } + else + e = eNext; + } + if( e->PrevInSEL ) e->PrevInSEL->NextInSEL = 0; + else break; + } + while ( isModified ); + m_SortedEdges = 0; //important +} +//------------------------------------------------------------------------------ + + +void Clipper::ProcessIntersectList() +{ + for (size_t i = 0; i < m_IntersectList.size(); ++i) + { + IntersectNode* iNode = m_IntersectList[i]; + { + IntersectEdges( iNode->Edge1, iNode->Edge2, iNode->Pt); + SwapPositionsInAEL( iNode->Edge1 , iNode->Edge2 ); + } + delete iNode; + } + m_IntersectList.clear(); +} +//------------------------------------------------------------------------------ + +bool IntersectListSort(IntersectNode* node1, IntersectNode* node2) +{ + return node2->Pt.Y < node1->Pt.Y; +} +//------------------------------------------------------------------------------ + +inline bool EdgesAdjacent(const IntersectNode &inode) +{ + return (inode.Edge1->NextInSEL == inode.Edge2) || + (inode.Edge1->PrevInSEL == inode.Edge2); +} +//------------------------------------------------------------------------------ + +bool Clipper::FixupIntersectionOrder() +{ + //pre-condition: intersections are sorted Bottom-most first. + //Now it's crucial that intersections are made only between adjacent edges, + //so to ensure this the order of intersections may need adjusting ... + CopyAELToSEL(); + std::sort(m_IntersectList.begin(), m_IntersectList.end(), IntersectListSort); + size_t cnt = m_IntersectList.size(); + for (size_t i = 0; i < cnt; ++i) + { + if (!EdgesAdjacent(*m_IntersectList[i])) + { + size_t j = i + 1; + while (j < cnt && !EdgesAdjacent(*m_IntersectList[j])) j++; + if (j == cnt) return false; + std::swap(m_IntersectList[i], m_IntersectList[j]); + } + SwapPositionsInSEL(m_IntersectList[i]->Edge1, m_IntersectList[i]->Edge2); + } + return true; +} +//------------------------------------------------------------------------------ + +void Clipper::DoMaxima(TEdge *e) +{ + TEdge* eMaxPair = GetMaximaPairEx(e); + if (!eMaxPair) + { + if (e->OutIdx >= 0) + AddOutPt(e, e->Top); + DeleteFromAEL(e); + return; + } + + TEdge* eNext = e->NextInAEL; + while(eNext && eNext != eMaxPair) + { + IntersectEdges(e, eNext, e->Top); + SwapPositionsInAEL(e, eNext); + eNext = e->NextInAEL; + } + + if(e->OutIdx == Unassigned && eMaxPair->OutIdx == Unassigned) + { + DeleteFromAEL(e); + DeleteFromAEL(eMaxPair); + } + else if( e->OutIdx >= 0 && eMaxPair->OutIdx >= 0 ) + { + if (e->OutIdx >= 0) AddLocalMaxPoly(e, eMaxPair, e->Top); + DeleteFromAEL(e); + DeleteFromAEL(eMaxPair); + } +#ifdef use_lines + else if (e->WindDelta == 0) + { + if (e->OutIdx >= 0) + { + AddOutPt(e, e->Top); + e->OutIdx = Unassigned; + } + DeleteFromAEL(e); + + if (eMaxPair->OutIdx >= 0) + { + AddOutPt(eMaxPair, e->Top); + eMaxPair->OutIdx = Unassigned; + } + DeleteFromAEL(eMaxPair); + } +#endif + else throw clipperException("DoMaxima error"); +} +//------------------------------------------------------------------------------ + +void Clipper::ProcessEdgesAtTopOfScanbeam(const cInt topY) +{ + TEdge* e = m_ActiveEdges; + while( e ) + { + //1. process maxima, treating them as if they're 'bent' horizontal edges, + // but exclude maxima with horizontal edges. nb: e can't be a horizontal. + bool IsMaximaEdge = IsMaxima(e, topY); + + if(IsMaximaEdge) + { + TEdge* eMaxPair = GetMaximaPairEx(e); + IsMaximaEdge = (!eMaxPair || !IsHorizontal(*eMaxPair)); + } + + if(IsMaximaEdge) + { + if (m_StrictSimple) m_Maxima.push_back(e->Top.X); + TEdge* ePrev = e->PrevInAEL; + DoMaxima(e); + if( !ePrev ) e = m_ActiveEdges; + else e = ePrev->NextInAEL; + } + else + { + //2. promote horizontal edges, otherwise update Curr.X and Curr.Y ... + if (IsIntermediate(e, topY) && IsHorizontal(*e->NextInLML)) + { + UpdateEdgeIntoAEL(e); + if (e->OutIdx >= 0) + AddOutPt(e, e->Bot); + AddEdgeToSEL(e); + } + else + { + e->Curr.X = TopX( *e, topY ); + e->Curr.Y = topY; + } + + //When StrictlySimple and 'e' is being touched by another edge, then + //make sure both edges have a vertex here ... + if (m_StrictSimple) + { + TEdge* ePrev = e->PrevInAEL; + if ((e->OutIdx >= 0) && (e->WindDelta != 0) && ePrev && (ePrev->OutIdx >= 0) && + (ePrev->Curr.X == e->Curr.X) && (ePrev->WindDelta != 0)) + { + IntPoint pt = e->Curr; +#ifdef use_xyz + SetZ(pt, *ePrev, *e); +#endif + OutPt* op = AddOutPt(ePrev, pt); + OutPt* op2 = AddOutPt(e, pt); + AddJoin(op, op2, pt); //StrictlySimple (type-3) join + } + } + + e = e->NextInAEL; + } + } + + //3. Process horizontals at the Top of the scanbeam ... + m_Maxima.sort(); + ProcessHorizontals(); + m_Maxima.clear(); + + //4. Promote intermediate vertices ... + e = m_ActiveEdges; + while(e) + { + if(IsIntermediate(e, topY)) + { + OutPt* op = 0; + if( e->OutIdx >= 0 ) + op = AddOutPt(e, e->Top); + UpdateEdgeIntoAEL(e); + + //if output polygons share an edge, they'll need joining later ... + TEdge* ePrev = e->PrevInAEL; + TEdge* eNext = e->NextInAEL; + if (ePrev && ePrev->Curr.X == e->Bot.X && + ePrev->Curr.Y == e->Bot.Y && op && + ePrev->OutIdx >= 0 && ePrev->Curr.Y > ePrev->Top.Y && + SlopesEqual(e->Curr, e->Top, ePrev->Curr, ePrev->Top, m_UseFullRange) && + (e->WindDelta != 0) && (ePrev->WindDelta != 0)) + { + OutPt* op2 = AddOutPt(ePrev, e->Bot); + AddJoin(op, op2, e->Top); + } + else if (eNext && eNext->Curr.X == e->Bot.X && + eNext->Curr.Y == e->Bot.Y && op && + eNext->OutIdx >= 0 && eNext->Curr.Y > eNext->Top.Y && + SlopesEqual(e->Curr, e->Top, eNext->Curr, eNext->Top, m_UseFullRange) && + (e->WindDelta != 0) && (eNext->WindDelta != 0)) + { + OutPt* op2 = AddOutPt(eNext, e->Bot); + AddJoin(op, op2, e->Top); + } + } + e = e->NextInAEL; + } +} +//------------------------------------------------------------------------------ + +void Clipper::FixupOutPolyline(OutRec &outrec) +{ + OutPt *pp = outrec.Pts; + OutPt *lastPP = pp->Prev; + while (pp != lastPP) + { + pp = pp->Next; + if (pp->Pt == pp->Prev->Pt) + { + if (pp == lastPP) lastPP = pp->Prev; + OutPt *tmpPP = pp->Prev; + tmpPP->Next = pp->Next; + pp->Next->Prev = tmpPP; + delete pp; + pp = tmpPP; + } + } + + if (pp == pp->Prev) + { + DisposeOutPts(pp); + outrec.Pts = 0; + return; + } +} +//------------------------------------------------------------------------------ + +void Clipper::FixupOutPolygon(OutRec &outrec) +{ + //FixupOutPolygon() - removes duplicate points and simplifies consecutive + //parallel edges by removing the middle vertex. + OutPt *lastOK = 0; + outrec.BottomPt = 0; + OutPt *pp = outrec.Pts; + bool preserveCol = m_PreserveCollinear || m_StrictSimple; + + for (;;) + { + if (pp->Prev == pp || pp->Prev == pp->Next) + { + DisposeOutPts(pp); + outrec.Pts = 0; + return; + } + + //test for duplicate points and collinear edges ... + if ((pp->Pt == pp->Next->Pt) || (pp->Pt == pp->Prev->Pt) || + (SlopesEqual(pp->Prev->Pt, pp->Pt, pp->Next->Pt, m_UseFullRange) && + (!preserveCol || !Pt2IsBetweenPt1AndPt3(pp->Prev->Pt, pp->Pt, pp->Next->Pt)))) + { + lastOK = 0; + OutPt *tmp = pp; + pp->Prev->Next = pp->Next; + pp->Next->Prev = pp->Prev; + pp = pp->Prev; + delete tmp; + } + else if (pp == lastOK) break; + else + { + if (!lastOK) lastOK = pp; + pp = pp->Next; + } + } + outrec.Pts = pp; +} +//------------------------------------------------------------------------------ + +int PointCount(OutPt *Pts) +{ + if (!Pts) return 0; + int result = 0; + OutPt* p = Pts; + do + { + result++; + p = p->Next; + } + while (p != Pts); + return result; +} +//------------------------------------------------------------------------------ + +void Clipper::BuildResult(Paths &polys) +{ + polys.reserve(m_PolyOuts.size()); + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + if (!m_PolyOuts[i]->Pts) continue; + Path pg; + OutPt* p = m_PolyOuts[i]->Pts->Prev; + int cnt = PointCount(p); + if (cnt < 2) continue; + pg.reserve(cnt); + for (int i = 0; i < cnt; ++i) + { + pg.push_back(p->Pt); + p = p->Prev; + } + polys.push_back(pg); + } +} +//------------------------------------------------------------------------------ + +void Clipper::BuildResult2(PolyTree& polytree) +{ + polytree.Clear(); + polytree.AllNodes.reserve(m_PolyOuts.size()); + //add each output polygon/contour to polytree ... + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); i++) + { + OutRec* outRec = m_PolyOuts[i]; + int cnt = PointCount(outRec->Pts); + if ((outRec->IsOpen && cnt < 2) || (!outRec->IsOpen && cnt < 3)) continue; + FixHoleLinkage(*outRec); + PolyNode* pn = new PolyNode(); + //nb: polytree takes ownership of all the PolyNodes + polytree.AllNodes.push_back(pn); + outRec->PolyNd = pn; + pn->Parent = 0; + pn->Index = 0; + pn->Contour.reserve(cnt); + OutPt *op = outRec->Pts->Prev; + for (int j = 0; j < cnt; j++) + { + pn->Contour.push_back(op->Pt); + op = op->Prev; + } + } + + //fixup PolyNode links etc ... + polytree.Childs.reserve(m_PolyOuts.size()); + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); i++) + { + OutRec* outRec = m_PolyOuts[i]; + if (!outRec->PolyNd) continue; + if (outRec->IsOpen) + { + outRec->PolyNd->m_IsOpen = true; + polytree.AddChild(*outRec->PolyNd); + } + else if (outRec->FirstLeft && outRec->FirstLeft->PolyNd) + outRec->FirstLeft->PolyNd->AddChild(*outRec->PolyNd); + else + polytree.AddChild(*outRec->PolyNd); + } +} +//------------------------------------------------------------------------------ + +void SwapIntersectNodes(IntersectNode &int1, IntersectNode &int2) +{ + //just swap the contents (because fIntersectNodes is a single-linked-list) + IntersectNode inode = int1; //gets a copy of Int1 + int1.Edge1 = int2.Edge1; + int1.Edge2 = int2.Edge2; + int1.Pt = int2.Pt; + int2.Edge1 = inode.Edge1; + int2.Edge2 = inode.Edge2; + int2.Pt = inode.Pt; +} +//------------------------------------------------------------------------------ + +inline bool E2InsertsBeforeE1(TEdge &e1, TEdge &e2) +{ + if (e2.Curr.X == e1.Curr.X) + { + if (e2.Top.Y > e1.Top.Y) + return e2.Top.X < TopX(e1, e2.Top.Y); + else return e1.Top.X > TopX(e2, e1.Top.Y); + } + else return e2.Curr.X < e1.Curr.X; +} +//------------------------------------------------------------------------------ + +bool GetOverlap(const cInt a1, const cInt a2, const cInt b1, const cInt b2, + cInt& Left, cInt& Right) +{ + if (a1 < a2) + { + if (b1 < b2) {Left = std::max(a1,b1); Right = std::min(a2,b2);} + else {Left = std::max(a1,b2); Right = std::min(a2,b1);} + } + else + { + if (b1 < b2) {Left = std::max(a2,b1); Right = std::min(a1,b2);} + else {Left = std::max(a2,b2); Right = std::min(a1,b1);} + } + return Left < Right; +} +//------------------------------------------------------------------------------ + +inline void UpdateOutPtIdxs(OutRec& outrec) +{ + OutPt* op = outrec.Pts; + do + { + op->Idx = outrec.Idx; + op = op->Prev; + } + while(op != outrec.Pts); +} +//------------------------------------------------------------------------------ + +void Clipper::InsertEdgeIntoAEL(TEdge *edge, TEdge* startEdge) +{ + if(!m_ActiveEdges) + { + edge->PrevInAEL = 0; + edge->NextInAEL = 0; + m_ActiveEdges = edge; + } + else if(!startEdge && E2InsertsBeforeE1(*m_ActiveEdges, *edge)) + { + edge->PrevInAEL = 0; + edge->NextInAEL = m_ActiveEdges; + m_ActiveEdges->PrevInAEL = edge; + m_ActiveEdges = edge; + } + else + { + if(!startEdge) startEdge = m_ActiveEdges; + while(startEdge->NextInAEL && + !E2InsertsBeforeE1(*startEdge->NextInAEL , *edge)) + startEdge = startEdge->NextInAEL; + edge->NextInAEL = startEdge->NextInAEL; + if(startEdge->NextInAEL) startEdge->NextInAEL->PrevInAEL = edge; + edge->PrevInAEL = startEdge; + startEdge->NextInAEL = edge; + } +} +//---------------------------------------------------------------------- + +OutPt* DupOutPt(OutPt* outPt, bool InsertAfter) +{ + OutPt* result = new OutPt; + result->Pt = outPt->Pt; + result->Idx = outPt->Idx; + if (InsertAfter) + { + result->Next = outPt->Next; + result->Prev = outPt; + outPt->Next->Prev = result; + outPt->Next = result; + } + else + { + result->Prev = outPt->Prev; + result->Next = outPt; + outPt->Prev->Next = result; + outPt->Prev = result; + } + return result; +} +//------------------------------------------------------------------------------ + +bool JoinHorz(OutPt* op1, OutPt* op1b, OutPt* op2, OutPt* op2b, + const IntPoint Pt, bool DiscardLeft) +{ + Direction Dir1 = (op1->Pt.X > op1b->Pt.X ? dRightToLeft : dLeftToRight); + Direction Dir2 = (op2->Pt.X > op2b->Pt.X ? dRightToLeft : dLeftToRight); + if (Dir1 == Dir2) return false; + + //When DiscardLeft, we want Op1b to be on the Left of Op1, otherwise we + //want Op1b to be on the Right. (And likewise with Op2 and Op2b.) + //So, to facilitate this while inserting Op1b and Op2b ... + //when DiscardLeft, make sure we're AT or RIGHT of Pt before adding Op1b, + //otherwise make sure we're AT or LEFT of Pt. (Likewise with Op2b.) + if (Dir1 == dLeftToRight) + { + while (op1->Next->Pt.X <= Pt.X && + op1->Next->Pt.X >= op1->Pt.X && op1->Next->Pt.Y == Pt.Y) + op1 = op1->Next; + if (DiscardLeft && (op1->Pt.X != Pt.X)) op1 = op1->Next; + op1b = DupOutPt(op1, !DiscardLeft); + if (op1b->Pt != Pt) + { + op1 = op1b; + op1->Pt = Pt; + op1b = DupOutPt(op1, !DiscardLeft); + } + } + else + { + while (op1->Next->Pt.X >= Pt.X && + op1->Next->Pt.X <= op1->Pt.X && op1->Next->Pt.Y == Pt.Y) + op1 = op1->Next; + if (!DiscardLeft && (op1->Pt.X != Pt.X)) op1 = op1->Next; + op1b = DupOutPt(op1, DiscardLeft); + if (op1b->Pt != Pt) + { + op1 = op1b; + op1->Pt = Pt; + op1b = DupOutPt(op1, DiscardLeft); + } + } + + if (Dir2 == dLeftToRight) + { + while (op2->Next->Pt.X <= Pt.X && + op2->Next->Pt.X >= op2->Pt.X && op2->Next->Pt.Y == Pt.Y) + op2 = op2->Next; + if (DiscardLeft && (op2->Pt.X != Pt.X)) op2 = op2->Next; + op2b = DupOutPt(op2, !DiscardLeft); + if (op2b->Pt != Pt) + { + op2 = op2b; + op2->Pt = Pt; + op2b = DupOutPt(op2, !DiscardLeft); + }; + } else + { + while (op2->Next->Pt.X >= Pt.X && + op2->Next->Pt.X <= op2->Pt.X && op2->Next->Pt.Y == Pt.Y) + op2 = op2->Next; + if (!DiscardLeft && (op2->Pt.X != Pt.X)) op2 = op2->Next; + op2b = DupOutPt(op2, DiscardLeft); + if (op2b->Pt != Pt) + { + op2 = op2b; + op2->Pt = Pt; + op2b = DupOutPt(op2, DiscardLeft); + }; + }; + + if ((Dir1 == dLeftToRight) == DiscardLeft) + { + op1->Prev = op2; + op2->Next = op1; + op1b->Next = op2b; + op2b->Prev = op1b; + } + else + { + op1->Next = op2; + op2->Prev = op1; + op1b->Prev = op2b; + op2b->Next = op1b; + } + return true; +} +//------------------------------------------------------------------------------ + +bool Clipper::JoinPoints(Join *j, OutRec* outRec1, OutRec* outRec2) +{ + OutPt *op1 = j->OutPt1, *op1b; + OutPt *op2 = j->OutPt2, *op2b; + + //There are 3 kinds of joins for output polygons ... + //1. Horizontal joins where Join.OutPt1 & Join.OutPt2 are vertices anywhere + //along (horizontal) collinear edges (& Join.OffPt is on the same horizontal). + //2. Non-horizontal joins where Join.OutPt1 & Join.OutPt2 are at the same + //location at the Bottom of the overlapping segment (& Join.OffPt is above). + //3. StrictSimple joins where edges touch but are not collinear and where + //Join.OutPt1, Join.OutPt2 & Join.OffPt all share the same point. + bool isHorizontal = (j->OutPt1->Pt.Y == j->OffPt.Y); + + if (isHorizontal && (j->OffPt == j->OutPt1->Pt) && + (j->OffPt == j->OutPt2->Pt)) + { + //Strictly Simple join ... + if (outRec1 != outRec2) return false; + op1b = j->OutPt1->Next; + while (op1b != op1 && (op1b->Pt == j->OffPt)) + op1b = op1b->Next; + bool reverse1 = (op1b->Pt.Y > j->OffPt.Y); + op2b = j->OutPt2->Next; + while (op2b != op2 && (op2b->Pt == j->OffPt)) + op2b = op2b->Next; + bool reverse2 = (op2b->Pt.Y > j->OffPt.Y); + if (reverse1 == reverse2) return false; + if (reverse1) + { + op1b = DupOutPt(op1, false); + op2b = DupOutPt(op2, true); + op1->Prev = op2; + op2->Next = op1; + op1b->Next = op2b; + op2b->Prev = op1b; + j->OutPt1 = op1; + j->OutPt2 = op1b; + return true; + } else + { + op1b = DupOutPt(op1, true); + op2b = DupOutPt(op2, false); + op1->Next = op2; + op2->Prev = op1; + op1b->Prev = op2b; + op2b->Next = op1b; + j->OutPt1 = op1; + j->OutPt2 = op1b; + return true; + } + } + else if (isHorizontal) + { + //treat horizontal joins differently to non-horizontal joins since with + //them we're not yet sure where the overlapping is. OutPt1.Pt & OutPt2.Pt + //may be anywhere along the horizontal edge. + op1b = op1; + while (op1->Prev->Pt.Y == op1->Pt.Y && op1->Prev != op1b && op1->Prev != op2) + op1 = op1->Prev; + while (op1b->Next->Pt.Y == op1b->Pt.Y && op1b->Next != op1 && op1b->Next != op2) + op1b = op1b->Next; + if (op1b->Next == op1 || op1b->Next == op2) return false; //a flat 'polygon' + + op2b = op2; + while (op2->Prev->Pt.Y == op2->Pt.Y && op2->Prev != op2b && op2->Prev != op1b) + op2 = op2->Prev; + while (op2b->Next->Pt.Y == op2b->Pt.Y && op2b->Next != op2 && op2b->Next != op1) + op2b = op2b->Next; + if (op2b->Next == op2 || op2b->Next == op1) return false; //a flat 'polygon' + + cInt Left, Right; + //Op1 --> Op1b & Op2 --> Op2b are the extremites of the horizontal edges + if (!GetOverlap(op1->Pt.X, op1b->Pt.X, op2->Pt.X, op2b->Pt.X, Left, Right)) + return false; + + //DiscardLeftSide: when overlapping edges are joined, a spike will created + //which needs to be cleaned up. However, we don't want Op1 or Op2 caught up + //on the discard Side as either may still be needed for other joins ... + IntPoint Pt; + bool DiscardLeftSide; + if (op1->Pt.X >= Left && op1->Pt.X <= Right) + { + Pt = op1->Pt; DiscardLeftSide = (op1->Pt.X > op1b->Pt.X); + } + else if (op2->Pt.X >= Left&& op2->Pt.X <= Right) + { + Pt = op2->Pt; DiscardLeftSide = (op2->Pt.X > op2b->Pt.X); + } + else if (op1b->Pt.X >= Left && op1b->Pt.X <= Right) + { + Pt = op1b->Pt; DiscardLeftSide = op1b->Pt.X > op1->Pt.X; + } + else + { + Pt = op2b->Pt; DiscardLeftSide = (op2b->Pt.X > op2->Pt.X); + } + j->OutPt1 = op1; j->OutPt2 = op2; + return JoinHorz(op1, op1b, op2, op2b, Pt, DiscardLeftSide); + } else + { + //nb: For non-horizontal joins ... + // 1. Jr.OutPt1.Pt.Y == Jr.OutPt2.Pt.Y + // 2. Jr.OutPt1.Pt > Jr.OffPt.Y + + //make sure the polygons are correctly oriented ... + op1b = op1->Next; + while ((op1b->Pt == op1->Pt) && (op1b != op1)) op1b = op1b->Next; + bool Reverse1 = ((op1b->Pt.Y > op1->Pt.Y) || + !SlopesEqual(op1->Pt, op1b->Pt, j->OffPt, m_UseFullRange)); + if (Reverse1) + { + op1b = op1->Prev; + while ((op1b->Pt == op1->Pt) && (op1b != op1)) op1b = op1b->Prev; + if ((op1b->Pt.Y > op1->Pt.Y) || + !SlopesEqual(op1->Pt, op1b->Pt, j->OffPt, m_UseFullRange)) return false; + }; + op2b = op2->Next; + while ((op2b->Pt == op2->Pt) && (op2b != op2))op2b = op2b->Next; + bool Reverse2 = ((op2b->Pt.Y > op2->Pt.Y) || + !SlopesEqual(op2->Pt, op2b->Pt, j->OffPt, m_UseFullRange)); + if (Reverse2) + { + op2b = op2->Prev; + while ((op2b->Pt == op2->Pt) && (op2b != op2)) op2b = op2b->Prev; + if ((op2b->Pt.Y > op2->Pt.Y) || + !SlopesEqual(op2->Pt, op2b->Pt, j->OffPt, m_UseFullRange)) return false; + } + + if ((op1b == op1) || (op2b == op2) || (op1b == op2b) || + ((outRec1 == outRec2) && (Reverse1 == Reverse2))) return false; + + if (Reverse1) + { + op1b = DupOutPt(op1, false); + op2b = DupOutPt(op2, true); + op1->Prev = op2; + op2->Next = op1; + op1b->Next = op2b; + op2b->Prev = op1b; + j->OutPt1 = op1; + j->OutPt2 = op1b; + return true; + } else + { + op1b = DupOutPt(op1, true); + op2b = DupOutPt(op2, false); + op1->Next = op2; + op2->Prev = op1; + op1b->Prev = op2b; + op2b->Next = op1b; + j->OutPt1 = op1; + j->OutPt2 = op1b; + return true; + } + } +} +//---------------------------------------------------------------------- + +static OutRec* ParseFirstLeft(OutRec* FirstLeft) +{ + while (FirstLeft && !FirstLeft->Pts) + FirstLeft = FirstLeft->FirstLeft; + return FirstLeft; +} +//------------------------------------------------------------------------------ + +void Clipper::FixupFirstLefts1(OutRec* OldOutRec, OutRec* NewOutRec) +{ + //tests if NewOutRec contains the polygon before reassigning FirstLeft + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + OutRec* outRec = m_PolyOuts[i]; + OutRec* firstLeft = ParseFirstLeft(outRec->FirstLeft); + if (outRec->Pts && firstLeft == OldOutRec) + { + if (Poly2ContainsPoly1(outRec->Pts, NewOutRec->Pts)) + outRec->FirstLeft = NewOutRec; + } + } +} +//---------------------------------------------------------------------- + +void Clipper::FixupFirstLefts2(OutRec* InnerOutRec, OutRec* OuterOutRec) +{ + //A polygon has split into two such that one is now the inner of the other. + //It's possible that these polygons now wrap around other polygons, so check + //every polygon that's also contained by OuterOutRec's FirstLeft container + //(including 0) to see if they've become inner to the new inner polygon ... + OutRec* orfl = OuterOutRec->FirstLeft; + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + OutRec* outRec = m_PolyOuts[i]; + + if (!outRec->Pts || outRec == OuterOutRec || outRec == InnerOutRec) + continue; + OutRec* firstLeft = ParseFirstLeft(outRec->FirstLeft); + if (firstLeft != orfl && firstLeft != InnerOutRec && firstLeft != OuterOutRec) + continue; + if (Poly2ContainsPoly1(outRec->Pts, InnerOutRec->Pts)) + outRec->FirstLeft = InnerOutRec; + else if (Poly2ContainsPoly1(outRec->Pts, OuterOutRec->Pts)) + outRec->FirstLeft = OuterOutRec; + else if (outRec->FirstLeft == InnerOutRec || outRec->FirstLeft == OuterOutRec) + outRec->FirstLeft = orfl; + } +} +//---------------------------------------------------------------------- +void Clipper::FixupFirstLefts3(OutRec* OldOutRec, OutRec* NewOutRec) +{ + //reassigns FirstLeft WITHOUT testing if NewOutRec contains the polygon + for (PolyOutList::size_type i = 0; i < m_PolyOuts.size(); ++i) + { + OutRec* outRec = m_PolyOuts[i]; + OutRec* firstLeft = ParseFirstLeft(outRec->FirstLeft); + if (outRec->Pts && outRec->FirstLeft == OldOutRec) + outRec->FirstLeft = NewOutRec; + } +} +//---------------------------------------------------------------------- + +void Clipper::JoinCommonEdges() +{ + for (JoinList::size_type i = 0; i < m_Joins.size(); i++) + { + Join* join = m_Joins[i]; + + OutRec *outRec1 = GetOutRec(join->OutPt1->Idx); + OutRec *outRec2 = GetOutRec(join->OutPt2->Idx); + + if (!outRec1->Pts || !outRec2->Pts) continue; + if (outRec1->IsOpen || outRec2->IsOpen) continue; + + //get the polygon fragment with the correct hole state (FirstLeft) + //before calling JoinPoints() ... + OutRec *holeStateRec; + if (outRec1 == outRec2) holeStateRec = outRec1; + else if (OutRec1RightOfOutRec2(outRec1, outRec2)) holeStateRec = outRec2; + else if (OutRec1RightOfOutRec2(outRec2, outRec1)) holeStateRec = outRec1; + else holeStateRec = GetLowermostRec(outRec1, outRec2); + + if (!JoinPoints(join, outRec1, outRec2)) continue; + + if (outRec1 == outRec2) + { + //instead of joining two polygons, we've just created a new one by + //splitting one polygon into two. + outRec1->Pts = join->OutPt1; + outRec1->BottomPt = 0; + outRec2 = CreateOutRec(); + outRec2->Pts = join->OutPt2; + + //update all OutRec2.Pts Idx's ... + UpdateOutPtIdxs(*outRec2); + + if (Poly2ContainsPoly1(outRec2->Pts, outRec1->Pts)) + { + //outRec1 contains outRec2 ... + outRec2->IsHole = !outRec1->IsHole; + outRec2->FirstLeft = outRec1; + + if (m_UsingPolyTree) FixupFirstLefts2(outRec2, outRec1); + + if ((outRec2->IsHole ^ m_ReverseOutput) == (Area(*outRec2) > 0)) + ReversePolyPtLinks(outRec2->Pts); + + } else if (Poly2ContainsPoly1(outRec1->Pts, outRec2->Pts)) + { + //outRec2 contains outRec1 ... + outRec2->IsHole = outRec1->IsHole; + outRec1->IsHole = !outRec2->IsHole; + outRec2->FirstLeft = outRec1->FirstLeft; + outRec1->FirstLeft = outRec2; + + if (m_UsingPolyTree) FixupFirstLefts2(outRec1, outRec2); + + if ((outRec1->IsHole ^ m_ReverseOutput) == (Area(*outRec1) > 0)) + ReversePolyPtLinks(outRec1->Pts); + } + else + { + //the 2 polygons are completely separate ... + outRec2->IsHole = outRec1->IsHole; + outRec2->FirstLeft = outRec1->FirstLeft; + + //fixup FirstLeft pointers that may need reassigning to OutRec2 + if (m_UsingPolyTree) FixupFirstLefts1(outRec1, outRec2); + } + + } else + { + //joined 2 polygons together ... + + outRec2->Pts = 0; + outRec2->BottomPt = 0; + outRec2->Idx = outRec1->Idx; + + outRec1->IsHole = holeStateRec->IsHole; + if (holeStateRec == outRec2) + outRec1->FirstLeft = outRec2->FirstLeft; + outRec2->FirstLeft = outRec1; + + if (m_UsingPolyTree) FixupFirstLefts3(outRec2, outRec1); + } + } +} + +//------------------------------------------------------------------------------ +// ClipperOffset support functions ... +//------------------------------------------------------------------------------ + +DoublePoint GetUnitNormal(const IntPoint &pt1, const IntPoint &pt2) +{ + if(pt2.X == pt1.X && pt2.Y == pt1.Y) + return DoublePoint(0, 0); + + double Dx = (double)(pt2.X - pt1.X); + double dy = (double)(pt2.Y - pt1.Y); + double f = 1 *1.0/ std::sqrt( Dx*Dx + dy*dy ); + Dx *= f; + dy *= f; + return DoublePoint(dy, -Dx); +} + +//------------------------------------------------------------------------------ +// ClipperOffset class +//------------------------------------------------------------------------------ + +ClipperOffset::ClipperOffset(double miterLimit, double arcTolerance) +{ + this->MiterLimit = miterLimit; + this->ArcTolerance = arcTolerance; + m_lowest.X = -1; +} +//------------------------------------------------------------------------------ + +ClipperOffset::~ClipperOffset() +{ + Clear(); +} +//------------------------------------------------------------------------------ + +void ClipperOffset::Clear() +{ + for (int i = 0; i < m_polyNodes.ChildCount(); ++i) + delete m_polyNodes.Childs[i]; + m_polyNodes.Childs.clear(); + m_lowest.X = -1; +} +//------------------------------------------------------------------------------ + +void ClipperOffset::AddPath(const Path& path, JoinType joinType, EndType endType) +{ + int highI = (int)path.size() - 1; + if (highI < 0) return; + PolyNode* newNode = new PolyNode(); + newNode->m_jointype = joinType; + newNode->m_endtype = endType; + + //strip duplicate points from path and also get index to the lowest point ... + if (endType == etClosedLine || endType == etClosedPolygon) + while (highI > 0 && path[0] == path[highI]) highI--; + newNode->Contour.reserve(highI + 1); + newNode->Contour.push_back(path[0]); + int j = 0, k = 0; + for (int i = 1; i <= highI; i++) + if (newNode->Contour[j] != path[i]) + { + j++; + newNode->Contour.push_back(path[i]); + if (path[i].Y > newNode->Contour[k].Y || + (path[i].Y == newNode->Contour[k].Y && + path[i].X < newNode->Contour[k].X)) k = j; + } + if (endType == etClosedPolygon && j < 2) + { + delete newNode; + return; + } + m_polyNodes.AddChild(*newNode); + + //if this path's lowest pt is lower than all the others then update m_lowest + if (endType != etClosedPolygon) return; + if (m_lowest.X < 0) + m_lowest = IntPoint(m_polyNodes.ChildCount() - 1, k); + else + { + IntPoint ip = m_polyNodes.Childs[(int)m_lowest.X]->Contour[(int)m_lowest.Y]; + if (newNode->Contour[k].Y > ip.Y || + (newNode->Contour[k].Y == ip.Y && + newNode->Contour[k].X < ip.X)) + m_lowest = IntPoint(m_polyNodes.ChildCount() - 1, k); + } +} +//------------------------------------------------------------------------------ + +void ClipperOffset::AddPaths(const Paths& paths, JoinType joinType, EndType endType) +{ + for (Paths::size_type i = 0; i < paths.size(); ++i) + AddPath(paths[i], joinType, endType); +} +//------------------------------------------------------------------------------ + +void ClipperOffset::FixOrientations() +{ + //fixup orientations of all closed paths if the orientation of the + //closed path with the lowermost vertex is wrong ... + if (m_lowest.X >= 0 && + !Orientation(m_polyNodes.Childs[(int)m_lowest.X]->Contour)) + { + for (int i = 0; i < m_polyNodes.ChildCount(); ++i) + { + PolyNode& node = *m_polyNodes.Childs[i]; + if (node.m_endtype == etClosedPolygon || + (node.m_endtype == etClosedLine && Orientation(node.Contour))) + ReversePath(node.Contour); + } + } else + { + for (int i = 0; i < m_polyNodes.ChildCount(); ++i) + { + PolyNode& node = *m_polyNodes.Childs[i]; + if (node.m_endtype == etClosedLine && !Orientation(node.Contour)) + ReversePath(node.Contour); + } + } +} +//------------------------------------------------------------------------------ + +void ClipperOffset::Execute(Paths& solution, double delta) +{ + solution.clear(); + FixOrientations(); + DoOffset(delta); + + //now clean up 'corners' ... + Clipper clpr; + clpr.AddPaths(m_destPolys, ptSubject, true); + if (delta > 0) + { + clpr.Execute(ctUnion, solution, pftPositive, pftPositive); + } + else + { + IntRect r = clpr.GetBounds(); + Path outer(4); + outer[0] = IntPoint(r.left - 10, r.bottom + 10); + outer[1] = IntPoint(r.right + 10, r.bottom + 10); + outer[2] = IntPoint(r.right + 10, r.top - 10); + outer[3] = IntPoint(r.left - 10, r.top - 10); + + clpr.AddPath(outer, ptSubject, true); + clpr.ReverseSolution(true); + clpr.Execute(ctUnion, solution, pftNegative, pftNegative); + if (solution.size() > 0) solution.erase(solution.begin()); + } +} +//------------------------------------------------------------------------------ + +void ClipperOffset::Execute(PolyTree& solution, double delta) +{ + solution.Clear(); + FixOrientations(); + DoOffset(delta); + + //now clean up 'corners' ... + Clipper clpr; + clpr.AddPaths(m_destPolys, ptSubject, true); + if (delta > 0) + { + clpr.Execute(ctUnion, solution, pftPositive, pftPositive); + } + else + { + IntRect r = clpr.GetBounds(); + Path outer(4); + outer[0] = IntPoint(r.left - 10, r.bottom + 10); + outer[1] = IntPoint(r.right + 10, r.bottom + 10); + outer[2] = IntPoint(r.right + 10, r.top - 10); + outer[3] = IntPoint(r.left - 10, r.top - 10); + + clpr.AddPath(outer, ptSubject, true); + clpr.ReverseSolution(true); + clpr.Execute(ctUnion, solution, pftNegative, pftNegative); + //remove the outer PolyNode rectangle ... + if (solution.ChildCount() == 1 && solution.Childs[0]->ChildCount() > 0) + { + PolyNode* outerNode = solution.Childs[0]; + solution.Childs.reserve(outerNode->ChildCount()); + solution.Childs[0] = outerNode->Childs[0]; + solution.Childs[0]->Parent = outerNode->Parent; + for (int i = 1; i < outerNode->ChildCount(); ++i) + solution.AddChild(*outerNode->Childs[i]); + } + else + solution.Clear(); + } +} +//------------------------------------------------------------------------------ + +void ClipperOffset::DoOffset(double delta) +{ + m_destPolys.clear(); + m_delta = delta; + + //if Zero offset, just copy any CLOSED polygons to m_p and return ... + if (NEAR_ZERO(delta)) + { + m_destPolys.reserve(m_polyNodes.ChildCount()); + for (int i = 0; i < m_polyNodes.ChildCount(); i++) + { + PolyNode& node = *m_polyNodes.Childs[i]; + if (node.m_endtype == etClosedPolygon) + m_destPolys.push_back(node.Contour); + } + return; + } + + //see offset_triginometry3.svg in the documentation folder ... + if (MiterLimit > 2) m_miterLim = 2/(MiterLimit * MiterLimit); + else m_miterLim = 0.5; + + double y; + if (ArcTolerance <= 0.0) y = def_arc_tolerance; + else if (ArcTolerance > std::fabs(delta) * def_arc_tolerance) + y = std::fabs(delta) * def_arc_tolerance; + else y = ArcTolerance; + //see offset_triginometry2.svg in the documentation folder ... + double steps = pi / std::acos(1 - y / std::fabs(delta)); + if (steps > std::fabs(delta) * pi) + steps = std::fabs(delta) * pi; //ie excessive precision check + m_sin = std::sin(two_pi / steps); + m_cos = std::cos(two_pi / steps); + m_StepsPerRad = steps / two_pi; + if (delta < 0.0) m_sin = -m_sin; + + m_destPolys.reserve(m_polyNodes.ChildCount() * 2); + for (int i = 0; i < m_polyNodes.ChildCount(); i++) + { + PolyNode& node = *m_polyNodes.Childs[i]; + m_srcPoly = node.Contour; + + int len = (int)m_srcPoly.size(); + if (len == 0 || (delta <= 0 && (len < 3 || node.m_endtype != etClosedPolygon))) + continue; + + m_destPoly.clear(); + if (len == 1) + { + if (node.m_jointype == jtRound) + { + double X = 1.0, Y = 0.0; + for (cInt j = 1; j <= steps; j++) + { + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[0].X + X * delta), + Round(m_srcPoly[0].Y + Y * delta))); + double X2 = X; + X = X * m_cos - m_sin * Y; + Y = X2 * m_sin + Y * m_cos; + } + } + else + { + double X = -1.0, Y = -1.0; + for (int j = 0; j < 4; ++j) + { + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[0].X + X * delta), + Round(m_srcPoly[0].Y + Y * delta))); + if (X < 0) X = 1; + else if (Y < 0) Y = 1; + else X = -1; + } + } + m_destPolys.push_back(m_destPoly); + continue; + } + //build m_normals ... + m_normals.clear(); + m_normals.reserve(len); + for (int j = 0; j < len - 1; ++j) + m_normals.push_back(GetUnitNormal(m_srcPoly[j], m_srcPoly[j + 1])); + if (node.m_endtype == etClosedLine || node.m_endtype == etClosedPolygon) + m_normals.push_back(GetUnitNormal(m_srcPoly[len - 1], m_srcPoly[0])); + else + m_normals.push_back(DoublePoint(m_normals[len - 2])); + + if (node.m_endtype == etClosedPolygon) + { + int k = len - 1; + for (int j = 0; j < len; ++j) + OffsetPoint(j, k, node.m_jointype); + m_destPolys.push_back(m_destPoly); + } + else if (node.m_endtype == etClosedLine) + { + int k = len - 1; + for (int j = 0; j < len; ++j) + OffsetPoint(j, k, node.m_jointype); + m_destPolys.push_back(m_destPoly); + m_destPoly.clear(); + //re-build m_normals ... + DoublePoint n = m_normals[len -1]; + for (int j = len - 1; j > 0; j--) + m_normals[j] = DoublePoint(-m_normals[j - 1].X, -m_normals[j - 1].Y); + m_normals[0] = DoublePoint(-n.X, -n.Y); + k = 0; + for (int j = len - 1; j >= 0; j--) + OffsetPoint(j, k, node.m_jointype); + m_destPolys.push_back(m_destPoly); + } + else + { + int k = 0; + for (int j = 1; j < len - 1; ++j) + OffsetPoint(j, k, node.m_jointype); + + IntPoint pt1; + if (node.m_endtype == etOpenButt) + { + int j = len - 1; + pt1 = IntPoint((cInt)Round(m_srcPoly[j].X + m_normals[j].X * + delta), (cInt)Round(m_srcPoly[j].Y + m_normals[j].Y * delta)); + m_destPoly.push_back(pt1); + pt1 = IntPoint((cInt)Round(m_srcPoly[j].X - m_normals[j].X * + delta), (cInt)Round(m_srcPoly[j].Y - m_normals[j].Y * delta)); + m_destPoly.push_back(pt1); + } + else + { + int j = len - 1; + k = len - 2; + m_sinA = 0; + m_normals[j] = DoublePoint(-m_normals[j].X, -m_normals[j].Y); + if (node.m_endtype == etOpenSquare) + DoSquare(j, k); + else + DoRound(j, k); + } + + //re-build m_normals ... + for (int j = len - 1; j > 0; j--) + m_normals[j] = DoublePoint(-m_normals[j - 1].X, -m_normals[j - 1].Y); + m_normals[0] = DoublePoint(-m_normals[1].X, -m_normals[1].Y); + + k = len - 1; + for (int j = k - 1; j > 0; --j) OffsetPoint(j, k, node.m_jointype); + + if (node.m_endtype == etOpenButt) + { + pt1 = IntPoint((cInt)Round(m_srcPoly[0].X - m_normals[0].X * delta), + (cInt)Round(m_srcPoly[0].Y - m_normals[0].Y * delta)); + m_destPoly.push_back(pt1); + pt1 = IntPoint((cInt)Round(m_srcPoly[0].X + m_normals[0].X * delta), + (cInt)Round(m_srcPoly[0].Y + m_normals[0].Y * delta)); + m_destPoly.push_back(pt1); + } + else + { + k = 1; + m_sinA = 0; + if (node.m_endtype == etOpenSquare) + DoSquare(0, 1); + else + DoRound(0, 1); + } + m_destPolys.push_back(m_destPoly); + } + } +} +//------------------------------------------------------------------------------ + +void ClipperOffset::OffsetPoint(int j, int& k, JoinType jointype) +{ + //cross product ... + m_sinA = (m_normals[k].X * m_normals[j].Y - m_normals[j].X * m_normals[k].Y); + if (std::fabs(m_sinA * m_delta) < 1.0) + { + //dot product ... + double cosA = (m_normals[k].X * m_normals[j].X + m_normals[j].Y * m_normals[k].Y ); + if (cosA > 0) // angle => 0 degrees + { + m_destPoly.push_back(IntPoint(Round(m_srcPoly[j].X + m_normals[k].X * m_delta), + Round(m_srcPoly[j].Y + m_normals[k].Y * m_delta))); + return; + } + //else angle => 180 degrees + } + else if (m_sinA > 1.0) m_sinA = 1.0; + else if (m_sinA < -1.0) m_sinA = -1.0; + + if (m_sinA * m_delta < 0) + { + m_destPoly.push_back(IntPoint(Round(m_srcPoly[j].X + m_normals[k].X * m_delta), + Round(m_srcPoly[j].Y + m_normals[k].Y * m_delta))); + m_destPoly.push_back(m_srcPoly[j]); + m_destPoly.push_back(IntPoint(Round(m_srcPoly[j].X + m_normals[j].X * m_delta), + Round(m_srcPoly[j].Y + m_normals[j].Y * m_delta))); + } + else + switch (jointype) + { + case jtMiter: + { + double r = 1 + (m_normals[j].X * m_normals[k].X + + m_normals[j].Y * m_normals[k].Y); + if (r >= m_miterLim) DoMiter(j, k, r); else DoSquare(j, k); + break; + } + case jtSquare: DoSquare(j, k); break; + case jtRound: DoRound(j, k); break; + } + k = j; +} +//------------------------------------------------------------------------------ + +void ClipperOffset::DoSquare(int j, int k) +{ + double dx = std::tan(std::atan2(m_sinA, + m_normals[k].X * m_normals[j].X + m_normals[k].Y * m_normals[j].Y) / 4); + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[j].X + m_delta * (m_normals[k].X - m_normals[k].Y * dx)), + Round(m_srcPoly[j].Y + m_delta * (m_normals[k].Y + m_normals[k].X * dx)))); + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[j].X + m_delta * (m_normals[j].X + m_normals[j].Y * dx)), + Round(m_srcPoly[j].Y + m_delta * (m_normals[j].Y - m_normals[j].X * dx)))); +} +//------------------------------------------------------------------------------ + +void ClipperOffset::DoMiter(int j, int k, double r) +{ + double q = m_delta / r; + m_destPoly.push_back(IntPoint(Round(m_srcPoly[j].X + (m_normals[k].X + m_normals[j].X) * q), + Round(m_srcPoly[j].Y + (m_normals[k].Y + m_normals[j].Y) * q))); +} +//------------------------------------------------------------------------------ + +void ClipperOffset::DoRound(int j, int k) +{ + double a = std::atan2(m_sinA, + m_normals[k].X * m_normals[j].X + m_normals[k].Y * m_normals[j].Y); + int steps = std::max((int)Round(m_StepsPerRad * std::fabs(a)), 1); + + double X = m_normals[k].X, Y = m_normals[k].Y, X2; + for (int i = 0; i < steps; ++i) + { + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[j].X + X * m_delta), + Round(m_srcPoly[j].Y + Y * m_delta))); + X2 = X; + X = X * m_cos - m_sin * Y; + Y = X2 * m_sin + Y * m_cos; + } + m_destPoly.push_back(IntPoint( + Round(m_srcPoly[j].X + m_normals[j].X * m_delta), + Round(m_srcPoly[j].Y + m_normals[j].Y * m_delta))); +} + +//------------------------------------------------------------------------------ +// Miscellaneous public functions +//------------------------------------------------------------------------------ + +void Clipper::DoSimplePolygons() +{ + PolyOutList::size_type i = 0; + while (i < m_PolyOuts.size()) + { + OutRec* outrec = m_PolyOuts[i++]; + OutPt* op = outrec->Pts; + if (!op || outrec->IsOpen) continue; + do //for each Pt in Polygon until duplicate found do ... + { + OutPt* op2 = op->Next; + while (op2 != outrec->Pts) + { + if ((op->Pt == op2->Pt) && op2->Next != op && op2->Prev != op) + { + //split the polygon into two ... + OutPt* op3 = op->Prev; + OutPt* op4 = op2->Prev; + op->Prev = op4; + op4->Next = op; + op2->Prev = op3; + op3->Next = op2; + + outrec->Pts = op; + OutRec* outrec2 = CreateOutRec(); + outrec2->Pts = op2; + UpdateOutPtIdxs(*outrec2); + if (Poly2ContainsPoly1(outrec2->Pts, outrec->Pts)) + { + //OutRec2 is contained by OutRec1 ... + outrec2->IsHole = !outrec->IsHole; + outrec2->FirstLeft = outrec; + if (m_UsingPolyTree) FixupFirstLefts2(outrec2, outrec); + } + else + if (Poly2ContainsPoly1(outrec->Pts, outrec2->Pts)) + { + //OutRec1 is contained by OutRec2 ... + outrec2->IsHole = outrec->IsHole; + outrec->IsHole = !outrec2->IsHole; + outrec2->FirstLeft = outrec->FirstLeft; + outrec->FirstLeft = outrec2; + if (m_UsingPolyTree) FixupFirstLefts2(outrec, outrec2); + } + else + { + //the 2 polygons are separate ... + outrec2->IsHole = outrec->IsHole; + outrec2->FirstLeft = outrec->FirstLeft; + if (m_UsingPolyTree) FixupFirstLefts1(outrec, outrec2); + } + op2 = op; //ie get ready for the Next iteration + } + op2 = op2->Next; + } + op = op->Next; + } + while (op != outrec->Pts); + } +} +//------------------------------------------------------------------------------ + +void ReversePath(Path& p) +{ + std::reverse(p.begin(), p.end()); +} +//------------------------------------------------------------------------------ + +void ReversePaths(Paths& p) +{ + for (Paths::size_type i = 0; i < p.size(); ++i) + ReversePath(p[i]); +} +//------------------------------------------------------------------------------ + +void SimplifyPolygon(const Path &in_poly, Paths &out_polys, PolyFillType fillType) +{ + Clipper c; + c.StrictlySimple(true); + c.AddPath(in_poly, ptSubject, true); + c.Execute(ctUnion, out_polys, fillType, fillType); +} +//------------------------------------------------------------------------------ + +void SimplifyPolygons(const Paths &in_polys, Paths &out_polys, PolyFillType fillType) +{ + Clipper c; + c.StrictlySimple(true); + c.AddPaths(in_polys, ptSubject, true); + c.Execute(ctUnion, out_polys, fillType, fillType); +} +//------------------------------------------------------------------------------ + +void SimplifyPolygons(Paths &polys, PolyFillType fillType) +{ + SimplifyPolygons(polys, polys, fillType); +} +//------------------------------------------------------------------------------ + +inline double DistanceSqrd(const IntPoint& pt1, const IntPoint& pt2) +{ + double Dx = ((double)pt1.X - pt2.X); + double dy = ((double)pt1.Y - pt2.Y); + return (Dx*Dx + dy*dy); +} +//------------------------------------------------------------------------------ + +double DistanceFromLineSqrd( + const IntPoint& pt, const IntPoint& ln1, const IntPoint& ln2) +{ + //The equation of a line in general form (Ax + By + C = 0) + //given 2 points (x,y) & (x,y) is ... + //(y - y)x + (x - x)y + (y - y)x - (x - x)y = 0 + //A = (y - y); B = (x - x); C = (y - y)x - (x - x)y + //perpendicular distance of point (x,y) = (Ax + By + C)/Sqrt(A + B) + //see http://en.wikipedia.org/wiki/Perpendicular_distance + double A = double(ln1.Y - ln2.Y); + double B = double(ln2.X - ln1.X); + double C = A * ln1.X + B * ln1.Y; + C = A * pt.X + B * pt.Y - C; + return (C * C) / (A * A + B * B); +} +//--------------------------------------------------------------------------- + +bool SlopesNearCollinear(const IntPoint& pt1, + const IntPoint& pt2, const IntPoint& pt3, double distSqrd) +{ + //this function is more accurate when the point that's geometrically + //between the other 2 points is the one that's tested for distance. + //ie makes it more likely to pick up 'spikes' ... + if (Abs(pt1.X - pt2.X) > Abs(pt1.Y - pt2.Y)) + { + if ((pt1.X > pt2.X) == (pt1.X < pt3.X)) + return DistanceFromLineSqrd(pt1, pt2, pt3) < distSqrd; + else if ((pt2.X > pt1.X) == (pt2.X < pt3.X)) + return DistanceFromLineSqrd(pt2, pt1, pt3) < distSqrd; + else + return DistanceFromLineSqrd(pt3, pt1, pt2) < distSqrd; + } + else + { + if ((pt1.Y > pt2.Y) == (pt1.Y < pt3.Y)) + return DistanceFromLineSqrd(pt1, pt2, pt3) < distSqrd; + else if ((pt2.Y > pt1.Y) == (pt2.Y < pt3.Y)) + return DistanceFromLineSqrd(pt2, pt1, pt3) < distSqrd; + else + return DistanceFromLineSqrd(pt3, pt1, pt2) < distSqrd; + } +} +//------------------------------------------------------------------------------ + +bool PointsAreClose(IntPoint pt1, IntPoint pt2, double distSqrd) +{ + double Dx = (double)pt1.X - pt2.X; + double dy = (double)pt1.Y - pt2.Y; + return ((Dx * Dx) + (dy * dy) <= distSqrd); +} +//------------------------------------------------------------------------------ + +OutPt* ExcludeOp(OutPt* op) +{ + OutPt* result = op->Prev; + result->Next = op->Next; + op->Next->Prev = result; + result->Idx = 0; + return result; +} +//------------------------------------------------------------------------------ + +void CleanPolygon(const Path& in_poly, Path& out_poly, double distance) +{ + //distance = proximity in units/pixels below which vertices + //will be stripped. Default ~= sqrt(2). + + size_t size = in_poly.size(); + + if (size == 0) + { + out_poly.clear(); + return; + } + + OutPt* outPts = new OutPt[size]; + for (size_t i = 0; i < size; ++i) + { + outPts[i].Pt = in_poly[i]; + outPts[i].Next = &outPts[(i + 1) % size]; + outPts[i].Next->Prev = &outPts[i]; + outPts[i].Idx = 0; + } + + double distSqrd = distance * distance; + OutPt* op = &outPts[0]; + while (op->Idx == 0 && op->Next != op->Prev) + { + if (PointsAreClose(op->Pt, op->Prev->Pt, distSqrd)) + { + op = ExcludeOp(op); + size--; + } + else if (PointsAreClose(op->Prev->Pt, op->Next->Pt, distSqrd)) + { + ExcludeOp(op->Next); + op = ExcludeOp(op); + size -= 2; + } + else if (SlopesNearCollinear(op->Prev->Pt, op->Pt, op->Next->Pt, distSqrd)) + { + op = ExcludeOp(op); + size--; + } + else + { + op->Idx = 1; + op = op->Next; + } + } + + if (size < 3) size = 0; + out_poly.resize(size); + for (size_t i = 0; i < size; ++i) + { + out_poly[i] = op->Pt; + op = op->Next; + } + delete [] outPts; +} +//------------------------------------------------------------------------------ + +void CleanPolygon(Path& poly, double distance) +{ + CleanPolygon(poly, poly, distance); +} +//------------------------------------------------------------------------------ + +void CleanPolygons(const Paths& in_polys, Paths& out_polys, double distance) +{ + out_polys.resize(in_polys.size()); + for (Paths::size_type i = 0; i < in_polys.size(); ++i) + CleanPolygon(in_polys[i], out_polys[i], distance); +} +//------------------------------------------------------------------------------ + +void CleanPolygons(Paths& polys, double distance) +{ + CleanPolygons(polys, polys, distance); +} +//------------------------------------------------------------------------------ + +void Minkowski(const Path& poly, const Path& path, + Paths& solution, bool isSum, bool isClosed) +{ + int delta = (isClosed ? 1 : 0); + size_t polyCnt = poly.size(); + size_t pathCnt = path.size(); + Paths pp; + pp.reserve(pathCnt); + if (isSum) + for (size_t i = 0; i < pathCnt; ++i) + { + Path p; + p.reserve(polyCnt); + for (size_t j = 0; j < poly.size(); ++j) + p.push_back(IntPoint(path[i].X + poly[j].X, path[i].Y + poly[j].Y)); + pp.push_back(p); + } + else + for (size_t i = 0; i < pathCnt; ++i) + { + Path p; + p.reserve(polyCnt); + for (size_t j = 0; j < poly.size(); ++j) + p.push_back(IntPoint(path[i].X - poly[j].X, path[i].Y - poly[j].Y)); + pp.push_back(p); + } + + solution.clear(); + solution.reserve((pathCnt + delta) * (polyCnt + 1)); + for (size_t i = 0; i < pathCnt - 1 + delta; ++i) + for (size_t j = 0; j < polyCnt; ++j) + { + Path quad; + quad.reserve(4); + quad.push_back(pp[i % pathCnt][j % polyCnt]); + quad.push_back(pp[(i + 1) % pathCnt][j % polyCnt]); + quad.push_back(pp[(i + 1) % pathCnt][(j + 1) % polyCnt]); + quad.push_back(pp[i % pathCnt][(j + 1) % polyCnt]); + if (!Orientation(quad)) ReversePath(quad); + solution.push_back(quad); + } +} +//------------------------------------------------------------------------------ + +void MinkowskiSum(const Path& pattern, const Path& path, Paths& solution, bool pathIsClosed) +{ + Minkowski(pattern, path, solution, true, pathIsClosed); + Clipper c; + c.AddPaths(solution, ptSubject, true); + c.Execute(ctUnion, solution, pftNonZero, pftNonZero); +} +//------------------------------------------------------------------------------ + +void TranslatePath(const Path& input, Path& output, const IntPoint delta) +{ + //precondition: input != output + output.resize(input.size()); + for (size_t i = 0; i < input.size(); ++i) + output[i] = IntPoint(input[i].X + delta.X, input[i].Y + delta.Y); +} +//------------------------------------------------------------------------------ + +void MinkowskiSum(const Path& pattern, const Paths& paths, Paths& solution, bool pathIsClosed) +{ + Clipper c; + for (size_t i = 0; i < paths.size(); ++i) + { + Paths tmp; + Minkowski(pattern, paths[i], tmp, true, pathIsClosed); + c.AddPaths(tmp, ptSubject, true); + if (pathIsClosed) + { + Path tmp2; + TranslatePath(paths[i], tmp2, pattern[0]); + c.AddPath(tmp2, ptClip, true); + } + } + c.Execute(ctUnion, solution, pftNonZero, pftNonZero); +} +//------------------------------------------------------------------------------ + +void MinkowskiDiff(const Path& poly1, const Path& poly2, Paths& solution) +{ + Minkowski(poly1, poly2, solution, false, true); + Clipper c; + c.AddPaths(solution, ptSubject, true); + c.Execute(ctUnion, solution, pftNonZero, pftNonZero); +} +//------------------------------------------------------------------------------ + +enum NodeType {ntAny, ntOpen, ntClosed}; + +void AddPolyNodeToPaths(const PolyNode& polynode, NodeType nodetype, Paths& paths) +{ + bool match = true; + if (nodetype == ntClosed) match = !polynode.IsOpen(); + else if (nodetype == ntOpen) return; + + if (!polynode.Contour.empty() && match) + paths.push_back(polynode.Contour); + for (int i = 0; i < polynode.ChildCount(); ++i) + AddPolyNodeToPaths(*polynode.Childs[i], nodetype, paths); +} +//------------------------------------------------------------------------------ + +void PolyTreeToPaths(const PolyTree& polytree, Paths& paths) +{ + paths.resize(0); + paths.reserve(polytree.Total()); + AddPolyNodeToPaths(polytree, ntAny, paths); +} +//------------------------------------------------------------------------------ + +void ClosedPathsFromPolyTree(const PolyTree& polytree, Paths& paths) +{ + paths.resize(0); + paths.reserve(polytree.Total()); + AddPolyNodeToPaths(polytree, ntClosed, paths); +} +//------------------------------------------------------------------------------ + +void OpenPathsFromPolyTree(PolyTree& polytree, Paths& paths) +{ + paths.resize(0); + paths.reserve(polytree.Total()); + //Open paths are top level only, so ... + for (int i = 0; i < polytree.ChildCount(); ++i) + if (polytree.Childs[i]->IsOpen()) + paths.push_back(polytree.Childs[i]->Contour); +} +//------------------------------------------------------------------------------ + +std::ostream& operator <<(std::ostream &s, const IntPoint &p) +{ + s << "(" << p.X << "," << p.Y << ")"; + return s; +} +//------------------------------------------------------------------------------ + +std::ostream& operator <<(std::ostream &s, const Path &p) +{ + if (p.empty()) return s; + Path::size_type last = p.size() -1; + for (Path::size_type i = 0; i < last; i++) + s << "(" << p[i].X << "," << p[i].Y << "), "; + s << "(" << p[last].X << "," << p[last].Y << ")\n"; + return s; +} +//------------------------------------------------------------------------------ + +std::ostream& operator <<(std::ostream &s, const Paths &p) +{ + for (Paths::size_type i = 0; i < p.size(); i++) + s << p[i]; + s << "\n"; + return s; +} +//------------------------------------------------------------------------------ + +} //ClipperLib namespace diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.hpp" "b/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.hpp" new file mode 100644 index 0000000..1c38371 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/clipper/clipper.hpp" @@ -0,0 +1,404 @@ +/******************************************************************************* +* * +* Author : Angus Johnson * +* Version : 6.4.0 * +* Date : 2 July 2015 * +* Website : http://www.angusj.com * +* Copyright : Angus Johnson 2010-2015 * +* * +* License: * +* Use, modification & distribution is subject to Boost Software License Ver 1. * +* http://www.boost.org/LICENSE_1_0.txt * +* * +* Attributions: * +* The code in this library is an extension of Bala Vatti's clipping algorithm: * +* "A generic solution to polygon clipping" * +* Communications of the ACM, Vol 35, Issue 7 (July 1992) pp 56-63. * +* http://portal.acm.org/citation.cfm?id=129906 * +* * +* Computer graphics and geometric modeling: implementation and algorithms * +* By Max K. Agoston * +* Springer; 1 edition (January 4, 2005) * +* http://books.google.com/books?q=vatti+clipping+agoston * +* * +* See also: * +* "Polygon Offsetting by Computing Winding Numbers" * +* Paper no. DETC2005-85513 pp. 565-575 * +* ASME 2005 International Design Engineering Technical Conferences * +* and Computers and Information in Engineering Conference (IDETC/CIE2005) * +* September 24-28, 2005 , Long Beach, California, USA * +* http://www.me.berkeley.edu/~mcmains/pubs/DAC05OffsetPolygon.pdf * +* * +*******************************************************************************/ + +#ifndef clipper_hpp +#define clipper_hpp + +#define CLIPPER_VERSION "6.2.6" + +//use_int32: When enabled 32bit ints are used instead of 64bit ints. This +//improve performance but coordinate values are limited to the range +/- 46340 +//#define use_int32 + +//use_xyz: adds a Z member to IntPoint. Adds a minor cost to perfomance. +//#define use_xyz + +//use_lines: Enables line clipping. Adds a very minor cost to performance. +#define use_lines + +//use_deprecated: Enables temporary support for the obsolete functions +//#define use_deprecated + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace ClipperLib { + +enum ClipType { ctIntersection, ctUnion, ctDifference, ctXor }; +enum PolyType { ptSubject, ptClip }; +//By far the most widely used winding rules for polygon filling are +//EvenOdd & NonZero (GDI, GDI+, XLib, OpenGL, Cairo, AGG, Quartz, SVG, Gr32) +//Others rules include Positive, Negative and ABS_GTR_EQ_TWO (only in OpenGL) +//see http://glprogramming.com/red/chapter11.html +enum PolyFillType { pftEvenOdd, pftNonZero, pftPositive, pftNegative }; + +#ifdef use_int32 + typedef int cInt; + static cInt const loRange = 0x7FFF; + static cInt const hiRange = 0x7FFF; +#else + typedef signed long long cInt; + static cInt const loRange = 0x3FFFFFFF; + static cInt const hiRange = 0x3FFFFFFFFFFFFFFFLL; + typedef signed long long long64; //used by Int128 class + typedef unsigned long long ulong64; + +#endif + +struct IntPoint { + cInt X; + cInt Y; +#ifdef use_xyz + cInt Z; + IntPoint(cInt x = 0, cInt y = 0, cInt z = 0): X(x), Y(y), Z(z) {}; +#else + IntPoint(cInt x = 0, cInt y = 0): X(x), Y(y) {}; +#endif + + friend inline bool operator== (const IntPoint& a, const IntPoint& b) + { + return a.X == b.X && a.Y == b.Y; + } + friend inline bool operator!= (const IntPoint& a, const IntPoint& b) + { + return a.X != b.X || a.Y != b.Y; + } +}; +//------------------------------------------------------------------------------ + +typedef std::vector< IntPoint > Path; +typedef std::vector< Path > Paths; + +inline Path& operator <<(Path& poly, const IntPoint& p) {poly.push_back(p); return poly;} +inline Paths& operator <<(Paths& polys, const Path& p) {polys.push_back(p); return polys;} + +std::ostream& operator <<(std::ostream &s, const IntPoint &p); +std::ostream& operator <<(std::ostream &s, const Path &p); +std::ostream& operator <<(std::ostream &s, const Paths &p); + +struct DoublePoint +{ + double X; + double Y; + DoublePoint(double x = 0, double y = 0) : X(x), Y(y) {} + DoublePoint(IntPoint ip) : X((double)ip.X), Y((double)ip.Y) {} +}; +//------------------------------------------------------------------------------ + +#ifdef use_xyz +typedef void (*ZFillCallback)(IntPoint& e1bot, IntPoint& e1top, IntPoint& e2bot, IntPoint& e2top, IntPoint& pt); +#endif + +enum InitOptions {ioReverseSolution = 1, ioStrictlySimple = 2, ioPreserveCollinear = 4}; +enum JoinType {jtSquare, jtRound, jtMiter}; +enum EndType {etClosedPolygon, etClosedLine, etOpenButt, etOpenSquare, etOpenRound}; + +class PolyNode; +typedef std::vector< PolyNode* > PolyNodes; + +class PolyNode +{ +public: + PolyNode(); + virtual ~PolyNode(){}; + Path Contour; + PolyNodes Childs; + PolyNode* Parent; + PolyNode* GetNext() const; + bool IsHole() const; + bool IsOpen() const; + int ChildCount() const; +private: + unsigned Index; //node index in Parent.Childs + bool m_IsOpen; + JoinType m_jointype; + EndType m_endtype; + PolyNode* GetNextSiblingUp() const; + void AddChild(PolyNode& child); + friend class Clipper; //to access Index + friend class ClipperOffset; +}; + +class PolyTree: public PolyNode +{ +public: + ~PolyTree(){Clear();}; + PolyNode* GetFirst() const; + void Clear(); + int Total() const; +private: + PolyNodes AllNodes; + friend class Clipper; //to access AllNodes +}; + +bool Orientation(const Path &poly); +double Area(const Path &poly); +int PointInPolygon(const IntPoint &pt, const Path &path); + +void SimplifyPolygon(const Path &in_poly, Paths &out_polys, PolyFillType fillType = pftEvenOdd); +void SimplifyPolygons(const Paths &in_polys, Paths &out_polys, PolyFillType fillType = pftEvenOdd); +void SimplifyPolygons(Paths &polys, PolyFillType fillType = pftEvenOdd); + +void CleanPolygon(const Path& in_poly, Path& out_poly, double distance = 1.415); +void CleanPolygon(Path& poly, double distance = 1.415); +void CleanPolygons(const Paths& in_polys, Paths& out_polys, double distance = 1.415); +void CleanPolygons(Paths& polys, double distance = 1.415); + +void MinkowskiSum(const Path& pattern, const Path& path, Paths& solution, bool pathIsClosed); +void MinkowskiSum(const Path& pattern, const Paths& paths, Paths& solution, bool pathIsClosed); +void MinkowskiDiff(const Path& poly1, const Path& poly2, Paths& solution); + +void PolyTreeToPaths(const PolyTree& polytree, Paths& paths); +void ClosedPathsFromPolyTree(const PolyTree& polytree, Paths& paths); +void OpenPathsFromPolyTree(PolyTree& polytree, Paths& paths); + +void ReversePath(Path& p); +void ReversePaths(Paths& p); + +struct IntRect { cInt left; cInt top; cInt right; cInt bottom; }; + +//enums that are used internally ... +enum EdgeSide { esLeft = 1, esRight = 2}; + +//forward declarations (for stuff used internally) ... +struct TEdge; +struct IntersectNode; +struct LocalMinimum; +struct OutPt; +struct OutRec; +struct Join; + +typedef std::vector < OutRec* > PolyOutList; +typedef std::vector < TEdge* > EdgeList; +typedef std::vector < Join* > JoinList; +typedef std::vector < IntersectNode* > IntersectList; + +//------------------------------------------------------------------------------ + +//ClipperBase is the ancestor to the Clipper class. It should not be +//instantiated directly. This class simply abstracts the conversion of sets of +//polygon coordinates into edge objects that are stored in a LocalMinima list. +class ClipperBase +{ +public: + ClipperBase(); + virtual ~ClipperBase(); + virtual bool AddPath(const Path &pg, PolyType PolyTyp, bool Closed); + bool AddPaths(const Paths &ppg, PolyType PolyTyp, bool Closed); + virtual void Clear(); + IntRect GetBounds(); + bool PreserveCollinear() {return m_PreserveCollinear;}; + void PreserveCollinear(bool value) {m_PreserveCollinear = value;}; +protected: + void DisposeLocalMinimaList(); + TEdge* AddBoundsToLML(TEdge *e, bool IsClosed); + virtual void Reset(); + TEdge* ProcessBound(TEdge* E, bool IsClockwise); + void InsertScanbeam(const cInt Y); + bool PopScanbeam(cInt &Y); + bool LocalMinimaPending(); + bool PopLocalMinima(cInt Y, const LocalMinimum *&locMin); + OutRec* CreateOutRec(); + void DisposeAllOutRecs(); + void DisposeOutRec(PolyOutList::size_type index); + void SwapPositionsInAEL(TEdge *edge1, TEdge *edge2); + void DeleteFromAEL(TEdge *e); + void UpdateEdgeIntoAEL(TEdge *&e); + + typedef std::vector MinimaList; + MinimaList::iterator m_CurrentLM; + MinimaList m_MinimaList; + + bool m_UseFullRange; + EdgeList m_edges; + bool m_PreserveCollinear; + bool m_HasOpenPaths; + PolyOutList m_PolyOuts; + TEdge *m_ActiveEdges; + + typedef std::priority_queue ScanbeamList; + ScanbeamList m_Scanbeam; +}; +//------------------------------------------------------------------------------ + +class Clipper : public virtual ClipperBase +{ +public: + Clipper(int initOptions = 0); + bool Execute(ClipType clipType, + Paths &solution, + PolyFillType fillType = pftEvenOdd); + bool Execute(ClipType clipType, + Paths &solution, + PolyFillType subjFillType, + PolyFillType clipFillType); + bool Execute(ClipType clipType, + PolyTree &polytree, + PolyFillType fillType = pftEvenOdd); + bool Execute(ClipType clipType, + PolyTree &polytree, + PolyFillType subjFillType, + PolyFillType clipFillType); + bool ReverseSolution() { return m_ReverseOutput; }; + void ReverseSolution(bool value) {m_ReverseOutput = value;}; + bool StrictlySimple() {return m_StrictSimple;}; + void StrictlySimple(bool value) {m_StrictSimple = value;}; + //set the callback function for z value filling on intersections (otherwise Z is 0) +#ifdef use_xyz + void ZFillFunction(ZFillCallback zFillFunc); +#endif +protected: + virtual bool ExecuteInternal(); +private: + JoinList m_Joins; + JoinList m_GhostJoins; + IntersectList m_IntersectList; + ClipType m_ClipType; + typedef std::list MaximaList; + MaximaList m_Maxima; + TEdge *m_SortedEdges; + bool m_ExecuteLocked; + PolyFillType m_ClipFillType; + PolyFillType m_SubjFillType; + bool m_ReverseOutput; + bool m_UsingPolyTree; + bool m_StrictSimple; +#ifdef use_xyz + ZFillCallback m_ZFill; //custom callback +#endif + void SetWindingCount(TEdge& edge); + bool IsEvenOddFillType(const TEdge& edge) const; + bool IsEvenOddAltFillType(const TEdge& edge) const; + void InsertLocalMinimaIntoAEL(const cInt botY); + void InsertEdgeIntoAEL(TEdge *edge, TEdge* startEdge); + void AddEdgeToSEL(TEdge *edge); + bool PopEdgeFromSEL(TEdge *&edge); + void CopyAELToSEL(); + void DeleteFromSEL(TEdge *e); + void SwapPositionsInSEL(TEdge *edge1, TEdge *edge2); + bool IsContributing(const TEdge& edge) const; + bool IsTopHorz(const cInt XPos); + void DoMaxima(TEdge *e); + void ProcessHorizontals(); + void ProcessHorizontal(TEdge *horzEdge); + void AddLocalMaxPoly(TEdge *e1, TEdge *e2, const IntPoint &pt); + OutPt* AddLocalMinPoly(TEdge *e1, TEdge *e2, const IntPoint &pt); + OutRec* GetOutRec(int idx); + void AppendPolygon(TEdge *e1, TEdge *e2); + void IntersectEdges(TEdge *e1, TEdge *e2, IntPoint &pt); + OutPt* AddOutPt(TEdge *e, const IntPoint &pt); + OutPt* GetLastOutPt(TEdge *e); + bool ProcessIntersections(const cInt topY); + void BuildIntersectList(const cInt topY); + void ProcessIntersectList(); + void ProcessEdgesAtTopOfScanbeam(const cInt topY); + void BuildResult(Paths& polys); + void BuildResult2(PolyTree& polytree); + void SetHoleState(TEdge *e, OutRec *outrec); + void DisposeIntersectNodes(); + bool FixupIntersectionOrder(); + void FixupOutPolygon(OutRec &outrec); + void FixupOutPolyline(OutRec &outrec); + bool IsHole(TEdge *e); + bool FindOwnerFromSplitRecs(OutRec &outRec, OutRec *&currOrfl); + void FixHoleLinkage(OutRec &outrec); + void AddJoin(OutPt *op1, OutPt *op2, const IntPoint offPt); + void ClearJoins(); + void ClearGhostJoins(); + void AddGhostJoin(OutPt *op, const IntPoint offPt); + bool JoinPoints(Join *j, OutRec* outRec1, OutRec* outRec2); + void JoinCommonEdges(); + void DoSimplePolygons(); + void FixupFirstLefts1(OutRec* OldOutRec, OutRec* NewOutRec); + void FixupFirstLefts2(OutRec* InnerOutRec, OutRec* OuterOutRec); + void FixupFirstLefts3(OutRec* OldOutRec, OutRec* NewOutRec); +#ifdef use_xyz + void SetZ(IntPoint& pt, TEdge& e1, TEdge& e2); +#endif +}; +//------------------------------------------------------------------------------ + +class ClipperOffset +{ +public: + ClipperOffset(double miterLimit = 2.0, double roundPrecision = 0.25); + ~ClipperOffset(); + void AddPath(const Path& path, JoinType joinType, EndType endType); + void AddPaths(const Paths& paths, JoinType joinType, EndType endType); + void Execute(Paths& solution, double delta); + void Execute(PolyTree& solution, double delta); + void Clear(); + double MiterLimit; + double ArcTolerance; +private: + Paths m_destPolys; + Path m_srcPoly; + Path m_destPoly; + std::vector m_normals; + double m_delta, m_sinA, m_sin, m_cos; + double m_miterLim, m_StepsPerRad; + IntPoint m_lowest; + PolyNode m_polyNodes; + + void FixOrientations(); + void DoOffset(double delta); + void OffsetPoint(int j, int& k, JoinType jointype); + void DoSquare(int j, int k); + void DoMiter(int j, int k, double r); + void DoRound(int j, int k); +}; +//------------------------------------------------------------------------------ + +class clipperException : public std::exception +{ + public: + clipperException(const char* description): m_descr(description) {} + virtual ~clipperException() throw() {} + virtual const char* what() const throw() {return m_descr.c_str();} + private: + std::string m_descr; +}; +//------------------------------------------------------------------------------ + +} //ClipperLib namespace + +#endif //clipper_hpp + + diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/attr.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/attr.h" new file mode 100644 index 0000000..b4137cb --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/attr.h" @@ -0,0 +1,471 @@ +/* + pybind11/attr.h: Infrastructure for processing custom + type and function attributes + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "cast.h" + +NAMESPACE_BEGIN(pybind11) + +/// \addtogroup annotations +/// @{ + +/// Annotation for methods +struct is_method { handle class_; is_method(const handle &c) : class_(c) { } }; + +/// Annotation for operators +struct is_operator { }; + +/// Annotation for parent scope +struct scope { handle value; scope(const handle &s) : value(s) { } }; + +/// Annotation for documentation +struct doc { const char *value; doc(const char *value) : value(value) { } }; + +/// Annotation for function names +struct name { const char *value; name(const char *value) : value(value) { } }; + +/// Annotation indicating that a function is an overload associated with a given "sibling" +struct sibling { handle value; sibling(const handle &value) : value(value.ptr()) { } }; + +/// Annotation indicating that a class derives from another given type +template struct base { + PYBIND11_DEPRECATED("base() was deprecated in favor of specifying 'T' as a template argument to class_") + base() { } +}; + +/// Keep patient alive while nurse lives +template struct keep_alive { }; + +/// Annotation indicating that a class is involved in a multiple inheritance relationship +struct multiple_inheritance { }; + +/// Annotation which enables dynamic attributes, i.e. adds `__dict__` to a class +struct dynamic_attr { }; + +/// Annotation which enables the buffer protocol for a type +struct buffer_protocol { }; + +/// Annotation which requests that a special metaclass is created for a type +struct metaclass { + handle value; + + PYBIND11_DEPRECATED("py::metaclass() is no longer required. It's turned on by default now.") + metaclass() {} + + /// Override pybind11's default metaclass + explicit metaclass(handle value) : value(value) { } +}; + +/// Annotation to mark enums as an arithmetic type +struct arithmetic { }; + +/** \rst + A call policy which places one or more guard variables (``Ts...``) around the function call. + + For example, this definition: + + .. code-block:: cpp + + m.def("foo", foo, py::call_guard()); + + is equivalent to the following pseudocode: + + .. code-block:: cpp + + m.def("foo", [](args...) { + T scope_guard; + return foo(args...); // forwarded arguments + }); + \endrst */ +template struct call_guard; + +template <> struct call_guard<> { using type = detail::void_type; }; + +template +struct call_guard { + static_assert(std::is_default_constructible::value, + "The guard type must be default constructible"); + + using type = T; +}; + +template +struct call_guard { + struct type { + T guard{}; // Compose multiple guard types with left-to-right default-constructor order + typename call_guard::type next{}; + }; +}; + +/// @} annotations + +NAMESPACE_BEGIN(detail) +/* Forward declarations */ +enum op_id : int; +enum op_type : int; +struct undefined_t; +template struct op_; +template struct init; +template struct init_alias; +inline void keep_alive_impl(size_t Nurse, size_t Patient, function_call &call, handle ret); + +/// Internal data structure which holds metadata about a keyword argument +struct argument_record { + const char *name; ///< Argument name + const char *descr; ///< Human-readable version of the argument value + handle value; ///< Associated Python object + bool convert : 1; ///< True if the argument is allowed to convert when loading + bool none : 1; ///< True if None is allowed when loading + + argument_record(const char *name, const char *descr, handle value, bool convert, bool none) + : name(name), descr(descr), value(value), convert(convert), none(none) { } +}; + +/// Internal data structure which holds metadata about a bound function (signature, overloads, etc.) +struct function_record { + function_record() + : is_constructor(false), is_stateless(false), is_operator(false), + has_args(false), has_kwargs(false), is_method(false) { } + + /// Function name + char *name = nullptr; /* why no C++ strings? They generate heavier code.. */ + + // User-specified documentation string + char *doc = nullptr; + + /// Human-readable version of the function signature + char *signature = nullptr; + + /// List of registered keyword arguments + std::vector args; + + /// Pointer to lambda function which converts arguments and performs the actual call + handle (*impl) (function_call &) = nullptr; + + /// Storage for the wrapped function pointer and captured data, if any + void *data[3] = { }; + + /// Pointer to custom destructor for 'data' (if needed) + void (*free_data) (function_record *ptr) = nullptr; + + /// Return value policy associated with this function + return_value_policy policy = return_value_policy::automatic; + + /// True if name == '__init__' + bool is_constructor : 1; + + /// True if this is a stateless function pointer + bool is_stateless : 1; + + /// True if this is an operator (__add__), etc. + bool is_operator : 1; + + /// True if the function has a '*args' argument + bool has_args : 1; + + /// True if the function has a '**kwargs' argument + bool has_kwargs : 1; + + /// True if this is a method + bool is_method : 1; + + /// Number of arguments (including py::args and/or py::kwargs, if present) + std::uint16_t nargs; + + /// Python method object + PyMethodDef *def = nullptr; + + /// Python handle to the parent scope (a class or a module) + handle scope; + + /// Python handle to the sibling function representing an overload chain + handle sibling; + + /// Pointer to next overload + function_record *next = nullptr; +}; + +/// Special data structure which (temporarily) holds metadata about a bound class +struct type_record { + PYBIND11_NOINLINE type_record() + : multiple_inheritance(false), dynamic_attr(false), buffer_protocol(false) { } + + /// Handle to the parent scope + handle scope; + + /// Name of the class + const char *name = nullptr; + + // Pointer to RTTI type_info data structure + const std::type_info *type = nullptr; + + /// How large is the underlying C++ type? + size_t type_size = 0; + + /// How large is the type's holder? + size_t holder_size = 0; + + /// The global operator new can be overridden with a class-specific variant + void *(*operator_new)(size_t) = ::operator new; + + /// Function pointer to class_<..>::init_instance + void (*init_instance)(instance *, const void *) = nullptr; + + /// Function pointer to class_<..>::dealloc + void (*dealloc)(const detail::value_and_holder &) = nullptr; + + /// List of base classes of the newly created type + list bases; + + /// Optional docstring + const char *doc = nullptr; + + /// Custom metaclass (optional) + handle metaclass; + + /// Multiple inheritance marker + bool multiple_inheritance : 1; + + /// Does the class manage a __dict__? + bool dynamic_attr : 1; + + /// Does the class implement the buffer protocol? + bool buffer_protocol : 1; + + /// Is the default (unique_ptr) holder type used? + bool default_holder : 1; + + PYBIND11_NOINLINE void add_base(const std::type_info &base, void *(*caster)(void *)) { + auto base_info = detail::get_type_info(base, false); + if (!base_info) { + std::string tname(base.name()); + detail::clean_type_id(tname); + pybind11_fail("generic_type: type \"" + std::string(name) + + "\" referenced unknown base type \"" + tname + "\""); + } + + if (default_holder != base_info->default_holder) { + std::string tname(base.name()); + detail::clean_type_id(tname); + pybind11_fail("generic_type: type \"" + std::string(name) + "\" " + + (default_holder ? "does not have" : "has") + + " a non-default holder type while its base \"" + tname + "\" " + + (base_info->default_holder ? "does not" : "does")); + } + + bases.append((PyObject *) base_info->type); + + if (base_info->type->tp_dictoffset != 0) + dynamic_attr = true; + + if (caster) + base_info->implicit_casts.emplace_back(type, caster); + } +}; + +inline function_call::function_call(function_record &f, handle p) : + func(f), parent(p) { + args.reserve(f.nargs); + args_convert.reserve(f.nargs); +} + +/** + * Partial template specializations to process custom attributes provided to + * cpp_function_ and class_. These are either used to initialize the respective + * fields in the type_record and function_record data structures or executed at + * runtime to deal with custom call policies (e.g. keep_alive). + */ +template struct process_attribute; + +template struct process_attribute_default { + /// Default implementation: do nothing + static void init(const T &, function_record *) { } + static void init(const T &, type_record *) { } + static void precall(function_call &) { } + static void postcall(function_call &, handle) { } +}; + +/// Process an attribute specifying the function's name +template <> struct process_attribute : process_attribute_default { + static void init(const name &n, function_record *r) { r->name = const_cast(n.value); } +}; + +/// Process an attribute specifying the function's docstring +template <> struct process_attribute : process_attribute_default { + static void init(const doc &n, function_record *r) { r->doc = const_cast(n.value); } +}; + +/// Process an attribute specifying the function's docstring (provided as a C-style string) +template <> struct process_attribute : process_attribute_default { + static void init(const char *d, function_record *r) { r->doc = const_cast(d); } + static void init(const char *d, type_record *r) { r->doc = const_cast(d); } +}; +template <> struct process_attribute : process_attribute { }; + +/// Process an attribute indicating the function's return value policy +template <> struct process_attribute : process_attribute_default { + static void init(const return_value_policy &p, function_record *r) { r->policy = p; } +}; + +/// Process an attribute which indicates that this is an overloaded function associated with a given sibling +template <> struct process_attribute : process_attribute_default { + static void init(const sibling &s, function_record *r) { r->sibling = s.value; } +}; + +/// Process an attribute which indicates that this function is a method +template <> struct process_attribute : process_attribute_default { + static void init(const is_method &s, function_record *r) { r->is_method = true; r->scope = s.class_; } +}; + +/// Process an attribute which indicates the parent scope of a method +template <> struct process_attribute : process_attribute_default { + static void init(const scope &s, function_record *r) { r->scope = s.value; } +}; + +/// Process an attribute which indicates that this function is an operator +template <> struct process_attribute : process_attribute_default { + static void init(const is_operator &, function_record *r) { r->is_operator = true; } +}; + +/// Process a keyword argument attribute (*without* a default value) +template <> struct process_attribute : process_attribute_default { + static void init(const arg &a, function_record *r) { + if (r->is_method && r->args.empty()) + r->args.emplace_back("self", nullptr, handle(), true /*convert*/, false /*none not allowed*/); + r->args.emplace_back(a.name, nullptr, handle(), !a.flag_noconvert, a.flag_none); + } +}; + +/// Process a keyword argument attribute (*with* a default value) +template <> struct process_attribute : process_attribute_default { + static void init(const arg_v &a, function_record *r) { + if (r->is_method && r->args.empty()) + r->args.emplace_back("self", nullptr /*descr*/, handle() /*parent*/, true /*convert*/, false /*none not allowed*/); + + if (!a.value) { +#if !defined(NDEBUG) + std::string descr("'"); + if (a.name) descr += std::string(a.name) + ": "; + descr += a.type + "'"; + if (r->is_method) { + if (r->name) + descr += " in method '" + (std::string) str(r->scope) + "." + (std::string) r->name + "'"; + else + descr += " in method of '" + (std::string) str(r->scope) + "'"; + } else if (r->name) { + descr += " in function '" + (std::string) r->name + "'"; + } + pybind11_fail("arg(): could not convert default argument " + + descr + " into a Python object (type not registered yet?)"); +#else + pybind11_fail("arg(): could not convert default argument " + "into a Python object (type not registered yet?). " + "Compile in debug mode for more information."); +#endif + } + r->args.emplace_back(a.name, a.descr, a.value.inc_ref(), !a.flag_noconvert, a.flag_none); + } +}; + +/// Process a parent class attribute. Single inheritance only (class_ itself already guarantees that) +template +struct process_attribute::value>> : process_attribute_default { + static void init(const handle &h, type_record *r) { r->bases.append(h); } +}; + +/// Process a parent class attribute (deprecated, does not support multiple inheritance) +template +struct process_attribute> : process_attribute_default> { + static void init(const base &, type_record *r) { r->add_base(typeid(T), nullptr); } +}; + +/// Process a multiple inheritance attribute +template <> +struct process_attribute : process_attribute_default { + static void init(const multiple_inheritance &, type_record *r) { r->multiple_inheritance = true; } +}; + +template <> +struct process_attribute : process_attribute_default { + static void init(const dynamic_attr &, type_record *r) { r->dynamic_attr = true; } +}; + +template <> +struct process_attribute : process_attribute_default { + static void init(const buffer_protocol &, type_record *r) { r->buffer_protocol = true; } +}; + +template <> +struct process_attribute : process_attribute_default { + static void init(const metaclass &m, type_record *r) { r->metaclass = m.value; } +}; + + +/// Process an 'arithmetic' attribute for enums (does nothing here) +template <> +struct process_attribute : process_attribute_default {}; + +template +struct process_attribute> : process_attribute_default> { }; + +/** + * Process a keep_alive call policy -- invokes keep_alive_impl during the + * pre-call handler if both Nurse, Patient != 0 and use the post-call handler + * otherwise + */ +template struct process_attribute> : public process_attribute_default> { + template = 0> + static void precall(function_call &call) { keep_alive_impl(Nurse, Patient, call, handle()); } + template = 0> + static void postcall(function_call &, handle) { } + template = 0> + static void precall(function_call &) { } + template = 0> + static void postcall(function_call &call, handle ret) { keep_alive_impl(Nurse, Patient, call, ret); } +}; + +/// Recursively iterate over variadic template arguments +template struct process_attributes { + static void init(const Args&... args, function_record *r) { + int unused[] = { 0, (process_attribute::type>::init(args, r), 0) ... }; + ignore_unused(unused); + } + static void init(const Args&... args, type_record *r) { + int unused[] = { 0, (process_attribute::type>::init(args, r), 0) ... }; + ignore_unused(unused); + } + static void precall(function_call &call) { + int unused[] = { 0, (process_attribute::type>::precall(call), 0) ... }; + ignore_unused(unused); + } + static void postcall(function_call &call, handle fn_ret) { + int unused[] = { 0, (process_attribute::type>::postcall(call, fn_ret), 0) ... }; + ignore_unused(unused); + } +}; + +template +using is_call_guard = is_instantiation; + +/// Extract the ``type`` from the first `call_guard` in `Extras...` (or `void_type` if none found) +template +using extract_guard_t = typename exactly_one_t, Extra...>::type; + +/// Check the number of named arguments at compile time +template ::value...), + size_t self = constexpr_sum(std::is_same::value...)> +constexpr bool expected_num_args(size_t nargs, bool has_args, bool has_kwargs) { + return named == 0 || (self + named + has_args + has_kwargs) == nargs; +} + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/buffer_info.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/buffer_info.h" new file mode 100644 index 0000000..6d1167d --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/buffer_info.h" @@ -0,0 +1,108 @@ +/* + pybind11/buffer_info.h: Python buffer object interface + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "common.h" + +NAMESPACE_BEGIN(pybind11) + +/// Information record describing a Python buffer object +struct buffer_info { + void *ptr = nullptr; // Pointer to the underlying storage + ssize_t itemsize = 0; // Size of individual items in bytes + ssize_t size = 0; // Total number of entries + std::string format; // For homogeneous buffers, this should be set to format_descriptor::format() + ssize_t ndim = 0; // Number of dimensions + std::vector shape; // Shape of the tensor (1 entry per dimension) + std::vector strides; // Number of entries between adjacent entries (for each per dimension) + + buffer_info() { } + + buffer_info(void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, + detail::any_container shape_in, detail::any_container strides_in) + : ptr(ptr), itemsize(itemsize), size(1), format(format), ndim(ndim), + shape(std::move(shape_in)), strides(std::move(strides_in)) { + if (ndim != (ssize_t) shape.size() || ndim != (ssize_t) strides.size()) + pybind11_fail("buffer_info: ndim doesn't match shape and/or strides length"); + for (size_t i = 0; i < (size_t) ndim; ++i) + size *= shape[i]; + } + + template + buffer_info(T *ptr, detail::any_container shape_in, detail::any_container strides_in) + : buffer_info(private_ctr_tag(), ptr, sizeof(T), format_descriptor::format(), static_cast(shape_in->size()), std::move(shape_in), std::move(strides_in)) { } + + buffer_info(void *ptr, ssize_t itemsize, const std::string &format, ssize_t size) + : buffer_info(ptr, itemsize, format, 1, {size}, {itemsize}) { } + + template + buffer_info(T *ptr, ssize_t size) + : buffer_info(ptr, sizeof(T), format_descriptor::format(), size) { } + + explicit buffer_info(Py_buffer *view, bool ownview = true) + : buffer_info(view->buf, view->itemsize, view->format, view->ndim, + {view->shape, view->shape + view->ndim}, {view->strides, view->strides + view->ndim}) { + this->view = view; + this->ownview = ownview; + } + + buffer_info(const buffer_info &) = delete; + buffer_info& operator=(const buffer_info &) = delete; + + buffer_info(buffer_info &&other) { + (*this) = std::move(other); + } + + buffer_info& operator=(buffer_info &&rhs) { + ptr = rhs.ptr; + itemsize = rhs.itemsize; + size = rhs.size; + format = std::move(rhs.format); + ndim = rhs.ndim; + shape = std::move(rhs.shape); + strides = std::move(rhs.strides); + std::swap(view, rhs.view); + std::swap(ownview, rhs.ownview); + return *this; + } + + ~buffer_info() { + if (view && ownview) { PyBuffer_Release(view); delete view; } + } + +private: + struct private_ctr_tag { }; + + buffer_info(private_ctr_tag, void *ptr, ssize_t itemsize, const std::string &format, ssize_t ndim, + detail::any_container &&shape_in, detail::any_container &&strides_in) + : buffer_info(ptr, itemsize, format, ndim, std::move(shape_in), std::move(strides_in)) { } + + Py_buffer *view = nullptr; + bool ownview = false; +}; + +NAMESPACE_BEGIN(detail) + +template struct compare_buffer_info { + static bool compare(const buffer_info& b) { + return b.format == format_descriptor::format() && b.itemsize == (ssize_t) sizeof(T); + } +}; + +template struct compare_buffer_info::value>> { + static bool compare(const buffer_info& b) { + return (size_t) b.itemsize == sizeof(T) && (b.format == format_descriptor::value || + ((sizeof(T) == sizeof(long)) && b.format == (std::is_unsigned::value ? "L" : "l")) || + ((sizeof(T) == sizeof(size_t)) && b.format == (std::is_unsigned::value ? "N" : "n"))); + } +}; + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/cast.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/cast.h" new file mode 100644 index 0000000..5db03e2 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/cast.h" @@ -0,0 +1,2058 @@ +/* + pybind11/cast.h: Partial template specializations to cast between + C++ and Python types + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pytypes.h" +#include "typeid.h" +#include "descr.h" +#include +#include +#include + +#if defined(PYBIND11_CPP17) +# if defined(__has_include) +# if __has_include() +# define PYBIND11_HAS_STRING_VIEW +# endif +# elif defined(_MSC_VER) +# define PYBIND11_HAS_STRING_VIEW +# endif +#endif +#ifdef PYBIND11_HAS_STRING_VIEW +#include +#endif + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) +// Forward declarations: +inline PyTypeObject *make_static_property_type(); +inline PyTypeObject *make_default_metaclass(); +inline PyObject *make_object_base_type(PyTypeObject *metaclass); +struct value_and_holder; + +/// Additional type information which does not fit into the PyTypeObject +struct type_info { + PyTypeObject *type; + const std::type_info *cpptype; + size_t type_size, holder_size_in_ptrs; + void *(*operator_new)(size_t); + void (*init_instance)(instance *, const void *); + void (*dealloc)(const value_and_holder &v_h); + std::vector implicit_conversions; + std::vector> implicit_casts; + std::vector *direct_conversions; + buffer_info *(*get_buffer)(PyObject *, void *) = nullptr; + void *get_buffer_data = nullptr; + /* A simple type never occurs as a (direct or indirect) parent + * of a class that makes use of multiple inheritance */ + bool simple_type : 1; + /* True if there is no multiple inheritance in this type's inheritance tree */ + bool simple_ancestors : 1; + /* for base vs derived holder_type checks */ + bool default_holder : 1; +}; + +// Store the static internals pointer in a version-specific function so that we're guaranteed it +// will be distinct for modules compiled for different pybind11 versions. Without this, some +// compilers (i.e. gcc) can use the same static pointer storage location across different .so's, +// even though the `get_internals()` function itself is local to each shared object. +template +internals *&get_internals_ptr() { static internals *internals_ptr = nullptr; return internals_ptr; } + +PYBIND11_NOINLINE inline internals &get_internals() { + internals *&internals_ptr = get_internals_ptr(); + if (internals_ptr) + return *internals_ptr; + handle builtins(PyEval_GetBuiltins()); + const char *id = PYBIND11_INTERNALS_ID; + if (builtins.contains(id) && isinstance(builtins[id])) { + internals_ptr = *static_cast(capsule(builtins[id])); + } else { + internals_ptr = new internals(); + #if defined(WITH_THREAD) + PyEval_InitThreads(); + PyThreadState *tstate = PyThreadState_Get(); + internals_ptr->tstate = PyThread_create_key(); + PyThread_set_key_value(internals_ptr->tstate, tstate); + internals_ptr->istate = tstate->interp; + #endif + builtins[id] = capsule(&internals_ptr); + internals_ptr->registered_exception_translators.push_front( + [](std::exception_ptr p) -> void { + try { + if (p) std::rethrow_exception(p); + } catch (error_already_set &e) { e.restore(); return; + } catch (const builtin_exception &e) { e.set_error(); return; + } catch (const std::bad_alloc &e) { PyErr_SetString(PyExc_MemoryError, e.what()); return; + } catch (const std::domain_error &e) { PyErr_SetString(PyExc_ValueError, e.what()); return; + } catch (const std::invalid_argument &e) { PyErr_SetString(PyExc_ValueError, e.what()); return; + } catch (const std::length_error &e) { PyErr_SetString(PyExc_ValueError, e.what()); return; + } catch (const std::out_of_range &e) { PyErr_SetString(PyExc_IndexError, e.what()); return; + } catch (const std::range_error &e) { PyErr_SetString(PyExc_ValueError, e.what()); return; + } catch (const std::exception &e) { PyErr_SetString(PyExc_RuntimeError, e.what()); return; + } catch (...) { + PyErr_SetString(PyExc_RuntimeError, "Caught an unknown exception!"); + return; + } + } + ); + internals_ptr->static_property_type = make_static_property_type(); + internals_ptr->default_metaclass = make_default_metaclass(); + internals_ptr->instance_base = make_object_base_type(internals_ptr->default_metaclass); + } + return *internals_ptr; +} + +/// A life support system for temporary objects created by `type_caster::load()`. +/// Adding a patient will keep it alive up until the enclosing function returns. +class loader_life_support { +public: + /// A new patient frame is created when a function is entered + loader_life_support() { + get_internals().loader_patient_stack.push_back(nullptr); + } + + /// ... and destroyed after it returns + ~loader_life_support() { + auto &stack = get_internals().loader_patient_stack; + if (stack.empty()) + pybind11_fail("loader_life_support: internal error"); + + auto ptr = stack.back(); + stack.pop_back(); + Py_CLEAR(ptr); + + // A heuristic to reduce the stack's capacity (e.g. after long recursive calls) + if (stack.capacity() > 16 && stack.size() != 0 && stack.capacity() / stack.size() > 2) + stack.shrink_to_fit(); + } + + /// This can only be used inside a pybind11-bound function, either by `argument_loader` + /// at argument preparation time or by `py::cast()` at execution time. + PYBIND11_NOINLINE static void add_patient(handle h) { + auto &stack = get_internals().loader_patient_stack; + if (stack.empty()) + throw cast_error("When called outside a bound function, py::cast() cannot " + "do Python -> C++ conversions which require the creation " + "of temporary values"); + + auto &list_ptr = stack.back(); + if (list_ptr == nullptr) { + list_ptr = PyList_New(1); + if (!list_ptr) + pybind11_fail("loader_life_support: error allocating list"); + PyList_SET_ITEM(list_ptr, 0, h.inc_ref().ptr()); + } else { + auto result = PyList_Append(list_ptr, h.ptr()); + if (result == -1) + pybind11_fail("loader_life_support: error adding patient"); + } + } +}; + +// Gets the cache entry for the given type, creating it if necessary. The return value is the pair +// returned by emplace, i.e. an iterator for the entry and a bool set to `true` if the entry was +// just created. +inline std::pair all_type_info_get_cache(PyTypeObject *type); + +// Populates a just-created cache entry. +PYBIND11_NOINLINE inline void all_type_info_populate(PyTypeObject *t, std::vector &bases) { + std::vector check; + for (handle parent : reinterpret_borrow(t->tp_bases)) + check.push_back((PyTypeObject *) parent.ptr()); + + auto const &type_dict = get_internals().registered_types_py; + for (size_t i = 0; i < check.size(); i++) { + auto type = check[i]; + // Ignore Python2 old-style class super type: + if (!PyType_Check((PyObject *) type)) continue; + + // Check `type` in the current set of registered python types: + auto it = type_dict.find(type); + if (it != type_dict.end()) { + // We found a cache entry for it, so it's either pybind-registered or has pre-computed + // pybind bases, but we have to make sure we haven't already seen the type(s) before: we + // want to follow Python/virtual C++ rules that there should only be one instance of a + // common base. + for (auto *tinfo : it->second) { + // NB: Could use a second set here, rather than doing a linear search, but since + // having a large number of immediate pybind11-registered types seems fairly + // unlikely, that probably isn't worthwhile. + bool found = false; + for (auto *known : bases) { + if (known == tinfo) { found = true; break; } + } + if (!found) bases.push_back(tinfo); + } + } + else if (type->tp_bases) { + // It's some python type, so keep follow its bases classes to look for one or more + // registered types + if (i + 1 == check.size()) { + // When we're at the end, we can pop off the current element to avoid growing + // `check` when adding just one base (which is typical--.e. when there is no + // multiple inheritance) + check.pop_back(); + i--; + } + for (handle parent : reinterpret_borrow(type->tp_bases)) + check.push_back((PyTypeObject *) parent.ptr()); + } + } +} + +/** + * Extracts vector of type_info pointers of pybind-registered roots of the given Python type. Will + * be just 1 pybind type for the Python type of a pybind-registered class, or for any Python-side + * derived class that uses single inheritance. Will contain as many types as required for a Python + * class that uses multiple inheritance to inherit (directly or indirectly) from multiple + * pybind-registered classes. Will be empty if neither the type nor any base classes are + * pybind-registered. + * + * The value is cached for the lifetime of the Python type. + */ +inline const std::vector &all_type_info(PyTypeObject *type) { + auto ins = all_type_info_get_cache(type); + if (ins.second) + // New cache entry: populate it + all_type_info_populate(type, ins.first->second); + + return ins.first->second; +} + +/** + * Gets a single pybind11 type info for a python type. Returns nullptr if neither the type nor any + * ancestors are pybind11-registered. Throws an exception if there are multiple bases--use + * `all_type_info` instead if you want to support multiple bases. + */ +PYBIND11_NOINLINE inline detail::type_info* get_type_info(PyTypeObject *type) { + auto &bases = all_type_info(type); + if (bases.size() == 0) + return nullptr; + if (bases.size() > 1) + pybind11_fail("pybind11::detail::get_type_info: type has multiple pybind11-registered bases"); + return bases.front(); +} + +PYBIND11_NOINLINE inline detail::type_info *get_type_info(const std::type_info &tp, + bool throw_if_missing = false) { + auto &types = get_internals().registered_types_cpp; + + auto it = types.find(std::type_index(tp)); + if (it != types.end()) + return (detail::type_info *) it->second; + if (throw_if_missing) { + std::string tname = tp.name(); + detail::clean_type_id(tname); + pybind11_fail("pybind11::detail::get_type_info: unable to find type info for \"" + tname + "\""); + } + return nullptr; +} + +PYBIND11_NOINLINE inline handle get_type_handle(const std::type_info &tp, bool throw_if_missing) { + detail::type_info *type_info = get_type_info(tp, throw_if_missing); + return handle(type_info ? ((PyObject *) type_info->type) : nullptr); +} + +struct value_and_holder { + instance *inst; + size_t index; + const detail::type_info *type; + void **vh; + + value_and_holder(instance *i, const detail::type_info *type, size_t vpos, size_t index) : + inst{i}, index{index}, type{type}, + vh{inst->simple_layout ? inst->simple_value_holder : &inst->nonsimple.values_and_holders[vpos]} + {} + + // Used for past-the-end iterator + value_and_holder(size_t index) : index{index} {} + + template V *&value_ptr() const { + return reinterpret_cast(vh[0]); + } + // True if this `value_and_holder` has a non-null value pointer + explicit operator bool() const { return value_ptr(); } + + template H &holder() const { + return reinterpret_cast(vh[1]); + } + bool holder_constructed() const { + return inst->simple_layout + ? inst->simple_holder_constructed + : inst->nonsimple.status[index] & instance::status_holder_constructed; + } + void set_holder_constructed() { + if (inst->simple_layout) + inst->simple_holder_constructed = true; + else + inst->nonsimple.status[index] |= instance::status_holder_constructed; + } + bool instance_registered() const { + return inst->simple_layout + ? inst->simple_instance_registered + : inst->nonsimple.status[index] & instance::status_instance_registered; + } + void set_instance_registered() { + if (inst->simple_layout) + inst->simple_instance_registered = true; + else + inst->nonsimple.status[index] |= instance::status_instance_registered; + } +}; + +// Container for accessing and iterating over an instance's values/holders +struct values_and_holders { +private: + instance *inst; + using type_vec = std::vector; + const type_vec &tinfo; + +public: + values_and_holders(instance *inst) : inst{inst}, tinfo(all_type_info(Py_TYPE(inst))) {} + + struct iterator { + private: + instance *inst; + const type_vec *types; + value_and_holder curr; + friend struct values_and_holders; + iterator(instance *inst, const type_vec *tinfo) + : inst{inst}, types{tinfo}, + curr(inst /* instance */, + types->empty() ? nullptr : (*types)[0] /* type info */, + 0, /* vpos: (non-simple types only): the first vptr comes first */ + 0 /* index */) + {} + // Past-the-end iterator: + iterator(size_t end) : curr(end) {} + public: + bool operator==(const iterator &other) { return curr.index == other.curr.index; } + bool operator!=(const iterator &other) { return curr.index != other.curr.index; } + iterator &operator++() { + if (!inst->simple_layout) + curr.vh += 1 + (*types)[curr.index]->holder_size_in_ptrs; + ++curr.index; + curr.type = curr.index < types->size() ? (*types)[curr.index] : nullptr; + return *this; + } + value_and_holder &operator*() { return curr; } + value_and_holder *operator->() { return &curr; } + }; + + iterator begin() { return iterator(inst, &tinfo); } + iterator end() { return iterator(tinfo.size()); } + + iterator find(const type_info *find_type) { + auto it = begin(), endit = end(); + while (it != endit && it->type != find_type) ++it; + return it; + } + + size_t size() { return tinfo.size(); } +}; + +/** + * Extracts C++ value and holder pointer references from an instance (which may contain multiple + * values/holders for python-side multiple inheritance) that match the given type. Throws an error + * if the given type (or ValueType, if omitted) is not a pybind11 base of the given instance. If + * `find_type` is omitted (or explicitly specified as nullptr) the first value/holder are returned, + * regardless of type (and the resulting .type will be nullptr). + * + * The returned object should be short-lived: in particular, it must not outlive the called-upon + * instance. + */ +PYBIND11_NOINLINE inline value_and_holder instance::get_value_and_holder(const type_info *find_type /*= nullptr default in common.h*/) { + // Optimize common case: + if (!find_type || Py_TYPE(this) == find_type->type) + return value_and_holder(this, find_type, 0, 0); + + detail::values_and_holders vhs(this); + auto it = vhs.find(find_type); + if (it != vhs.end()) + return *it; + +#if defined(NDEBUG) + pybind11_fail("pybind11::detail::instance::get_value_and_holder: " + "type is not a pybind11 base of the given instance " + "(compile in debug mode for type details)"); +#else + pybind11_fail("pybind11::detail::instance::get_value_and_holder: `" + + std::string(find_type->type->tp_name) + "' is not a pybind11 base of the given `" + + std::string(Py_TYPE(this)->tp_name) + "' instance"); +#endif +} + +PYBIND11_NOINLINE inline void instance::allocate_layout() { + auto &tinfo = all_type_info(Py_TYPE(this)); + + const size_t n_types = tinfo.size(); + + if (n_types == 0) + pybind11_fail("instance allocation failed: new instance has no pybind11-registered base types"); + + simple_layout = + n_types == 1 && tinfo.front()->holder_size_in_ptrs <= instance_simple_holder_in_ptrs(); + + // Simple path: no python-side multiple inheritance, and a small-enough holder + if (simple_layout) { + simple_value_holder[0] = nullptr; + simple_holder_constructed = false; + simple_instance_registered = false; + } + else { // multiple base types or a too-large holder + // Allocate space to hold: [v1*][h1][v2*][h2]...[bb...] where [vN*] is a value pointer, + // [hN] is the (uninitialized) holder instance for value N, and [bb...] is a set of bool + // values that tracks whether each associated holder has been initialized. Each [block] is + // padded, if necessary, to an integer multiple of sizeof(void *). + size_t space = 0; + for (auto t : tinfo) { + space += 1; // value pointer + space += t->holder_size_in_ptrs; // holder instance + } + size_t flags_at = space; + space += size_in_ptrs(n_types); // status bytes (holder_constructed and instance_registered) + + // Allocate space for flags, values, and holders, and initialize it to 0 (flags and values, + // in particular, need to be 0). Use Python's memory allocation functions: in Python 3.6 + // they default to using pymalloc, which is designed to be efficient for small allocations + // like the one we're doing here; in earlier versions (and for larger allocations) they are + // just wrappers around malloc. +#if PY_VERSION_HEX >= 0x03050000 + nonsimple.values_and_holders = (void **) PyMem_Calloc(space, sizeof(void *)); + if (!nonsimple.values_and_holders) throw std::bad_alloc(); +#else + nonsimple.values_and_holders = (void **) PyMem_New(void *, space); + if (!nonsimple.values_and_holders) throw std::bad_alloc(); + std::memset(nonsimple.values_and_holders, 0, space * sizeof(void *)); +#endif + nonsimple.status = reinterpret_cast(&nonsimple.values_and_holders[flags_at]); + } + owned = true; +} + +PYBIND11_NOINLINE inline void instance::deallocate_layout() { + if (!simple_layout) + PyMem_Free(nonsimple.values_and_holders); +} + +PYBIND11_NOINLINE inline bool isinstance_generic(handle obj, const std::type_info &tp) { + handle type = detail::get_type_handle(tp, false); + if (!type) + return false; + return isinstance(obj, type); +} + +PYBIND11_NOINLINE inline std::string error_string() { + if (!PyErr_Occurred()) { + PyErr_SetString(PyExc_RuntimeError, "Unknown internal error occurred"); + return "Unknown internal error occurred"; + } + + error_scope scope; // Preserve error state + + std::string errorString; + if (scope.type) { + errorString += handle(scope.type).attr("__name__").cast(); + errorString += ": "; + } + if (scope.value) + errorString += (std::string) str(scope.value); + + PyErr_NormalizeException(&scope.type, &scope.value, &scope.trace); + +#if PY_MAJOR_VERSION >= 3 + if (scope.trace != nullptr) + PyException_SetTraceback(scope.value, scope.trace); +#endif + +#if !defined(PYPY_VERSION) + if (scope.trace) { + PyTracebackObject *trace = (PyTracebackObject *) scope.trace; + + /* Get the deepest trace possible */ + while (trace->tb_next) + trace = trace->tb_next; + + PyFrameObject *frame = trace->tb_frame; + errorString += "\n\nAt:\n"; + while (frame) { + int lineno = PyFrame_GetLineNumber(frame); + errorString += + " " + handle(frame->f_code->co_filename).cast() + + "(" + std::to_string(lineno) + "): " + + handle(frame->f_code->co_name).cast() + "\n"; + frame = frame->f_back; + } + trace = trace->tb_next; + } +#endif + + return errorString; +} + +PYBIND11_NOINLINE inline handle get_object_handle(const void *ptr, const detail::type_info *type ) { + auto &instances = get_internals().registered_instances; + auto range = instances.equal_range(ptr); + for (auto it = range.first; it != range.second; ++it) { + for (auto vh : values_and_holders(it->second)) { + if (vh.type == type) + return handle((PyObject *) it->second); + } + } + return handle(); +} + +inline PyThreadState *get_thread_state_unchecked() { +#if defined(PYPY_VERSION) + return PyThreadState_GET(); +#elif PY_VERSION_HEX < 0x03000000 + return _PyThreadState_Current; +#elif PY_VERSION_HEX < 0x03050000 + return (PyThreadState*) _Py_atomic_load_relaxed(&_PyThreadState_Current); +#elif PY_VERSION_HEX < 0x03050200 + return (PyThreadState*) _PyThreadState_Current.value; +#else + return _PyThreadState_UncheckedGet(); +#endif +} + +// Forward declarations +inline void keep_alive_impl(handle nurse, handle patient); +inline PyObject *make_new_instance(PyTypeObject *type, bool allocate_value = true); + +class type_caster_generic { +public: + PYBIND11_NOINLINE type_caster_generic(const std::type_info &type_info) + : typeinfo(get_type_info(type_info)) { } + + bool load(handle src, bool convert) { + return load_impl(src, convert); + } + + PYBIND11_NOINLINE static handle cast(const void *_src, return_value_policy policy, handle parent, + const detail::type_info *tinfo, + void *(*copy_constructor)(const void *), + void *(*move_constructor)(const void *), + const void *existing_holder = nullptr) { + if (!tinfo) // no type info: error will be set already + return handle(); + + void *src = const_cast(_src); + if (src == nullptr) + return none().release(); + + auto it_instances = get_internals().registered_instances.equal_range(src); + for (auto it_i = it_instances.first; it_i != it_instances.second; ++it_i) { + for (auto instance_type : detail::all_type_info(Py_TYPE(it_i->second))) { + if (instance_type && instance_type == tinfo) + return handle((PyObject *) it_i->second).inc_ref(); + } + } + + auto inst = reinterpret_steal(make_new_instance(tinfo->type, false /* don't allocate value */)); + auto wrapper = reinterpret_cast(inst.ptr()); + wrapper->owned = false; + void *&valueptr = values_and_holders(wrapper).begin()->value_ptr(); + + switch (policy) { + case return_value_policy::automatic: + case return_value_policy::take_ownership: + valueptr = src; + wrapper->owned = true; + break; + + case return_value_policy::automatic_reference: + case return_value_policy::reference: + valueptr = src; + wrapper->owned = false; + break; + + case return_value_policy::copy: + if (copy_constructor) + valueptr = copy_constructor(src); + else + throw cast_error("return_value_policy = copy, but the " + "object is non-copyable!"); + wrapper->owned = true; + break; + + case return_value_policy::move: + if (move_constructor) + valueptr = move_constructor(src); + else if (copy_constructor) + valueptr = copy_constructor(src); + else + throw cast_error("return_value_policy = move, but the " + "object is neither movable nor copyable!"); + wrapper->owned = true; + break; + + case return_value_policy::reference_internal: + valueptr = src; + wrapper->owned = false; + keep_alive_impl(inst, parent); + break; + + default: + throw cast_error("unhandled return_value_policy: should not happen!"); + } + + tinfo->init_instance(wrapper, existing_holder); + + return inst.release(); + } + +protected: + + // Base methods for generic caster; there are overridden in copyable_holder_caster + void load_value(const value_and_holder &v_h) { + value = v_h.value_ptr(); + } + bool try_implicit_casts(handle src, bool convert) { + for (auto &cast : typeinfo->implicit_casts) { + type_caster_generic sub_caster(*cast.first); + if (sub_caster.load(src, convert)) { + value = cast.second(sub_caster.value); + return true; + } + } + return false; + } + bool try_direct_conversions(handle src) { + for (auto &converter : *typeinfo->direct_conversions) { + if (converter(src.ptr(), value)) + return true; + } + return false; + } + void check_holder_compat() {} + + // Implementation of `load`; this takes the type of `this` so that it can dispatch the relevant + // bits of code between here and copyable_holder_caster where the two classes need different + // logic (without having to resort to virtual inheritance). + template + PYBIND11_NOINLINE bool load_impl(handle src, bool convert) { + if (!src || !typeinfo) + return false; + if (src.is_none()) { + // Defer accepting None to other overloads (if we aren't in convert mode): + if (!convert) return false; + value = nullptr; + return true; + } + + auto &this_ = static_cast(*this); + this_.check_holder_compat(); + + PyTypeObject *srctype = Py_TYPE(src.ptr()); + + // Case 1: If src is an exact type match for the target type then we can reinterpret_cast + // the instance's value pointer to the target type: + if (srctype == typeinfo->type) { + this_.load_value(reinterpret_cast(src.ptr())->get_value_and_holder()); + return true; + } + // Case 2: We have a derived class + else if (PyType_IsSubtype(srctype, typeinfo->type)) { + auto &bases = all_type_info(srctype); + bool no_cpp_mi = typeinfo->simple_type; + + // Case 2a: the python type is a Python-inherited derived class that inherits from just + // one simple (no MI) pybind11 class, or is an exact match, so the C++ instance is of + // the right type and we can use reinterpret_cast. + // (This is essentially the same as case 2b, but because not using multiple inheritance + // is extremely common, we handle it specially to avoid the loop iterator and type + // pointer lookup overhead) + if (bases.size() == 1 && (no_cpp_mi || bases.front()->type == typeinfo->type)) { + this_.load_value(reinterpret_cast(src.ptr())->get_value_and_holder()); + return true; + } + // Case 2b: the python type inherits from multiple C++ bases. Check the bases to see if + // we can find an exact match (or, for a simple C++ type, an inherited match); if so, we + // can safely reinterpret_cast to the relevant pointer. + else if (bases.size() > 1) { + for (auto base : bases) { + if (no_cpp_mi ? PyType_IsSubtype(base->type, typeinfo->type) : base->type == typeinfo->type) { + this_.load_value(reinterpret_cast(src.ptr())->get_value_and_holder(base)); + return true; + } + } + } + + // Case 2c: C++ multiple inheritance is involved and we couldn't find an exact type match + // in the registered bases, above, so try implicit casting (needed for proper C++ casting + // when MI is involved). + if (this_.try_implicit_casts(src, convert)) + return true; + } + + // Perform an implicit conversion + if (convert) { + for (auto &converter : typeinfo->implicit_conversions) { + auto temp = reinterpret_steal(converter(src.ptr(), typeinfo->type)); + if (load_impl(temp, false)) { + loader_life_support::add_patient(temp); + return true; + } + } + if (this_.try_direct_conversions(src)) + return true; + } + return false; + } + + + // Called to do type lookup and wrap the pointer and type in a pair when a dynamic_cast + // isn't needed or can't be used. If the type is unknown, sets the error and returns a pair + // with .second = nullptr. (p.first = nullptr is not an error: it becomes None). + PYBIND11_NOINLINE static std::pair src_and_type( + const void *src, const std::type_info &cast_type, const std::type_info *rtti_type = nullptr) { + auto &internals = get_internals(); + auto it = internals.registered_types_cpp.find(std::type_index(cast_type)); + if (it != internals.registered_types_cpp.end()) + return {src, (const type_info *) it->second}; + + // Not found, set error: + std::string tname = rtti_type ? rtti_type->name() : cast_type.name(); + detail::clean_type_id(tname); + std::string msg = "Unregistered type : " + tname; + PyErr_SetString(PyExc_TypeError, msg.c_str()); + return {nullptr, nullptr}; + } + + const type_info *typeinfo = nullptr; + void *value = nullptr; +}; + +/** + * Determine suitable casting operator for pointer-or-lvalue-casting type casters. The type caster + * needs to provide `operator T*()` and `operator T&()` operators. + * + * If the type supports moving the value away via an `operator T&&() &&` method, it should use + * `movable_cast_op_type` instead. + */ +template +using cast_op_type = + conditional_t>::value, + typename std::add_pointer>::type, + typename std::add_lvalue_reference>::type>; + +/** + * Determine suitable casting operator for a type caster with a movable value. Such a type caster + * needs to provide `operator T*()`, `operator T&()`, and `operator T&&() &&`. The latter will be + * called in appropriate contexts where the value can be moved rather than copied. + * + * These operator are automatically provided when using the PYBIND11_TYPE_CASTER macro. + */ +template +using movable_cast_op_type = + conditional_t::type>::value, + typename std::add_pointer>::type, + conditional_t::value, + typename std::add_rvalue_reference>::type, + typename std::add_lvalue_reference>::type>>; + +// std::is_copy_constructible isn't quite enough: it lets std::vector (and similar) through when +// T is non-copyable, but code containing such a copy constructor fails to actually compile. +template struct is_copy_constructible : std::is_copy_constructible {}; + +// Specialization for types that appear to be copy constructible but also look like stl containers +// (we specifically check for: has `value_type` and `reference` with `reference = value_type&`): if +// so, copy constructability depends on whether the value_type is copy constructible. +template struct is_copy_constructible, + std::is_same + >::value>> : is_copy_constructible {}; + +#if !defined(PYBIND11_CPP17) +// Likewise for std::pair before C++17 (which mandates that the copy constructor not exist when the +// two types aren't themselves copy constructible). +template struct is_copy_constructible> + : all_of, is_copy_constructible> {}; +#endif + +/// Generic type caster for objects stored on the heap +template class type_caster_base : public type_caster_generic { + using itype = intrinsic_t; +public: + static PYBIND11_DESCR name() { return type_descr(_()); } + + type_caster_base() : type_caster_base(typeid(type)) { } + explicit type_caster_base(const std::type_info &info) : type_caster_generic(info) { } + + static handle cast(const itype &src, return_value_policy policy, handle parent) { + if (policy == return_value_policy::automatic || policy == return_value_policy::automatic_reference) + policy = return_value_policy::copy; + return cast(&src, policy, parent); + } + + static handle cast(itype &&src, return_value_policy, handle parent) { + return cast(&src, return_value_policy::move, parent); + } + + // Returns a (pointer, type_info) pair taking care of necessary RTTI type lookup for a + // polymorphic type. If the instance isn't derived, returns the non-RTTI base version. + template ::value, int> = 0> + static std::pair src_and_type(const itype *src) { + const void *vsrc = src; + auto &internals = get_internals(); + auto &cast_type = typeid(itype); + const std::type_info *instance_type = nullptr; + if (vsrc) { + instance_type = &typeid(*src); + if (!same_type(cast_type, *instance_type)) { + // This is a base pointer to a derived type; if it is a pybind11-registered type, we + // can get the correct derived pointer (which may be != base pointer) by a + // dynamic_cast to most derived type: + auto it = internals.registered_types_cpp.find(std::type_index(*instance_type)); + if (it != internals.registered_types_cpp.end()) + return {dynamic_cast(src), (const type_info *) it->second}; + } + } + // Otherwise we have either a nullptr, an `itype` pointer, or an unknown derived pointer, so + // don't do a cast + return type_caster_generic::src_and_type(vsrc, cast_type, instance_type); + } + + // Non-polymorphic type, so no dynamic casting; just call the generic version directly + template ::value, int> = 0> + static std::pair src_and_type(const itype *src) { + return type_caster_generic::src_and_type(src, typeid(itype)); + } + + static handle cast(const itype *src, return_value_policy policy, handle parent) { + auto st = src_and_type(src); + return type_caster_generic::cast( + st.first, policy, parent, st.second, + make_copy_constructor(src), make_move_constructor(src)); + } + + static handle cast_holder(const itype *src, const void *holder) { + auto st = src_and_type(src); + return type_caster_generic::cast( + st.first, return_value_policy::take_ownership, {}, st.second, + nullptr, nullptr, holder); + } + + template using cast_op_type = cast_op_type; + + operator itype*() { return (type *) value; } + operator itype&() { if (!value) throw reference_cast_error(); return *((itype *) value); } + +protected: + using Constructor = void *(*)(const void *); + + /* Only enabled when the types are {copy,move}-constructible *and* when the type + does not have a private operator new implementation. */ + template ::value>> + static auto make_copy_constructor(const T *x) -> decltype(new T(*x), Constructor{}) { + return [](const void *arg) -> void * { + return new T(*reinterpret_cast(arg)); + }; + } + + template ::value>> + static auto make_move_constructor(const T *x) -> decltype(new T(std::move(*const_cast(x))), Constructor{}) { + return [](const void *arg) -> void * { + return new T(std::move(*const_cast(reinterpret_cast(arg)))); + }; + } + + static Constructor make_copy_constructor(...) { return nullptr; } + static Constructor make_move_constructor(...) { return nullptr; } +}; + +template class type_caster : public type_caster_base { }; +template using make_caster = type_caster>; + +// Shortcut for calling a caster's `cast_op_type` cast operator for casting a type_caster to a T +template typename make_caster::template cast_op_type cast_op(make_caster &caster) { + return caster.operator typename make_caster::template cast_op_type(); +} +template typename make_caster::template cast_op_type::type> +cast_op(make_caster &&caster) { + return std::move(caster).operator + typename make_caster::template cast_op_type::type>(); +} + +template class type_caster> { +private: + using caster_t = make_caster; + caster_t subcaster; + using subcaster_cast_op_type = typename caster_t::template cast_op_type; + static_assert(std::is_same::type &, subcaster_cast_op_type>::value, + "std::reference_wrapper caster requires T to have a caster with an `T &` operator"); +public: + bool load(handle src, bool convert) { return subcaster.load(src, convert); } + static PYBIND11_DESCR name() { return caster_t::name(); } + static handle cast(const std::reference_wrapper &src, return_value_policy policy, handle parent) { + // It is definitely wrong to take ownership of this pointer, so mask that rvp + if (policy == return_value_policy::take_ownership || policy == return_value_policy::automatic) + policy = return_value_policy::automatic_reference; + return caster_t::cast(&src.get(), policy, parent); + } + template using cast_op_type = std::reference_wrapper; + operator std::reference_wrapper() { return subcaster.operator subcaster_cast_op_type&(); } +}; + +#define PYBIND11_TYPE_CASTER(type, py_name) \ + protected: \ + type value; \ + public: \ + static PYBIND11_DESCR name() { return type_descr(py_name); } \ + template >::value, int> = 0> \ + static handle cast(T_ *src, return_value_policy policy, handle parent) { \ + if (!src) return none().release(); \ + if (policy == return_value_policy::take_ownership) { \ + auto h = cast(std::move(*src), policy, parent); delete src; return h; \ + } else { \ + return cast(*src, policy, parent); \ + } \ + } \ + operator type*() { return &value; } \ + operator type&() { return value; } \ + operator type&&() && { return std::move(value); } \ + template using cast_op_type = pybind11::detail::movable_cast_op_type + + +template using is_std_char_type = any_of< + std::is_same, /* std::string */ + std::is_same, /* std::u16string */ + std::is_same, /* std::u32string */ + std::is_same /* std::wstring */ +>; + +template +struct type_caster::value && !is_std_char_type::value>> { + using _py_type_0 = conditional_t; + using _py_type_1 = conditional_t::value, _py_type_0, typename std::make_unsigned<_py_type_0>::type>; + using py_type = conditional_t::value, double, _py_type_1>; +public: + + bool load(handle src, bool convert) { + py_type py_value; + + if (!src) + return false; + + if (std::is_floating_point::value) { + if (convert || PyFloat_Check(src.ptr())) + py_value = (py_type) PyFloat_AsDouble(src.ptr()); + else + return false; + } else if (PyFloat_Check(src.ptr())) { + return false; + } else if (std::is_unsigned::value) { + py_value = as_unsigned(src.ptr()); + } else { // signed integer: + py_value = sizeof(T) <= sizeof(long) + ? (py_type) PyLong_AsLong(src.ptr()) + : (py_type) PYBIND11_LONG_AS_LONGLONG(src.ptr()); + } + + bool py_err = py_value == (py_type) -1 && PyErr_Occurred(); + if (py_err || (std::is_integral::value && sizeof(py_type) != sizeof(T) && + (py_value < (py_type) std::numeric_limits::min() || + py_value > (py_type) std::numeric_limits::max()))) { + bool type_error = py_err && PyErr_ExceptionMatches( +#if PY_VERSION_HEX < 0x03000000 && !defined(PYPY_VERSION) + PyExc_SystemError +#else + PyExc_TypeError +#endif + ); + PyErr_Clear(); + if (type_error && convert && PyNumber_Check(src.ptr())) { + auto tmp = reinterpret_borrow(std::is_floating_point::value + ? PyNumber_Float(src.ptr()) + : PyNumber_Long(src.ptr())); + PyErr_Clear(); + return load(tmp, false); + } + return false; + } + + value = (T) py_value; + return true; + } + + static handle cast(T src, return_value_policy /* policy */, handle /* parent */) { + if (std::is_floating_point::value) { + return PyFloat_FromDouble((double) src); + } else if (sizeof(T) <= sizeof(long)) { + if (std::is_signed::value) + return PyLong_FromLong((long) src); + else + return PyLong_FromUnsignedLong((unsigned long) src); + } else { + if (std::is_signed::value) + return PyLong_FromLongLong((long long) src); + else + return PyLong_FromUnsignedLongLong((unsigned long long) src); + } + } + + PYBIND11_TYPE_CASTER(T, _::value>("int", "float")); +}; + +template struct void_caster { +public: + bool load(handle src, bool) { + if (src && src.is_none()) + return true; + return false; + } + static handle cast(T, return_value_policy /* policy */, handle /* parent */) { + return none().inc_ref(); + } + PYBIND11_TYPE_CASTER(T, _("None")); +}; + +template <> class type_caster : public void_caster {}; + +template <> class type_caster : public type_caster { +public: + using type_caster::cast; + + bool load(handle h, bool) { + if (!h) { + return false; + } else if (h.is_none()) { + value = nullptr; + return true; + } + + /* Check if this is a capsule */ + if (isinstance(h)) { + value = reinterpret_borrow(h); + return true; + } + + /* Check if this is a C++ type */ + auto &bases = all_type_info((PyTypeObject *) h.get_type().ptr()); + if (bases.size() == 1) { // Only allowing loading from a single-value type + value = values_and_holders(reinterpret_cast(h.ptr())).begin()->value_ptr(); + return true; + } + + /* Fail */ + return false; + } + + static handle cast(const void *ptr, return_value_policy /* policy */, handle /* parent */) { + if (ptr) + return capsule(ptr).release(); + else + return none().inc_ref(); + } + + template using cast_op_type = void*&; + operator void *&() { return value; } + static PYBIND11_DESCR name() { return type_descr(_("capsule")); } +private: + void *value = nullptr; +}; + +template <> class type_caster : public void_caster { }; + +template <> class type_caster { +public: + bool load(handle src, bool convert) { + if (!src) return false; + else if (src.ptr() == Py_True) { value = true; return true; } + else if (src.ptr() == Py_False) { value = false; return true; } + else if (convert || !strcmp("numpy.bool_", Py_TYPE(src.ptr())->tp_name)) { + // (allow non-implicit conversion for numpy booleans) + + Py_ssize_t res = -1; + if (src.is_none()) { + res = 0; // None is implicitly converted to False + } + #if defined(PYPY_VERSION) + // On PyPy, check that "__bool__" (or "__nonzero__" on Python 2.7) attr exists + else if (hasattr(src, PYBIND11_BOOL_ATTR)) { + res = PyObject_IsTrue(src.ptr()); + } + #else + // Alternate approach for CPython: this does the same as the above, but optimized + // using the CPython API so as to avoid an unneeded attribute lookup. + else if (auto tp_as_number = src.ptr()->ob_type->tp_as_number) { + if (PYBIND11_NB_BOOL(tp_as_number)) { + res = (*PYBIND11_NB_BOOL(tp_as_number))(src.ptr()); + } + } + #endif + if (res == 0 || res == 1) { + value = (bool) res; + return true; + } + } + return false; + } + static handle cast(bool src, return_value_policy /* policy */, handle /* parent */) { + return handle(src ? Py_True : Py_False).inc_ref(); + } + PYBIND11_TYPE_CASTER(bool, _("bool")); +}; + +// Helper class for UTF-{8,16,32} C++ stl strings: +template struct string_caster { + using CharT = typename StringType::value_type; + + // Simplify life by being able to assume standard char sizes (the standard only guarantees + // minimums, but Python requires exact sizes) + static_assert(!std::is_same::value || sizeof(CharT) == 1, "Unsupported char size != 1"); + static_assert(!std::is_same::value || sizeof(CharT) == 2, "Unsupported char16_t size != 2"); + static_assert(!std::is_same::value || sizeof(CharT) == 4, "Unsupported char32_t size != 4"); + // wchar_t can be either 16 bits (Windows) or 32 (everywhere else) + static_assert(!std::is_same::value || sizeof(CharT) == 2 || sizeof(CharT) == 4, + "Unsupported wchar_t size != 2/4"); + static constexpr size_t UTF_N = 8 * sizeof(CharT); + + bool load(handle src, bool) { +#if PY_MAJOR_VERSION < 3 + object temp; +#endif + handle load_src = src; + if (!src) { + return false; + } else if (!PyUnicode_Check(load_src.ptr())) { +#if PY_MAJOR_VERSION >= 3 + return load_bytes(load_src); +#else + if (sizeof(CharT) == 1) { + return load_bytes(load_src); + } + + // The below is a guaranteed failure in Python 3 when PyUnicode_Check returns false + if (!PYBIND11_BYTES_CHECK(load_src.ptr())) + return false; + + temp = reinterpret_steal(PyUnicode_FromObject(load_src.ptr())); + if (!temp) { PyErr_Clear(); return false; } + load_src = temp; +#endif + } + + object utfNbytes = reinterpret_steal(PyUnicode_AsEncodedString( + load_src.ptr(), UTF_N == 8 ? "utf-8" : UTF_N == 16 ? "utf-16" : "utf-32", nullptr)); + if (!utfNbytes) { PyErr_Clear(); return false; } + + const CharT *buffer = reinterpret_cast(PYBIND11_BYTES_AS_STRING(utfNbytes.ptr())); + size_t length = (size_t) PYBIND11_BYTES_SIZE(utfNbytes.ptr()) / sizeof(CharT); + if (UTF_N > 8) { buffer++; length--; } // Skip BOM for UTF-16/32 + value = StringType(buffer, length); + + // If we're loading a string_view we need to keep the encoded Python object alive: + if (IsView) + loader_life_support::add_patient(utfNbytes); + + return true; + } + + static handle cast(const StringType &src, return_value_policy /* policy */, handle /* parent */) { + const char *buffer = reinterpret_cast(src.data()); + ssize_t nbytes = ssize_t(src.size() * sizeof(CharT)); + handle s = decode_utfN(buffer, nbytes); + if (!s) throw error_already_set(); + return s; + } + + PYBIND11_TYPE_CASTER(StringType, _(PYBIND11_STRING_NAME)); + +private: + static handle decode_utfN(const char *buffer, ssize_t nbytes) { +#if !defined(PYPY_VERSION) + return + UTF_N == 8 ? PyUnicode_DecodeUTF8(buffer, nbytes, nullptr) : + UTF_N == 16 ? PyUnicode_DecodeUTF16(buffer, nbytes, nullptr, nullptr) : + PyUnicode_DecodeUTF32(buffer, nbytes, nullptr, nullptr); +#else + // PyPy seems to have multiple problems related to PyUnicode_UTF*: the UTF8 version + // sometimes segfaults for unknown reasons, while the UTF16 and 32 versions require a + // non-const char * arguments, which is also a nuissance, so bypass the whole thing by just + // passing the encoding as a string value, which works properly: + return PyUnicode_Decode(buffer, nbytes, UTF_N == 8 ? "utf-8" : UTF_N == 16 ? "utf-16" : "utf-32", nullptr); +#endif + } + + // When loading into a std::string or char*, accept a bytes object as-is (i.e. + // without any encoding/decoding attempt). For other C++ char sizes this is a no-op. + // which supports loading a unicode from a str, doesn't take this path. + template + bool load_bytes(enable_if_t src) { + if (PYBIND11_BYTES_CHECK(src.ptr())) { + // We were passed a Python 3 raw bytes; accept it into a std::string or char* + // without any encoding attempt. + const char *bytes = PYBIND11_BYTES_AS_STRING(src.ptr()); + if (bytes) { + value = StringType(bytes, (size_t) PYBIND11_BYTES_SIZE(src.ptr())); + return true; + } + } + + return false; + } + + template + bool load_bytes(enable_if_t) { return false; } +}; + +template +struct type_caster, enable_if_t::value>> + : string_caster> {}; + +#ifdef PYBIND11_HAS_STRING_VIEW +template +struct type_caster, enable_if_t::value>> + : string_caster, true> {}; +#endif + +// Type caster for C-style strings. We basically use a std::string type caster, but also add the +// ability to use None as a nullptr char* (which the string caster doesn't allow). +template struct type_caster::value>> { + using StringType = std::basic_string; + using StringCaster = type_caster; + StringCaster str_caster; + bool none = false; +public: + bool load(handle src, bool convert) { + if (!src) return false; + if (src.is_none()) { + // Defer accepting None to other overloads (if we aren't in convert mode): + if (!convert) return false; + none = true; + return true; + } + return str_caster.load(src, convert); + } + + static handle cast(const CharT *src, return_value_policy policy, handle parent) { + if (src == nullptr) return pybind11::none().inc_ref(); + return StringCaster::cast(StringType(src), policy, parent); + } + + static handle cast(CharT src, return_value_policy policy, handle parent) { + if (std::is_same::value) { + handle s = PyUnicode_DecodeLatin1((const char *) &src, 1, nullptr); + if (!s) throw error_already_set(); + return s; + } + return StringCaster::cast(StringType(1, src), policy, parent); + } + + operator CharT*() { return none ? nullptr : const_cast(static_cast(str_caster).c_str()); } + operator CharT() { + if (none) + throw value_error("Cannot convert None to a character"); + + auto &value = static_cast(str_caster); + size_t str_len = value.size(); + if (str_len == 0) + throw value_error("Cannot convert empty string to a character"); + + // If we're in UTF-8 mode, we have two possible failures: one for a unicode character that + // is too high, and one for multiple unicode characters (caught later), so we need to figure + // out how long the first encoded character is in bytes to distinguish between these two + // errors. We also allow want to allow unicode characters U+0080 through U+00FF, as those + // can fit into a single char value. + if (StringCaster::UTF_N == 8 && str_len > 1 && str_len <= 4) { + unsigned char v0 = static_cast(value[0]); + size_t char0_bytes = !(v0 & 0x80) ? 1 : // low bits only: 0-127 + (v0 & 0xE0) == 0xC0 ? 2 : // 0b110xxxxx - start of 2-byte sequence + (v0 & 0xF0) == 0xE0 ? 3 : // 0b1110xxxx - start of 3-byte sequence + 4; // 0b11110xxx - start of 4-byte sequence + + if (char0_bytes == str_len) { + // If we have a 128-255 value, we can decode it into a single char: + if (char0_bytes == 2 && (v0 & 0xFC) == 0xC0) { // 0x110000xx 0x10xxxxxx + return static_cast(((v0 & 3) << 6) + (static_cast(value[1]) & 0x3F)); + } + // Otherwise we have a single character, but it's > U+00FF + throw value_error("Character code point not in range(0x100)"); + } + } + + // UTF-16 is much easier: we can only have a surrogate pair for values above U+FFFF, thus a + // surrogate pair with total length 2 instantly indicates a range error (but not a "your + // string was too long" error). + else if (StringCaster::UTF_N == 16 && str_len == 2) { + char16_t v0 = static_cast(value[0]); + if (v0 >= 0xD800 && v0 < 0xE000) + throw value_error("Character code point not in range(0x10000)"); + } + + if (str_len != 1) + throw value_error("Expected a character, but multi-character string found"); + + return value[0]; + } + + static PYBIND11_DESCR name() { return type_descr(_(PYBIND11_STRING_NAME)); } + template using cast_op_type = remove_reference_t>; +}; + +// Base implementation for std::tuple and std::pair +template class Tuple, typename... Ts> class tuple_caster { + using type = Tuple; + static constexpr auto size = sizeof...(Ts); + using indices = make_index_sequence; +public: + + bool load(handle src, bool convert) { + if (!isinstance(src)) + return false; + const auto seq = reinterpret_borrow(src); + if (seq.size() != size) + return false; + return load_impl(seq, convert, indices{}); + } + + template + static handle cast(T &&src, return_value_policy policy, handle parent) { + return cast_impl(std::forward(src), policy, parent, indices{}); + } + + static PYBIND11_DESCR name() { + return type_descr(_("Tuple[") + detail::concat(make_caster::name()...) + _("]")); + } + + template using cast_op_type = type; + + operator type() & { return implicit_cast(indices{}); } + operator type() && { return std::move(*this).implicit_cast(indices{}); } + +protected: + template + type implicit_cast(index_sequence) & { return type(cast_op(std::get(subcasters))...); } + template + type implicit_cast(index_sequence) && { return type(cast_op(std::move(std::get(subcasters)))...); } + + static constexpr bool load_impl(const sequence &, bool, index_sequence<>) { return true; } + + template + bool load_impl(const sequence &seq, bool convert, index_sequence) { + for (bool r : {std::get(subcasters).load(seq[Is], convert)...}) + if (!r) + return false; + return true; + } + + /* Implementation: Convert a C++ tuple into a Python tuple */ + template + static handle cast_impl(T &&src, return_value_policy policy, handle parent, index_sequence) { + std::array entries{{ + reinterpret_steal(make_caster::cast(std::get(std::forward(src)), policy, parent))... + }}; + for (const auto &entry: entries) + if (!entry) + return handle(); + tuple result(size); + int counter = 0; + for (auto & entry: entries) + PyTuple_SET_ITEM(result.ptr(), counter++, entry.release().ptr()); + return result.release(); + } + + Tuple...> subcasters; +}; + +template class type_caster> + : public tuple_caster {}; + +template class type_caster> + : public tuple_caster {}; + +/// Helper class which abstracts away certain actions. Users can provide specializations for +/// custom holders, but it's only necessary if the type has a non-standard interface. +template +struct holder_helper { + static auto get(const T &p) -> decltype(p.get()) { return p.get(); } +}; + +/// Type caster for holder types like std::shared_ptr, etc. +template +struct copyable_holder_caster : public type_caster_base { +public: + using base = type_caster_base; + static_assert(std::is_base_of>::value, + "Holder classes are only supported for custom types"); + using base::base; + using base::cast; + using base::typeinfo; + using base::value; + + bool load(handle src, bool convert) { + return base::template load_impl>(src, convert); + } + + explicit operator type*() { return this->value; } + explicit operator type&() { return *(this->value); } + explicit operator holder_type*() { return &holder; } + + // Workaround for Intel compiler bug + // see pybind11 issue 94 + #if defined(__ICC) || defined(__INTEL_COMPILER) + operator holder_type&() { return holder; } + #else + explicit operator holder_type&() { return holder; } + #endif + + static handle cast(const holder_type &src, return_value_policy, handle) { + const auto *ptr = holder_helper::get(src); + return type_caster_base::cast_holder(ptr, &src); + } + +protected: + friend class type_caster_generic; + void check_holder_compat() { + if (typeinfo->default_holder) + throw cast_error("Unable to load a custom holder type from a default-holder instance"); + } + + bool load_value(const value_and_holder &v_h) { + if (v_h.holder_constructed()) { + value = v_h.value_ptr(); + holder = v_h.holder(); + return true; + } else { + throw cast_error("Unable to cast from non-held to held instance (T& to Holder) " +#if defined(NDEBUG) + "(compile in debug mode for type information)"); +#else + "of type '" + type_id() + "''"); +#endif + } + } + + template ::value, int> = 0> + bool try_implicit_casts(handle, bool) { return false; } + + template ::value, int> = 0> + bool try_implicit_casts(handle src, bool convert) { + for (auto &cast : typeinfo->implicit_casts) { + copyable_holder_caster sub_caster(*cast.first); + if (sub_caster.load(src, convert)) { + value = cast.second(sub_caster.value); + holder = holder_type(sub_caster.holder, (type *) value); + return true; + } + } + return false; + } + + static bool try_direct_conversions(handle) { return false; } + + + holder_type holder; +}; + +/// Specialize for the common std::shared_ptr, so users don't need to +template +class type_caster> : public copyable_holder_caster> { }; + +template +struct move_only_holder_caster { + static_assert(std::is_base_of, type_caster>::value, + "Holder classes are only supported for custom types"); + + static handle cast(holder_type &&src, return_value_policy, handle) { + auto *ptr = holder_helper::get(src); + return type_caster_base::cast_holder(ptr, &src); + } + static PYBIND11_DESCR name() { return type_caster_base::name(); } +}; + +template +class type_caster> + : public move_only_holder_caster> { }; + +template +using type_caster_holder = conditional_t::value, + copyable_holder_caster, + move_only_holder_caster>; + +template struct always_construct_holder { static constexpr bool value = Value; }; + +/// Create a specialization for custom holder types (silently ignores std::shared_ptr) +#define PYBIND11_DECLARE_HOLDER_TYPE(type, holder_type, ...) \ + namespace pybind11 { namespace detail { \ + template \ + struct always_construct_holder : always_construct_holder { }; \ + template \ + class type_caster::value>> \ + : public type_caster_holder { }; \ + }} + +// PYBIND11_DECLARE_HOLDER_TYPE holder types: +template struct is_holder_type : + std::is_base_of, detail::type_caster> {}; +// Specialization for always-supported unique_ptr holders: +template struct is_holder_type> : + std::true_type {}; + +template struct handle_type_name { static PYBIND11_DESCR name() { return _(); } }; +template <> struct handle_type_name { static PYBIND11_DESCR name() { return _(PYBIND11_BYTES_NAME); } }; +template <> struct handle_type_name { static PYBIND11_DESCR name() { return _("*args"); } }; +template <> struct handle_type_name { static PYBIND11_DESCR name() { return _("**kwargs"); } }; + +template +struct pyobject_caster { + template ::value, int> = 0> + bool load(handle src, bool /* convert */) { value = src; return static_cast(value); } + + template ::value, int> = 0> + bool load(handle src, bool /* convert */) { + if (!isinstance(src)) + return false; + value = reinterpret_borrow(src); + return true; + } + + static handle cast(const handle &src, return_value_policy /* policy */, handle /* parent */) { + return src.inc_ref(); + } + PYBIND11_TYPE_CASTER(type, handle_type_name::name()); +}; + +template +class type_caster::value>> : public pyobject_caster { }; + +// Our conditions for enabling moving are quite restrictive: +// At compile time: +// - T needs to be a non-const, non-pointer, non-reference type +// - type_caster::operator T&() must exist +// - the type must be move constructible (obviously) +// At run-time: +// - if the type is non-copy-constructible, the object must be the sole owner of the type (i.e. it +// must have ref_count() == 1)h +// If any of the above are not satisfied, we fall back to copying. +template using move_is_plain_type = satisfies_none_of; +template struct move_always : std::false_type {}; +template struct move_always, + negation>, + std::is_move_constructible, + std::is_same>().operator T&()), T&> +>::value>> : std::true_type {}; +template struct move_if_unreferenced : std::false_type {}; +template struct move_if_unreferenced, + negation>, + std::is_move_constructible, + std::is_same>().operator T&()), T&> +>::value>> : std::true_type {}; +template using move_never = none_of, move_if_unreferenced>; + +// Detect whether returning a `type` from a cast on type's type_caster is going to result in a +// reference or pointer to a local variable of the type_caster. Basically, only +// non-reference/pointer `type`s and reference/pointers from a type_caster_generic are safe; +// everything else returns a reference/pointer to a local variable. +template using cast_is_temporary_value_reference = bool_constant< + (std::is_reference::value || std::is_pointer::value) && + !std::is_base_of>::value +>; + +// When a value returned from a C++ function is being cast back to Python, we almost always want to +// force `policy = move`, regardless of the return value policy the function/method was declared +// with. Some classes (most notably Eigen::Ref and related) need to avoid this, and so can do so by +// specializing this struct. +template struct return_value_policy_override { + static return_value_policy policy(return_value_policy p) { + return !std::is_lvalue_reference::value && !std::is_pointer::value + ? return_value_policy::move : p; + } +}; + +// Basic python -> C++ casting; throws if casting fails +template type_caster &load_type(type_caster &conv, const handle &handle) { + if (!conv.load(handle, true)) { +#if defined(NDEBUG) + throw cast_error("Unable to cast Python instance to C++ type (compile in debug mode for details)"); +#else + throw cast_error("Unable to cast Python instance of type " + + (std::string) str(handle.get_type()) + " to C++ type '" + type_id() + "''"); +#endif + } + return conv; +} +// Wrapper around the above that also constructs and returns a type_caster +template make_caster load_type(const handle &handle) { + make_caster conv; + load_type(conv, handle); + return conv; +} + +NAMESPACE_END(detail) + +// pytype -> C++ type +template ::value, int> = 0> +T cast(const handle &handle) { + using namespace detail; + static_assert(!cast_is_temporary_value_reference::value, + "Unable to cast type to reference: value is local to type caster"); + return cast_op(load_type(handle)); +} + +// pytype -> pytype (calls converting constructor) +template ::value, int> = 0> +T cast(const handle &handle) { return T(reinterpret_borrow(handle)); } + +// C++ type -> py::object +template ::value, int> = 0> +object cast(const T &value, return_value_policy policy = return_value_policy::automatic_reference, + handle parent = handle()) { + if (policy == return_value_policy::automatic) + policy = std::is_pointer::value ? return_value_policy::take_ownership : return_value_policy::copy; + else if (policy == return_value_policy::automatic_reference) + policy = std::is_pointer::value ? return_value_policy::reference : return_value_policy::copy; + return reinterpret_steal(detail::make_caster::cast(value, policy, parent)); +} + +template T handle::cast() const { return pybind11::cast(*this); } +template <> inline void handle::cast() const { return; } + +template +detail::enable_if_t::value, T> move(object &&obj) { + if (obj.ref_count() > 1) +#if defined(NDEBUG) + throw cast_error("Unable to cast Python instance to C++ rvalue: instance has multiple references" + " (compile in debug mode for details)"); +#else + throw cast_error("Unable to move from Python " + (std::string) str(obj.get_type()) + + " instance to C++ " + type_id() + " instance: instance has multiple references"); +#endif + + // Move into a temporary and return that, because the reference may be a local value of `conv` + T ret = std::move(detail::load_type(obj).operator T&()); + return ret; +} + +// Calling cast() on an rvalue calls pybind::cast with the object rvalue, which does: +// - If we have to move (because T has no copy constructor), do it. This will fail if the moved +// object has multiple references, but trying to copy will fail to compile. +// - If both movable and copyable, check ref count: if 1, move; otherwise copy +// - Otherwise (not movable), copy. +template detail::enable_if_t::value, T> cast(object &&object) { + return move(std::move(object)); +} +template detail::enable_if_t::value, T> cast(object &&object) { + if (object.ref_count() > 1) + return cast(object); + else + return move(std::move(object)); +} +template detail::enable_if_t::value, T> cast(object &&object) { + return cast(object); +} + +template T object::cast() const & { return pybind11::cast(*this); } +template T object::cast() && { return pybind11::cast(std::move(*this)); } +template <> inline void object::cast() const & { return; } +template <> inline void object::cast() && { return; } + +NAMESPACE_BEGIN(detail) + +// Declared in pytypes.h: +template ::value, int>> +object object_or_cast(T &&o) { return pybind11::cast(std::forward(o)); } + +struct overload_unused {}; // Placeholder type for the unneeded (and dead code) static variable in the OVERLOAD_INT macro +template using overload_caster_t = conditional_t< + cast_is_temporary_value_reference::value, make_caster, overload_unused>; + +// Trampoline use: for reference/pointer types to value-converted values, we do a value cast, then +// store the result in the given variable. For other types, this is a no-op. +template enable_if_t::value, T> cast_ref(object &&o, make_caster &caster) { + return cast_op(load_type(caster, o)); +} +template enable_if_t::value, T> cast_ref(object &&, overload_unused &) { + pybind11_fail("Internal error: cast_ref fallback invoked"); } + +// Trampoline use: Having a pybind11::cast with an invalid reference type is going to static_assert, even +// though if it's in dead code, so we provide a "trampoline" to pybind11::cast that only does anything in +// cases where pybind11::cast is valid. +template enable_if_t::value, T> cast_safe(object &&o) { + return pybind11::cast(std::move(o)); } +template enable_if_t::value, T> cast_safe(object &&) { + pybind11_fail("Internal error: cast_safe fallback invoked"); } +template <> inline void cast_safe(object &&) {} + +NAMESPACE_END(detail) + +template tuple make_tuple(Args&&... args_) { + constexpr size_t size = sizeof...(Args); + std::array args { + { reinterpret_steal(detail::make_caster::cast( + std::forward(args_), policy, nullptr))... } + }; + for (size_t i = 0; i < args.size(); i++) { + if (!args[i]) { +#if defined(NDEBUG) + throw cast_error("make_tuple(): unable to convert arguments to Python object (compile in debug mode for details)"); +#else + std::array argtypes { {type_id()...} }; + throw cast_error("make_tuple(): unable to convert argument of type '" + + argtypes[i] + "' to Python object"); +#endif + } + } + tuple result(size); + int counter = 0; + for (auto &arg_value : args) + PyTuple_SET_ITEM(result.ptr(), counter++, arg_value.release().ptr()); + return result; +} + +/// \ingroup annotations +/// Annotation for arguments +struct arg { + /// Constructs an argument with the name of the argument; if null or omitted, this is a positional argument. + constexpr explicit arg(const char *name = nullptr) : name(name), flag_noconvert(false), flag_none(true) { } + /// Assign a value to this argument + template arg_v operator=(T &&value) const; + /// Indicate that the type should not be converted in the type caster + arg &noconvert(bool flag = true) { flag_noconvert = flag; return *this; } + /// Indicates that the argument should/shouldn't allow None (e.g. for nullable pointer args) + arg &none(bool flag = true) { flag_none = flag; return *this; } + + const char *name; ///< If non-null, this is a named kwargs argument + bool flag_noconvert : 1; ///< If set, do not allow conversion (requires a supporting type caster!) + bool flag_none : 1; ///< If set (the default), allow None to be passed to this argument +}; + +/// \ingroup annotations +/// Annotation for arguments with values +struct arg_v : arg { +private: + template + arg_v(arg &&base, T &&x, const char *descr = nullptr) + : arg(base), + value(reinterpret_steal( + detail::make_caster::cast(x, return_value_policy::automatic, {}) + )), + descr(descr) +#if !defined(NDEBUG) + , type(type_id()) +#endif + { } + +public: + /// Direct construction with name, default, and description + template + arg_v(const char *name, T &&x, const char *descr = nullptr) + : arg_v(arg(name), std::forward(x), descr) { } + + /// Called internally when invoking `py::arg("a") = value` + template + arg_v(const arg &base, T &&x, const char *descr = nullptr) + : arg_v(arg(base), std::forward(x), descr) { } + + /// Same as `arg::noconvert()`, but returns *this as arg_v&, not arg& + arg_v &noconvert(bool flag = true) { arg::noconvert(flag); return *this; } + + /// Same as `arg::nonone()`, but returns *this as arg_v&, not arg& + arg_v &none(bool flag = true) { arg::none(flag); return *this; } + + /// The default value + object value; + /// The (optional) description of the default value + const char *descr; +#if !defined(NDEBUG) + /// The C++ type name of the default value (only available when compiled in debug mode) + std::string type; +#endif +}; + +template +arg_v arg::operator=(T &&value) const { return {std::move(*this), std::forward(value)}; } + +/// Alias for backward compatibility -- to be removed in version 2.0 +template using arg_t = arg_v; + +inline namespace literals { +/** \rst + String literal version of `arg` + \endrst */ +constexpr arg operator"" _a(const char *name, size_t) { return arg(name); } +} + +NAMESPACE_BEGIN(detail) + +// forward declaration (definition in attr.h) +struct function_record; + +/// Internal data associated with a single function call +struct function_call { + function_call(function_record &f, handle p); // Implementation in attr.h + + /// The function data: + const function_record &func; + + /// Arguments passed to the function: + std::vector args; + + /// The `convert` value the arguments should be loaded with + std::vector args_convert; + + /// The parent, if any + handle parent; +}; + + +/// Helper class which loads arguments for C++ functions called from Python +template +class argument_loader { + using indices = make_index_sequence; + + template using argument_is_args = std::is_same, args>; + template using argument_is_kwargs = std::is_same, kwargs>; + // Get args/kwargs argument positions relative to the end of the argument list: + static constexpr auto args_pos = constexpr_first() - (int) sizeof...(Args), + kwargs_pos = constexpr_first() - (int) sizeof...(Args); + + static constexpr bool args_kwargs_are_last = kwargs_pos >= - 1 && args_pos >= kwargs_pos - 1; + + static_assert(args_kwargs_are_last, "py::args/py::kwargs are only permitted as the last argument(s) of a function"); + +public: + static constexpr bool has_kwargs = kwargs_pos < 0; + static constexpr bool has_args = args_pos < 0; + + static PYBIND11_DESCR arg_names() { return detail::concat(make_caster::name()...); } + + bool load_args(function_call &call) { + return load_impl_sequence(call, indices{}); + } + + template + enable_if_t::value, Return> call(Func &&f) && { + return std::move(*this).template call_impl(std::forward(f), indices{}, Guard{}); + } + + template + enable_if_t::value, void_type> call(Func &&f) && { + std::move(*this).template call_impl(std::forward(f), indices{}, Guard{}); + return void_type(); + } + +private: + + static bool load_impl_sequence(function_call &, index_sequence<>) { return true; } + + template + bool load_impl_sequence(function_call &call, index_sequence) { + for (bool r : {std::get(argcasters).load(call.args[Is], call.args_convert[Is])...}) + if (!r) + return false; + return true; + } + + template + Return call_impl(Func &&f, index_sequence, Guard &&) { + return std::forward(f)(cast_op(std::move(std::get(argcasters)))...); + } + + std::tuple...> argcasters; +}; + +/// Helper class which collects only positional arguments for a Python function call. +/// A fancier version below can collect any argument, but this one is optimal for simple calls. +template +class simple_collector { +public: + template + explicit simple_collector(Ts &&...values) + : m_args(pybind11::make_tuple(std::forward(values)...)) { } + + const tuple &args() const & { return m_args; } + dict kwargs() const { return {}; } + + tuple args() && { return std::move(m_args); } + + /// Call a Python function and pass the collected arguments + object call(PyObject *ptr) const { + PyObject *result = PyObject_CallObject(ptr, m_args.ptr()); + if (!result) + throw error_already_set(); + return reinterpret_steal(result); + } + +private: + tuple m_args; +}; + +/// Helper class which collects positional, keyword, * and ** arguments for a Python function call +template +class unpacking_collector { +public: + template + explicit unpacking_collector(Ts &&...values) { + // Tuples aren't (easily) resizable so a list is needed for collection, + // but the actual function call strictly requires a tuple. + auto args_list = list(); + int _[] = { 0, (process(args_list, std::forward(values)), 0)... }; + ignore_unused(_); + + m_args = std::move(args_list); + } + + const tuple &args() const & { return m_args; } + const dict &kwargs() const & { return m_kwargs; } + + tuple args() && { return std::move(m_args); } + dict kwargs() && { return std::move(m_kwargs); } + + /// Call a Python function and pass the collected arguments + object call(PyObject *ptr) const { + PyObject *result = PyObject_Call(ptr, m_args.ptr(), m_kwargs.ptr()); + if (!result) + throw error_already_set(); + return reinterpret_steal(result); + } + +private: + template + void process(list &args_list, T &&x) { + auto o = reinterpret_steal(detail::make_caster::cast(std::forward(x), policy, {})); + if (!o) { +#if defined(NDEBUG) + argument_cast_error(); +#else + argument_cast_error(std::to_string(args_list.size()), type_id()); +#endif + } + args_list.append(o); + } + + void process(list &args_list, detail::args_proxy ap) { + for (const auto &a : ap) + args_list.append(a); + } + + void process(list &/*args_list*/, arg_v a) { + if (!a.name) +#if defined(NDEBUG) + nameless_argument_error(); +#else + nameless_argument_error(a.type); +#endif + + if (m_kwargs.contains(a.name)) { +#if defined(NDEBUG) + multiple_values_error(); +#else + multiple_values_error(a.name); +#endif + } + if (!a.value) { +#if defined(NDEBUG) + argument_cast_error(); +#else + argument_cast_error(a.name, a.type); +#endif + } + m_kwargs[a.name] = a.value; + } + + void process(list &/*args_list*/, detail::kwargs_proxy kp) { + if (!kp) + return; + for (const auto &k : reinterpret_borrow(kp)) { + if (m_kwargs.contains(k.first)) { +#if defined(NDEBUG) + multiple_values_error(); +#else + multiple_values_error(str(k.first)); +#endif + } + m_kwargs[k.first] = k.second; + } + } + + [[noreturn]] static void nameless_argument_error() { + throw type_error("Got kwargs without a name; only named arguments " + "may be passed via py::arg() to a python function call. " + "(compile in debug mode for details)"); + } + [[noreturn]] static void nameless_argument_error(std::string type) { + throw type_error("Got kwargs without a name of type '" + type + "'; only named " + "arguments may be passed via py::arg() to a python function call. "); + } + [[noreturn]] static void multiple_values_error() { + throw type_error("Got multiple values for keyword argument " + "(compile in debug mode for details)"); + } + + [[noreturn]] static void multiple_values_error(std::string name) { + throw type_error("Got multiple values for keyword argument '" + name + "'"); + } + + [[noreturn]] static void argument_cast_error() { + throw cast_error("Unable to convert call argument to Python object " + "(compile in debug mode for details)"); + } + + [[noreturn]] static void argument_cast_error(std::string name, std::string type) { + throw cast_error("Unable to convert call argument '" + name + + "' of type '" + type + "' to Python object"); + } + +private: + tuple m_args; + dict m_kwargs; +}; + +/// Collect only positional arguments for a Python function call +template ...>::value>> +simple_collector collect_arguments(Args &&...args) { + return simple_collector(std::forward(args)...); +} + +/// Collect all arguments, including keywords and unpacking (only instantiated when needed) +template ...>::value>> +unpacking_collector collect_arguments(Args &&...args) { + // Following argument order rules for generalized unpacking according to PEP 448 + static_assert( + constexpr_last() < constexpr_first() + && constexpr_last() < constexpr_first(), + "Invalid function call: positional args must precede keywords and ** unpacking; " + "* unpacking must precede ** unpacking" + ); + return unpacking_collector(std::forward(args)...); +} + +template +template +object object_api::operator()(Args &&...args) const { + return detail::collect_arguments(std::forward(args)...).call(derived().ptr()); +} + +template +template +object object_api::call(Args &&...args) const { + return operator()(std::forward(args)...); +} + +NAMESPACE_END(detail) + +#define PYBIND11_MAKE_OPAQUE(Type) \ + namespace pybind11 { namespace detail { \ + template<> class type_caster : public type_caster_base { }; \ + }} + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/chrono.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/chrono.h" new file mode 100644 index 0000000..8a41d08 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/chrono.h" @@ -0,0 +1,162 @@ +/* + pybind11/chrono.h: Transparent conversion between std::chrono and python's datetime + + Copyright (c) 2016 Trent Houliston and + Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include +#include +#include +#include + +// Backport the PyDateTime_DELTA functions from Python3.3 if required +#ifndef PyDateTime_DELTA_GET_DAYS +#define PyDateTime_DELTA_GET_DAYS(o) (((PyDateTime_Delta*)o)->days) +#endif +#ifndef PyDateTime_DELTA_GET_SECONDS +#define PyDateTime_DELTA_GET_SECONDS(o) (((PyDateTime_Delta*)o)->seconds) +#endif +#ifndef PyDateTime_DELTA_GET_MICROSECONDS +#define PyDateTime_DELTA_GET_MICROSECONDS(o) (((PyDateTime_Delta*)o)->microseconds) +#endif + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +template class duration_caster { +public: + typedef typename type::rep rep; + typedef typename type::period period; + + typedef std::chrono::duration> days; + + bool load(handle src, bool) { + using namespace std::chrono; + + // Lazy initialise the PyDateTime import + if (!PyDateTimeAPI) { PyDateTime_IMPORT; } + + if (!src) return false; + // If invoked with datetime.delta object + if (PyDelta_Check(src.ptr())) { + value = type(duration_cast>( + days(PyDateTime_DELTA_GET_DAYS(src.ptr())) + + seconds(PyDateTime_DELTA_GET_SECONDS(src.ptr())) + + microseconds(PyDateTime_DELTA_GET_MICROSECONDS(src.ptr())))); + return true; + } + // If invoked with a float we assume it is seconds and convert + else if (PyFloat_Check(src.ptr())) { + value = type(duration_cast>(duration(PyFloat_AsDouble(src.ptr())))); + return true; + } + else return false; + } + + // If this is a duration just return it back + static const std::chrono::duration& get_duration(const std::chrono::duration &src) { + return src; + } + + // If this is a time_point get the time_since_epoch + template static std::chrono::duration get_duration(const std::chrono::time_point> &src) { + return src.time_since_epoch(); + } + + static handle cast(const type &src, return_value_policy /* policy */, handle /* parent */) { + using namespace std::chrono; + + // Use overloaded function to get our duration from our source + // Works out if it is a duration or time_point and get the duration + auto d = get_duration(src); + + // Lazy initialise the PyDateTime import + if (!PyDateTimeAPI) { PyDateTime_IMPORT; } + + // Declare these special duration types so the conversions happen with the correct primitive types (int) + using dd_t = duration>; + using ss_t = duration>; + using us_t = duration; + + auto dd = duration_cast(d); + auto subd = d - dd; + auto ss = duration_cast(subd); + auto us = duration_cast(subd - ss); + return PyDelta_FromDSU(dd.count(), ss.count(), us.count()); + } + + PYBIND11_TYPE_CASTER(type, _("datetime.timedelta")); +}; + +// This is for casting times on the system clock into datetime.datetime instances +template class type_caster> { +public: + typedef std::chrono::time_point type; + bool load(handle src, bool) { + using namespace std::chrono; + + // Lazy initialise the PyDateTime import + if (!PyDateTimeAPI) { PyDateTime_IMPORT; } + + if (!src) return false; + if (PyDateTime_Check(src.ptr())) { + std::tm cal; + cal.tm_sec = PyDateTime_DATE_GET_SECOND(src.ptr()); + cal.tm_min = PyDateTime_DATE_GET_MINUTE(src.ptr()); + cal.tm_hour = PyDateTime_DATE_GET_HOUR(src.ptr()); + cal.tm_mday = PyDateTime_GET_DAY(src.ptr()); + cal.tm_mon = PyDateTime_GET_MONTH(src.ptr()) - 1; + cal.tm_year = PyDateTime_GET_YEAR(src.ptr()) - 1900; + cal.tm_isdst = -1; + + value = system_clock::from_time_t(std::mktime(&cal)) + microseconds(PyDateTime_DATE_GET_MICROSECOND(src.ptr())); + return true; + } + else return false; + } + + static handle cast(const std::chrono::time_point &src, return_value_policy /* policy */, handle /* parent */) { + using namespace std::chrono; + + // Lazy initialise the PyDateTime import + if (!PyDateTimeAPI) { PyDateTime_IMPORT; } + + std::time_t tt = system_clock::to_time_t(src); + // this function uses static memory so it's best to copy it out asap just in case + // otherwise other code that is using localtime may break this (not just python code) + std::tm localtime = *std::localtime(&tt); + + // Declare these special duration types so the conversions happen with the correct primitive types (int) + using us_t = duration; + + return PyDateTime_FromDateAndTime(localtime.tm_year + 1900, + localtime.tm_mon + 1, + localtime.tm_mday, + localtime.tm_hour, + localtime.tm_min, + localtime.tm_sec, + (duration_cast(src.time_since_epoch() % seconds(1))).count()); + } + PYBIND11_TYPE_CASTER(type, _("datetime.datetime")); +}; + +// Other clocks that are not the system clock are not measured as datetime.datetime objects +// since they are not measured on calendar time. So instead we just make them timedeltas +// Or if they have passed us a time as a float we convert that +template class type_caster> +: public duration_caster> { +}; + +template class type_caster> +: public duration_caster> { +}; + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/class_support.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/class_support.h" new file mode 100644 index 0000000..8e18c4c --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/class_support.h" @@ -0,0 +1,603 @@ +/* + pybind11/class_support.h: Python C API implementation details for py::class_ + + Copyright (c) 2017 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "attr.h" + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +inline PyTypeObject *type_incref(PyTypeObject *type) { + Py_INCREF(type); + return type; +} + +#if !defined(PYPY_VERSION) + +/// `pybind11_static_property.__get__()`: Always pass the class instead of the instance. +extern "C" inline PyObject *pybind11_static_get(PyObject *self, PyObject * /*ob*/, PyObject *cls) { + return PyProperty_Type.tp_descr_get(self, cls, cls); +} + +/// `pybind11_static_property.__set__()`: Just like the above `__get__()`. +extern "C" inline int pybind11_static_set(PyObject *self, PyObject *obj, PyObject *value) { + PyObject *cls = PyType_Check(obj) ? obj : (PyObject *) Py_TYPE(obj); + return PyProperty_Type.tp_descr_set(self, cls, value); +} + +/** A `static_property` is the same as a `property` but the `__get__()` and `__set__()` + methods are modified to always use the object type instead of a concrete instance. + Return value: New reference. */ +inline PyTypeObject *make_static_property_type() { + constexpr auto *name = "pybind11_static_property"; + auto name_obj = reinterpret_steal(PYBIND11_FROM_STRING(name)); + + /* Danger zone: from now (and until PyType_Ready), make sure to + issue no Python C API calls which could potentially invoke the + garbage collector (the GC will call type_traverse(), which will in + turn find the newly constructed type in an invalid state) */ + auto heap_type = (PyHeapTypeObject *) PyType_Type.tp_alloc(&PyType_Type, 0); + if (!heap_type) + pybind11_fail("make_static_property_type(): error allocating type!"); + + heap_type->ht_name = name_obj.inc_ref().ptr(); +#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 + heap_type->ht_qualname = name_obj.inc_ref().ptr(); +#endif + + auto type = &heap_type->ht_type; + type->tp_name = name; + type->tp_base = type_incref(&PyProperty_Type); + type->tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HEAPTYPE; + type->tp_descr_get = pybind11_static_get; + type->tp_descr_set = pybind11_static_set; + + if (PyType_Ready(type) < 0) + pybind11_fail("make_static_property_type(): failure in PyType_Ready()!"); + + setattr((PyObject *) type, "__module__", str("pybind11_builtins")); + + return type; +} + +#else // PYPY + +/** PyPy has some issues with the above C API, so we evaluate Python code instead. + This function will only be called once so performance isn't really a concern. + Return value: New reference. */ +inline PyTypeObject *make_static_property_type() { + auto d = dict(); + PyObject *result = PyRun_String(R"(\ + class pybind11_static_property(property): + def __get__(self, obj, cls): + return property.__get__(self, cls, cls) + + def __set__(self, obj, value): + cls = obj if isinstance(obj, type) else type(obj) + property.__set__(self, cls, value) + )", Py_file_input, d.ptr(), d.ptr() + ); + if (result == nullptr) + throw error_already_set(); + Py_DECREF(result); + return (PyTypeObject *) d["pybind11_static_property"].cast().release().ptr(); +} + +#endif // PYPY + +/** Types with static properties need to handle `Type.static_prop = x` in a specific way. + By default, Python replaces the `static_property` itself, but for wrapped C++ types + we need to call `static_property.__set__()` in order to propagate the new value to + the underlying C++ data structure. */ +extern "C" inline int pybind11_meta_setattro(PyObject* obj, PyObject* name, PyObject* value) { + // Use `_PyType_Lookup()` instead of `PyObject_GetAttr()` in order to get the raw + // descriptor (`property`) instead of calling `tp_descr_get` (`property.__get__()`). + PyObject *descr = _PyType_Lookup((PyTypeObject *) obj, name); + + // The following assignment combinations are possible: + // 1. `Type.static_prop = value` --> descr_set: `Type.static_prop.__set__(value)` + // 2. `Type.static_prop = other_static_prop` --> setattro: replace existing `static_prop` + // 3. `Type.regular_attribute = value` --> setattro: regular attribute assignment + const auto static_prop = (PyObject *) get_internals().static_property_type; + const auto call_descr_set = descr && PyObject_IsInstance(descr, static_prop) + && !PyObject_IsInstance(value, static_prop); + if (call_descr_set) { + // Call `static_property.__set__()` instead of replacing the `static_property`. +#if !defined(PYPY_VERSION) + return Py_TYPE(descr)->tp_descr_set(descr, obj, value); +#else + if (PyObject *result = PyObject_CallMethod(descr, "__set__", "OO", obj, value)) { + Py_DECREF(result); + return 0; + } else { + return -1; + } +#endif + } else { + // Replace existing attribute. + return PyType_Type.tp_setattro(obj, name, value); + } +} + +#if PY_MAJOR_VERSION >= 3 +/** + * Python 3's PyInstanceMethod_Type hides itself via its tp_descr_get, which prevents aliasing + * methods via cls.attr("m2") = cls.attr("m1"): instead the tp_descr_get returns a plain function, + * when called on a class, or a PyMethod, when called on an instance. Override that behaviour here + * to do a special case bypass for PyInstanceMethod_Types. + */ +extern "C" inline PyObject *pybind11_meta_getattro(PyObject *obj, PyObject *name) { + PyObject *descr = _PyType_Lookup((PyTypeObject *) obj, name); + if (descr && PyInstanceMethod_Check(descr)) { + Py_INCREF(descr); + return descr; + } + else { + return PyType_Type.tp_getattro(obj, name); + } +} +#endif + +/** This metaclass is assigned by default to all pybind11 types and is required in order + for static properties to function correctly. Users may override this using `py::metaclass`. + Return value: New reference. */ +inline PyTypeObject* make_default_metaclass() { + constexpr auto *name = "pybind11_type"; + auto name_obj = reinterpret_steal(PYBIND11_FROM_STRING(name)); + + /* Danger zone: from now (and until PyType_Ready), make sure to + issue no Python C API calls which could potentially invoke the + garbage collector (the GC will call type_traverse(), which will in + turn find the newly constructed type in an invalid state) */ + auto heap_type = (PyHeapTypeObject *) PyType_Type.tp_alloc(&PyType_Type, 0); + if (!heap_type) + pybind11_fail("make_default_metaclass(): error allocating metaclass!"); + + heap_type->ht_name = name_obj.inc_ref().ptr(); +#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 + heap_type->ht_qualname = name_obj.inc_ref().ptr(); +#endif + + auto type = &heap_type->ht_type; + type->tp_name = name; + type->tp_base = type_incref(&PyType_Type); + type->tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HEAPTYPE; + + type->tp_setattro = pybind11_meta_setattro; +#if PY_MAJOR_VERSION >= 3 + type->tp_getattro = pybind11_meta_getattro; +#endif + + if (PyType_Ready(type) < 0) + pybind11_fail("make_default_metaclass(): failure in PyType_Ready()!"); + + setattr((PyObject *) type, "__module__", str("pybind11_builtins")); + + return type; +} + +/// For multiple inheritance types we need to recursively register/deregister base pointers for any +/// base classes with pointers that are difference from the instance value pointer so that we can +/// correctly recognize an offset base class pointer. This calls a function with any offset base ptrs. +inline void traverse_offset_bases(void *valueptr, const detail::type_info *tinfo, instance *self, + bool (*f)(void * /*parentptr*/, instance * /*self*/)) { + for (handle h : reinterpret_borrow(tinfo->type->tp_bases)) { + if (auto parent_tinfo = get_type_info((PyTypeObject *) h.ptr())) { + for (auto &c : parent_tinfo->implicit_casts) { + if (c.first == tinfo->cpptype) { + auto *parentptr = c.second(valueptr); + if (parentptr != valueptr) + f(parentptr, self); + traverse_offset_bases(parentptr, parent_tinfo, self, f); + break; + } + } + } + } +} + +inline bool register_instance_impl(void *ptr, instance *self) { + get_internals().registered_instances.emplace(ptr, self); + return true; // unused, but gives the same signature as the deregister func +} +inline bool deregister_instance_impl(void *ptr, instance *self) { + auto ®istered_instances = get_internals().registered_instances; + auto range = registered_instances.equal_range(ptr); + for (auto it = range.first; it != range.second; ++it) { + if (Py_TYPE(self) == Py_TYPE(it->second)) { + registered_instances.erase(it); + return true; + } + } + return false; +} + +inline void register_instance(instance *self, void *valptr, const type_info *tinfo) { + register_instance_impl(valptr, self); + if (!tinfo->simple_ancestors) + traverse_offset_bases(valptr, tinfo, self, register_instance_impl); +} + +inline bool deregister_instance(instance *self, void *valptr, const type_info *tinfo) { + bool ret = deregister_instance_impl(valptr, self); + if (!tinfo->simple_ancestors) + traverse_offset_bases(valptr, tinfo, self, deregister_instance_impl); + return ret; +} + +/// Instance creation function for all pybind11 types. It only allocates space for the C++ object +/// (or multiple objects, for Python-side inheritance from multiple pybind11 types), but doesn't +/// call the constructor -- an `__init__` function must do that (followed by an `init_instance` +/// to set up the holder and register the instance). +inline PyObject *make_new_instance(PyTypeObject *type, bool allocate_value /*= true (in cast.h)*/) { +#if defined(PYPY_VERSION) + // PyPy gets tp_basicsize wrong (issue 2482) under multiple inheritance when the first inherited + // object is a a plain Python type (i.e. not derived from an extension type). Fix it. + ssize_t instance_size = static_cast(sizeof(instance)); + if (type->tp_basicsize < instance_size) { + type->tp_basicsize = instance_size; + } +#endif + PyObject *self = type->tp_alloc(type, 0); + auto inst = reinterpret_cast(self); + // Allocate the value/holder internals: + inst->allocate_layout(); + + inst->owned = true; + // Allocate (if requested) the value pointers; otherwise leave them as nullptr + if (allocate_value) { + for (auto &v_h : values_and_holders(inst)) { + void *&vptr = v_h.value_ptr(); + vptr = v_h.type->operator_new(v_h.type->type_size); + } + } + + return self; +} + +/// Instance creation function for all pybind11 types. It only allocates space for the +/// C++ object, but doesn't call the constructor -- an `__init__` function must do that. +extern "C" inline PyObject *pybind11_object_new(PyTypeObject *type, PyObject *, PyObject *) { + return make_new_instance(type); +} + +/// An `__init__` function constructs the C++ object. Users should provide at least one +/// of these using `py::init` or directly with `.def(__init__, ...)`. Otherwise, the +/// following default function will be used which simply throws an exception. +extern "C" inline int pybind11_object_init(PyObject *self, PyObject *, PyObject *) { + PyTypeObject *type = Py_TYPE(self); + std::string msg; +#if defined(PYPY_VERSION) + msg += handle((PyObject *) type).attr("__module__").cast() + "."; +#endif + msg += type->tp_name; + msg += ": No constructor defined!"; + PyErr_SetString(PyExc_TypeError, msg.c_str()); + return -1; +} + +inline void add_patient(PyObject *nurse, PyObject *patient) { + auto &internals = get_internals(); + auto instance = reinterpret_cast(nurse); + instance->has_patients = true; + Py_INCREF(patient); + internals.patients[nurse].push_back(patient); +} + +inline void clear_patients(PyObject *self) { + auto instance = reinterpret_cast(self); + auto &internals = get_internals(); + auto pos = internals.patients.find(self); + assert(pos != internals.patients.end()); + // Clearing the patients can cause more Python code to run, which + // can invalidate the iterator. Extract the vector of patients + // from the unordered_map first. + auto patients = std::move(pos->second); + internals.patients.erase(pos); + instance->has_patients = false; + for (PyObject *&patient : patients) + Py_CLEAR(patient); +} + +/// Clears all internal data from the instance and removes it from registered instances in +/// preparation for deallocation. +inline void clear_instance(PyObject *self) { + auto instance = reinterpret_cast(self); + + // Deallocate any values/holders, if present: + for (auto &v_h : values_and_holders(instance)) { + if (v_h) { + + // We have to deregister before we call dealloc because, for virtual MI types, we still + // need to be able to get the parent pointers. + if (v_h.instance_registered() && !deregister_instance(instance, v_h.value_ptr(), v_h.type)) + pybind11_fail("pybind11_object_dealloc(): Tried to deallocate unregistered instance!"); + + if (instance->owned || v_h.holder_constructed()) + v_h.type->dealloc(v_h); + } + } + // Deallocate the value/holder layout internals: + instance->deallocate_layout(); + + if (instance->weakrefs) + PyObject_ClearWeakRefs(self); + + PyObject **dict_ptr = _PyObject_GetDictPtr(self); + if (dict_ptr) + Py_CLEAR(*dict_ptr); + + if (instance->has_patients) + clear_patients(self); +} + +/// Instance destructor function for all pybind11 types. It calls `type_info.dealloc` +/// to destroy the C++ object itself, while the rest is Python bookkeeping. +extern "C" inline void pybind11_object_dealloc(PyObject *self) { + clear_instance(self); + Py_TYPE(self)->tp_free(self); +} + +/** Create the type which can be used as a common base for all classes. This is + needed in order to satisfy Python's requirements for multiple inheritance. + Return value: New reference. */ +inline PyObject *make_object_base_type(PyTypeObject *metaclass) { + constexpr auto *name = "pybind11_object"; + auto name_obj = reinterpret_steal(PYBIND11_FROM_STRING(name)); + + /* Danger zone: from now (and until PyType_Ready), make sure to + issue no Python C API calls which could potentially invoke the + garbage collector (the GC will call type_traverse(), which will in + turn find the newly constructed type in an invalid state) */ + auto heap_type = (PyHeapTypeObject *) metaclass->tp_alloc(metaclass, 0); + if (!heap_type) + pybind11_fail("make_object_base_type(): error allocating type!"); + + heap_type->ht_name = name_obj.inc_ref().ptr(); +#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 + heap_type->ht_qualname = name_obj.inc_ref().ptr(); +#endif + + auto type = &heap_type->ht_type; + type->tp_name = name; + type->tp_base = type_incref(&PyBaseObject_Type); + type->tp_basicsize = static_cast(sizeof(instance)); + type->tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HEAPTYPE; + + type->tp_new = pybind11_object_new; + type->tp_init = pybind11_object_init; + type->tp_dealloc = pybind11_object_dealloc; + + /* Support weak references (needed for the keep_alive feature) */ + type->tp_weaklistoffset = offsetof(instance, weakrefs); + + if (PyType_Ready(type) < 0) + pybind11_fail("PyType_Ready failed in make_object_base_type():" + error_string()); + + setattr((PyObject *) type, "__module__", str("pybind11_builtins")); + + assert(!PyType_HasFeature(type, Py_TPFLAGS_HAVE_GC)); + return (PyObject *) heap_type; +} + +/// dynamic_attr: Support for `d = instance.__dict__`. +extern "C" inline PyObject *pybind11_get_dict(PyObject *self, void *) { + PyObject *&dict = *_PyObject_GetDictPtr(self); + if (!dict) + dict = PyDict_New(); + Py_XINCREF(dict); + return dict; +} + +/// dynamic_attr: Support for `instance.__dict__ = dict()`. +extern "C" inline int pybind11_set_dict(PyObject *self, PyObject *new_dict, void *) { + if (!PyDict_Check(new_dict)) { + PyErr_Format(PyExc_TypeError, "__dict__ must be set to a dictionary, not a '%.200s'", + Py_TYPE(new_dict)->tp_name); + return -1; + } + PyObject *&dict = *_PyObject_GetDictPtr(self); + Py_INCREF(new_dict); + Py_CLEAR(dict); + dict = new_dict; + return 0; +} + +/// dynamic_attr: Allow the garbage collector to traverse the internal instance `__dict__`. +extern "C" inline int pybind11_traverse(PyObject *self, visitproc visit, void *arg) { + PyObject *&dict = *_PyObject_GetDictPtr(self); + Py_VISIT(dict); + return 0; +} + +/// dynamic_attr: Allow the GC to clear the dictionary. +extern "C" inline int pybind11_clear(PyObject *self) { + PyObject *&dict = *_PyObject_GetDictPtr(self); + Py_CLEAR(dict); + return 0; +} + +/// Give instances of this type a `__dict__` and opt into garbage collection. +inline void enable_dynamic_attributes(PyHeapTypeObject *heap_type) { + auto type = &heap_type->ht_type; +#if defined(PYPY_VERSION) + pybind11_fail(std::string(type->tp_name) + ": dynamic attributes are " + "currently not supported in " + "conjunction with PyPy!"); +#endif + type->tp_flags |= Py_TPFLAGS_HAVE_GC; + type->tp_dictoffset = type->tp_basicsize; // place dict at the end + type->tp_basicsize += (ssize_t)sizeof(PyObject *); // and allocate enough space for it + type->tp_traverse = pybind11_traverse; + type->tp_clear = pybind11_clear; + + static PyGetSetDef getset[] = { + {const_cast("__dict__"), pybind11_get_dict, pybind11_set_dict, nullptr, nullptr}, + {nullptr, nullptr, nullptr, nullptr, nullptr} + }; + type->tp_getset = getset; +} + +/// buffer_protocol: Fill in the view as specified by flags. +extern "C" inline int pybind11_getbuffer(PyObject *obj, Py_buffer *view, int flags) { + // Look for a `get_buffer` implementation in this type's info or any bases (following MRO). + type_info *tinfo = nullptr; + for (auto type : reinterpret_borrow(Py_TYPE(obj)->tp_mro)) { + tinfo = get_type_info((PyTypeObject *) type.ptr()); + if (tinfo && tinfo->get_buffer) + break; + } + if (view == nullptr || obj == nullptr || !tinfo || !tinfo->get_buffer) { + if (view) + view->obj = nullptr; + PyErr_SetString(PyExc_BufferError, "pybind11_getbuffer(): Internal error"); + return -1; + } + std::memset(view, 0, sizeof(Py_buffer)); + buffer_info *info = tinfo->get_buffer(obj, tinfo->get_buffer_data); + view->obj = obj; + view->ndim = 1; + view->internal = info; + view->buf = info->ptr; + view->itemsize = info->itemsize; + view->len = view->itemsize; + for (auto s : info->shape) + view->len *= s; + if ((flags & PyBUF_FORMAT) == PyBUF_FORMAT) + view->format = const_cast(info->format.c_str()); + if ((flags & PyBUF_STRIDES) == PyBUF_STRIDES) { + view->ndim = (int) info->ndim; + view->strides = &info->strides[0]; + view->shape = &info->shape[0]; + } + Py_INCREF(view->obj); + return 0; +} + +/// buffer_protocol: Release the resources of the buffer. +extern "C" inline void pybind11_releasebuffer(PyObject *, Py_buffer *view) { + delete (buffer_info *) view->internal; +} + +/// Give this type a buffer interface. +inline void enable_buffer_protocol(PyHeapTypeObject *heap_type) { + heap_type->ht_type.tp_as_buffer = &heap_type->as_buffer; +#if PY_MAJOR_VERSION < 3 + heap_type->ht_type.tp_flags |= Py_TPFLAGS_HAVE_NEWBUFFER; +#endif + + heap_type->as_buffer.bf_getbuffer = pybind11_getbuffer; + heap_type->as_buffer.bf_releasebuffer = pybind11_releasebuffer; +} + +/** Create a brand new Python type according to the `type_record` specification. + Return value: New reference. */ +inline PyObject* make_new_python_type(const type_record &rec) { + auto name = reinterpret_steal(PYBIND11_FROM_STRING(rec.name)); + +#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 + auto ht_qualname = name; + if (rec.scope && hasattr(rec.scope, "__qualname__")) { + ht_qualname = reinterpret_steal( + PyUnicode_FromFormat("%U.%U", rec.scope.attr("__qualname__").ptr(), name.ptr())); + } +#endif + + object module; + if (rec.scope) { + if (hasattr(rec.scope, "__module__")) + module = rec.scope.attr("__module__"); + else if (hasattr(rec.scope, "__name__")) + module = rec.scope.attr("__name__"); + } + +#if !defined(PYPY_VERSION) + const auto full_name = module ? str(module).cast() + "." + rec.name + : std::string(rec.name); +#else + const auto full_name = std::string(rec.name); +#endif + + char *tp_doc = nullptr; + if (rec.doc && options::show_user_defined_docstrings()) { + /* Allocate memory for docstring (using PyObject_MALLOC, since + Python will free this later on) */ + size_t size = strlen(rec.doc) + 1; + tp_doc = (char *) PyObject_MALLOC(size); + memcpy((void *) tp_doc, rec.doc, size); + } + + auto &internals = get_internals(); + auto bases = tuple(rec.bases); + auto base = (bases.size() == 0) ? internals.instance_base + : bases[0].ptr(); + + /* Danger zone: from now (and until PyType_Ready), make sure to + issue no Python C API calls which could potentially invoke the + garbage collector (the GC will call type_traverse(), which will in + turn find the newly constructed type in an invalid state) */ + auto metaclass = rec.metaclass.ptr() ? (PyTypeObject *) rec.metaclass.ptr() + : internals.default_metaclass; + + auto heap_type = (PyHeapTypeObject *) metaclass->tp_alloc(metaclass, 0); + if (!heap_type) + pybind11_fail(std::string(rec.name) + ": Unable to create type object!"); + + heap_type->ht_name = name.release().ptr(); +#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 + heap_type->ht_qualname = ht_qualname.release().ptr(); +#endif + + auto type = &heap_type->ht_type; + type->tp_name = strdup(full_name.c_str()); + type->tp_doc = tp_doc; + type->tp_base = type_incref((PyTypeObject *)base); + type->tp_basicsize = static_cast(sizeof(instance)); + if (bases.size() > 0) + type->tp_bases = bases.release().ptr(); + + /* Don't inherit base __init__ */ + type->tp_init = pybind11_object_init; + + /* Supported protocols */ + type->tp_as_number = &heap_type->as_number; + type->tp_as_sequence = &heap_type->as_sequence; + type->tp_as_mapping = &heap_type->as_mapping; + + /* Flags */ + type->tp_flags |= Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HEAPTYPE; +#if PY_MAJOR_VERSION < 3 + type->tp_flags |= Py_TPFLAGS_CHECKTYPES; +#endif + + if (rec.dynamic_attr) + enable_dynamic_attributes(heap_type); + + if (rec.buffer_protocol) + enable_buffer_protocol(heap_type); + + if (PyType_Ready(type) < 0) + pybind11_fail(std::string(rec.name) + ": PyType_Ready failed (" + error_string() + ")!"); + + assert(rec.dynamic_attr ? PyType_HasFeature(type, Py_TPFLAGS_HAVE_GC) + : !PyType_HasFeature(type, Py_TPFLAGS_HAVE_GC)); + + /* Register type with the parent scope */ + if (rec.scope) + setattr(rec.scope, rec.name, (PyObject *) type); + + if (module) // Needed by pydoc + setattr((PyObject *) type, "__module__", module); + + return (PyObject *) type; +} + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/common.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/common.h" new file mode 100644 index 0000000..240f6d8 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/common.h" @@ -0,0 +1,857 @@ +/* + pybind11/common.h -- Basic macros + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#if !defined(NAMESPACE_BEGIN) +# define NAMESPACE_BEGIN(name) namespace name { +#endif +#if !defined(NAMESPACE_END) +# define NAMESPACE_END(name) } +#endif + +#if !defined(_MSC_VER) && !defined(__INTEL_COMPILER) +# if __cplusplus >= 201402L +# define PYBIND11_CPP14 +# if __cplusplus > 201402L /* Temporary: should be updated to >= the final C++17 value once known */ +# define PYBIND11_CPP17 +# endif +# endif +#elif defined(_MSC_VER) +// MSVC sets _MSVC_LANG rather than __cplusplus (supposedly until the standard is fully implemented) +# if _MSVC_LANG >= 201402L +# define PYBIND11_CPP14 +# if _MSVC_LANG > 201402L && _MSC_VER >= 1910 +# define PYBIND11_CPP17 +# endif +# endif +#endif + +// Compiler version assertions +#if defined(__INTEL_COMPILER) +# if __INTEL_COMPILER < 1500 +# error pybind11 requires Intel C++ compiler v15 or newer +# endif +#elif defined(__clang__) && !defined(__apple_build_version__) +# if __clang_major__ < 3 || (__clang_major__ == 3 && __clang_minor__ < 3) +# error pybind11 requires clang 3.3 or newer +# endif +#elif defined(__clang__) +// Apple changes clang version macros to its Xcode version; the first Xcode release based on +// (upstream) clang 3.3 was Xcode 5: +# if __clang_major__ < 5 +# error pybind11 requires Xcode/clang 5.0 or newer +# endif +#elif defined(__GNUG__) +# if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) +# error pybind11 requires gcc 4.8 or newer +# endif +#elif defined(_MSC_VER) +// Pybind hits various compiler bugs in 2015u2 and earlier, and also makes use of some stl features +// (e.g. std::negation) added in 2015u3: +# if _MSC_FULL_VER < 190024210 +# error pybind11 requires MSVC 2015 update 3 or newer +# endif +#endif + +#if !defined(PYBIND11_EXPORT) +# if defined(WIN32) || defined(_WIN32) +# define PYBIND11_EXPORT __declspec(dllexport) +# else +# define PYBIND11_EXPORT __attribute__ ((visibility("default"))) +# endif +#endif + +#if defined(_MSC_VER) +# define PYBIND11_NOINLINE __declspec(noinline) +#else +# define PYBIND11_NOINLINE __attribute__ ((noinline)) +#endif + +#if defined(PYBIND11_CPP14) +# define PYBIND11_DEPRECATED(reason) [[deprecated(reason)]] +#else +# define PYBIND11_DEPRECATED(reason) __attribute__((deprecated(reason))) +#endif + +#define PYBIND11_VERSION_MAJOR 2 +#define PYBIND11_VERSION_MINOR 2 +#define PYBIND11_VERSION_PATCH dev0 + +/// Include Python header, disable linking to pythonX_d.lib on Windows in debug mode +#if defined(_MSC_VER) +# if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 4) +# define HAVE_ROUND 1 +# endif +# pragma warning(push) +# pragma warning(disable: 4510 4610 4512 4005) +# if defined(_DEBUG) +# define PYBIND11_DEBUG_MARKER +# undef _DEBUG +# endif +#endif + +#include +#include +#include + +#if defined(_WIN32) && (defined(min) || defined(max)) +# error Macro clash with min and max -- define NOMINMAX when compiling your program on Windows +#endif + +#if defined(isalnum) +# undef isalnum +# undef isalpha +# undef islower +# undef isspace +# undef isupper +# undef tolower +# undef toupper +#endif + +#if defined(_MSC_VER) +# if defined(PYBIND11_DEBUG_MARKER) +# define _DEBUG +# undef PYBIND11_DEBUG_MARKER +# endif +# pragma warning(pop) +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if PY_MAJOR_VERSION >= 3 /// Compatibility macros for various Python versions +#define PYBIND11_INSTANCE_METHOD_NEW(ptr, class_) PyInstanceMethod_New(ptr) +#define PYBIND11_INSTANCE_METHOD_CHECK PyInstanceMethod_Check +#define PYBIND11_INSTANCE_METHOD_GET_FUNCTION PyInstanceMethod_GET_FUNCTION +#define PYBIND11_BYTES_CHECK PyBytes_Check +#define PYBIND11_BYTES_FROM_STRING PyBytes_FromString +#define PYBIND11_BYTES_FROM_STRING_AND_SIZE PyBytes_FromStringAndSize +#define PYBIND11_BYTES_AS_STRING_AND_SIZE PyBytes_AsStringAndSize +#define PYBIND11_BYTES_AS_STRING PyBytes_AsString +#define PYBIND11_BYTES_SIZE PyBytes_Size +#define PYBIND11_LONG_CHECK(o) PyLong_Check(o) +#define PYBIND11_LONG_AS_LONGLONG(o) PyLong_AsLongLong(o) +#define PYBIND11_BYTES_NAME "bytes" +#define PYBIND11_STRING_NAME "str" +#define PYBIND11_SLICE_OBJECT PyObject +#define PYBIND11_FROM_STRING PyUnicode_FromString +#define PYBIND11_STR_TYPE ::pybind11::str +#define PYBIND11_BOOL_ATTR "__bool__" +#define PYBIND11_NB_BOOL(ptr) ((ptr)->nb_bool) +#define PYBIND11_PLUGIN_IMPL(name) \ + extern "C" PYBIND11_EXPORT PyObject *PyInit_##name() + +#else +#define PYBIND11_INSTANCE_METHOD_NEW(ptr, class_) PyMethod_New(ptr, nullptr, class_) +#define PYBIND11_INSTANCE_METHOD_CHECK PyMethod_Check +#define PYBIND11_INSTANCE_METHOD_GET_FUNCTION PyMethod_GET_FUNCTION +#define PYBIND11_BYTES_CHECK PyString_Check +#define PYBIND11_BYTES_FROM_STRING PyString_FromString +#define PYBIND11_BYTES_FROM_STRING_AND_SIZE PyString_FromStringAndSize +#define PYBIND11_BYTES_AS_STRING_AND_SIZE PyString_AsStringAndSize +#define PYBIND11_BYTES_AS_STRING PyString_AsString +#define PYBIND11_BYTES_SIZE PyString_Size +#define PYBIND11_LONG_CHECK(o) (PyInt_Check(o) || PyLong_Check(o)) +#define PYBIND11_LONG_AS_LONGLONG(o) (PyInt_Check(o) ? (long long) PyLong_AsLong(o) : PyLong_AsLongLong(o)) +#define PYBIND11_BYTES_NAME "str" +#define PYBIND11_STRING_NAME "unicode" +#define PYBIND11_SLICE_OBJECT PySliceObject +#define PYBIND11_FROM_STRING PyString_FromString +#define PYBIND11_STR_TYPE ::pybind11::bytes +#define PYBIND11_BOOL_ATTR "__nonzero__" +#define PYBIND11_NB_BOOL(ptr) ((ptr)->nb_nonzero) +#define PYBIND11_PLUGIN_IMPL(name) \ + static PyObject *pybind11_init_wrapper(); \ + extern "C" PYBIND11_EXPORT void init##name() { \ + (void)pybind11_init_wrapper(); \ + } \ + PyObject *pybind11_init_wrapper() +#endif + +#if PY_VERSION_HEX >= 0x03050000 && PY_VERSION_HEX < 0x03050200 +extern "C" { + struct _Py_atomic_address { void *value; }; + PyAPI_DATA(_Py_atomic_address) _PyThreadState_Current; +} +#endif + +#define PYBIND11_TRY_NEXT_OVERLOAD ((PyObject *) 1) // special failure return code +#define PYBIND11_STRINGIFY(x) #x +#define PYBIND11_TOSTRING(x) PYBIND11_STRINGIFY(x) +#define PYBIND11_INTERNALS_ID "__pybind11_" \ + PYBIND11_TOSTRING(PYBIND11_VERSION_MAJOR) "_" PYBIND11_TOSTRING(PYBIND11_VERSION_MINOR) "__" + +/** \rst + ***Deprecated in favor of PYBIND11_MODULE*** + + This macro creates the entry point that will be invoked when the Python interpreter + imports a plugin library. Please create a `module` in the function body and return + the pointer to its underlying Python object at the end. + + .. code-block:: cpp + + PYBIND11_PLUGIN(example) { + pybind11::module m("example", "pybind11 example plugin"); + /// Set up bindings here + return m.ptr(); + } +\endrst */ +#define PYBIND11_PLUGIN(name) \ + PYBIND11_DEPRECATED("PYBIND11_PLUGIN is deprecated, use PYBIND11_MODULE") \ + static PyObject *pybind11_init(); \ + PYBIND11_PLUGIN_IMPL(name) { \ + int major, minor; \ + if (sscanf(Py_GetVersion(), "%i.%i", &major, &minor) != 2) { \ + PyErr_SetString(PyExc_ImportError, "Can't parse Python version."); \ + return nullptr; \ + } else if (major != PY_MAJOR_VERSION || minor != PY_MINOR_VERSION) { \ + PyErr_Format(PyExc_ImportError, \ + "Python version mismatch: module was compiled for " \ + "version %i.%i, while the interpreter is running " \ + "version %i.%i.", PY_MAJOR_VERSION, PY_MINOR_VERSION, \ + major, minor); \ + return nullptr; \ + } \ + try { \ + return pybind11_init(); \ + } catch (pybind11::error_already_set &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } catch (const std::exception &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } \ + } \ + PyObject *pybind11_init() + +/** \rst + This macro creates the entry point that will be invoked when the Python interpreter + imports an extension module. The module name is given as the fist argument and it + should not be in quotes. The second macro argument defines a variable of type + `py::module` which can be used to initialize the module. + + .. code-block:: cpp + + PYBIND11_MODULE(example, m) { + m.doc() = "pybind11 example module"; + + // Add bindings here + m.def("foo", []() { + return "Hello, World!"; + }); + } +\endrst */ +#define PYBIND11_MODULE(name, variable) \ + static void pybind11_init_##name(pybind11::module &); \ + PYBIND11_PLUGIN_IMPL(name) { \ + int major, minor; \ + if (sscanf(Py_GetVersion(), "%i.%i", &major, &minor) != 2) { \ + PyErr_SetString(PyExc_ImportError, "Can't parse Python version."); \ + return nullptr; \ + } else if (major != PY_MAJOR_VERSION || minor != PY_MINOR_VERSION) { \ + PyErr_Format(PyExc_ImportError, \ + "Python version mismatch: module was compiled for " \ + "version %i.%i, while the interpreter is running " \ + "version %i.%i.", PY_MAJOR_VERSION, PY_MINOR_VERSION, \ + major, minor); \ + return nullptr; \ + } \ + auto m = pybind11::module(#name); \ + try { \ + pybind11_init_##name(m); \ + return m.ptr(); \ + } catch (pybind11::error_already_set &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } catch (const std::exception &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } \ + } \ + void pybind11_init_##name(pybind11::module &variable) + + +NAMESPACE_BEGIN(pybind11) + +using ssize_t = Py_ssize_t; +using size_t = std::size_t; + +/// Approach used to cast a previously unknown C++ instance into a Python object +enum class return_value_policy : uint8_t { + /** This is the default return value policy, which falls back to the policy + return_value_policy::take_ownership when the return value is a pointer. + Otherwise, it uses return_value::move or return_value::copy for rvalue + and lvalue references, respectively. See below for a description of what + all of these different policies do. */ + automatic = 0, + + /** As above, but use policy return_value_policy::reference when the return + value is a pointer. This is the default conversion policy for function + arguments when calling Python functions manually from C++ code (i.e. via + handle::operator()). You probably won't need to use this. */ + automatic_reference, + + /** Reference an existing object (i.e. do not create a new copy) and take + ownership. Python will call the destructor and delete operator when the + object’s reference count reaches zero. Undefined behavior ensues when + the C++ side does the same.. */ + take_ownership, + + /** Create a new copy of the returned object, which will be owned by + Python. This policy is comparably safe because the lifetimes of the two + instances are decoupled. */ + copy, + + /** Use std::move to move the return value contents into a new instance + that will be owned by Python. This policy is comparably safe because the + lifetimes of the two instances (move source and destination) are + decoupled. */ + move, + + /** Reference an existing object, but do not take ownership. The C++ side + is responsible for managing the object’s lifetime and deallocating it + when it is no longer used. Warning: undefined behavior will ensue when + the C++ side deletes an object that is still referenced and used by + Python. */ + reference, + + /** This policy only applies to methods and properties. It references the + object without taking ownership similar to the above + return_value_policy::reference policy. In contrast to that policy, the + function or property’s implicit this argument (called the parent) is + considered to be the the owner of the return value (the child). + pybind11 then couples the lifetime of the parent to the child via a + reference relationship that ensures that the parent cannot be garbage + collected while Python is still using the child. More advanced + variations of this scheme are also possible using combinations of + return_value_policy::reference and the keep_alive call policy */ + reference_internal +}; + +NAMESPACE_BEGIN(detail) + +inline static constexpr int log2(size_t n, int k = 0) { return (n <= 1) ? k : log2(n >> 1, k + 1); } + +// Returns the size as a multiple of sizeof(void *), rounded up. +inline static constexpr size_t size_in_ptrs(size_t s) { return 1 + ((s - 1) >> log2(sizeof(void *))); } + +/** + * The space to allocate for simple layout instance holders (see below) in multiple of the size of + * a pointer (e.g. 2 means 16 bytes on 64-bit architectures). The default is the minimum required + * to holder either a std::unique_ptr or std::shared_ptr (which is almost always + * sizeof(std::shared_ptr)). + */ +constexpr size_t instance_simple_holder_in_ptrs() { + static_assert(sizeof(std::shared_ptr) >= sizeof(std::unique_ptr), + "pybind assumes std::shared_ptrs are at least as big as std::unique_ptrs"); + return size_in_ptrs(sizeof(std::shared_ptr)); +} + +// Forward declarations +struct type_info; +struct value_and_holder; + +/// The 'instance' type which needs to be standard layout (need to be able to use 'offsetof') +struct instance { + PyObject_HEAD + /// Storage for pointers and holder; see simple_layout, below, for a description + union { + void *simple_value_holder[1 + instance_simple_holder_in_ptrs()]; + struct { + void **values_and_holders; + uint8_t *status; + } nonsimple; + }; + /// Weak references (needed for keep alive): + PyObject *weakrefs; + /// If true, the pointer is owned which means we're free to manage it with a holder. + bool owned : 1; + /** + * An instance has two possible value/holder layouts. + * + * Simple layout (when this flag is true), means the `simple_value_holder` is set with a pointer + * and the holder object governing that pointer, i.e. [val1*][holder]. This layout is applied + * whenever there is no python-side multiple inheritance of bound C++ types *and* the type's + * holder will fit in the default space (which is large enough to hold either a std::unique_ptr + * or std::shared_ptr). + * + * Non-simple layout applies when using custom holders that require more space than `shared_ptr` + * (which is typically the size of two pointers), or when multiple inheritance is used on the + * python side. Non-simple layout allocates the required amount of memory to have multiple + * bound C++ classes as parents. Under this layout, `nonsimple.values_and_holders` is set to a + * pointer to allocated space of the required space to hold a a sequence of value pointers and + * holders followed `status`, a set of bit flags (1 byte each), i.e. + * [val1*][holder1][val2*][holder2]...[bb...] where each [block] is rounded up to a multiple of + * `sizeof(void *)`. `nonsimple.holder_constructed` is, for convenience, a pointer to the + * beginning of the [bb...] block (but not independently allocated). + * + * Status bits indicate whether the associated holder is constructed (& + * status_holder_constructed) and whether the value pointer is registered (& + * status_instance_registered) in `registered_instances`. + */ + bool simple_layout : 1; + /// For simple layout, tracks whether the holder has been constructed + bool simple_holder_constructed : 1; + /// For simple layout, tracks whether the instance is registered in `registered_instances` + bool simple_instance_registered : 1; + /// If true, get_internals().patients has an entry for this object + bool has_patients : 1; + + /// Initializes all of the above type/values/holders data + void allocate_layout(); + + /// Destroys/deallocates all of the above + void deallocate_layout(); + + /// Returns the value_and_holder wrapper for the given type (or the first, if `find_type` + /// omitted) + value_and_holder get_value_and_holder(const type_info *find_type = nullptr); + + /// Bit values for the non-simple status flags + static constexpr uint8_t status_holder_constructed = 1; + static constexpr uint8_t status_instance_registered = 2; +}; + +static_assert(std::is_standard_layout::value, "Internal error: `pybind11::detail::instance` is not standard layout!"); + +struct overload_hash { + inline size_t operator()(const std::pair& v) const { + size_t value = std::hash()(v.first); + value ^= std::hash()(v.second) + 0x9e3779b9 + (value<<6) + (value>>2); + return value; + } +}; + +// Python loads modules by default with dlopen with the RTLD_LOCAL flag; under libc++ and possibly +// other stls, this means `typeid(A)` from one module won't equal `typeid(A)` from another module +// even when `A` is the same, non-hidden-visibility type (e.g. from a common include). Under +// stdlibc++, this doesn't happen: equality and the type_index hash are based on the type name, +// which works. If not under a known-good stl, provide our own name-based hasher and equality +// functions that use the type name. +#if defined(__GLIBCXX__) +inline bool same_type(const std::type_info &lhs, const std::type_info &rhs) { return lhs == rhs; } +using type_hash = std::hash; +using type_equal_to = std::equal_to; +#else +inline bool same_type(const std::type_info &lhs, const std::type_info &rhs) { + return lhs.name() == rhs.name() || + std::strcmp(lhs.name(), rhs.name()) == 0; +} +struct type_hash { + size_t operator()(const std::type_index &t) const { + size_t hash = 5381; + const char *ptr = t.name(); + while (auto c = static_cast(*ptr++)) + hash = (hash * 33) ^ c; + return hash; + } +}; +struct type_equal_to { + bool operator()(const std::type_index &lhs, const std::type_index &rhs) const { + return lhs.name() == rhs.name() || + std::strcmp(lhs.name(), rhs.name()) == 0; + } +}; +#endif + +template +using type_map = std::unordered_map; + +/// Internal data structure used to track registered instances and types +struct internals { + type_map registered_types_cpp; // std::type_index -> type_info + std::unordered_map> registered_types_py; // PyTypeObject* -> base type_info(s) + std::unordered_multimap registered_instances; // void * -> instance* + std::unordered_set, overload_hash> inactive_overload_cache; + type_map> direct_conversions; + std::unordered_map> patients; + std::forward_list registered_exception_translators; + std::unordered_map shared_data; // Custom data to be shared across extensions + std::vector loader_patient_stack; // Used by `loader_life_support` + PyTypeObject *static_property_type; + PyTypeObject *default_metaclass; + PyObject *instance_base; +#if defined(WITH_THREAD) + decltype(PyThread_create_key()) tstate = 0; // Usually an int but a long on Cygwin64 with Python 3.x + PyInterpreterState *istate = nullptr; +#endif +}; + +/// Return a reference to the current 'internals' information +inline internals &get_internals(); + +/// from __cpp_future__ import (convenient aliases from C++14/17) +#if defined(PYBIND11_CPP14) && (!defined(_MSC_VER) || _MSC_VER >= 1910) +using std::enable_if_t; +using std::conditional_t; +using std::remove_cv_t; +using std::remove_reference_t; +#else +template using enable_if_t = typename std::enable_if::type; +template using conditional_t = typename std::conditional::type; +template using remove_cv_t = typename std::remove_cv::type; +template using remove_reference_t = typename std::remove_reference::type; +#endif + +/// Index sequences +#if defined(PYBIND11_CPP14) +using std::index_sequence; +using std::make_index_sequence; +#else +template struct index_sequence { }; +template struct make_index_sequence_impl : make_index_sequence_impl { }; +template struct make_index_sequence_impl <0, S...> { typedef index_sequence type; }; +template using make_index_sequence = typename make_index_sequence_impl::type; +#endif + +/// Make an index sequence of the indices of true arguments +template struct select_indices_impl { using type = ISeq; }; +template struct select_indices_impl, I, B, Bs...> + : select_indices_impl, index_sequence>, I + 1, Bs...> {}; +template using select_indices = typename select_indices_impl, 0, Bs...>::type; + +/// Backports of std::bool_constant and std::negation to accomodate older compilers +template using bool_constant = std::integral_constant; +template struct negation : bool_constant { }; + +template struct void_t_impl { using type = void; }; +template using void_t = typename void_t_impl::type; + +/// Compile-time all/any/none of that check the boolean value of all template types +#ifdef __cpp_fold_expressions +template using all_of = bool_constant<(Ts::value && ...)>; +template using any_of = bool_constant<(Ts::value || ...)>; +#elif !defined(_MSC_VER) +template struct bools {}; +template using all_of = std::is_same< + bools, + bools>; +template using any_of = negation...>>; +#else +// MSVC has trouble with the above, but supports std::conjunction, which we can use instead (albeit +// at a slight loss of compilation efficiency). +template using all_of = std::conjunction; +template using any_of = std::disjunction; +#endif +template using none_of = negation>; + +template class... Predicates> using satisfies_all_of = all_of...>; +template class... Predicates> using satisfies_any_of = any_of...>; +template class... Predicates> using satisfies_none_of = none_of...>; + +/// Strip the class from a method type +template struct remove_class { }; +template struct remove_class { typedef R type(A...); }; +template struct remove_class { typedef R type(A...); }; + +/// Helper template to strip away type modifiers +template struct intrinsic_type { typedef T type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template struct intrinsic_type { typedef typename intrinsic_type::type type; }; +template using intrinsic_t = typename intrinsic_type::type; + +/// Helper type to replace 'void' in some expressions +struct void_type { }; + +/// Helper template which holds a list of types +template struct type_list { }; + +/// Compile-time integer sum +#ifdef __cpp_fold_expressions +template constexpr size_t constexpr_sum(Ts... ns) { return (0 + ... + size_t{ns}); } +#else +constexpr size_t constexpr_sum() { return 0; } +template +constexpr size_t constexpr_sum(T n, Ts... ns) { return size_t{n} + constexpr_sum(ns...); } +#endif + +NAMESPACE_BEGIN(constexpr_impl) +/// Implementation details for constexpr functions +constexpr int first(int i) { return i; } +template +constexpr int first(int i, T v, Ts... vs) { return v ? i : first(i + 1, vs...); } + +constexpr int last(int /*i*/, int result) { return result; } +template +constexpr int last(int i, int result, T v, Ts... vs) { return last(i + 1, v ? i : result, vs...); } +NAMESPACE_END(constexpr_impl) + +/// Return the index of the first type in Ts which satisfies Predicate. Returns sizeof...(Ts) if +/// none match. +template class Predicate, typename... Ts> +constexpr int constexpr_first() { return constexpr_impl::first(0, Predicate::value...); } + +/// Return the index of the last type in Ts which satisfies Predicate, or -1 if none match. +template class Predicate, typename... Ts> +constexpr int constexpr_last() { return constexpr_impl::last(0, -1, Predicate::value...); } + +/// Return the Nth element from the parameter pack +template +struct pack_element { using type = typename pack_element::type; }; +template +struct pack_element<0, T, Ts...> { using type = T; }; + +/// Return the one and only type which matches the predicate, or Default if none match. +/// If more than one type matches the predicate, fail at compile-time. +template class Predicate, typename Default, typename... Ts> +struct exactly_one { + static constexpr auto found = constexpr_sum(Predicate::value...); + static_assert(found <= 1, "Found more than one type matching the predicate"); + + static constexpr auto index = found ? constexpr_first() : 0; + using type = conditional_t::type, Default>; +}; +template class P, typename Default> +struct exactly_one { using type = Default; }; + +template class Predicate, typename Default, typename... Ts> +using exactly_one_t = typename exactly_one::type; + +/// Defer the evaluation of type T until types Us are instantiated +template struct deferred_type { using type = T; }; +template using deferred_t = typename deferred_type::type; + +/// Like is_base_of, but requires a strict base (i.e. `is_strict_base_of::value == false`, +/// unlike `std::is_base_of`) +template using is_strict_base_of = bool_constant< + std::is_base_of::value && !std::is_same::value>; + +template class Base> +struct is_template_base_of_impl { + template static std::true_type check(Base *); + static std::false_type check(...); +}; + +/// Check if a template is the base of a type. For example: +/// `is_template_base_of` is true if `struct T : Base {}` where U can be anything +template class Base, typename T> +#if !defined(_MSC_VER) +using is_template_base_of = decltype(is_template_base_of_impl::check((remove_cv_t*)nullptr)); +#else // MSVC2015 has trouble with decltype in template aliases +struct is_template_base_of : decltype(is_template_base_of_impl::check((remove_cv_t*)nullptr)) { }; +#endif + +/// Check if T is an instantiation of the template `Class`. For example: +/// `is_instantiation` is true if `T == shared_ptr` where U can be anything. +template class Class, typename T> +struct is_instantiation : std::false_type { }; +template class Class, typename... Us> +struct is_instantiation> : std::true_type { }; + +/// Check if T is std::shared_ptr where U can be anything +template using is_shared_ptr = is_instantiation; + +/// Check if T looks like an input iterator +template struct is_input_iterator : std::false_type {}; +template +struct is_input_iterator()), decltype(++std::declval())>> + : std::true_type {}; + +/// Ignore that a variable is unused in compiler warnings +inline void ignore_unused(const int *) { } + +/// Apply a function over each element of a parameter pack +#ifdef __cpp_fold_expressions +#define PYBIND11_EXPAND_SIDE_EFFECTS(PATTERN) (((PATTERN), void()), ...) +#else +using expand_side_effects = bool[]; +#define PYBIND11_EXPAND_SIDE_EFFECTS(PATTERN) pybind11::detail::expand_side_effects{ ((PATTERN), void(), false)..., false } +#endif + +NAMESPACE_END(detail) + +/// Returns a named pointer that is shared among all extension modules (using the same +/// pybind11 version) running in the current interpreter. Names starting with underscores +/// are reserved for internal usage. Returns `nullptr` if no matching entry was found. +inline PYBIND11_NOINLINE void* get_shared_data(const std::string& name) { + auto& internals = detail::get_internals(); + auto it = internals.shared_data.find(name); + return it != internals.shared_data.end() ? it->second : nullptr; +} + +/// Set the shared data that can be later recovered by `get_shared_data()`. +inline PYBIND11_NOINLINE void *set_shared_data(const std::string& name, void *data) { + detail::get_internals().shared_data[name] = data; + return data; +} + +/// Returns a typed reference to a shared data entry (by using `get_shared_data()`) if +/// such entry exists. Otherwise, a new object of default-constructible type `T` is +/// added to the shared data under the given name and a reference to it is returned. +template T& get_or_create_shared_data(const std::string& name) { + auto& internals = detail::get_internals(); + auto it = internals.shared_data.find(name); + T* ptr = (T*) (it != internals.shared_data.end() ? it->second : nullptr); + if (!ptr) { + ptr = new T(); + internals.shared_data[name] = ptr; + } + return *ptr; +} + +/// C++ bindings of builtin Python exceptions +class builtin_exception : public std::runtime_error { +public: + using std::runtime_error::runtime_error; + /// Set the error using the Python C API + virtual void set_error() const = 0; +}; + +#define PYBIND11_RUNTIME_EXCEPTION(name, type) \ + class name : public builtin_exception { public: \ + using builtin_exception::builtin_exception; \ + name() : name("") { } \ + void set_error() const override { PyErr_SetString(type, what()); } \ + }; + +PYBIND11_RUNTIME_EXCEPTION(stop_iteration, PyExc_StopIteration) +PYBIND11_RUNTIME_EXCEPTION(index_error, PyExc_IndexError) +PYBIND11_RUNTIME_EXCEPTION(key_error, PyExc_KeyError) +PYBIND11_RUNTIME_EXCEPTION(value_error, PyExc_ValueError) +PYBIND11_RUNTIME_EXCEPTION(type_error, PyExc_TypeError) +PYBIND11_RUNTIME_EXCEPTION(cast_error, PyExc_RuntimeError) /// Thrown when pybind11::cast or handle::call fail due to a type casting error +PYBIND11_RUNTIME_EXCEPTION(reference_cast_error, PyExc_RuntimeError) /// Used internally + +[[noreturn]] PYBIND11_NOINLINE inline void pybind11_fail(const char *reason) { throw std::runtime_error(reason); } +[[noreturn]] PYBIND11_NOINLINE inline void pybind11_fail(const std::string &reason) { throw std::runtime_error(reason); } + +template struct format_descriptor { }; + +NAMESPACE_BEGIN(detail) +// Returns the index of the given type in the type char array below, and in the list in numpy.h +// The order here is: bool; 8 ints ((signed,unsigned)x(8,16,32,64)bits); float,double,long double; +// complex float,double,long double. Note that the long double types only participate when long +// double is actually longer than double (it isn't under MSVC). +// NB: not only the string below but also complex.h and numpy.h rely on this order. +template struct is_fmt_numeric { static constexpr bool value = false; }; +template struct is_fmt_numeric::value>> { + static constexpr bool value = true; + static constexpr int index = std::is_same::value ? 0 : 1 + ( + std::is_integral::value ? detail::log2(sizeof(T))*2 + std::is_unsigned::value : 8 + ( + std::is_same::value ? 1 : std::is_same::value ? 2 : 0)); +}; +NAMESPACE_END(detail) + +template struct format_descriptor::value>> { + static constexpr const char c = "?bBhHiIqQfdg"[detail::is_fmt_numeric::index]; + static constexpr const char value[2] = { c, '\0' }; + static std::string format() { return std::string(1, c); } +}; + +template constexpr const char format_descriptor< + T, detail::enable_if_t::value>>::value[2]; + +/// RAII wrapper that temporarily clears any Python error state +struct error_scope { + PyObject *type, *value, *trace; + error_scope() { PyErr_Fetch(&type, &value, &trace); } + ~error_scope() { PyErr_Restore(type, value, trace); } +}; + +/// Dummy destructor wrapper that can be used to expose classes with a private destructor +struct nodelete { template void operator()(T*) { } }; + +// overload_cast requires variable templates: C++14 +#if defined(PYBIND11_CPP14) +#define PYBIND11_OVERLOAD_CAST 1 + +NAMESPACE_BEGIN(detail) +template +struct overload_cast_impl { + template + constexpr auto operator()(Return (*pf)(Args...)) const noexcept + -> decltype(pf) { return pf; } + + template + constexpr auto operator()(Return (Class::*pmf)(Args...), std::false_type = {}) const noexcept + -> decltype(pmf) { return pmf; } + + template + constexpr auto operator()(Return (Class::*pmf)(Args...) const, std::true_type) const noexcept + -> decltype(pmf) { return pmf; } +}; +NAMESPACE_END(detail) + +/// Syntax sugar for resolving overloaded function pointers: +/// - regular: static_cast(&Class::func) +/// - sweet: overload_cast(&Class::func) +template +static constexpr detail::overload_cast_impl overload_cast = {}; +// MSVC 2015 only accepts this particular initialization syntax for this variable template. + +/// Const member function selector for overload_cast +/// - regular: static_cast(&Class::func) +/// - sweet: overload_cast(&Class::func, const_) +static constexpr auto const_ = std::true_type{}; + +#else // no overload_cast: providing something that static_assert-fails: +template struct overload_cast { + static_assert(detail::deferred_t::value, + "pybind11::overload_cast<...> requires compiling in C++14 mode"); +}; +#endif // overload_cast + +NAMESPACE_BEGIN(detail) + +// Adaptor for converting arbitrary container arguments into a vector; implicitly convertible from +// any standard container (or C-style array) supporting std::begin/std::end, any singleton +// arithmetic type (if T is arithmetic), or explicitly constructible from an iterator pair. +template +class any_container { + std::vector v; +public: + any_container() = default; + + // Can construct from a pair of iterators + template ::value>> + any_container(It first, It last) : v(first, last) { } + + // Implicit conversion constructor from any arbitrary container type with values convertible to T + template ())), T>::value>> + any_container(const Container &c) : any_container(std::begin(c), std::end(c)) { } + + // initializer_list's aren't deducible, so don't get matched by the above template; we need this + // to explicitly allow implicit conversion from one: + template ::value>> + any_container(const std::initializer_list &c) : any_container(c.begin(), c.end()) { } + + // Avoid copying if given an rvalue vector of the correct type. + any_container(std::vector &&v) : v(std::move(v)) { } + + // Moves the vector out of an rvalue any_container + operator std::vector &&() && { return std::move(v); } + + // Dereferencing obtains a reference to the underlying vector + std::vector &operator*() { return v; } + const std::vector &operator*() const { return v; } + + // -> lets you call methods on the underlying vector + std::vector *operator->() { return &v; } + const std::vector *operator->() const { return &v; } +}; + +NAMESPACE_END(detail) + + + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/complex.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/complex.h" new file mode 100644 index 0000000..7d422e2 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/complex.h" @@ -0,0 +1,61 @@ +/* + pybind11/complex.h: Complex number support + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include + +/// glibc defines I as a macro which breaks things, e.g., boost template names +#ifdef I +# undef I +#endif + +NAMESPACE_BEGIN(pybind11) + +template struct format_descriptor, detail::enable_if_t::value>> { + static constexpr const char c = format_descriptor::c; + static constexpr const char value[3] = { 'Z', c, '\0' }; + static std::string format() { return std::string(value); } +}; + +template constexpr const char format_descriptor< + std::complex, detail::enable_if_t::value>>::value[3]; + +NAMESPACE_BEGIN(detail) + +template struct is_fmt_numeric, detail::enable_if_t::value>> { + static constexpr bool value = true; + static constexpr int index = is_fmt_numeric::index + 3; +}; + +template class type_caster> { +public: + bool load(handle src, bool convert) { + if (!src) + return false; + if (!convert && !PyComplex_Check(src.ptr())) + return false; + Py_complex result = PyComplex_AsCComplex(src.ptr()); + if (result.real == -1.0 && PyErr_Occurred()) { + PyErr_Clear(); + return false; + } + value = std::complex((T) result.real, (T) result.imag); + return true; + } + + static handle cast(const std::complex &src, return_value_policy /* policy */, handle /* parent */) { + return PyComplex_FromDoubles((double) src.real(), (double) src.imag()); + } + + PYBIND11_TYPE_CASTER(std::complex, _("complex")); +}; +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/descr.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/descr.h" new file mode 100644 index 0000000..23a099c --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/descr.h" @@ -0,0 +1,185 @@ +/* + pybind11/descr.h: Helper type for concatenating type signatures + either at runtime (C++11) or compile time (C++14) + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "common.h" + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +/* Concatenate type signatures at compile time using C++14 */ +#if defined(PYBIND11_CPP14) && !defined(_MSC_VER) +#define PYBIND11_CONSTEXPR_DESCR + +template class descr { + template friend class descr; +public: + constexpr descr(char const (&text) [Size1+1], const std::type_info * const (&types)[Size2+1]) + : descr(text, types, + make_index_sequence(), + make_index_sequence()) { } + + constexpr const char *text() const { return m_text; } + constexpr const std::type_info * const * types() const { return m_types; } + + template + constexpr descr operator+(const descr &other) const { + return concat(other, + make_index_sequence(), + make_index_sequence(), + make_index_sequence(), + make_index_sequence()); + } + +protected: + template + constexpr descr( + char const (&text) [Size1+1], + const std::type_info * const (&types) [Size2+1], + index_sequence, index_sequence) + : m_text{text[Indices1]..., '\0'}, + m_types{types[Indices2]..., nullptr } {} + + template + constexpr descr + concat(const descr &other, + index_sequence, index_sequence, + index_sequence, index_sequence) const { + return descr( + { m_text[Indices1]..., other.m_text[OtherIndices1]..., '\0' }, + { m_types[Indices2]..., other.m_types[OtherIndices2]..., nullptr } + ); + } + +protected: + char m_text[Size1 + 1]; + const std::type_info * m_types[Size2 + 1]; +}; + +template constexpr descr _(char const(&text)[Size]) { + return descr(text, { nullptr }); +} + +template struct int_to_str : int_to_str { }; +template struct int_to_str<0, Digits...> { + static constexpr auto digits = descr({ ('0' + Digits)..., '\0' }, { nullptr }); +}; + +// Ternary description (like std::conditional) +template +constexpr enable_if_t> _(char const(&text1)[Size1], char const(&)[Size2]) { + return _(text1); +} +template +constexpr enable_if_t> _(char const(&)[Size1], char const(&text2)[Size2]) { + return _(text2); +} +template +constexpr enable_if_t> _(descr d, descr) { return d; } +template +constexpr enable_if_t> _(descr, descr d) { return d; } + +template auto constexpr _() -> decltype(int_to_str::digits) { + return int_to_str::digits; +} + +template constexpr descr<1, 1> _() { + return descr<1, 1>({ '%', '\0' }, { &typeid(Type), nullptr }); +} + +inline constexpr descr<0, 0> concat() { return _(""); } +template auto constexpr concat(descr descr) { return descr; } +template auto constexpr concat(descr descr, Args&&... args) { return descr + _(", ") + concat(args...); } +template auto constexpr type_descr(descr descr) { return _("{") + descr + _("}"); } + +#define PYBIND11_DESCR constexpr auto + +#else /* Simpler C++11 implementation based on run-time memory allocation and copying */ + +class descr { +public: + PYBIND11_NOINLINE descr(const char *text, const std::type_info * const * types) { + size_t nChars = len(text), nTypes = len(types); + m_text = new char[nChars]; + m_types = new const std::type_info *[nTypes]; + memcpy(m_text, text, nChars * sizeof(char)); + memcpy(m_types, types, nTypes * sizeof(const std::type_info *)); + } + + PYBIND11_NOINLINE descr operator+(descr &&d2) && { + descr r; + + size_t nChars1 = len(m_text), nTypes1 = len(m_types); + size_t nChars2 = len(d2.m_text), nTypes2 = len(d2.m_types); + + r.m_text = new char[nChars1 + nChars2 - 1]; + r.m_types = new const std::type_info *[nTypes1 + nTypes2 - 1]; + memcpy(r.m_text, m_text, (nChars1-1) * sizeof(char)); + memcpy(r.m_text + nChars1 - 1, d2.m_text, nChars2 * sizeof(char)); + memcpy(r.m_types, m_types, (nTypes1-1) * sizeof(std::type_info *)); + memcpy(r.m_types + nTypes1 - 1, d2.m_types, nTypes2 * sizeof(std::type_info *)); + + delete[] m_text; delete[] m_types; + delete[] d2.m_text; delete[] d2.m_types; + + return r; + } + + char *text() { return m_text; } + const std::type_info * * types() { return m_types; } + +protected: + PYBIND11_NOINLINE descr() { } + + template static size_t len(const T *ptr) { // return length including null termination + const T *it = ptr; + while (*it++ != (T) 0) + ; + return static_cast(it - ptr); + } + + const std::type_info **m_types = nullptr; + char *m_text = nullptr; +}; + +/* The 'PYBIND11_NOINLINE inline' combinations below are intentional to get the desired linkage while producing as little object code as possible */ + +PYBIND11_NOINLINE inline descr _(const char *text) { + const std::type_info *types[1] = { nullptr }; + return descr(text, types); +} + +template PYBIND11_NOINLINE enable_if_t _(const char *text1, const char *) { return _(text1); } +template PYBIND11_NOINLINE enable_if_t _(char const *, const char *text2) { return _(text2); } +template PYBIND11_NOINLINE enable_if_t _(descr d, descr) { return d; } +template PYBIND11_NOINLINE enable_if_t _(descr, descr d) { return d; } + +template PYBIND11_NOINLINE descr _() { + const std::type_info *types[2] = { &typeid(Type), nullptr }; + return descr("%", types); +} + +template PYBIND11_NOINLINE descr _() { + const std::type_info *types[1] = { nullptr }; + return descr(std::to_string(Size).c_str(), types); +} + +PYBIND11_NOINLINE inline descr concat() { return _(""); } +PYBIND11_NOINLINE inline descr concat(descr &&d) { return d; } +template PYBIND11_NOINLINE descr concat(descr &&d, Args&&... args) { return std::move(d) + _(", ") + concat(std::forward(args)...); } +PYBIND11_NOINLINE inline descr type_descr(descr&& d) { return _("{") + std::move(d) + _("}"); } + +#define PYBIND11_DESCR ::pybind11::detail::descr +#endif + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eigen.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eigen.h" new file mode 100644 index 0000000..fc07051 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eigen.h" @@ -0,0 +1,610 @@ +/* + pybind11/eigen.h: Transparent conversion for dense and sparse Eigen matrices + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "numpy.h" + +#if defined(__INTEL_COMPILER) +# pragma warning(disable: 1682) // implicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem) +#elif defined(__GNUG__) || defined(__clang__) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wconversion" +# pragma GCC diagnostic ignored "-Wdeprecated-declarations" +# if __GNUC__ >= 7 +# pragma GCC diagnostic ignored "-Wint-in-bool-context" +# endif +#endif + +#include +#include + +#if defined(_MSC_VER) +# pragma warning(push) +# pragma warning(disable: 4127) // warning C4127: Conditional expression is constant +#endif + +// Eigen prior to 3.2.7 doesn't have proper move constructors--but worse, some classes get implicit +// move constructors that break things. We could detect this an explicitly copy, but an extra copy +// of matrices seems highly undesirable. +static_assert(EIGEN_VERSION_AT_LEAST(3,2,7), "Eigen support in pybind11 requires Eigen >= 3.2.7"); + +NAMESPACE_BEGIN(pybind11) + +// Provide a convenience alias for easier pass-by-ref usage with fully dynamic strides: +using EigenDStride = Eigen::Stride; +template using EigenDRef = Eigen::Ref; +template using EigenDMap = Eigen::Map; + +NAMESPACE_BEGIN(detail) + +#if EIGEN_VERSION_AT_LEAST(3,3,0) +using EigenIndex = Eigen::Index; +#else +using EigenIndex = EIGEN_DEFAULT_DENSE_INDEX_TYPE; +#endif + +// Matches Eigen::Map, Eigen::Ref, blocks, etc: +template using is_eigen_dense_map = all_of, std::is_base_of, T>>; +template using is_eigen_mutable_map = std::is_base_of, T>; +template using is_eigen_dense_plain = all_of>, is_template_base_of>; +template using is_eigen_sparse = is_template_base_of; +// Test for objects inheriting from EigenBase that aren't captured by the above. This +// basically covers anything that can be assigned to a dense matrix but that don't have a typical +// matrix data layout that can be copied from their .data(). For example, DiagonalMatrix and +// SelfAdjointView fall into this category. +template using is_eigen_other = all_of< + is_template_base_of, + negation, is_eigen_dense_plain, is_eigen_sparse>> +>; + +// Captures numpy/eigen conformability status (returned by EigenProps::conformable()): +template struct EigenConformable { + bool conformable = false; + EigenIndex rows = 0, cols = 0; + EigenDStride stride{0, 0}; // Only valid if negativestrides is false! + bool negativestrides = false; // If true, do not use stride! + + EigenConformable(bool fits = false) : conformable{fits} {} + // Matrix type: + EigenConformable(EigenIndex r, EigenIndex c, + EigenIndex rstride, EigenIndex cstride) : + conformable{true}, rows{r}, cols{c} { + // TODO: when Eigen bug #747 is fixed, remove the tests for non-negativity. http://eigen.tuxfamily.org/bz/show_bug.cgi?id=747 + if (rstride < 0 || cstride < 0) { + negativestrides = true; + } else { + stride = {EigenRowMajor ? rstride : cstride /* outer stride */, + EigenRowMajor ? cstride : rstride /* inner stride */ }; + } + } + // Vector type: + EigenConformable(EigenIndex r, EigenIndex c, EigenIndex stride) + : EigenConformable(r, c, r == 1 ? c*stride : stride, c == 1 ? r : r*stride) {} + + template bool stride_compatible() const { + // To have compatible strides, we need (on both dimensions) one of fully dynamic strides, + // matching strides, or a dimension size of 1 (in which case the stride value is irrelevant) + return + !negativestrides && + (props::inner_stride == Eigen::Dynamic || props::inner_stride == stride.inner() || + (EigenRowMajor ? cols : rows) == 1) && + (props::outer_stride == Eigen::Dynamic || props::outer_stride == stride.outer() || + (EigenRowMajor ? rows : cols) == 1); + } + operator bool() const { return conformable; } +}; + +template struct eigen_extract_stride { using type = Type; }; +template +struct eigen_extract_stride> { using type = StrideType; }; +template +struct eigen_extract_stride> { using type = StrideType; }; + +// Helper struct for extracting information from an Eigen type +template struct EigenProps { + using Type = Type_; + using Scalar = typename Type::Scalar; + using StrideType = typename eigen_extract_stride::type; + static constexpr EigenIndex + rows = Type::RowsAtCompileTime, + cols = Type::ColsAtCompileTime, + size = Type::SizeAtCompileTime; + static constexpr bool + row_major = Type::IsRowMajor, + vector = Type::IsVectorAtCompileTime, // At least one dimension has fixed size 1 + fixed_rows = rows != Eigen::Dynamic, + fixed_cols = cols != Eigen::Dynamic, + fixed = size != Eigen::Dynamic, // Fully-fixed size + dynamic = !fixed_rows && !fixed_cols; // Fully-dynamic size + + template using if_zero = std::integral_constant; + static constexpr EigenIndex inner_stride = if_zero::value, + outer_stride = if_zero::value; + static constexpr bool dynamic_stride = inner_stride == Eigen::Dynamic && outer_stride == Eigen::Dynamic; + static constexpr bool requires_row_major = !dynamic_stride && !vector && (row_major ? inner_stride : outer_stride) == 1; + static constexpr bool requires_col_major = !dynamic_stride && !vector && (row_major ? outer_stride : inner_stride) == 1; + + // Takes an input array and determines whether we can make it fit into the Eigen type. If + // the array is a vector, we attempt to fit it into either an Eigen 1xN or Nx1 vector + // (preferring the latter if it will fit in either, i.e. for a fully dynamic matrix type). + static EigenConformable conformable(const array &a) { + const auto dims = a.ndim(); + if (dims < 1 || dims > 2) + return false; + + if (dims == 2) { // Matrix type: require exact match (or dynamic) + + EigenIndex + np_rows = a.shape(0), + np_cols = a.shape(1), + np_rstride = a.strides(0) / static_cast(sizeof(Scalar)), + np_cstride = a.strides(1) / static_cast(sizeof(Scalar)); + if ((fixed_rows && np_rows != rows) || (fixed_cols && np_cols != cols)) + return false; + + return {np_rows, np_cols, np_rstride, np_cstride}; + } + + // Otherwise we're storing an n-vector. Only one of the strides will be used, but whichever + // is used, we want the (single) numpy stride value. + const EigenIndex n = a.shape(0), + stride = a.strides(0) / static_cast(sizeof(Scalar)); + + if (vector) { // Eigen type is a compile-time vector + if (fixed && size != n) + return false; // Vector size mismatch + return {rows == 1 ? 1 : n, cols == 1 ? 1 : n, stride}; + } + else if (fixed) { + // The type has a fixed size, but is not a vector: abort + return false; + } + else if (fixed_cols) { + // Since this isn't a vector, cols must be != 1. We allow this only if it exactly + // equals the number of elements (rows is Dynamic, and so 1 row is allowed). + if (cols != n) return false; + return {1, n, stride}; + } + else { + // Otherwise it's either fully dynamic, or column dynamic; both become a column vector + if (fixed_rows && rows != n) return false; + return {n, 1, stride}; + } + } + + static PYBIND11_DESCR descriptor() { + constexpr bool show_writeable = is_eigen_dense_map::value && is_eigen_mutable_map::value; + constexpr bool show_order = is_eigen_dense_map::value; + constexpr bool show_c_contiguous = show_order && requires_row_major; + constexpr bool show_f_contiguous = !show_c_contiguous && show_order && requires_col_major; + + return type_descr(_("numpy.ndarray[") + npy_format_descriptor::name() + + _("[") + _(_<(size_t) rows>(), _("m")) + + _(", ") + _(_<(size_t) cols>(), _("n")) + + _("]") + + // For a reference type (e.g. Ref) we have other constraints that might need to be + // satisfied: writeable=True (for a mutable reference), and, depending on the map's stride + // options, possibly f_contiguous or c_contiguous. We include them in the descriptor output + // to provide some hint as to why a TypeError is occurring (otherwise it can be confusing to + // see that a function accepts a 'numpy.ndarray[float64[3,2]]' and an error message that you + // *gave* a numpy.ndarray of the right type and dimensions. + _(", flags.writeable", "") + + _(", flags.c_contiguous", "") + + _(", flags.f_contiguous", "") + + _("]") + ); + } +}; + +// Casts an Eigen type to numpy array. If given a base, the numpy array references the src data, +// otherwise it'll make a copy. writeable lets you turn off the writeable flag for the array. +template handle eigen_array_cast(typename props::Type const &src, handle base = handle(), bool writeable = true) { + constexpr ssize_t elem_size = sizeof(typename props::Scalar); + array a; + if (props::vector) + a = array({ src.size() }, { elem_size * src.innerStride() }, src.data(), base); + else + a = array({ src.rows(), src.cols() }, { elem_size * src.rowStride(), elem_size * src.colStride() }, + src.data(), base); + + if (!writeable) + array_proxy(a.ptr())->flags &= ~detail::npy_api::NPY_ARRAY_WRITEABLE_; + + return a.release(); +} + +// Takes an lvalue ref to some Eigen type and a (python) base object, creating a numpy array that +// reference the Eigen object's data with `base` as the python-registered base class (if omitted, +// the base will be set to None, and lifetime management is up to the caller). The numpy array is +// non-writeable if the given type is const. +template +handle eigen_ref_array(Type &src, handle parent = none()) { + // none here is to get past array's should-we-copy detection, which currently always + // copies when there is no base. Setting the base to None should be harmless. + return eigen_array_cast(src, parent, !std::is_const::value); +} + +// Takes a pointer to some dense, plain Eigen type, builds a capsule around it, then returns a numpy +// array that references the encapsulated data with a python-side reference to the capsule to tie +// its destruction to that of any dependent python objects. Const-ness is determined by whether or +// not the Type of the pointer given is const. +template ::value>> +handle eigen_encapsulate(Type *src) { + capsule base(src, [](void *o) { delete static_cast(o); }); + return eigen_ref_array(*src, base); +} + +// Type caster for regular, dense matrix types (e.g. MatrixXd), but not maps/refs/etc. of dense +// types. +template +struct type_caster::value>> { + using Scalar = typename Type::Scalar; + using props = EigenProps; + + bool load(handle src, bool convert) { + // If we're in no-convert mode, only load if given an array of the correct type + if (!convert && !isinstance>(src)) + return false; + + // Coerce into an array, but don't do type conversion yet; the copy below handles it. + auto buf = array::ensure(src); + + if (!buf) + return false; + + auto dims = buf.ndim(); + if (dims < 1 || dims > 2) + return false; + + auto fits = props::conformable(buf); + if (!fits) + return false; + + // Allocate the new type, then build a numpy reference into it + value = Type(fits.rows, fits.cols); + auto ref = reinterpret_steal(eigen_ref_array(value)); + if (dims == 1) ref = ref.squeeze(); + + int result = detail::npy_api::get().PyArray_CopyInto_(ref.ptr(), buf.ptr()); + + if (result < 0) { // Copy failed! + PyErr_Clear(); + return false; + } + + return true; + } + +private: + + // Cast implementation + template + static handle cast_impl(CType *src, return_value_policy policy, handle parent) { + switch (policy) { + case return_value_policy::take_ownership: + case return_value_policy::automatic: + return eigen_encapsulate(src); + case return_value_policy::move: + return eigen_encapsulate(new CType(std::move(*src))); + case return_value_policy::copy: + return eigen_array_cast(*src); + case return_value_policy::reference: + case return_value_policy::automatic_reference: + return eigen_ref_array(*src); + case return_value_policy::reference_internal: + return eigen_ref_array(*src, parent); + default: + throw cast_error("unhandled return_value_policy: should not happen!"); + }; + } + +public: + + // Normal returned non-reference, non-const value: + static handle cast(Type &&src, return_value_policy /* policy */, handle parent) { + return cast_impl(&src, return_value_policy::move, parent); + } + // If you return a non-reference const, we mark the numpy array readonly: + static handle cast(const Type &&src, return_value_policy /* policy */, handle parent) { + return cast_impl(&src, return_value_policy::move, parent); + } + // lvalue reference return; default (automatic) becomes copy + static handle cast(Type &src, return_value_policy policy, handle parent) { + if (policy == return_value_policy::automatic || policy == return_value_policy::automatic_reference) + policy = return_value_policy::copy; + return cast_impl(&src, policy, parent); + } + // const lvalue reference return; default (automatic) becomes copy + static handle cast(const Type &src, return_value_policy policy, handle parent) { + if (policy == return_value_policy::automatic || policy == return_value_policy::automatic_reference) + policy = return_value_policy::copy; + return cast(&src, policy, parent); + } + // non-const pointer return + static handle cast(Type *src, return_value_policy policy, handle parent) { + return cast_impl(src, policy, parent); + } + // const pointer return + static handle cast(const Type *src, return_value_policy policy, handle parent) { + return cast_impl(src, policy, parent); + } + + static PYBIND11_DESCR name() { return props::descriptor(); } + + operator Type*() { return &value; } + operator Type&() { return value; } + operator Type&&() && { return std::move(value); } + template using cast_op_type = movable_cast_op_type; + +private: + Type value; +}; + +// Eigen Ref/Map classes have slightly different policy requirements, meaning we don't want to force +// `move` when a Ref/Map rvalue is returned; we treat Ref<> sort of like a pointer (we care about +// the underlying data, not the outer shell). +template +struct return_value_policy_override::value>> { + static return_value_policy policy(return_value_policy p) { return p; } +}; + +// Base class for casting reference/map/block/etc. objects back to python. +template struct eigen_map_caster { +private: + using props = EigenProps; + +public: + + // Directly referencing a ref/map's data is a bit dangerous (whatever the map/ref points to has + // to stay around), but we'll allow it under the assumption that you know what you're doing (and + // have an appropriate keep_alive in place). We return a numpy array pointing directly at the + // ref's data (The numpy array ends up read-only if the ref was to a const matrix type.) Note + // that this means you need to ensure you don't destroy the object in some other way (e.g. with + // an appropriate keep_alive, or with a reference to a statically allocated matrix). + static handle cast(const MapType &src, return_value_policy policy, handle parent) { + switch (policy) { + case return_value_policy::copy: + return eigen_array_cast(src); + case return_value_policy::reference_internal: + return eigen_array_cast(src, parent, is_eigen_mutable_map::value); + case return_value_policy::reference: + case return_value_policy::automatic: + case return_value_policy::automatic_reference: + return eigen_array_cast(src, none(), is_eigen_mutable_map::value); + default: + // move, take_ownership don't make any sense for a ref/map: + pybind11_fail("Invalid return_value_policy for Eigen Map/Ref/Block type"); + } + } + + static PYBIND11_DESCR name() { return props::descriptor(); } + + // Explicitly delete these: support python -> C++ conversion on these (i.e. these can be return + // types but not bound arguments). We still provide them (with an explicitly delete) so that + // you end up here if you try anyway. + bool load(handle, bool) = delete; + operator MapType() = delete; + template using cast_op_type = MapType; +}; + +// We can return any map-like object (but can only load Refs, specialized next): +template struct type_caster::value>> + : eigen_map_caster {}; + +// Loader for Ref<...> arguments. See the documentation for info on how to make this work without +// copying (it requires some extra effort in many cases). +template +struct type_caster< + Eigen::Ref, + enable_if_t>::value> +> : public eigen_map_caster> { +private: + using Type = Eigen::Ref; + using props = EigenProps; + using Scalar = typename props::Scalar; + using MapType = Eigen::Map; + using Array = array_t; + static constexpr bool need_writeable = is_eigen_mutable_map::value; + // Delay construction (these have no default constructor) + std::unique_ptr map; + std::unique_ptr ref; + // Our array. When possible, this is just a numpy array pointing to the source data, but + // sometimes we can't avoid copying (e.g. input is not a numpy array at all, has an incompatible + // layout, or is an array of a type that needs to be converted). Using a numpy temporary + // (rather than an Eigen temporary) saves an extra copy when we need both type conversion and + // storage order conversion. (Note that we refuse to use this temporary copy when loading an + // argument for a Ref with M non-const, i.e. a read-write reference). + Array copy_or_ref; +public: + bool load(handle src, bool convert) { + // First check whether what we have is already an array of the right type. If not, we can't + // avoid a copy (because the copy is also going to do type conversion). + bool need_copy = !isinstance(src); + + EigenConformable fits; + if (!need_copy) { + // We don't need a converting copy, but we also need to check whether the strides are + // compatible with the Ref's stride requirements + Array aref = reinterpret_borrow(src); + + if (aref && (!need_writeable || aref.writeable())) { + fits = props::conformable(aref); + if (!fits) return false; // Incompatible dimensions + if (!fits.template stride_compatible()) + need_copy = true; + else + copy_or_ref = std::move(aref); + } + else { + need_copy = true; + } + } + + if (need_copy) { + // We need to copy: If we need a mutable reference, or we're not supposed to convert + // (either because we're in the no-convert overload pass, or because we're explicitly + // instructed not to copy (via `py::arg().noconvert()`) we have to fail loading. + if (!convert || need_writeable) return false; + + Array copy = Array::ensure(src); + if (!copy) return false; + fits = props::conformable(copy); + if (!fits || !fits.template stride_compatible()) + return false; + copy_or_ref = std::move(copy); + loader_life_support::add_patient(copy_or_ref); + } + + ref.reset(); + map.reset(new MapType(data(copy_or_ref), fits.rows, fits.cols, make_stride(fits.stride.outer(), fits.stride.inner()))); + ref.reset(new Type(*map)); + + return true; + } + + operator Type*() { return ref.get(); } + operator Type&() { return *ref; } + template using cast_op_type = pybind11::detail::cast_op_type<_T>; + +private: + template ::value, int> = 0> + Scalar *data(Array &a) { return a.mutable_data(); } + + template ::value, int> = 0> + const Scalar *data(Array &a) { return a.data(); } + + // Attempt to figure out a constructor of `Stride` that will work. + // If both strides are fixed, use a default constructor: + template using stride_ctor_default = bool_constant< + S::InnerStrideAtCompileTime != Eigen::Dynamic && S::OuterStrideAtCompileTime != Eigen::Dynamic && + std::is_default_constructible::value>; + // Otherwise, if there is a two-index constructor, assume it is (outer,inner) like + // Eigen::Stride, and use it: + template using stride_ctor_dual = bool_constant< + !stride_ctor_default::value && std::is_constructible::value>; + // Otherwise, if there is a one-index constructor, and just one of the strides is dynamic, use + // it (passing whichever stride is dynamic). + template using stride_ctor_outer = bool_constant< + !any_of, stride_ctor_dual>::value && + S::OuterStrideAtCompileTime == Eigen::Dynamic && S::InnerStrideAtCompileTime != Eigen::Dynamic && + std::is_constructible::value>; + template using stride_ctor_inner = bool_constant< + !any_of, stride_ctor_dual>::value && + S::InnerStrideAtCompileTime == Eigen::Dynamic && S::OuterStrideAtCompileTime != Eigen::Dynamic && + std::is_constructible::value>; + + template ::value, int> = 0> + static S make_stride(EigenIndex, EigenIndex) { return S(); } + template ::value, int> = 0> + static S make_stride(EigenIndex outer, EigenIndex inner) { return S(outer, inner); } + template ::value, int> = 0> + static S make_stride(EigenIndex outer, EigenIndex) { return S(outer); } + template ::value, int> = 0> + static S make_stride(EigenIndex, EigenIndex inner) { return S(inner); } + +}; + +// type_caster for special matrix types (e.g. DiagonalMatrix), which are EigenBase, but not +// EigenDense (i.e. they don't have a data(), at least not with the usual matrix layout). +// load() is not supported, but we can cast them into the python domain by first copying to a +// regular Eigen::Matrix, then casting that. +template +struct type_caster::value>> { +protected: + using Matrix = Eigen::Matrix; + using props = EigenProps; +public: + static handle cast(const Type &src, return_value_policy /* policy */, handle /* parent */) { + handle h = eigen_encapsulate(new Matrix(src)); + return h; + } + static handle cast(const Type *src, return_value_policy policy, handle parent) { return cast(*src, policy, parent); } + + static PYBIND11_DESCR name() { return props::descriptor(); } + + // Explicitly delete these: support python -> C++ conversion on these (i.e. these can be return + // types but not bound arguments). We still provide them (with an explicitly delete) so that + // you end up here if you try anyway. + bool load(handle, bool) = delete; + operator Type() = delete; + template using cast_op_type = Type; +}; + +template +struct type_caster::value>> { + typedef typename Type::Scalar Scalar; + typedef remove_reference_t().outerIndexPtr())> StorageIndex; + typedef typename Type::Index Index; + static constexpr bool rowMajor = Type::IsRowMajor; + + bool load(handle src, bool) { + if (!src) + return false; + + auto obj = reinterpret_borrow(src); + object sparse_module = module::import("scipy.sparse"); + object matrix_type = sparse_module.attr( + rowMajor ? "csr_matrix" : "csc_matrix"); + + if (!obj.get_type().is(matrix_type)) { + try { + obj = matrix_type(obj); + } catch (const error_already_set &) { + return false; + } + } + + auto values = array_t((object) obj.attr("data")); + auto innerIndices = array_t((object) obj.attr("indices")); + auto outerIndices = array_t((object) obj.attr("indptr")); + auto shape = pybind11::tuple((pybind11::object) obj.attr("shape")); + auto nnz = obj.attr("nnz").cast(); + + if (!values || !innerIndices || !outerIndices) + return false; + + value = Eigen::MappedSparseMatrix( + shape[0].cast(), shape[1].cast(), nnz, + outerIndices.mutable_data(), innerIndices.mutable_data(), values.mutable_data()); + + return true; + } + + static handle cast(const Type &src, return_value_policy /* policy */, handle /* parent */) { + const_cast(src).makeCompressed(); + + object matrix_type = module::import("scipy.sparse").attr( + rowMajor ? "csr_matrix" : "csc_matrix"); + + array data(src.nonZeros(), src.valuePtr()); + array outerIndices((rowMajor ? src.rows() : src.cols()) + 1, src.outerIndexPtr()); + array innerIndices(src.nonZeros(), src.innerIndexPtr()); + + return matrix_type( + std::make_tuple(data, innerIndices, outerIndices), + std::make_pair(src.rows(), src.cols()) + ).release(); + } + + PYBIND11_TYPE_CASTER(Type, _<(Type::IsRowMajor) != 0>("scipy.sparse.csr_matrix[", "scipy.sparse.csc_matrix[") + + npy_format_descriptor::name() + _("]")); +}; + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) + +#if defined(__GNUG__) || defined(__clang__) +# pragma GCC diagnostic pop +#elif defined(_MSC_VER) +# pragma warning(pop) +#endif diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/embed.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/embed.h" new file mode 100644 index 0000000..0eb656b --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/embed.h" @@ -0,0 +1,194 @@ +/* + pybind11/embed.h: Support for embedding the interpreter + + Copyright (c) 2017 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include "eval.h" + +#if defined(PYPY_VERSION) +# error Embedding the interpreter is not supported with PyPy +#endif + +#if PY_MAJOR_VERSION >= 3 +# define PYBIND11_EMBEDDED_MODULE_IMPL(name) \ + extern "C" PyObject *pybind11_init_impl_##name() { \ + return pybind11_init_wrapper_##name(); \ + } +#else +# define PYBIND11_EMBEDDED_MODULE_IMPL(name) \ + extern "C" void pybind11_init_impl_##name() { \ + pybind11_init_wrapper_##name(); \ + } +#endif + +/** \rst + Add a new module to the table of builtins for the interpreter. Must be + defined in global scope. The first macro parameter is the name of the + module (without quotes). The second parameter is the variable which will + be used as the interface to add functions and classes to the module. + + .. code-block:: cpp + + PYBIND11_EMBEDDED_MODULE(example, m) { + // ... initialize functions and classes here + m.def("foo", []() { + return "Hello, World!"; + }); + } + \endrst */ +#define PYBIND11_EMBEDDED_MODULE(name, variable) \ + static void pybind11_init_##name(pybind11::module &); \ + static PyObject *pybind11_init_wrapper_##name() { \ + auto m = pybind11::module(#name); \ + try { \ + pybind11_init_##name(m); \ + return m.ptr(); \ + } catch (pybind11::error_already_set &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } catch (const std::exception &e) { \ + PyErr_SetString(PyExc_ImportError, e.what()); \ + return nullptr; \ + } \ + } \ + PYBIND11_EMBEDDED_MODULE_IMPL(name) \ + pybind11::detail::embedded_module name(#name, pybind11_init_impl_##name); \ + void pybind11_init_##name(pybind11::module &variable) + + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +/// Python 2.7/3.x compatible version of `PyImport_AppendInittab` and error checks. +struct embedded_module { +#if PY_MAJOR_VERSION >= 3 + using init_t = PyObject *(*)(); +#else + using init_t = void (*)(); +#endif + embedded_module(const char *name, init_t init) { + if (Py_IsInitialized()) + pybind11_fail("Can't add new modules after the interpreter has been initialized"); + + auto result = PyImport_AppendInittab(name, init); + if (result == -1) + pybind11_fail("Insufficient memory to add a new module"); + } +}; + +NAMESPACE_END(detail) + +/** \rst + Initialize the Python interpreter. No other pybind11 or CPython API functions can be + called before this is done; with the exception of `PYBIND11_EMBEDDED_MODULE`. The + optional parameter can be used to skip the registration of signal handlers (see the + Python documentation for details). Calling this function again after the interpreter + has already been initialized is a fatal error. + \endrst */ +inline void initialize_interpreter(bool init_signal_handlers = true) { + if (Py_IsInitialized()) + pybind11_fail("The interpreter is already running"); + + Py_InitializeEx(init_signal_handlers ? 1 : 0); + + // Make .py files in the working directory available by default + auto sys_path = reinterpret_borrow(module::import("sys").attr("path")); + sys_path.append("."); +} + +/** \rst + Shut down the Python interpreter. No pybind11 or CPython API functions can be called + after this. In addition, pybind11 objects must not outlive the interpreter: + + .. code-block:: cpp + + { // BAD + py::initialize_interpreter(); + auto hello = py::str("Hello, World!"); + py::finalize_interpreter(); + } // <-- BOOM, hello's destructor is called after interpreter shutdown + + { // GOOD + py::initialize_interpreter(); + { // scoped + auto hello = py::str("Hello, World!"); + } // <-- OK, hello is cleaned up properly + py::finalize_interpreter(); + } + + { // BETTER + py::scoped_interpreter guard{}; + auto hello = py::str("Hello, World!"); + } + + .. warning:: + + The interpreter can be restarted by calling `initialize_interpreter` again. + Modules created using pybind11 can be safely re-initialized. However, Python + itself cannot completely unload binary extension modules and there are several + caveats with regard to interpreter restarting. All the details can be found + in the CPython documentation. In short, not all interpreter memory may be + freed, either due to reference cycles or user-created global data. + + \endrst */ +inline void finalize_interpreter() { + handle builtins(PyEval_GetBuiltins()); + const char *id = PYBIND11_INTERNALS_ID; + + // Get the internals pointer (without creating it if it doesn't exist). It's possible for the + // internals to be created during Py_Finalize() (e.g. if a py::capsule calls `get_internals()` + // during destruction), so we get the pointer-pointer here and check it after Py_Finalize(). + detail::internals **internals_ptr_ptr = &detail::get_internals_ptr(); + // It could also be stashed in builtins, so look there too: + if (builtins.contains(id) && isinstance(builtins[id])) + internals_ptr_ptr = capsule(builtins[id]); + + Py_Finalize(); + + if (internals_ptr_ptr) { + delete *internals_ptr_ptr; + *internals_ptr_ptr = nullptr; + } +} + +/** \rst + Scope guard version of `initialize_interpreter` and `finalize_interpreter`. + This a move-only guard and only a single instance can exist. + + .. code-block:: cpp + + #include + + int main() { + py::scoped_interpreter guard{}; + py::print(Hello, World!); + } // <-- interpreter shutdown + \endrst */ +class scoped_interpreter { +public: + scoped_interpreter(bool init_signal_handlers = true) { + initialize_interpreter(init_signal_handlers); + } + + scoped_interpreter(const scoped_interpreter &) = delete; + scoped_interpreter(scoped_interpreter &&other) noexcept { other.is_valid = false; } + scoped_interpreter &operator=(const scoped_interpreter &) = delete; + scoped_interpreter &operator=(scoped_interpreter &&) = delete; + + ~scoped_interpreter() { + if (is_valid) + finalize_interpreter(); + } + +private: + bool is_valid = true; +}; + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eval.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eval.h" new file mode 100644 index 0000000..165003b --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/eval.h" @@ -0,0 +1,117 @@ +/* + pybind11/exec.h: Support for evaluating Python expressions and statements + from strings and files + + Copyright (c) 2016 Klemens Morgenstern and + Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" + +NAMESPACE_BEGIN(pybind11) + +enum eval_mode { + /// Evaluate a string containing an isolated expression + eval_expr, + + /// Evaluate a string containing a single statement. Returns \c none + eval_single_statement, + + /// Evaluate a string containing a sequence of statement. Returns \c none + eval_statements +}; + +template +object eval(str expr, object global = globals(), object local = object()) { + if (!local) + local = global; + + /* PyRun_String does not accept a PyObject / encoding specifier, + this seems to be the only alternative */ + std::string buffer = "# -*- coding: utf-8 -*-\n" + (std::string) expr; + + int start; + switch (mode) { + case eval_expr: start = Py_eval_input; break; + case eval_single_statement: start = Py_single_input; break; + case eval_statements: start = Py_file_input; break; + default: pybind11_fail("invalid evaluation mode"); + } + + PyObject *result = PyRun_String(buffer.c_str(), start, global.ptr(), local.ptr()); + if (!result) + throw error_already_set(); + return reinterpret_steal(result); +} + +template +object eval(const char (&s)[N], object global = globals(), object local = object()) { + /* Support raw string literals by removing common leading whitespace */ + auto expr = (s[0] == '\n') ? str(module::import("textwrap").attr("dedent")(s)) + : str(s); + return eval(expr, global, local); +} + +inline void exec(str expr, object global = globals(), object local = object()) { + eval(expr, global, local); +} + +template +void exec(const char (&s)[N], object global = globals(), object local = object()) { + eval(s, global, local); +} + +template +object eval_file(str fname, object global = globals(), object local = object()) { + if (!local) + local = global; + + int start; + switch (mode) { + case eval_expr: start = Py_eval_input; break; + case eval_single_statement: start = Py_single_input; break; + case eval_statements: start = Py_file_input; break; + default: pybind11_fail("invalid evaluation mode"); + } + + int closeFile = 1; + std::string fname_str = (std::string) fname; +#if PY_VERSION_HEX >= 0x03040000 + FILE *f = _Py_fopen_obj(fname.ptr(), "r"); +#elif PY_VERSION_HEX >= 0x03000000 + FILE *f = _Py_fopen(fname.ptr(), "r"); +#else + /* No unicode support in open() :( */ + auto fobj = reinterpret_steal(PyFile_FromString( + const_cast(fname_str.c_str()), + const_cast("r"))); + FILE *f = nullptr; + if (fobj) + f = PyFile_AsFile(fobj.ptr()); + closeFile = 0; +#endif + if (!f) { + PyErr_Clear(); + pybind11_fail("File \"" + fname_str + "\" could not be opened!"); + } + +#if PY_VERSION_HEX < 0x03000000 && defined(PYPY_VERSION) + PyObject *result = PyRun_File(f, fname_str.c_str(), start, global.ptr(), + local.ptr()); + (void) closeFile; +#else + PyObject *result = PyRun_FileEx(f, fname_str.c_str(), start, global.ptr(), + local.ptr(), closeFile); +#endif + + if (!result) + throw error_already_set(); + return reinterpret_steal(result); +} + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/functional.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/functional.h" new file mode 100644 index 0000000..fdb6b33 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/functional.h" @@ -0,0 +1,85 @@ +/* + pybind11/functional.h: std::function<> support + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +template +struct type_caster> { + using type = std::function; + using retval_type = conditional_t::value, void_type, Return>; + using function_type = Return (*) (Args...); + +public: + bool load(handle src, bool convert) { + if (src.is_none()) { + // Defer accepting None to other overloads (if we aren't in convert mode): + if (!convert) return false; + return true; + } + + if (!isinstance(src)) + return false; + + auto func = reinterpret_borrow(src); + + /* + When passing a C++ function as an argument to another C++ + function via Python, every function call would normally involve + a full C++ -> Python -> C++ roundtrip, which can be prohibitive. + Here, we try to at least detect the case where the function is + stateless (i.e. function pointer or lambda function without + captured variables), in which case the roundtrip can be avoided. + */ + if (auto cfunc = func.cpp_function()) { + auto c = reinterpret_borrow(PyCFunction_GET_SELF(cfunc.ptr())); + auto rec = (function_record *) c; + + if (rec && rec->is_stateless && + same_type(typeid(function_type), *reinterpret_cast(rec->data[1]))) { + struct capture { function_type f; }; + value = ((capture *) &rec->data)->f; + return true; + } + } + + value = [func](Args... args) -> Return { + gil_scoped_acquire acq; + object retval(func(std::forward(args)...)); + /* Visual studio 2015 parser issue: need parentheses around this expression */ + return (retval.template cast()); + }; + return true; + } + + template + static handle cast(Func &&f_, return_value_policy policy, handle /* parent */) { + if (!f_) + return none().inc_ref(); + + auto result = f_.template target(); + if (result) + return cpp_function(*result, policy).release(); + else + return cpp_function(std::forward(f_), policy).release(); + } + + PYBIND11_TYPE_CASTER(type, _("Callable[[") + + argument_loader::arg_names() + _("], ") + + make_caster::name() + + _("]")); +}; + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/numpy.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/numpy.h" new file mode 100644 index 0000000..388e212 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/numpy.h" @@ -0,0 +1,1598 @@ +/* + pybind11/numpy.h: Basic NumPy support, vectorize() wrapper + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include "complex.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(_MSC_VER) +# pragma warning(push) +# pragma warning(disable: 4127) // warning C4127: Conditional expression is constant +#endif + +/* This will be true on all flat address space platforms and allows us to reduce the + whole npy_intp / ssize_t / Py_intptr_t business down to just ssize_t for all size + and dimension types (e.g. shape, strides, indexing), instead of inflicting this + upon the library user. */ +static_assert(sizeof(ssize_t) == sizeof(Py_intptr_t), "ssize_t != Py_intptr_t"); + +NAMESPACE_BEGIN(pybind11) + +class array; // Forward declaration + +NAMESPACE_BEGIN(detail) +template struct npy_format_descriptor; + +struct PyArrayDescr_Proxy { + PyObject_HEAD + PyObject *typeobj; + char kind; + char type; + char byteorder; + char flags; + int type_num; + int elsize; + int alignment; + char *subarray; + PyObject *fields; + PyObject *names; +}; + +struct PyArray_Proxy { + PyObject_HEAD + char *data; + int nd; + ssize_t *dimensions; + ssize_t *strides; + PyObject *base; + PyObject *descr; + int flags; +}; + +struct PyVoidScalarObject_Proxy { + PyObject_VAR_HEAD + char *obval; + PyArrayDescr_Proxy *descr; + int flags; + PyObject *base; +}; + +struct numpy_type_info { + PyObject* dtype_ptr; + std::string format_str; +}; + +struct numpy_internals { + std::unordered_map registered_dtypes; + + numpy_type_info *get_type_info(const std::type_info& tinfo, bool throw_if_missing = true) { + auto it = registered_dtypes.find(std::type_index(tinfo)); + if (it != registered_dtypes.end()) + return &(it->second); + if (throw_if_missing) + pybind11_fail(std::string("NumPy type info missing for ") + tinfo.name()); + return nullptr; + } + + template numpy_type_info *get_type_info(bool throw_if_missing = true) { + return get_type_info(typeid(typename std::remove_cv::type), throw_if_missing); + } +}; + +inline PYBIND11_NOINLINE void load_numpy_internals(numpy_internals* &ptr) { + ptr = &get_or_create_shared_data("_numpy_internals"); +} + +inline numpy_internals& get_numpy_internals() { + static numpy_internals* ptr = nullptr; + if (!ptr) + load_numpy_internals(ptr); + return *ptr; +} + +struct npy_api { + enum constants { + NPY_ARRAY_C_CONTIGUOUS_ = 0x0001, + NPY_ARRAY_F_CONTIGUOUS_ = 0x0002, + NPY_ARRAY_OWNDATA_ = 0x0004, + NPY_ARRAY_FORCECAST_ = 0x0010, + NPY_ARRAY_ENSUREARRAY_ = 0x0040, + NPY_ARRAY_ALIGNED_ = 0x0100, + NPY_ARRAY_WRITEABLE_ = 0x0400, + NPY_BOOL_ = 0, + NPY_BYTE_, NPY_UBYTE_, + NPY_SHORT_, NPY_USHORT_, + NPY_INT_, NPY_UINT_, + NPY_LONG_, NPY_ULONG_, + NPY_LONGLONG_, NPY_ULONGLONG_, + NPY_FLOAT_, NPY_DOUBLE_, NPY_LONGDOUBLE_, + NPY_CFLOAT_, NPY_CDOUBLE_, NPY_CLONGDOUBLE_, + NPY_OBJECT_ = 17, + NPY_STRING_, NPY_UNICODE_, NPY_VOID_ + }; + + typedef struct { + Py_intptr_t *ptr; + int len; + } PyArray_Dims; + + static npy_api& get() { + static npy_api api = lookup(); + return api; + } + + bool PyArray_Check_(PyObject *obj) const { + return (bool) PyObject_TypeCheck(obj, PyArray_Type_); + } + bool PyArrayDescr_Check_(PyObject *obj) const { + return (bool) PyObject_TypeCheck(obj, PyArrayDescr_Type_); + } + + unsigned int (*PyArray_GetNDArrayCFeatureVersion_)(); + PyObject *(*PyArray_DescrFromType_)(int); + PyObject *(*PyArray_NewFromDescr_) + (PyTypeObject *, PyObject *, int, Py_intptr_t *, + Py_intptr_t *, void *, int, PyObject *); + PyObject *(*PyArray_DescrNewFromType_)(int); + int (*PyArray_CopyInto_)(PyObject *, PyObject *); + PyObject *(*PyArray_NewCopy_)(PyObject *, int); + PyTypeObject *PyArray_Type_; + PyTypeObject *PyVoidArrType_Type_; + PyTypeObject *PyArrayDescr_Type_; + PyObject *(*PyArray_DescrFromScalar_)(PyObject *); + PyObject *(*PyArray_FromAny_) (PyObject *, PyObject *, int, int, int, PyObject *); + int (*PyArray_DescrConverter_) (PyObject *, PyObject **); + bool (*PyArray_EquivTypes_) (PyObject *, PyObject *); + int (*PyArray_GetArrayParamsFromObject_)(PyObject *, PyObject *, char, PyObject **, int *, + Py_ssize_t *, PyObject **, PyObject *); + PyObject *(*PyArray_Squeeze_)(PyObject *); + int (*PyArray_SetBaseObject_)(PyObject *, PyObject *); + PyObject* (*PyArray_Resize_)(PyObject*, PyArray_Dims*, int, int); +private: + enum functions { + API_PyArray_GetNDArrayCFeatureVersion = 211, + API_PyArray_Type = 2, + API_PyArrayDescr_Type = 3, + API_PyVoidArrType_Type = 39, + API_PyArray_DescrFromType = 45, + API_PyArray_DescrFromScalar = 57, + API_PyArray_FromAny = 69, + API_PyArray_Resize = 80, + API_PyArray_CopyInto = 82, + API_PyArray_NewCopy = 85, + API_PyArray_NewFromDescr = 94, + API_PyArray_DescrNewFromType = 9, + API_PyArray_DescrConverter = 174, + API_PyArray_EquivTypes = 182, + API_PyArray_GetArrayParamsFromObject = 278, + API_PyArray_Squeeze = 136, + API_PyArray_SetBaseObject = 282 + }; + + static npy_api lookup() { + module m = module::import("numpy.core.multiarray"); + auto c = m.attr("_ARRAY_API"); +#if PY_MAJOR_VERSION >= 3 + void **api_ptr = (void **) PyCapsule_GetPointer(c.ptr(), NULL); +#else + void **api_ptr = (void **) PyCObject_AsVoidPtr(c.ptr()); +#endif + npy_api api; +#define DECL_NPY_API(Func) api.Func##_ = (decltype(api.Func##_)) api_ptr[API_##Func]; + DECL_NPY_API(PyArray_GetNDArrayCFeatureVersion); + if (api.PyArray_GetNDArrayCFeatureVersion_() < 0x7) + pybind11_fail("pybind11 numpy support requires numpy >= 1.7.0"); + DECL_NPY_API(PyArray_Type); + DECL_NPY_API(PyVoidArrType_Type); + DECL_NPY_API(PyArrayDescr_Type); + DECL_NPY_API(PyArray_DescrFromType); + DECL_NPY_API(PyArray_DescrFromScalar); + DECL_NPY_API(PyArray_FromAny); + DECL_NPY_API(PyArray_Resize); + DECL_NPY_API(PyArray_CopyInto); + DECL_NPY_API(PyArray_NewCopy); + DECL_NPY_API(PyArray_NewFromDescr); + DECL_NPY_API(PyArray_DescrNewFromType); + DECL_NPY_API(PyArray_DescrConverter); + DECL_NPY_API(PyArray_EquivTypes); + DECL_NPY_API(PyArray_GetArrayParamsFromObject); + DECL_NPY_API(PyArray_Squeeze); + DECL_NPY_API(PyArray_SetBaseObject); +#undef DECL_NPY_API + return api; + } +}; + +inline PyArray_Proxy* array_proxy(void* ptr) { + return reinterpret_cast(ptr); +} + +inline const PyArray_Proxy* array_proxy(const void* ptr) { + return reinterpret_cast(ptr); +} + +inline PyArrayDescr_Proxy* array_descriptor_proxy(PyObject* ptr) { + return reinterpret_cast(ptr); +} + +inline const PyArrayDescr_Proxy* array_descriptor_proxy(const PyObject* ptr) { + return reinterpret_cast(ptr); +} + +inline bool check_flags(const void* ptr, int flag) { + return (flag == (array_proxy(ptr)->flags & flag)); +} + +template struct is_std_array : std::false_type { }; +template struct is_std_array> : std::true_type { }; +template struct is_complex : std::false_type { }; +template struct is_complex> : std::true_type { }; + +template struct array_info_scalar { + typedef T type; + static constexpr bool is_array = false; + static constexpr bool is_empty = false; + static PYBIND11_DESCR extents() { return _(""); } + static void append_extents(list& /* shape */) { } +}; +// Computes underlying type and a comma-separated list of extents for array +// types (any mix of std::array and built-in arrays). An array of char is +// treated as scalar because it gets special handling. +template struct array_info : array_info_scalar { }; +template struct array_info> { + using type = typename array_info::type; + static constexpr bool is_array = true; + static constexpr bool is_empty = (N == 0) || array_info::is_empty; + static constexpr size_t extent = N; + + // appends the extents to shape + static void append_extents(list& shape) { + shape.append(N); + array_info::append_extents(shape); + } + + template::is_array, int> = 0> + static PYBIND11_DESCR extents() { + return _(); + } + + template::is_array, int> = 0> + static PYBIND11_DESCR extents() { + return concat(_(), array_info::extents()); + } +}; +// For numpy we have special handling for arrays of characters, so we don't include +// the size in the array extents. +template struct array_info : array_info_scalar { }; +template struct array_info> : array_info_scalar> { }; +template struct array_info : array_info> { }; +template using remove_all_extents_t = typename array_info::type; + +template using is_pod_struct = all_of< + std::is_standard_layout, // since we're accessing directly in memory we need a standard layout type +#if !defined(__GNUG__) || defined(__clang__) || __GNUC__ >= 5 + std::is_trivially_copyable, +#else + // GCC 4 doesn't implement is_trivially_copyable, so approximate it + std::is_trivially_destructible, + satisfies_any_of, +#endif + satisfies_none_of +>; + +template ssize_t byte_offset_unsafe(const Strides &) { return 0; } +template +ssize_t byte_offset_unsafe(const Strides &strides, ssize_t i, Ix... index) { + return i * strides[Dim] + byte_offset_unsafe(strides, index...); +} + +/** + * Proxy class providing unsafe, unchecked const access to array data. This is constructed through + * the `unchecked()` method of `array` or the `unchecked()` method of `array_t`. `Dims` + * will be -1 for dimensions determined at runtime. + */ +template +class unchecked_reference { +protected: + static constexpr bool Dynamic = Dims < 0; + const unsigned char *data_; + // Storing the shape & strides in local variables (i.e. these arrays) allows the compiler to + // make large performance gains on big, nested loops, but requires compile-time dimensions + conditional_t> + shape_, strides_; + const ssize_t dims_; + + friend class pybind11::array; + // Constructor for compile-time dimensions: + template + unchecked_reference(const void *data, const ssize_t *shape, const ssize_t *strides, enable_if_t) + : data_{reinterpret_cast(data)}, dims_{Dims} { + for (size_t i = 0; i < (size_t) dims_; i++) { + shape_[i] = shape[i]; + strides_[i] = strides[i]; + } + } + // Constructor for runtime dimensions: + template + unchecked_reference(const void *data, const ssize_t *shape, const ssize_t *strides, enable_if_t dims) + : data_{reinterpret_cast(data)}, shape_{shape}, strides_{strides}, dims_{dims} {} + +public: + /** + * Unchecked const reference access to data at the given indices. For a compile-time known + * number of dimensions, this requires the correct number of arguments; for run-time + * dimensionality, this is not checked (and so is up to the caller to use safely). + */ + template const T &operator()(Ix... index) const { + static_assert(sizeof...(Ix) == Dims || Dynamic, + "Invalid number of indices for unchecked array reference"); + return *reinterpret_cast(data_ + byte_offset_unsafe(strides_, ssize_t(index)...)); + } + /** + * Unchecked const reference access to data; this operator only participates if the reference + * is to a 1-dimensional array. When present, this is exactly equivalent to `obj(index)`. + */ + template > + const T &operator[](ssize_t index) const { return operator()(index); } + + /// Pointer access to the data at the given indices. + template const T *data(Ix... ix) const { return &operator()(ssize_t(ix)...); } + + /// Returns the item size, i.e. sizeof(T) + constexpr static ssize_t itemsize() { return sizeof(T); } + + /// Returns the shape (i.e. size) of dimension `dim` + ssize_t shape(ssize_t dim) const { return shape_[(size_t) dim]; } + + /// Returns the number of dimensions of the array + ssize_t ndim() const { return dims_; } + + /// Returns the total number of elements in the referenced array, i.e. the product of the shapes + template + enable_if_t size() const { + return std::accumulate(shape_.begin(), shape_.end(), (ssize_t) 1, std::multiplies()); + } + template + enable_if_t size() const { + return std::accumulate(shape_, shape_ + ndim(), (ssize_t) 1, std::multiplies()); + } + + /// Returns the total number of bytes used by the referenced data. Note that the actual span in + /// memory may be larger if the referenced array has non-contiguous strides (e.g. for a slice). + ssize_t nbytes() const { + return size() * itemsize(); + } +}; + +template +class unchecked_mutable_reference : public unchecked_reference { + friend class pybind11::array; + using ConstBase = unchecked_reference; + using ConstBase::ConstBase; + using ConstBase::Dynamic; +public: + /// Mutable, unchecked access to data at the given indices. + template T& operator()(Ix... index) { + static_assert(sizeof...(Ix) == Dims || Dynamic, + "Invalid number of indices for unchecked array reference"); + return const_cast(ConstBase::operator()(index...)); + } + /** + * Mutable, unchecked access data at the given index; this operator only participates if the + * reference is to a 1-dimensional array (or has runtime dimensions). When present, this is + * exactly equivalent to `obj(index)`. + */ + template > + T &operator[](ssize_t index) { return operator()(index); } + + /// Mutable pointer access to the data at the given indices. + template T *mutable_data(Ix... ix) { return &operator()(ssize_t(ix)...); } +}; + +template +struct type_caster> { + static_assert(Dim == 0 && Dim > 0 /* always fail */, "unchecked array proxy object is not castable"); +}; +template +struct type_caster> : type_caster> {}; + +NAMESPACE_END(detail) + +class dtype : public object { +public: + PYBIND11_OBJECT_DEFAULT(dtype, object, detail::npy_api::get().PyArrayDescr_Check_); + + explicit dtype(const buffer_info &info) { + dtype descr(_dtype_from_pep3118()(PYBIND11_STR_TYPE(info.format))); + // If info.itemsize == 0, use the value calculated from the format string + m_ptr = descr.strip_padding(info.itemsize ? info.itemsize : descr.itemsize()).release().ptr(); + } + + explicit dtype(const std::string &format) { + m_ptr = from_args(pybind11::str(format)).release().ptr(); + } + + dtype(const char *format) : dtype(std::string(format)) { } + + dtype(list names, list formats, list offsets, ssize_t itemsize) { + dict args; + args["names"] = names; + args["formats"] = formats; + args["offsets"] = offsets; + args["itemsize"] = pybind11::int_(itemsize); + m_ptr = from_args(args).release().ptr(); + } + + /// This is essentially the same as calling numpy.dtype(args) in Python. + static dtype from_args(object args) { + PyObject *ptr = nullptr; + if (!detail::npy_api::get().PyArray_DescrConverter_(args.release().ptr(), &ptr) || !ptr) + throw error_already_set(); + return reinterpret_steal(ptr); + } + + /// Return dtype associated with a C++ type. + template static dtype of() { + return detail::npy_format_descriptor::type>::dtype(); + } + + /// Size of the data type in bytes. + ssize_t itemsize() const { + return detail::array_descriptor_proxy(m_ptr)->elsize; + } + + /// Returns true for structured data types. + bool has_fields() const { + return detail::array_descriptor_proxy(m_ptr)->names != nullptr; + } + + /// Single-character type code. + char kind() const { + return detail::array_descriptor_proxy(m_ptr)->kind; + } + +private: + static object _dtype_from_pep3118() { + static PyObject *obj = module::import("numpy.core._internal") + .attr("_dtype_from_pep3118").cast().release().ptr(); + return reinterpret_borrow(obj); + } + + dtype strip_padding(ssize_t itemsize) { + // Recursively strip all void fields with empty names that are generated for + // padding fields (as of NumPy v1.11). + if (!has_fields()) + return *this; + + struct field_descr { PYBIND11_STR_TYPE name; object format; pybind11::int_ offset; }; + std::vector field_descriptors; + + for (auto field : attr("fields").attr("items")()) { + auto spec = field.cast(); + auto name = spec[0].cast(); + auto format = spec[1].cast()[0].cast(); + auto offset = spec[1].cast()[1].cast(); + if (!len(name) && format.kind() == 'V') + continue; + field_descriptors.push_back({(PYBIND11_STR_TYPE) name, format.strip_padding(format.itemsize()), offset}); + } + + std::sort(field_descriptors.begin(), field_descriptors.end(), + [](const field_descr& a, const field_descr& b) { + return a.offset.cast() < b.offset.cast(); + }); + + list names, formats, offsets; + for (auto& descr : field_descriptors) { + names.append(descr.name); + formats.append(descr.format); + offsets.append(descr.offset); + } + return dtype(names, formats, offsets, itemsize); + } +}; + +class array : public buffer { +public: + PYBIND11_OBJECT_CVT(array, buffer, detail::npy_api::get().PyArray_Check_, raw_array) + + enum { + c_style = detail::npy_api::NPY_ARRAY_C_CONTIGUOUS_, + f_style = detail::npy_api::NPY_ARRAY_F_CONTIGUOUS_, + forcecast = detail::npy_api::NPY_ARRAY_FORCECAST_ + }; + + array() : array({{0}}, static_cast(nullptr)) {} + + using ShapeContainer = detail::any_container; + using StridesContainer = detail::any_container; + + // Constructs an array taking shape/strides from arbitrary container types + array(const pybind11::dtype &dt, ShapeContainer shape, StridesContainer strides, + const void *ptr = nullptr, handle base = handle()) { + + if (strides->empty()) + *strides = c_strides(*shape, dt.itemsize()); + + auto ndim = shape->size(); + if (ndim != strides->size()) + pybind11_fail("NumPy: shape ndim doesn't match strides ndim"); + auto descr = dt; + + int flags = 0; + if (base && ptr) { + if (isinstance(base)) + /* Copy flags from base (except ownership bit) */ + flags = reinterpret_borrow(base).flags() & ~detail::npy_api::NPY_ARRAY_OWNDATA_; + else + /* Writable by default, easy to downgrade later on if needed */ + flags = detail::npy_api::NPY_ARRAY_WRITEABLE_; + } + + auto &api = detail::npy_api::get(); + auto tmp = reinterpret_steal(api.PyArray_NewFromDescr_( + api.PyArray_Type_, descr.release().ptr(), (int) ndim, shape->data(), strides->data(), + const_cast(ptr), flags, nullptr)); + if (!tmp) + throw error_already_set(); + if (ptr) { + if (base) { + api.PyArray_SetBaseObject_(tmp.ptr(), base.inc_ref().ptr()); + } else { + tmp = reinterpret_steal(api.PyArray_NewCopy_(tmp.ptr(), -1 /* any order */)); + } + } + m_ptr = tmp.release().ptr(); + } + + array(const pybind11::dtype &dt, ShapeContainer shape, const void *ptr = nullptr, handle base = handle()) + : array(dt, std::move(shape), {}, ptr, base) { } + + template ::value && !std::is_same::value>> + array(const pybind11::dtype &dt, T count, const void *ptr = nullptr, handle base = handle()) + : array(dt, {{count}}, ptr, base) { } + + template + array(ShapeContainer shape, StridesContainer strides, const T *ptr, handle base = handle()) + : array(pybind11::dtype::of(), std::move(shape), std::move(strides), ptr, base) { } + + template + array(ShapeContainer shape, const T *ptr, handle base = handle()) + : array(std::move(shape), {}, ptr, base) { } + + template + explicit array(ssize_t count, const T *ptr, handle base = handle()) : array({count}, {}, ptr, base) { } + + explicit array(const buffer_info &info) + : array(pybind11::dtype(info), info.shape, info.strides, info.ptr) { } + + /// Array descriptor (dtype) + pybind11::dtype dtype() const { + return reinterpret_borrow(detail::array_proxy(m_ptr)->descr); + } + + /// Total number of elements + ssize_t size() const { + return std::accumulate(shape(), shape() + ndim(), (ssize_t) 1, std::multiplies()); + } + + /// Byte size of a single element + ssize_t itemsize() const { + return detail::array_descriptor_proxy(detail::array_proxy(m_ptr)->descr)->elsize; + } + + /// Total number of bytes + ssize_t nbytes() const { + return size() * itemsize(); + } + + /// Number of dimensions + ssize_t ndim() const { + return detail::array_proxy(m_ptr)->nd; + } + + /// Base object + object base() const { + return reinterpret_borrow(detail::array_proxy(m_ptr)->base); + } + + /// Dimensions of the array + const ssize_t* shape() const { + return detail::array_proxy(m_ptr)->dimensions; + } + + /// Dimension along a given axis + ssize_t shape(ssize_t dim) const { + if (dim >= ndim()) + fail_dim_check(dim, "invalid axis"); + return shape()[dim]; + } + + /// Strides of the array + const ssize_t* strides() const { + return detail::array_proxy(m_ptr)->strides; + } + + /// Stride along a given axis + ssize_t strides(ssize_t dim) const { + if (dim >= ndim()) + fail_dim_check(dim, "invalid axis"); + return strides()[dim]; + } + + /// Return the NumPy array flags + int flags() const { + return detail::array_proxy(m_ptr)->flags; + } + + /// If set, the array is writeable (otherwise the buffer is read-only) + bool writeable() const { + return detail::check_flags(m_ptr, detail::npy_api::NPY_ARRAY_WRITEABLE_); + } + + /// If set, the array owns the data (will be freed when the array is deleted) + bool owndata() const { + return detail::check_flags(m_ptr, detail::npy_api::NPY_ARRAY_OWNDATA_); + } + + /// Pointer to the contained data. If index is not provided, points to the + /// beginning of the buffer. May throw if the index would lead to out of bounds access. + template const void* data(Ix... index) const { + return static_cast(detail::array_proxy(m_ptr)->data + offset_at(index...)); + } + + /// Mutable pointer to the contained data. If index is not provided, points to the + /// beginning of the buffer. May throw if the index would lead to out of bounds access. + /// May throw if the array is not writeable. + template void* mutable_data(Ix... index) { + check_writeable(); + return static_cast(detail::array_proxy(m_ptr)->data + offset_at(index...)); + } + + /// Byte offset from beginning of the array to a given index (full or partial). + /// May throw if the index would lead to out of bounds access. + template ssize_t offset_at(Ix... index) const { + if ((ssize_t) sizeof...(index) > ndim()) + fail_dim_check(sizeof...(index), "too many indices for an array"); + return byte_offset(ssize_t(index)...); + } + + ssize_t offset_at() const { return 0; } + + /// Item count from beginning of the array to a given index (full or partial). + /// May throw if the index would lead to out of bounds access. + template ssize_t index_at(Ix... index) const { + return offset_at(index...) / itemsize(); + } + + /** + * Returns a proxy object that provides access to the array's data without bounds or + * dimensionality checking. Will throw if the array is missing the `writeable` flag. Use with + * care: the array must not be destroyed or reshaped for the duration of the returned object, + * and the caller must take care not to access invalid dimensions or dimension indices. + */ + template detail::unchecked_mutable_reference mutable_unchecked() { + if (Dims >= 0 && ndim() != Dims) + throw std::domain_error("array has incorrect number of dimensions: " + std::to_string(ndim()) + + "; expected " + std::to_string(Dims)); + return detail::unchecked_mutable_reference(mutable_data(), shape(), strides(), ndim()); + } + + /** + * Returns a proxy object that provides const access to the array's data without bounds or + * dimensionality checking. Unlike `mutable_unchecked()`, this does not require that the + * underlying array have the `writable` flag. Use with care: the array must not be destroyed or + * reshaped for the duration of the returned object, and the caller must take care not to access + * invalid dimensions or dimension indices. + */ + template detail::unchecked_reference unchecked() const { + if (Dims >= 0 && ndim() != Dims) + throw std::domain_error("array has incorrect number of dimensions: " + std::to_string(ndim()) + + "; expected " + std::to_string(Dims)); + return detail::unchecked_reference(data(), shape(), strides(), ndim()); + } + + /// Return a new view with all of the dimensions of length 1 removed + array squeeze() { + auto& api = detail::npy_api::get(); + return reinterpret_steal(api.PyArray_Squeeze_(m_ptr)); + } + + /// Resize array to given shape + /// If refcheck is true and more that one reference exist to this array + /// then resize will succeed only if it makes a reshape, i.e. original size doesn't change + void resize(ShapeContainer new_shape, bool refcheck = true) { + detail::npy_api::PyArray_Dims d = { + new_shape->data(), int(new_shape->size()) + }; + // try to resize, set ordering param to -1 cause it's not used anyway + object new_array = reinterpret_steal( + detail::npy_api::get().PyArray_Resize_(m_ptr, &d, int(refcheck), -1) + ); + if (!new_array) throw error_already_set(); + if (isinstance(new_array)) { *this = std::move(new_array); } + } + + /// Ensure that the argument is a NumPy array + /// In case of an error, nullptr is returned and the Python error is cleared. + static array ensure(handle h, int ExtraFlags = 0) { + auto result = reinterpret_steal(raw_array(h.ptr(), ExtraFlags)); + if (!result) + PyErr_Clear(); + return result; + } + +protected: + template friend struct detail::npy_format_descriptor; + + void fail_dim_check(ssize_t dim, const std::string& msg) const { + throw index_error(msg + ": " + std::to_string(dim) + + " (ndim = " + std::to_string(ndim()) + ")"); + } + + template ssize_t byte_offset(Ix... index) const { + check_dimensions(index...); + return detail::byte_offset_unsafe(strides(), ssize_t(index)...); + } + + void check_writeable() const { + if (!writeable()) + throw std::domain_error("array is not writeable"); + } + + // Default, C-style strides + static std::vector c_strides(const std::vector &shape, ssize_t itemsize) { + auto ndim = shape.size(); + std::vector strides(ndim, itemsize); + for (size_t i = ndim - 1; i > 0; --i) + strides[i - 1] = strides[i] * shape[i]; + return strides; + } + + // F-style strides; default when constructing an array_t with `ExtraFlags & f_style` + static std::vector f_strides(const std::vector &shape, ssize_t itemsize) { + auto ndim = shape.size(); + std::vector strides(ndim, itemsize); + for (size_t i = 1; i < ndim; ++i) + strides[i] = strides[i - 1] * shape[i - 1]; + return strides; + } + + template void check_dimensions(Ix... index) const { + check_dimensions_impl(ssize_t(0), shape(), ssize_t(index)...); + } + + void check_dimensions_impl(ssize_t, const ssize_t*) const { } + + template void check_dimensions_impl(ssize_t axis, const ssize_t* shape, ssize_t i, Ix... index) const { + if (i >= *shape) { + throw index_error(std::string("index ") + std::to_string(i) + + " is out of bounds for axis " + std::to_string(axis) + + " with size " + std::to_string(*shape)); + } + check_dimensions_impl(axis + 1, shape + 1, index...); + } + + /// Create array from any object -- always returns a new reference + static PyObject *raw_array(PyObject *ptr, int ExtraFlags = 0) { + if (ptr == nullptr) { + PyErr_SetString(PyExc_ValueError, "cannot create a pybind11::array from a nullptr"); + return nullptr; + } + return detail::npy_api::get().PyArray_FromAny_( + ptr, nullptr, 0, 0, detail::npy_api::NPY_ARRAY_ENSUREARRAY_ | ExtraFlags, nullptr); + } +}; + +template class array_t : public array { +private: + struct private_ctor {}; + // Delegating constructor needed when both moving and accessing in the same constructor + array_t(private_ctor, ShapeContainer &&shape, StridesContainer &&strides, const T *ptr, handle base) + : array(std::move(shape), std::move(strides), ptr, base) {} +public: + static_assert(!detail::array_info::is_array, "Array types cannot be used with array_t"); + + using value_type = T; + + array_t() : array(0, static_cast(nullptr)) {} + array_t(handle h, borrowed_t) : array(h, borrowed_t{}) { } + array_t(handle h, stolen_t) : array(h, stolen_t{}) { } + + PYBIND11_DEPRECATED("Use array_t::ensure() instead") + array_t(handle h, bool is_borrowed) : array(raw_array_t(h.ptr()), stolen_t{}) { + if (!m_ptr) PyErr_Clear(); + if (!is_borrowed) Py_XDECREF(h.ptr()); + } + + array_t(const object &o) : array(raw_array_t(o.ptr()), stolen_t{}) { + if (!m_ptr) throw error_already_set(); + } + + explicit array_t(const buffer_info& info) : array(info) { } + + array_t(ShapeContainer shape, StridesContainer strides, const T *ptr = nullptr, handle base = handle()) + : array(std::move(shape), std::move(strides), ptr, base) { } + + explicit array_t(ShapeContainer shape, const T *ptr = nullptr, handle base = handle()) + : array_t(private_ctor{}, std::move(shape), + ExtraFlags & f_style ? f_strides(*shape, itemsize()) : c_strides(*shape, itemsize()), + ptr, base) { } + + explicit array_t(size_t count, const T *ptr = nullptr, handle base = handle()) + : array({count}, {}, ptr, base) { } + + constexpr ssize_t itemsize() const { + return sizeof(T); + } + + template ssize_t index_at(Ix... index) const { + return offset_at(index...) / itemsize(); + } + + template const T* data(Ix... index) const { + return static_cast(array::data(index...)); + } + + template T* mutable_data(Ix... index) { + return static_cast(array::mutable_data(index...)); + } + + // Reference to element at a given index + template const T& at(Ix... index) const { + if (sizeof...(index) != ndim()) + fail_dim_check(sizeof...(index), "index dimension mismatch"); + return *(static_cast(array::data()) + byte_offset(ssize_t(index)...) / itemsize()); + } + + // Mutable reference to element at a given index + template T& mutable_at(Ix... index) { + if (sizeof...(index) != ndim()) + fail_dim_check(sizeof...(index), "index dimension mismatch"); + return *(static_cast(array::mutable_data()) + byte_offset(ssize_t(index)...) / itemsize()); + } + + /** + * Returns a proxy object that provides access to the array's data without bounds or + * dimensionality checking. Will throw if the array is missing the `writeable` flag. Use with + * care: the array must not be destroyed or reshaped for the duration of the returned object, + * and the caller must take care not to access invalid dimensions or dimension indices. + */ + template detail::unchecked_mutable_reference mutable_unchecked() { + return array::mutable_unchecked(); + } + + /** + * Returns a proxy object that provides const access to the array's data without bounds or + * dimensionality checking. Unlike `unchecked()`, this does not require that the underlying + * array have the `writable` flag. Use with care: the array must not be destroyed or reshaped + * for the duration of the returned object, and the caller must take care not to access invalid + * dimensions or dimension indices. + */ + template detail::unchecked_reference unchecked() const { + return array::unchecked(); + } + + /// Ensure that the argument is a NumPy array of the correct dtype (and if not, try to convert + /// it). In case of an error, nullptr is returned and the Python error is cleared. + static array_t ensure(handle h) { + auto result = reinterpret_steal(raw_array_t(h.ptr())); + if (!result) + PyErr_Clear(); + return result; + } + + static bool check_(handle h) { + const auto &api = detail::npy_api::get(); + return api.PyArray_Check_(h.ptr()) + && api.PyArray_EquivTypes_(detail::array_proxy(h.ptr())->descr, dtype::of().ptr()); + } + +protected: + /// Create array from any object -- always returns a new reference + static PyObject *raw_array_t(PyObject *ptr) { + if (ptr == nullptr) { + PyErr_SetString(PyExc_ValueError, "cannot create a pybind11::array_t from a nullptr"); + return nullptr; + } + return detail::npy_api::get().PyArray_FromAny_( + ptr, dtype::of().release().ptr(), 0, 0, + detail::npy_api::NPY_ARRAY_ENSUREARRAY_ | ExtraFlags, nullptr); + } +}; + +template +struct format_descriptor::value>> { + static std::string format() { + return detail::npy_format_descriptor::type>::format(); + } +}; + +template struct format_descriptor { + static std::string format() { return std::to_string(N) + "s"; } +}; +template struct format_descriptor> { + static std::string format() { return std::to_string(N) + "s"; } +}; + +template +struct format_descriptor::value>> { + static std::string format() { + return format_descriptor< + typename std::remove_cv::type>::type>::format(); + } +}; + +template +struct format_descriptor::is_array>> { + static std::string format() { + using detail::_; + PYBIND11_DESCR extents = _("(") + detail::array_info::extents() + _(")"); + return extents.text() + format_descriptor>::format(); + } +}; + +NAMESPACE_BEGIN(detail) +template +struct pyobject_caster> { + using type = array_t; + + bool load(handle src, bool convert) { + if (!convert && !type::check_(src)) + return false; + value = type::ensure(src); + return static_cast(value); + } + + static handle cast(const handle &src, return_value_policy /* policy */, handle /* parent */) { + return src.inc_ref(); + } + PYBIND11_TYPE_CASTER(type, handle_type_name::name()); +}; + +template +struct compare_buffer_info::value>> { + static bool compare(const buffer_info& b) { + return npy_api::get().PyArray_EquivTypes_(dtype::of().ptr(), dtype(b).ptr()); + } +}; + +template struct npy_format_descriptor::value>> { +private: + // NB: the order here must match the one in common.h + constexpr static const int values[15] = { + npy_api::NPY_BOOL_, + npy_api::NPY_BYTE_, npy_api::NPY_UBYTE_, npy_api::NPY_SHORT_, npy_api::NPY_USHORT_, + npy_api::NPY_INT_, npy_api::NPY_UINT_, npy_api::NPY_LONGLONG_, npy_api::NPY_ULONGLONG_, + npy_api::NPY_FLOAT_, npy_api::NPY_DOUBLE_, npy_api::NPY_LONGDOUBLE_, + npy_api::NPY_CFLOAT_, npy_api::NPY_CDOUBLE_, npy_api::NPY_CLONGDOUBLE_ + }; + +public: + static constexpr int value = values[detail::is_fmt_numeric::index]; + + static pybind11::dtype dtype() { + if (auto ptr = npy_api::get().PyArray_DescrFromType_(value)) + return reinterpret_borrow(ptr); + pybind11_fail("Unsupported buffer format!"); + } + template ::value, int> = 0> + static PYBIND11_DESCR name() { + return _::value>(_("bool"), + _::value>("int", "uint") + _()); + } + template ::value, int> = 0> + static PYBIND11_DESCR name() { + return _::value || std::is_same::value>( + _("float") + _(), _("longdouble")); + } + template ::value, int> = 0> + static PYBIND11_DESCR name() { + return _::value || std::is_same::value>( + _("complex") + _(), _("longcomplex")); + } +}; + +#define PYBIND11_DECL_CHAR_FMT \ + static PYBIND11_DESCR name() { return _("S") + _(); } \ + static pybind11::dtype dtype() { return pybind11::dtype(std::string("S") + std::to_string(N)); } +template struct npy_format_descriptor { PYBIND11_DECL_CHAR_FMT }; +template struct npy_format_descriptor> { PYBIND11_DECL_CHAR_FMT }; +#undef PYBIND11_DECL_CHAR_FMT + +template struct npy_format_descriptor::is_array>> { +private: + using base_descr = npy_format_descriptor::type>; +public: + static_assert(!array_info::is_empty, "Zero-sized arrays are not supported"); + + static PYBIND11_DESCR name() { return _("(") + array_info::extents() + _(")") + base_descr::name(); } + static pybind11::dtype dtype() { + list shape; + array_info::append_extents(shape); + return pybind11::dtype::from_args(pybind11::make_tuple(base_descr::dtype(), shape)); + } +}; + +template struct npy_format_descriptor::value>> { +private: + using base_descr = npy_format_descriptor::type>; +public: + static PYBIND11_DESCR name() { return base_descr::name(); } + static pybind11::dtype dtype() { return base_descr::dtype(); } +}; + +struct field_descriptor { + const char *name; + ssize_t offset; + ssize_t size; + std::string format; + dtype descr; +}; + +inline PYBIND11_NOINLINE void register_structured_dtype( + const std::initializer_list& fields, + const std::type_info& tinfo, ssize_t itemsize, + bool (*direct_converter)(PyObject *, void *&)) { + + auto& numpy_internals = get_numpy_internals(); + if (numpy_internals.get_type_info(tinfo, false)) + pybind11_fail("NumPy: dtype is already registered"); + + list names, formats, offsets; + for (auto field : fields) { + if (!field.descr) + pybind11_fail(std::string("NumPy: unsupported field dtype: `") + + field.name + "` @ " + tinfo.name()); + names.append(PYBIND11_STR_TYPE(field.name)); + formats.append(field.descr); + offsets.append(pybind11::int_(field.offset)); + } + auto dtype_ptr = pybind11::dtype(names, formats, offsets, itemsize).release().ptr(); + + // There is an existing bug in NumPy (as of v1.11): trailing bytes are + // not encoded explicitly into the format string. This will supposedly + // get fixed in v1.12; for further details, see these: + // - https://github.com/numpy/numpy/issues/7797 + // - https://github.com/numpy/numpy/pull/7798 + // Because of this, we won't use numpy's logic to generate buffer format + // strings and will just do it ourselves. + std::vector ordered_fields(fields); + std::sort(ordered_fields.begin(), ordered_fields.end(), + [](const field_descriptor &a, const field_descriptor &b) { return a.offset < b.offset; }); + ssize_t offset = 0; + std::ostringstream oss; + // mark the structure as unaligned with '^', because numpy and C++ don't + // always agree about alignment (particularly for complex), and we're + // explicitly listing all our padding. This depends on none of the fields + // overriding the endianness. Putting the ^ in front of individual fields + // isn't guaranteed to work due to https://github.com/numpy/numpy/issues/9049 + oss << "^T{"; + for (auto& field : ordered_fields) { + if (field.offset > offset) + oss << (field.offset - offset) << 'x'; + oss << field.format << ':' << field.name << ':'; + offset = field.offset + field.size; + } + if (itemsize > offset) + oss << (itemsize - offset) << 'x'; + oss << '}'; + auto format_str = oss.str(); + + // Sanity check: verify that NumPy properly parses our buffer format string + auto& api = npy_api::get(); + auto arr = array(buffer_info(nullptr, itemsize, format_str, 1)); + if (!api.PyArray_EquivTypes_(dtype_ptr, arr.dtype().ptr())) + pybind11_fail("NumPy: invalid buffer descriptor!"); + + auto tindex = std::type_index(tinfo); + numpy_internals.registered_dtypes[tindex] = { dtype_ptr, format_str }; + get_internals().direct_conversions[tindex].push_back(direct_converter); +} + +template struct npy_format_descriptor { + static_assert(is_pod_struct::value, "Attempt to use a non-POD or unimplemented POD type as a numpy dtype"); + + static PYBIND11_DESCR name() { return make_caster::name(); } + + static pybind11::dtype dtype() { + return reinterpret_borrow(dtype_ptr()); + } + + static std::string format() { + static auto format_str = get_numpy_internals().get_type_info(true)->format_str; + return format_str; + } + + static void register_dtype(const std::initializer_list& fields) { + register_structured_dtype(fields, typeid(typename std::remove_cv::type), + sizeof(T), &direct_converter); + } + +private: + static PyObject* dtype_ptr() { + static PyObject* ptr = get_numpy_internals().get_type_info(true)->dtype_ptr; + return ptr; + } + + static bool direct_converter(PyObject *obj, void*& value) { + auto& api = npy_api::get(); + if (!PyObject_TypeCheck(obj, api.PyVoidArrType_Type_)) + return false; + if (auto descr = reinterpret_steal(api.PyArray_DescrFromScalar_(obj))) { + if (api.PyArray_EquivTypes_(dtype_ptr(), descr.ptr())) { + value = ((PyVoidScalarObject_Proxy *) obj)->obval; + return true; + } + } + return false; + } +}; + +#ifdef __CLION_IDE__ // replace heavy macro with dummy code for the IDE (doesn't affect code) +# define PYBIND11_NUMPY_DTYPE(Type, ...) ((void)0) +# define PYBIND11_NUMPY_DTYPE_EX(Type, ...) ((void)0) +#else + +#define PYBIND11_FIELD_DESCRIPTOR_EX(T, Field, Name) \ + ::pybind11::detail::field_descriptor { \ + Name, offsetof(T, Field), sizeof(decltype(std::declval().Field)), \ + ::pybind11::format_descriptor().Field)>::format(), \ + ::pybind11::detail::npy_format_descriptor().Field)>::dtype() \ + } + +// Extract name, offset and format descriptor for a struct field +#define PYBIND11_FIELD_DESCRIPTOR(T, Field) PYBIND11_FIELD_DESCRIPTOR_EX(T, Field, #Field) + +// The main idea of this macro is borrowed from https://github.com/swansontec/map-macro +// (C) William Swanson, Paul Fultz +#define PYBIND11_EVAL0(...) __VA_ARGS__ +#define PYBIND11_EVAL1(...) PYBIND11_EVAL0 (PYBIND11_EVAL0 (PYBIND11_EVAL0 (__VA_ARGS__))) +#define PYBIND11_EVAL2(...) PYBIND11_EVAL1 (PYBIND11_EVAL1 (PYBIND11_EVAL1 (__VA_ARGS__))) +#define PYBIND11_EVAL3(...) PYBIND11_EVAL2 (PYBIND11_EVAL2 (PYBIND11_EVAL2 (__VA_ARGS__))) +#define PYBIND11_EVAL4(...) PYBIND11_EVAL3 (PYBIND11_EVAL3 (PYBIND11_EVAL3 (__VA_ARGS__))) +#define PYBIND11_EVAL(...) PYBIND11_EVAL4 (PYBIND11_EVAL4 (PYBIND11_EVAL4 (__VA_ARGS__))) +#define PYBIND11_MAP_END(...) +#define PYBIND11_MAP_OUT +#define PYBIND11_MAP_COMMA , +#define PYBIND11_MAP_GET_END() 0, PYBIND11_MAP_END +#define PYBIND11_MAP_NEXT0(test, next, ...) next PYBIND11_MAP_OUT +#define PYBIND11_MAP_NEXT1(test, next) PYBIND11_MAP_NEXT0 (test, next, 0) +#define PYBIND11_MAP_NEXT(test, next) PYBIND11_MAP_NEXT1 (PYBIND11_MAP_GET_END test, next) +#ifdef _MSC_VER // MSVC is not as eager to expand macros, hence this workaround +#define PYBIND11_MAP_LIST_NEXT1(test, next) \ + PYBIND11_EVAL0 (PYBIND11_MAP_NEXT0 (test, PYBIND11_MAP_COMMA next, 0)) +#else +#define PYBIND11_MAP_LIST_NEXT1(test, next) \ + PYBIND11_MAP_NEXT0 (test, PYBIND11_MAP_COMMA next, 0) +#endif +#define PYBIND11_MAP_LIST_NEXT(test, next) \ + PYBIND11_MAP_LIST_NEXT1 (PYBIND11_MAP_GET_END test, next) +#define PYBIND11_MAP_LIST0(f, t, x, peek, ...) \ + f(t, x) PYBIND11_MAP_LIST_NEXT (peek, PYBIND11_MAP_LIST1) (f, t, peek, __VA_ARGS__) +#define PYBIND11_MAP_LIST1(f, t, x, peek, ...) \ + f(t, x) PYBIND11_MAP_LIST_NEXT (peek, PYBIND11_MAP_LIST0) (f, t, peek, __VA_ARGS__) +// PYBIND11_MAP_LIST(f, t, a1, a2, ...) expands to f(t, a1), f(t, a2), ... +#define PYBIND11_MAP_LIST(f, t, ...) \ + PYBIND11_EVAL (PYBIND11_MAP_LIST1 (f, t, __VA_ARGS__, (), 0)) + +#define PYBIND11_NUMPY_DTYPE(Type, ...) \ + ::pybind11::detail::npy_format_descriptor::register_dtype \ + ({PYBIND11_MAP_LIST (PYBIND11_FIELD_DESCRIPTOR, Type, __VA_ARGS__)}) + +#ifdef _MSC_VER +#define PYBIND11_MAP2_LIST_NEXT1(test, next) \ + PYBIND11_EVAL0 (PYBIND11_MAP_NEXT0 (test, PYBIND11_MAP_COMMA next, 0)) +#else +#define PYBIND11_MAP2_LIST_NEXT1(test, next) \ + PYBIND11_MAP_NEXT0 (test, PYBIND11_MAP_COMMA next, 0) +#endif +#define PYBIND11_MAP2_LIST_NEXT(test, next) \ + PYBIND11_MAP2_LIST_NEXT1 (PYBIND11_MAP_GET_END test, next) +#define PYBIND11_MAP2_LIST0(f, t, x1, x2, peek, ...) \ + f(t, x1, x2) PYBIND11_MAP2_LIST_NEXT (peek, PYBIND11_MAP2_LIST1) (f, t, peek, __VA_ARGS__) +#define PYBIND11_MAP2_LIST1(f, t, x1, x2, peek, ...) \ + f(t, x1, x2) PYBIND11_MAP2_LIST_NEXT (peek, PYBIND11_MAP2_LIST0) (f, t, peek, __VA_ARGS__) +// PYBIND11_MAP2_LIST(f, t, a1, a2, ...) expands to f(t, a1, a2), f(t, a3, a4), ... +#define PYBIND11_MAP2_LIST(f, t, ...) \ + PYBIND11_EVAL (PYBIND11_MAP2_LIST1 (f, t, __VA_ARGS__, (), 0)) + +#define PYBIND11_NUMPY_DTYPE_EX(Type, ...) \ + ::pybind11::detail::npy_format_descriptor::register_dtype \ + ({PYBIND11_MAP2_LIST (PYBIND11_FIELD_DESCRIPTOR_EX, Type, __VA_ARGS__)}) + +#endif // __CLION_IDE__ + +template +using array_iterator = typename std::add_pointer::type; + +template +array_iterator array_begin(const buffer_info& buffer) { + return array_iterator(reinterpret_cast(buffer.ptr)); +} + +template +array_iterator array_end(const buffer_info& buffer) { + return array_iterator(reinterpret_cast(buffer.ptr) + buffer.size); +} + +class common_iterator { +public: + using container_type = std::vector; + using value_type = container_type::value_type; + using size_type = container_type::size_type; + + common_iterator() : p_ptr(0), m_strides() {} + + common_iterator(void* ptr, const container_type& strides, const container_type& shape) + : p_ptr(reinterpret_cast(ptr)), m_strides(strides.size()) { + m_strides.back() = static_cast(strides.back()); + for (size_type i = m_strides.size() - 1; i != 0; --i) { + size_type j = i - 1; + value_type s = static_cast(shape[i]); + m_strides[j] = strides[j] + m_strides[i] - strides[i] * s; + } + } + + void increment(size_type dim) { + p_ptr += m_strides[dim]; + } + + void* data() const { + return p_ptr; + } + +private: + char* p_ptr; + container_type m_strides; +}; + +template class multi_array_iterator { +public: + using container_type = std::vector; + + multi_array_iterator(const std::array &buffers, + const container_type &shape) + : m_shape(shape.size()), m_index(shape.size(), 0), + m_common_iterator() { + + // Manual copy to avoid conversion warning if using std::copy + for (size_t i = 0; i < shape.size(); ++i) + m_shape[i] = shape[i]; + + container_type strides(shape.size()); + for (size_t i = 0; i < N; ++i) + init_common_iterator(buffers[i], shape, m_common_iterator[i], strides); + } + + multi_array_iterator& operator++() { + for (size_t j = m_index.size(); j != 0; --j) { + size_t i = j - 1; + if (++m_index[i] != m_shape[i]) { + increment_common_iterator(i); + break; + } else { + m_index[i] = 0; + } + } + return *this; + } + + template T* data() const { + return reinterpret_cast(m_common_iterator[K].data()); + } + +private: + + using common_iter = common_iterator; + + void init_common_iterator(const buffer_info &buffer, + const container_type &shape, + common_iter &iterator, + container_type &strides) { + auto buffer_shape_iter = buffer.shape.rbegin(); + auto buffer_strides_iter = buffer.strides.rbegin(); + auto shape_iter = shape.rbegin(); + auto strides_iter = strides.rbegin(); + + while (buffer_shape_iter != buffer.shape.rend()) { + if (*shape_iter == *buffer_shape_iter) + *strides_iter = *buffer_strides_iter; + else + *strides_iter = 0; + + ++buffer_shape_iter; + ++buffer_strides_iter; + ++shape_iter; + ++strides_iter; + } + + std::fill(strides_iter, strides.rend(), 0); + iterator = common_iter(buffer.ptr, strides, shape); + } + + void increment_common_iterator(size_t dim) { + for (auto &iter : m_common_iterator) + iter.increment(dim); + } + + container_type m_shape; + container_type m_index; + std::array m_common_iterator; +}; + +enum class broadcast_trivial { non_trivial, c_trivial, f_trivial }; + +// Populates the shape and number of dimensions for the set of buffers. Returns a broadcast_trivial +// enum value indicating whether the broadcast is "trivial"--that is, has each buffer being either a +// singleton or a full-size, C-contiguous (`c_trivial`) or Fortran-contiguous (`f_trivial`) storage +// buffer; returns `non_trivial` otherwise. +template +broadcast_trivial broadcast(const std::array &buffers, ssize_t &ndim, std::vector &shape) { + ndim = std::accumulate(buffers.begin(), buffers.end(), ssize_t(0), [](ssize_t res, const buffer_info &buf) { + return std::max(res, buf.ndim); + }); + + shape.clear(); + shape.resize((size_t) ndim, 1); + + // Figure out the output size, and make sure all input arrays conform (i.e. are either size 1 or + // the full size). + for (size_t i = 0; i < N; ++i) { + auto res_iter = shape.rbegin(); + auto end = buffers[i].shape.rend(); + for (auto shape_iter = buffers[i].shape.rbegin(); shape_iter != end; ++shape_iter, ++res_iter) { + const auto &dim_size_in = *shape_iter; + auto &dim_size_out = *res_iter; + + // Each input dimension can either be 1 or `n`, but `n` values must match across buffers + if (dim_size_out == 1) + dim_size_out = dim_size_in; + else if (dim_size_in != 1 && dim_size_in != dim_size_out) + pybind11_fail("pybind11::vectorize: incompatible size/dimension of inputs!"); + } + } + + bool trivial_broadcast_c = true; + bool trivial_broadcast_f = true; + for (size_t i = 0; i < N && (trivial_broadcast_c || trivial_broadcast_f); ++i) { + if (buffers[i].size == 1) + continue; + + // Require the same number of dimensions: + if (buffers[i].ndim != ndim) + return broadcast_trivial::non_trivial; + + // Require all dimensions be full-size: + if (!std::equal(buffers[i].shape.cbegin(), buffers[i].shape.cend(), shape.cbegin())) + return broadcast_trivial::non_trivial; + + // Check for C contiguity (but only if previous inputs were also C contiguous) + if (trivial_broadcast_c) { + ssize_t expect_stride = buffers[i].itemsize; + auto end = buffers[i].shape.crend(); + for (auto shape_iter = buffers[i].shape.crbegin(), stride_iter = buffers[i].strides.crbegin(); + trivial_broadcast_c && shape_iter != end; ++shape_iter, ++stride_iter) { + if (expect_stride == *stride_iter) + expect_stride *= *shape_iter; + else + trivial_broadcast_c = false; + } + } + + // Check for Fortran contiguity (if previous inputs were also F contiguous) + if (trivial_broadcast_f) { + ssize_t expect_stride = buffers[i].itemsize; + auto end = buffers[i].shape.cend(); + for (auto shape_iter = buffers[i].shape.cbegin(), stride_iter = buffers[i].strides.cbegin(); + trivial_broadcast_f && shape_iter != end; ++shape_iter, ++stride_iter) { + if (expect_stride == *stride_iter) + expect_stride *= *shape_iter; + else + trivial_broadcast_f = false; + } + } + } + + return + trivial_broadcast_c ? broadcast_trivial::c_trivial : + trivial_broadcast_f ? broadcast_trivial::f_trivial : + broadcast_trivial::non_trivial; +} + +template +struct vectorize_arg { + static_assert(!std::is_rvalue_reference::value, "Functions with rvalue reference arguments cannot be vectorized"); + // The wrapped function gets called with this type: + using call_type = remove_reference_t; + // Is this a vectorized argument? + static constexpr bool vectorize = + satisfies_any_of::value && + satisfies_none_of::value && + (!std::is_reference::value || + (std::is_lvalue_reference::value && std::is_const::value)); + // Accept this type: an array for vectorized types, otherwise the type as-is: + using type = conditional_t, array::forcecast>, T>; +}; + +template +struct vectorize_helper { +private: + static constexpr size_t N = sizeof...(Args); + static constexpr size_t NVectorized = constexpr_sum(vectorize_arg::vectorize...); + static_assert(NVectorized >= 1, + "pybind11::vectorize(...) requires a function with at least one vectorizable argument"); + +public: + template + explicit vectorize_helper(T &&f) : f(std::forward(f)) { } + + object operator()(typename vectorize_arg::type... args) { + return run(args..., + make_index_sequence(), + select_indices::vectorize...>(), + make_index_sequence()); + } + +private: + remove_reference_t f; + + template using param_n_t = typename pack_element::call_type...>::type; + + // Runs a vectorized function given arguments tuple and three index sequences: + // - Index is the full set of 0 ... (N-1) argument indices; + // - VIndex is the subset of argument indices with vectorized parameters, letting us access + // vectorized arguments (anything not in this sequence is passed through) + // - BIndex is a incremental sequence (beginning at 0) of the same size as VIndex, so that + // we can store vectorized buffer_infos in an array (argument VIndex has its buffer at + // index BIndex in the array). + template object run( + typename vectorize_arg::type &...args, + index_sequence i_seq, index_sequence vi_seq, index_sequence bi_seq) { + + // Pointers to values the function was called with; the vectorized ones set here will start + // out as array_t pointers, but they will be changed them to T pointers before we make + // call the wrapped function. Non-vectorized pointers are left as-is. + std::array params{{ &args... }}; + + // The array of `buffer_info`s of vectorized arguments: + std::array buffers{{ reinterpret_cast(params[VIndex])->request()... }}; + + /* Determine dimensions parameters of output array */ + ssize_t nd = 0; + std::vector shape(0); + auto trivial = broadcast(buffers, nd, shape); + size_t ndim = (size_t) nd; + + size_t size = std::accumulate(shape.begin(), shape.end(), (size_t) 1, std::multiplies()); + + // If all arguments are 0-dimension arrays (i.e. single values) return a plain value (i.e. + // not wrapped in an array). + if (size == 1 && ndim == 0) { + PYBIND11_EXPAND_SIDE_EFFECTS(params[VIndex] = buffers[BIndex].ptr); + return cast(f(*reinterpret_cast *>(params[Index])...)); + } + + array_t result; + if (trivial == broadcast_trivial::f_trivial) result = array_t(shape); + else result = array_t(shape); + + if (size == 0) return result; + + /* Call the function */ + if (trivial == broadcast_trivial::non_trivial) + apply_broadcast(buffers, params, result, i_seq, vi_seq, bi_seq); + else + apply_trivial(buffers, params, result.mutable_data(), size, i_seq, vi_seq, bi_seq); + + return result; + } + + template + void apply_trivial(std::array &buffers, + std::array ¶ms, + Return *out, + size_t size, + index_sequence, index_sequence, index_sequence) { + + // Initialize an array of mutable byte references and sizes with references set to the + // appropriate pointer in `params`; as we iterate, we'll increment each pointer by its size + // (except for singletons, which get an increment of 0). + std::array, NVectorized> vecparams{{ + std::pair( + reinterpret_cast(params[VIndex] = buffers[BIndex].ptr), + buffers[BIndex].size == 1 ? 0 : sizeof(param_n_t) + )... + }}; + + for (size_t i = 0; i < size; ++i) { + out[i] = f(*reinterpret_cast *>(params[Index])...); + for (auto &x : vecparams) x.first += x.second; + } + } + + template + void apply_broadcast(std::array &buffers, + std::array ¶ms, + array_t &output_array, + index_sequence, index_sequence, index_sequence) { + + buffer_info output = output_array.request(); + multi_array_iterator input_iter(buffers, output.shape); + + for (array_iterator iter = array_begin(output), end = array_end(output); + iter != end; + ++iter, ++input_iter) { + PYBIND11_EXPAND_SIDE_EFFECTS(( + params[VIndex] = input_iter.template data() + )); + *iter = f(*reinterpret_cast *>(std::get(params))...); + } + } +}; + +template +vectorize_helper +vectorize_extractor(const Func &f, Return (*) (Args ...)) { + return detail::vectorize_helper(f); +} + +template struct handle_type_name> { + static PYBIND11_DESCR name() { + return _("numpy.ndarray[") + npy_format_descriptor::name() + _("]"); + } +}; + +NAMESPACE_END(detail) + +// Vanilla pointer vectorizer: +template +detail::vectorize_helper +vectorize(Return (*f) (Args ...)) { + return detail::vectorize_helper(f); +} + +// lambda vectorizer: +template ::operator())>::type> +auto vectorize(Func &&f) -> decltype( + detail::vectorize_extractor(std::forward(f), (FuncType *) nullptr)) { + return detail::vectorize_extractor(std::forward(f), (FuncType *) nullptr); +} + +// Vectorize a class method (non-const): +template ())), Return, Class *, Args...>> +Helper vectorize(Return (Class::*f)(Args...)) { + return Helper(std::mem_fn(f)); +} + +// Vectorize a class method (non-const): +template ())), Return, const Class *, Args...>> +Helper vectorize(Return (Class::*f)(Args...) const) { + return Helper(std::mem_fn(f)); +} + +NAMESPACE_END(pybind11) + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/operators.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/operators.h" new file mode 100644 index 0000000..562987b --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/operators.h" @@ -0,0 +1,167 @@ +/* + pybind11/operator.h: Metatemplates for operator overloading + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" + +#if defined(__clang__) && !defined(__INTEL_COMPILER) +# pragma clang diagnostic ignored "-Wunsequenced" // multiple unsequenced modifications to 'self' (when using def(py::self OP Type())) +#elif defined(_MSC_VER) +# pragma warning(push) +# pragma warning(disable: 4127) // warning C4127: Conditional expression is constant +#endif + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +/// Enumeration with all supported operator types +enum op_id : int { + op_add, op_sub, op_mul, op_div, op_mod, op_divmod, op_pow, op_lshift, + op_rshift, op_and, op_xor, op_or, op_neg, op_pos, op_abs, op_invert, + op_int, op_long, op_float, op_str, op_cmp, op_gt, op_ge, op_lt, op_le, + op_eq, op_ne, op_iadd, op_isub, op_imul, op_idiv, op_imod, op_ilshift, + op_irshift, op_iand, op_ixor, op_ior, op_complex, op_bool, op_nonzero, + op_repr, op_truediv, op_itruediv +}; + +enum op_type : int { + op_l, /* base type on left */ + op_r, /* base type on right */ + op_u /* unary operator */ +}; + +struct self_t { }; +static const self_t self = self_t(); + +/// Type for an unused type slot +struct undefined_t { }; + +/// Don't warn about an unused variable +inline self_t __self() { return self; } + +/// base template of operator implementations +template struct op_impl { }; + +/// Operator implementation generator +template struct op_ { + template void execute(Class &cl, const Extra&... extra) const { + using Base = typename Class::type; + using L_type = conditional_t::value, Base, L>; + using R_type = conditional_t::value, Base, R>; + using op = op_impl; + cl.def(op::name(), &op::execute, is_operator(), extra...); + #if PY_MAJOR_VERSION < 3 + if (id == op_truediv || id == op_itruediv) + cl.def(id == op_itruediv ? "__idiv__" : ot == op_l ? "__div__" : "__rdiv__", + &op::execute, is_operator(), extra...); + #endif + } + template void execute_cast(Class &cl, const Extra&... extra) const { + using Base = typename Class::type; + using L_type = conditional_t::value, Base, L>; + using R_type = conditional_t::value, Base, R>; + using op = op_impl; + cl.def(op::name(), &op::execute_cast, is_operator(), extra...); + #if PY_MAJOR_VERSION < 3 + if (id == op_truediv || id == op_itruediv) + cl.def(id == op_itruediv ? "__idiv__" : ot == op_l ? "__div__" : "__rdiv__", + &op::execute, is_operator(), extra...); + #endif + } +}; + +#define PYBIND11_BINARY_OPERATOR(id, rid, op, expr) \ +template struct op_impl { \ + static char const* name() { return "__" #id "__"; } \ + static auto execute(const L &l, const R &r) -> decltype(expr) { return (expr); } \ + static B execute_cast(const L &l, const R &r) { return B(expr); } \ +}; \ +template struct op_impl { \ + static char const* name() { return "__" #rid "__"; } \ + static auto execute(const R &r, const L &l) -> decltype(expr) { return (expr); } \ + static B execute_cast(const R &r, const L &l) { return B(expr); } \ +}; \ +inline op_ op(const self_t &, const self_t &) { \ + return op_(); \ +} \ +template op_ op(const self_t &, const T &) { \ + return op_(); \ +} \ +template op_ op(const T &, const self_t &) { \ + return op_(); \ +} + +#define PYBIND11_INPLACE_OPERATOR(id, op, expr) \ +template struct op_impl { \ + static char const* name() { return "__" #id "__"; } \ + static auto execute(L &l, const R &r) -> decltype(expr) { return expr; } \ + static B execute_cast(L &l, const R &r) { return B(expr); } \ +}; \ +template op_ op(const self_t &, const T &) { \ + return op_(); \ +} + +#define PYBIND11_UNARY_OPERATOR(id, op, expr) \ +template struct op_impl { \ + static char const* name() { return "__" #id "__"; } \ + static auto execute(const L &l) -> decltype(expr) { return expr; } \ + static B execute_cast(const L &l) { return B(expr); } \ +}; \ +inline op_ op(const self_t &) { \ + return op_(); \ +} + +PYBIND11_BINARY_OPERATOR(sub, rsub, operator-, l - r) +PYBIND11_BINARY_OPERATOR(add, radd, operator+, l + r) +PYBIND11_BINARY_OPERATOR(mul, rmul, operator*, l * r) +PYBIND11_BINARY_OPERATOR(truediv, rtruediv, operator/, l / r) +PYBIND11_BINARY_OPERATOR(mod, rmod, operator%, l % r) +PYBIND11_BINARY_OPERATOR(lshift, rlshift, operator<<, l << r) +PYBIND11_BINARY_OPERATOR(rshift, rrshift, operator>>, l >> r) +PYBIND11_BINARY_OPERATOR(and, rand, operator&, l & r) +PYBIND11_BINARY_OPERATOR(xor, rxor, operator^, l ^ r) +PYBIND11_BINARY_OPERATOR(eq, eq, operator==, l == r) +PYBIND11_BINARY_OPERATOR(ne, ne, operator!=, l != r) +PYBIND11_BINARY_OPERATOR(or, ror, operator|, l | r) +PYBIND11_BINARY_OPERATOR(gt, lt, operator>, l > r) +PYBIND11_BINARY_OPERATOR(ge, le, operator>=, l >= r) +PYBIND11_BINARY_OPERATOR(lt, gt, operator<, l < r) +PYBIND11_BINARY_OPERATOR(le, ge, operator<=, l <= r) +//PYBIND11_BINARY_OPERATOR(pow, rpow, pow, std::pow(l, r)) +PYBIND11_INPLACE_OPERATOR(iadd, operator+=, l += r) +PYBIND11_INPLACE_OPERATOR(isub, operator-=, l -= r) +PYBIND11_INPLACE_OPERATOR(imul, operator*=, l *= r) +PYBIND11_INPLACE_OPERATOR(itruediv, operator/=, l /= r) +PYBIND11_INPLACE_OPERATOR(imod, operator%=, l %= r) +PYBIND11_INPLACE_OPERATOR(ilshift, operator<<=, l <<= r) +PYBIND11_INPLACE_OPERATOR(irshift, operator>>=, l >>= r) +PYBIND11_INPLACE_OPERATOR(iand, operator&=, l &= r) +PYBIND11_INPLACE_OPERATOR(ixor, operator^=, l ^= r) +PYBIND11_INPLACE_OPERATOR(ior, operator|=, l |= r) +PYBIND11_UNARY_OPERATOR(neg, operator-, -l) +PYBIND11_UNARY_OPERATOR(pos, operator+, +l) +PYBIND11_UNARY_OPERATOR(abs, abs, std::abs(l)) +PYBIND11_UNARY_OPERATOR(invert, operator~, (~l)) +PYBIND11_UNARY_OPERATOR(bool, operator!, !!l) +PYBIND11_UNARY_OPERATOR(int, int_, (int) l) +PYBIND11_UNARY_OPERATOR(float, float_, (double) l) + +#undef PYBIND11_BINARY_OPERATOR +#undef PYBIND11_INPLACE_OPERATOR +#undef PYBIND11_UNARY_OPERATOR +NAMESPACE_END(detail) + +using detail::self; + +NAMESPACE_END(pybind11) + +#if defined(_MSC_VER) +# pragma warning(pop) +#endif diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/options.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/options.h" new file mode 100644 index 0000000..3105551 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/options.h" @@ -0,0 +1,65 @@ +/* + pybind11/options.h: global settings that are configurable at runtime. + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "common.h" + +NAMESPACE_BEGIN(pybind11) + +class options { +public: + + // Default RAII constructor, which leaves settings as they currently are. + options() : previous_state(global_state()) {} + + // Class is non-copyable. + options(const options&) = delete; + options& operator=(const options&) = delete; + + // Destructor, which restores settings that were in effect before. + ~options() { + global_state() = previous_state; + } + + // Setter methods (affect the global state): + + options& disable_user_defined_docstrings() & { global_state().show_user_defined_docstrings = false; return *this; } + + options& enable_user_defined_docstrings() & { global_state().show_user_defined_docstrings = true; return *this; } + + options& disable_function_signatures() & { global_state().show_function_signatures = false; return *this; } + + options& enable_function_signatures() & { global_state().show_function_signatures = true; return *this; } + + // Getter methods (return the global state): + + static bool show_user_defined_docstrings() { return global_state().show_user_defined_docstrings; } + + static bool show_function_signatures() { return global_state().show_function_signatures; } + + // This type is not meant to be allocated on the heap. + void* operator new(size_t) = delete; + +private: + + struct state { + bool show_user_defined_docstrings = true; //< Include user-supplied texts in docstrings. + bool show_function_signatures = true; //< Include auto-generated function signatures in docstrings. + }; + + static state &global_state() { + static state instance; + return instance; + } + + state previous_state; +}; + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pybind11.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pybind11.h" new file mode 100644 index 0000000..d3f34ee --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pybind11.h" @@ -0,0 +1,1869 @@ +/* + pybind11/pybind11.h: Main header file of the C++11 python + binding generator library + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#if defined(_MSC_VER) +# pragma warning(push) +# pragma warning(disable: 4100) // warning C4100: Unreferenced formal parameter +# pragma warning(disable: 4127) // warning C4127: Conditional expression is constant +# pragma warning(disable: 4512) // warning C4512: Assignment operator was implicitly defined as deleted +# pragma warning(disable: 4800) // warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) +# pragma warning(disable: 4996) // warning C4996: The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name +# pragma warning(disable: 4702) // warning C4702: unreachable code +# pragma warning(disable: 4522) // warning C4522: multiple assignment operators specified +#elif defined(__INTEL_COMPILER) +# pragma warning(push) +# pragma warning(disable: 68) // integer conversion resulted in a change of sign +# pragma warning(disable: 186) // pointless comparison of unsigned integer with zero +# pragma warning(disable: 878) // incompatible exception specifications +# pragma warning(disable: 1334) // the "template" keyword used for syntactic disambiguation may only be used within a template +# pragma warning(disable: 1682) // implicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem) +# pragma warning(disable: 1875) // offsetof applied to non-POD (Plain Old Data) types is nonstandard +# pragma warning(disable: 2196) // warning #2196: routine is both "inline" and "noinline" +#elif defined(__GNUG__) && !defined(__clang__) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wunused-but-set-parameter" +# pragma GCC diagnostic ignored "-Wunused-but-set-variable" +# pragma GCC diagnostic ignored "-Wmissing-field-initializers" +# pragma GCC diagnostic ignored "-Wstrict-aliasing" +# pragma GCC diagnostic ignored "-Wattributes" +# if __GNUC__ >= 7 +# pragma GCC diagnostic ignored "-Wnoexcept-type" +# endif +#endif + +#include "attr.h" +#include "options.h" +#include "class_support.h" + +NAMESPACE_BEGIN(pybind11) + +/// Wraps an arbitrary C++ function/method/lambda function/.. into a callable Python object +class cpp_function : public function { +public: + cpp_function() { } + + /// Construct a cpp_function from a vanilla function pointer + template + cpp_function(Return (*f)(Args...), const Extra&... extra) { + initialize(f, f, extra...); + } + + /// Construct a cpp_function from a lambda function (possibly with internal state) + template , + std::is_function, std::is_pointer, std::is_member_pointer + >::value> + > + cpp_function(Func &&f, const Extra&... extra) { + using FuncType = typename detail::remove_class::operator())>::type; + initialize(std::forward(f), + (FuncType *) nullptr, extra...); + } + + /// Construct a cpp_function from a class method (non-const) + template + cpp_function(Return (Class::*f)(Arg...), const Extra&... extra) { + initialize([f](Class *c, Arg... args) -> Return { return (c->*f)(args...); }, + (Return (*) (Class *, Arg...)) nullptr, extra...); + } + + /// Construct a cpp_function from a class method (const) + template + cpp_function(Return (Class::*f)(Arg...) const, const Extra&... extra) { + initialize([f](const Class *c, Arg... args) -> Return { return (c->*f)(args...); }, + (Return (*)(const Class *, Arg ...)) nullptr, extra...); + } + + /// Return the function name + object name() const { return attr("__name__"); } + +protected: + /// Space optimization: don't inline this frequently instantiated fragment + PYBIND11_NOINLINE detail::function_record *make_function_record() { + return new detail::function_record(); + } + + /// Special internal constructor for functors, lambda functions, etc. + template + void initialize(Func &&f, Return (*)(Args...), const Extra&... extra) { + + struct capture { detail::remove_reference_t f; }; + + /* Store the function including any extra state it might have (e.g. a lambda capture object) */ + auto rec = make_function_record(); + + /* Store the capture object directly in the function record if there is enough space */ + if (sizeof(capture) <= sizeof(rec->data)) { + /* Without these pragmas, GCC warns that there might not be + enough space to use the placement new operator. However, the + 'if' statement above ensures that this is the case. */ +#if defined(__GNUG__) && !defined(__clang__) && __GNUC__ >= 6 +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wplacement-new" +#endif + new ((capture *) &rec->data) capture { std::forward(f) }; +#if defined(__GNUG__) && !defined(__clang__) && __GNUC__ >= 6 +# pragma GCC diagnostic pop +#endif + if (!std::is_trivially_destructible::value) + rec->free_data = [](detail::function_record *r) { ((capture *) &r->data)->~capture(); }; + } else { + rec->data[0] = new capture { std::forward(f) }; + rec->free_data = [](detail::function_record *r) { delete ((capture *) r->data[0]); }; + } + + /* Type casters for the function arguments and return value */ + using cast_in = detail::argument_loader; + using cast_out = detail::make_caster< + detail::conditional_t::value, detail::void_type, Return> + >; + + static_assert(detail::expected_num_args(sizeof...(Args), cast_in::has_args, cast_in::has_kwargs), + "The number of argument annotations does not match the number of function arguments"); + + /* Dispatch code which converts function arguments and performs the actual function call */ + rec->impl = [](detail::function_call &call) -> handle { + cast_in args_converter; + + /* Try to cast the function arguments into the C++ domain */ + if (!args_converter.load_args(call)) + return PYBIND11_TRY_NEXT_OVERLOAD; + + /* Invoke call policy pre-call hook */ + detail::process_attributes::precall(call); + + /* Get a pointer to the capture object */ + auto data = (sizeof(capture) <= sizeof(call.func.data) + ? &call.func.data : call.func.data[0]); + capture *cap = const_cast(reinterpret_cast(data)); + + /* Override policy for rvalues -- usually to enforce rvp::move on an rvalue */ + const auto policy = detail::return_value_policy_override::policy(call.func.policy); + + /* Function scope guard -- defaults to the compile-to-nothing `void_type` */ + using Guard = detail::extract_guard_t; + + /* Perform the function call */ + handle result = cast_out::cast( + std::move(args_converter).template call(cap->f), policy, call.parent); + + /* Invoke call policy post-call hook */ + detail::process_attributes::postcall(call, result); + + return result; + }; + + /* Process any user-provided function attributes */ + detail::process_attributes::init(extra..., rec); + + /* Generate a readable signature describing the function's arguments and return value types */ + using detail::descr; using detail::_; + PYBIND11_DESCR signature = _("(") + cast_in::arg_names() + _(") -> ") + cast_out::name(); + + /* Register the function with Python from generic (non-templated) code */ + initialize_generic(rec, signature.text(), signature.types(), sizeof...(Args)); + + if (cast_in::has_args) rec->has_args = true; + if (cast_in::has_kwargs) rec->has_kwargs = true; + + /* Stash some additional information used by an important optimization in 'functional.h' */ + using FunctionType = Return (*)(Args...); + constexpr bool is_function_ptr = + std::is_convertible::value && + sizeof(capture) == sizeof(void *); + if (is_function_ptr) { + rec->is_stateless = true; + rec->data[1] = const_cast(reinterpret_cast(&typeid(FunctionType))); + } + } + + /// Register a function call with Python (generic non-templated code goes here) + void initialize_generic(detail::function_record *rec, const char *text, + const std::type_info *const *types, size_t args) { + + /* Create copies of all referenced C-style strings */ + rec->name = strdup(rec->name ? rec->name : ""); + if (rec->doc) rec->doc = strdup(rec->doc); + for (auto &a: rec->args) { + if (a.name) + a.name = strdup(a.name); + if (a.descr) + a.descr = strdup(a.descr); + else if (a.value) + a.descr = strdup(a.value.attr("__repr__")().cast().c_str()); + } + + /* Generate a proper function signature */ + std::string signature; + size_t type_depth = 0, char_index = 0, type_index = 0, arg_index = 0; + while (true) { + char c = text[char_index++]; + if (c == '\0') + break; + + if (c == '{') { + // Write arg name for everything except *args, **kwargs and return type. + if (type_depth == 0 && text[char_index] != '*' && arg_index < args) { + if (!rec->args.empty() && rec->args[arg_index].name) { + signature += rec->args[arg_index].name; + } else if (arg_index == 0 && rec->is_method) { + signature += "self"; + } else { + signature += "arg" + std::to_string(arg_index - (rec->is_method ? 1 : 0)); + } + signature += ": "; + } + ++type_depth; + } else if (c == '}') { + --type_depth; + if (type_depth == 0) { + if (arg_index < rec->args.size() && rec->args[arg_index].descr) { + signature += "="; + signature += rec->args[arg_index].descr; + } + arg_index++; + } + } else if (c == '%') { + const std::type_info *t = types[type_index++]; + if (!t) + pybind11_fail("Internal error while parsing type signature (1)"); + if (auto tinfo = detail::get_type_info(*t)) { +#if defined(PYPY_VERSION) + signature += handle((PyObject *) tinfo->type) + .attr("__module__") + .cast() + "."; +#endif + signature += tinfo->type->tp_name; + } else { + std::string tname(t->name()); + detail::clean_type_id(tname); + signature += tname; + } + } else { + signature += c; + } + } + if (type_depth != 0 || types[type_index] != nullptr) + pybind11_fail("Internal error while parsing type signature (2)"); + + #if !defined(PYBIND11_CONSTEXPR_DESCR) + delete[] types; + delete[] text; + #endif + +#if PY_MAJOR_VERSION < 3 + if (strcmp(rec->name, "__next__") == 0) { + std::free(rec->name); + rec->name = strdup("next"); + } else if (strcmp(rec->name, "__bool__") == 0) { + std::free(rec->name); + rec->name = strdup("__nonzero__"); + } +#endif + rec->signature = strdup(signature.c_str()); + rec->args.shrink_to_fit(); + rec->is_constructor = !strcmp(rec->name, "__init__") || !strcmp(rec->name, "__setstate__"); + rec->nargs = (std::uint16_t) args; + + if (rec->sibling && PYBIND11_INSTANCE_METHOD_CHECK(rec->sibling.ptr())) + rec->sibling = PYBIND11_INSTANCE_METHOD_GET_FUNCTION(rec->sibling.ptr()); + + detail::function_record *chain = nullptr, *chain_start = rec; + if (rec->sibling) { + if (PyCFunction_Check(rec->sibling.ptr())) { + auto rec_capsule = reinterpret_borrow(PyCFunction_GET_SELF(rec->sibling.ptr())); + chain = (detail::function_record *) rec_capsule; + /* Never append a method to an overload chain of a parent class; + instead, hide the parent's overloads in this case */ + if (!chain->scope.is(rec->scope)) + chain = nullptr; + } + // Don't trigger for things like the default __init__, which are wrapper_descriptors that we are intentionally replacing + else if (!rec->sibling.is_none() && rec->name[0] != '_') + pybind11_fail("Cannot overload existing non-function object \"" + std::string(rec->name) + + "\" with a function of the same name"); + } + + if (!chain) { + /* No existing overload was found, create a new function object */ + rec->def = new PyMethodDef(); + std::memset(rec->def, 0, sizeof(PyMethodDef)); + rec->def->ml_name = rec->name; + rec->def->ml_meth = reinterpret_cast(*dispatcher); + rec->def->ml_flags = METH_VARARGS | METH_KEYWORDS; + + capsule rec_capsule(rec, [](void *ptr) { + destruct((detail::function_record *) ptr); + }); + + object scope_module; + if (rec->scope) { + if (hasattr(rec->scope, "__module__")) { + scope_module = rec->scope.attr("__module__"); + } else if (hasattr(rec->scope, "__name__")) { + scope_module = rec->scope.attr("__name__"); + } + } + + m_ptr = PyCFunction_NewEx(rec->def, rec_capsule.ptr(), scope_module.ptr()); + if (!m_ptr) + pybind11_fail("cpp_function::cpp_function(): Could not allocate function object"); + } else { + /* Append at the end of the overload chain */ + m_ptr = rec->sibling.ptr(); + inc_ref(); + chain_start = chain; + if (chain->is_method != rec->is_method) + pybind11_fail("overloading a method with both static and instance methods is not supported; " + #if defined(NDEBUG) + "compile in debug mode for more details" + #else + "error while attempting to bind " + std::string(rec->is_method ? "instance" : "static") + " method " + + std::string(pybind11::str(rec->scope.attr("__name__"))) + "." + std::string(rec->name) + signature + #endif + ); + while (chain->next) + chain = chain->next; + chain->next = rec; + } + + std::string signatures; + int index = 0; + /* Create a nice pydoc rec including all signatures and + docstrings of the functions in the overload chain */ + if (chain && options::show_function_signatures()) { + // First a generic signature + signatures += rec->name; + signatures += "(*args, **kwargs)\n"; + signatures += "Overloaded function.\n\n"; + } + // Then specific overload signatures + bool first_user_def = true; + for (auto it = chain_start; it != nullptr; it = it->next) { + if (options::show_function_signatures()) { + if (index > 0) signatures += "\n"; + if (chain) + signatures += std::to_string(++index) + ". "; + signatures += rec->name; + signatures += it->signature; + signatures += "\n"; + } + if (it->doc && strlen(it->doc) > 0 && options::show_user_defined_docstrings()) { + // If we're appending another docstring, and aren't printing function signatures, we + // need to append a newline first: + if (!options::show_function_signatures()) { + if (first_user_def) first_user_def = false; + else signatures += "\n"; + } + if (options::show_function_signatures()) signatures += "\n"; + signatures += it->doc; + if (options::show_function_signatures()) signatures += "\n"; + } + } + + /* Install docstring */ + PyCFunctionObject *func = (PyCFunctionObject *) m_ptr; + if (func->m_ml->ml_doc) + std::free(const_cast(func->m_ml->ml_doc)); + func->m_ml->ml_doc = strdup(signatures.c_str()); + + if (rec->is_method) { + m_ptr = PYBIND11_INSTANCE_METHOD_NEW(m_ptr, rec->scope.ptr()); + if (!m_ptr) + pybind11_fail("cpp_function::cpp_function(): Could not allocate instance method object"); + Py_DECREF(func); + } + } + + /// When a cpp_function is GCed, release any memory allocated by pybind11 + static void destruct(detail::function_record *rec) { + while (rec) { + detail::function_record *next = rec->next; + if (rec->free_data) + rec->free_data(rec); + std::free((char *) rec->name); + std::free((char *) rec->doc); + std::free((char *) rec->signature); + for (auto &arg: rec->args) { + std::free(const_cast(arg.name)); + std::free(const_cast(arg.descr)); + arg.value.dec_ref(); + } + if (rec->def) { + std::free(const_cast(rec->def->ml_doc)); + delete rec->def; + } + delete rec; + rec = next; + } + } + + /// Main dispatch logic for calls to functions bound using pybind11 + static PyObject *dispatcher(PyObject *self, PyObject *args_in, PyObject *kwargs_in) { + using namespace detail; + + /* Iterator over the list of potentially admissible overloads */ + function_record *overloads = (function_record *) PyCapsule_GetPointer(self, nullptr), + *it = overloads; + + /* Need to know how many arguments + keyword arguments there are to pick the right overload */ + const size_t n_args_in = (size_t) PyTuple_GET_SIZE(args_in); + + handle parent = n_args_in > 0 ? PyTuple_GET_ITEM(args_in, 0) : nullptr, + result = PYBIND11_TRY_NEXT_OVERLOAD; + + try { + // We do this in two passes: in the first pass, we load arguments with `convert=false`; + // in the second, we allow conversion (except for arguments with an explicit + // py::arg().noconvert()). This lets us prefer calls without conversion, with + // conversion as a fallback. + std::vector second_pass; + + // However, if there are no overloads, we can just skip the no-convert pass entirely + const bool overloaded = it != nullptr && it->next != nullptr; + + for (; it != nullptr; it = it->next) { + + /* For each overload: + 1. Copy all positional arguments we were given, also checking to make sure that + named positional arguments weren't *also* specified via kwarg. + 2. If we weren't given enough, try to make up the omitted ones by checking + whether they were provided by a kwarg matching the `py::arg("name")` name. If + so, use it (and remove it from kwargs; if not, see if the function binding + provided a default that we can use. + 3. Ensure that either all keyword arguments were "consumed", or that the function + takes a kwargs argument to accept unconsumed kwargs. + 4. Any positional arguments still left get put into a tuple (for args), and any + leftover kwargs get put into a dict. + 5. Pack everything into a vector; if we have py::args or py::kwargs, they are an + extra tuple or dict at the end of the positional arguments. + 6. Call the function call dispatcher (function_record::impl) + + If one of these fail, move on to the next overload and keep trying until we get a + result other than PYBIND11_TRY_NEXT_OVERLOAD. + */ + + function_record &func = *it; + size_t pos_args = func.nargs; // Number of positional arguments that we need + if (func.has_args) --pos_args; // (but don't count py::args + if (func.has_kwargs) --pos_args; // or py::kwargs) + + if (!func.has_args && n_args_in > pos_args) + continue; // Too many arguments for this overload + + if (n_args_in < pos_args && func.args.size() < pos_args) + continue; // Not enough arguments given, and not enough defaults to fill in the blanks + + function_call call(func, parent); + + size_t args_to_copy = std::min(pos_args, n_args_in); + size_t args_copied = 0; + + // 1. Copy any position arguments given. + bool bad_arg = false; + for (; args_copied < args_to_copy; ++args_copied) { + argument_record *arg_rec = args_copied < func.args.size() ? &func.args[args_copied] : nullptr; + if (kwargs_in && arg_rec && arg_rec->name && PyDict_GetItemString(kwargs_in, arg_rec->name)) { + bad_arg = true; + break; + } + + handle arg(PyTuple_GET_ITEM(args_in, args_copied)); + if (arg_rec && !arg_rec->none && arg.is_none()) { + bad_arg = true; + break; + } + call.args.push_back(arg); + call.args_convert.push_back(arg_rec ? arg_rec->convert : true); + } + if (bad_arg) + continue; // Maybe it was meant for another overload (issue #688) + + // We'll need to copy this if we steal some kwargs for defaults + dict kwargs = reinterpret_borrow(kwargs_in); + + // 2. Check kwargs and, failing that, defaults that may help complete the list + if (args_copied < pos_args) { + bool copied_kwargs = false; + + for (; args_copied < pos_args; ++args_copied) { + const auto &arg = func.args[args_copied]; + + handle value; + if (kwargs_in && arg.name) + value = PyDict_GetItemString(kwargs.ptr(), arg.name); + + if (value) { + // Consume a kwargs value + if (!copied_kwargs) { + kwargs = reinterpret_steal(PyDict_Copy(kwargs.ptr())); + copied_kwargs = true; + } + PyDict_DelItemString(kwargs.ptr(), arg.name); + } else if (arg.value) { + value = arg.value; + } + + if (value) { + call.args.push_back(value); + call.args_convert.push_back(arg.convert); + } + else + break; + } + + if (args_copied < pos_args) + continue; // Not enough arguments, defaults, or kwargs to fill the positional arguments + } + + // 3. Check everything was consumed (unless we have a kwargs arg) + if (kwargs && kwargs.size() > 0 && !func.has_kwargs) + continue; // Unconsumed kwargs, but no py::kwargs argument to accept them + + // 4a. If we have a py::args argument, create a new tuple with leftovers + tuple extra_args; + if (func.has_args) { + if (args_to_copy == 0) { + // We didn't copy out any position arguments from the args_in tuple, so we + // can reuse it directly without copying: + extra_args = reinterpret_borrow(args_in); + } else if (args_copied >= n_args_in) { + extra_args = tuple(0); + } else { + size_t args_size = n_args_in - args_copied; + extra_args = tuple(args_size); + for (size_t i = 0; i < args_size; ++i) { + handle item = PyTuple_GET_ITEM(args_in, args_copied + i); + extra_args[i] = item.inc_ref().ptr(); + } + } + call.args.push_back(extra_args); + call.args_convert.push_back(false); + } + + // 4b. If we have a py::kwargs, pass on any remaining kwargs + if (func.has_kwargs) { + if (!kwargs.ptr()) + kwargs = dict(); // If we didn't get one, send an empty one + call.args.push_back(kwargs); + call.args_convert.push_back(false); + } + + // 5. Put everything in a vector. Not technically step 5, we've been building it + // in `call.args` all along. + #if !defined(NDEBUG) + if (call.args.size() != func.nargs || call.args_convert.size() != func.nargs) + pybind11_fail("Internal error: function call dispatcher inserted wrong number of arguments!"); + #endif + + std::vector second_pass_convert; + if (overloaded) { + // We're in the first no-convert pass, so swap out the conversion flags for a + // set of all-false flags. If the call fails, we'll swap the flags back in for + // the conversion-allowed call below. + second_pass_convert.resize(func.nargs, false); + call.args_convert.swap(second_pass_convert); + } + + // 6. Call the function. + try { + loader_life_support guard{}; + result = func.impl(call); + } catch (reference_cast_error &) { + result = PYBIND11_TRY_NEXT_OVERLOAD; + } + + if (result.ptr() != PYBIND11_TRY_NEXT_OVERLOAD) + break; + + if (overloaded) { + // The (overloaded) call failed; if the call has at least one argument that + // permits conversion (i.e. it hasn't been explicitly specified `.noconvert()`) + // then add this call to the list of second pass overloads to try. + for (size_t i = func.is_method ? 1 : 0; i < pos_args; i++) { + if (second_pass_convert[i]) { + // Found one: swap the converting flags back in and store the call for + // the second pass. + call.args_convert.swap(second_pass_convert); + second_pass.push_back(std::move(call)); + break; + } + } + } + } + + if (overloaded && !second_pass.empty() && result.ptr() == PYBIND11_TRY_NEXT_OVERLOAD) { + // The no-conversion pass finished without success, try again with conversion allowed + for (auto &call : second_pass) { + try { + loader_life_support guard{}; + result = call.func.impl(call); + } catch (reference_cast_error &) { + result = PYBIND11_TRY_NEXT_OVERLOAD; + } + + if (result.ptr() != PYBIND11_TRY_NEXT_OVERLOAD) + break; + } + } + } catch (error_already_set &e) { + e.restore(); + return nullptr; + } catch (...) { + /* When an exception is caught, give each registered exception + translator a chance to translate it to a Python exception + in reverse order of registration. + + A translator may choose to do one of the following: + + - catch the exception and call PyErr_SetString or PyErr_SetObject + to set a standard (or custom) Python exception, or + - do nothing and let the exception fall through to the next translator, or + - delegate translation to the next translator by throwing a new type of exception. */ + + auto last_exception = std::current_exception(); + auto ®istered_exception_translators = get_internals().registered_exception_translators; + for (auto& translator : registered_exception_translators) { + try { + translator(last_exception); + } catch (...) { + last_exception = std::current_exception(); + continue; + } + return nullptr; + } + PyErr_SetString(PyExc_SystemError, "Exception escaped from default exception translator!"); + return nullptr; + } + + if (result.ptr() == PYBIND11_TRY_NEXT_OVERLOAD) { + if (overloads->is_operator) + return handle(Py_NotImplemented).inc_ref().ptr(); + + std::string msg = std::string(overloads->name) + "(): incompatible " + + std::string(overloads->is_constructor ? "constructor" : "function") + + " arguments. The following argument types are supported:\n"; + + int ctr = 0; + for (function_record *it2 = overloads; it2 != nullptr; it2 = it2->next) { + msg += " "+ std::to_string(++ctr) + ". "; + + bool wrote_sig = false; + if (overloads->is_constructor) { + // For a constructor, rewrite `(self: Object, arg0, ...) -> NoneType` as `Object(arg0, ...)` + std::string sig = it2->signature; + size_t start = sig.find('(') + 7; // skip "(self: " + if (start < sig.size()) { + // End at the , for the next argument + size_t end = sig.find(", "), next = end + 2; + size_t ret = sig.rfind(" -> "); + // Or the ), if there is no comma: + if (end >= sig.size()) next = end = sig.find(')'); + if (start < end && next < sig.size()) { + msg.append(sig, start, end - start); + msg += '('; + msg.append(sig, next, ret - next); + wrote_sig = true; + } + } + } + if (!wrote_sig) msg += it2->signature; + + msg += "\n"; + } + msg += "\nInvoked with: "; + auto args_ = reinterpret_borrow(args_in); + bool some_args = false; + for (size_t ti = overloads->is_constructor ? 1 : 0; ti < args_.size(); ++ti) { + if (!some_args) some_args = true; + else msg += ", "; + msg += pybind11::repr(args_[ti]); + } + if (kwargs_in) { + auto kwargs = reinterpret_borrow(kwargs_in); + if (kwargs.size() > 0) { + if (some_args) msg += "; "; + msg += "kwargs: "; + bool first = true; + for (auto kwarg : kwargs) { + if (first) first = false; + else msg += ", "; + msg += pybind11::str("{}={!r}").format(kwarg.first, kwarg.second); + } + } + } + + PyErr_SetString(PyExc_TypeError, msg.c_str()); + return nullptr; + } else if (!result) { + std::string msg = "Unable to convert function return value to a " + "Python type! The signature was\n\t"; + msg += it->signature; + PyErr_SetString(PyExc_TypeError, msg.c_str()); + return nullptr; + } else { + if (overloads->is_constructor) { + auto tinfo = get_type_info((PyTypeObject *) overloads->scope.ptr()); + tinfo->init_instance(reinterpret_cast(parent.ptr()), nullptr); + } + return result.ptr(); + } + } +}; + +/// Wrapper for Python extension modules +class module : public object { +public: + PYBIND11_OBJECT_DEFAULT(module, object, PyModule_Check) + + /// Create a new top-level Python module with the given name and docstring + explicit module(const char *name, const char *doc = nullptr) { + if (!options::show_user_defined_docstrings()) doc = nullptr; +#if PY_MAJOR_VERSION >= 3 + PyModuleDef *def = new PyModuleDef(); + std::memset(def, 0, sizeof(PyModuleDef)); + def->m_name = name; + def->m_doc = doc; + def->m_size = -1; + Py_INCREF(def); + m_ptr = PyModule_Create(def); +#else + m_ptr = Py_InitModule3(name, nullptr, doc); +#endif + if (m_ptr == nullptr) + pybind11_fail("Internal error in module::module()"); + inc_ref(); + } + + /** \rst + Create Python binding for a new function within the module scope. ``Func`` + can be a plain C++ function, a function pointer, or a lambda function. For + details on the ``Extra&& ... extra`` argument, see section :ref:`extras`. + \endrst */ + template + module &def(const char *name_, Func &&f, const Extra& ... extra) { + cpp_function func(std::forward(f), name(name_), scope(*this), + sibling(getattr(*this, name_, none())), extra...); + // NB: allow overwriting here because cpp_function sets up a chain with the intention of + // overwriting (and has already checked internally that it isn't overwriting non-functions). + add_object(name_, func, true /* overwrite */); + return *this; + } + + /** \rst + Create and return a new Python submodule with the given name and docstring. + This also works recursively, i.e. + + .. code-block:: cpp + + py::module m("example", "pybind11 example plugin"); + py::module m2 = m.def_submodule("sub", "A submodule of 'example'"); + py::module m3 = m2.def_submodule("subsub", "A submodule of 'example.sub'"); + \endrst */ + module def_submodule(const char *name, const char *doc = nullptr) { + std::string full_name = std::string(PyModule_GetName(m_ptr)) + + std::string(".") + std::string(name); + auto result = reinterpret_borrow(PyImport_AddModule(full_name.c_str())); + if (doc && options::show_user_defined_docstrings()) + result.attr("__doc__") = pybind11::str(doc); + attr(name) = result; + return result; + } + + /// Import and return a module or throws `error_already_set`. + static module import(const char *name) { + PyObject *obj = PyImport_ImportModule(name); + if (!obj) + throw error_already_set(); + return reinterpret_steal(obj); + } + + // Adds an object to the module using the given name. Throws if an object with the given name + // already exists. + // + // overwrite should almost always be false: attempting to overwrite objects that pybind11 has + // established will, in most cases, break things. + PYBIND11_NOINLINE void add_object(const char *name, handle obj, bool overwrite = false) { + if (!overwrite && hasattr(*this, name)) + pybind11_fail("Error during initialization: multiple incompatible definitions with name \"" + + std::string(name) + "\""); + + PyModule_AddObject(ptr(), name, obj.inc_ref().ptr() /* steals a reference */); + } +}; + +/// \ingroup python_builtins +/// Return a dictionary representing the global variables in the current execution frame, +/// or ``__main__.__dict__`` if there is no frame (usually when the interpreter is embedded). +inline dict globals() { + PyObject *p = PyEval_GetGlobals(); + return reinterpret_borrow(p ? p : module::import("__main__").attr("__dict__").ptr()); +} + +NAMESPACE_BEGIN(detail) +/// Generic support for creating new Python heap types +class generic_type : public object { + template friend class class_; +public: + PYBIND11_OBJECT_DEFAULT(generic_type, object, PyType_Check) +protected: + void initialize(const type_record &rec) { + if (rec.scope && hasattr(rec.scope, rec.name)) + pybind11_fail("generic_type: cannot initialize type \"" + std::string(rec.name) + + "\": an object with that name is already defined"); + + if (get_type_info(*rec.type)) + pybind11_fail("generic_type: type \"" + std::string(rec.name) + + "\" is already registered!"); + + m_ptr = make_new_python_type(rec); + + /* Register supplemental type information in C++ dict */ + auto *tinfo = new detail::type_info(); + tinfo->type = (PyTypeObject *) m_ptr; + tinfo->cpptype = rec.type; + tinfo->type_size = rec.type_size; + tinfo->operator_new = rec.operator_new; + tinfo->holder_size_in_ptrs = size_in_ptrs(rec.holder_size); + tinfo->init_instance = rec.init_instance; + tinfo->dealloc = rec.dealloc; + tinfo->simple_type = true; + tinfo->simple_ancestors = true; + + auto &internals = get_internals(); + auto tindex = std::type_index(*rec.type); + tinfo->direct_conversions = &internals.direct_conversions[tindex]; + tinfo->default_holder = rec.default_holder; + internals.registered_types_cpp[tindex] = tinfo; + internals.registered_types_py[(PyTypeObject *) m_ptr] = { tinfo }; + + if (rec.bases.size() > 1 || rec.multiple_inheritance) { + mark_parents_nonsimple(tinfo->type); + tinfo->simple_ancestors = false; + } + else if (rec.bases.size() == 1) { + auto parent_tinfo = get_type_info((PyTypeObject *) rec.bases[0].ptr()); + tinfo->simple_ancestors = parent_tinfo->simple_ancestors; + } + } + + /// Helper function which tags all parents of a type using mult. inheritance + void mark_parents_nonsimple(PyTypeObject *value) { + auto t = reinterpret_borrow(value->tp_bases); + for (handle h : t) { + auto tinfo2 = get_type_info((PyTypeObject *) h.ptr()); + if (tinfo2) + tinfo2->simple_type = false; + mark_parents_nonsimple((PyTypeObject *) h.ptr()); + } + } + + void install_buffer_funcs( + buffer_info *(*get_buffer)(PyObject *, void *), + void *get_buffer_data) { + PyHeapTypeObject *type = (PyHeapTypeObject*) m_ptr; + auto tinfo = detail::get_type_info(&type->ht_type); + + if (!type->ht_type.tp_as_buffer) + pybind11_fail( + "To be able to register buffer protocol support for the type '" + + std::string(tinfo->type->tp_name) + + "' the associated class<>(..) invocation must " + "include the pybind11::buffer_protocol() annotation!"); + + tinfo->get_buffer = get_buffer; + tinfo->get_buffer_data = get_buffer_data; + } + + void def_property_static_impl(const char *name, + handle fget, handle fset, + detail::function_record *rec_fget) { + const auto is_static = !(rec_fget->is_method && rec_fget->scope); + const auto has_doc = rec_fget->doc && pybind11::options::show_user_defined_docstrings(); + + auto property = handle((PyObject *) (is_static ? get_internals().static_property_type + : &PyProperty_Type)); + attr(name) = property(fget.ptr() ? fget : none(), + fset.ptr() ? fset : none(), + /*deleter*/none(), + pybind11::str(has_doc ? rec_fget->doc : "")); + } +}; + +/// Set the pointer to operator new if it exists. The cast is needed because it can be overloaded. +template (T::operator new))>> +void set_operator_new(type_record *r) { r->operator_new = &T::operator new; } + +template void set_operator_new(...) { } + +template struct has_operator_delete : std::false_type { }; +template struct has_operator_delete(T::operator delete))>> + : std::true_type { }; +template struct has_operator_delete_size : std::false_type { }; +template struct has_operator_delete_size(T::operator delete))>> + : std::true_type { }; +/// Call class-specific delete if it exists or global otherwise. Can also be an overload set. +template ::value, int> = 0> +void call_operator_delete(T *p, size_t) { T::operator delete(p); } +template ::value && has_operator_delete_size::value, int> = 0> +void call_operator_delete(T *p, size_t s) { T::operator delete(p, s); } + +inline void call_operator_delete(void *p, size_t) { ::operator delete(p); } + +NAMESPACE_END(detail) + +/// Given a pointer to a member function, cast it to its `Derived` version. +/// Forward everything else unchanged. +template +auto method_adaptor(F &&f) -> decltype(std::forward(f)) { return std::forward(f); } + +template +auto method_adaptor(Return (Class::*pmf)(Args...)) -> Return (Derived::*)(Args...) { return pmf; } + +template +auto method_adaptor(Return (Class::*pmf)(Args...) const) -> Return (Derived::*)(Args...) const { return pmf; } + +template +class class_ : public detail::generic_type { + template using is_holder = detail::is_holder_type; + template using is_subtype = detail::is_strict_base_of; + template using is_base = detail::is_strict_base_of; + // struct instead of using here to help MSVC: + template struct is_valid_class_option : + detail::any_of, is_subtype, is_base> {}; + +public: + using type = type_; + using type_alias = detail::exactly_one_t; + constexpr static bool has_alias = !std::is_void::value; + using holder_type = detail::exactly_one_t, options...>; + + static_assert(detail::all_of...>::value, + "Unknown/invalid class_ template parameters provided"); + + PYBIND11_OBJECT(class_, generic_type, PyType_Check) + + template + class_(handle scope, const char *name, const Extra &... extra) { + using namespace detail; + + // MI can only be specified via class_ template options, not constructor parameters + static_assert( + none_of...>::value || // no base class arguments, or: + ( constexpr_sum(is_pyobject::value...) == 1 && // Exactly one base + constexpr_sum(is_base::value...) == 0 && // no template option bases + none_of...>::value), // no multiple_inheritance attr + "Error: multiple inheritance bases must be specified via class_ template options"); + + type_record record; + record.scope = scope; + record.name = name; + record.type = &typeid(type); + record.type_size = sizeof(conditional_t); + record.holder_size = sizeof(holder_type); + record.init_instance = init_instance; + record.dealloc = dealloc; + record.default_holder = std::is_same>::value; + + set_operator_new(&record); + + /* Register base classes specified via template arguments to class_, if any */ + PYBIND11_EXPAND_SIDE_EFFECTS(add_base(record)); + + /* Process optional arguments, if any */ + process_attributes::init(extra..., &record); + + generic_type::initialize(record); + + if (has_alias) { + auto &instances = get_internals().registered_types_cpp; + instances[std::type_index(typeid(type_alias))] = instances[std::type_index(typeid(type))]; + } + } + + template ::value, int> = 0> + static void add_base(detail::type_record &rec) { + rec.add_base(typeid(Base), [](void *src) -> void * { + return static_cast(reinterpret_cast(src)); + }); + } + + template ::value, int> = 0> + static void add_base(detail::type_record &) { } + + template + class_ &def(const char *name_, Func&& f, const Extra&... extra) { + cpp_function cf(method_adaptor(std::forward(f)), name(name_), is_method(*this), + sibling(getattr(*this, name_, none())), extra...); + attr(cf.name()) = cf; + return *this; + } + + template class_ & + def_static(const char *name_, Func &&f, const Extra&... extra) { + static_assert(!std::is_member_function_pointer::value, + "def_static(...) called with a non-static member function pointer"); + cpp_function cf(std::forward(f), name(name_), scope(*this), + sibling(getattr(*this, name_, none())), extra...); + attr(cf.name()) = cf; + return *this; + } + + template + class_ &def(const detail::op_ &op, const Extra&... extra) { + op.execute(*this, extra...); + return *this; + } + + template + class_ & def_cast(const detail::op_ &op, const Extra&... extra) { + op.execute_cast(*this, extra...); + return *this; + } + + template + class_ &def(const detail::init &init, const Extra&... extra) { + init.execute(*this, extra...); + return *this; + } + + template + class_ &def(const detail::init_alias &init, const Extra&... extra) { + init.execute(*this, extra...); + return *this; + } + + template class_& def_buffer(Func &&func) { + struct capture { Func func; }; + capture *ptr = new capture { std::forward(func) }; + install_buffer_funcs([](PyObject *obj, void *ptr) -> buffer_info* { + detail::make_caster caster; + if (!caster.load(obj, false)) + return nullptr; + return new buffer_info(((capture *) ptr)->func(caster)); + }, ptr); + return *this; + } + + template + class_ &def_buffer(Return (Class::*func)(Args...)) { + return def_buffer([func] (type &obj) { return (obj.*func)(); }); + } + + template + class_ &def_buffer(Return (Class::*func)(Args...) const) { + return def_buffer([func] (const type &obj) { return (obj.*func)(); }); + } + + template + class_ &def_readwrite(const char *name, D C::*pm, const Extra&... extra) { + static_assert(std::is_base_of::value, "def_readwrite() requires a class member (or base class member)"); + cpp_function fget([pm](const type &c) -> const D &{ return c.*pm; }, is_method(*this)), + fset([pm](type &c, const D &value) { c.*pm = value; }, is_method(*this)); + def_property(name, fget, fset, return_value_policy::reference_internal, extra...); + return *this; + } + + template + class_ &def_readonly(const char *name, const D C::*pm, const Extra& ...extra) { + static_assert(std::is_base_of::value, "def_readonly() requires a class member (or base class member)"); + cpp_function fget([pm](const type &c) -> const D &{ return c.*pm; }, is_method(*this)); + def_property_readonly(name, fget, return_value_policy::reference_internal, extra...); + return *this; + } + + template + class_ &def_readwrite_static(const char *name, D *pm, const Extra& ...extra) { + cpp_function fget([pm](object) -> const D &{ return *pm; }, scope(*this)), + fset([pm](object, const D &value) { *pm = value; }, scope(*this)); + def_property_static(name, fget, fset, return_value_policy::reference, extra...); + return *this; + } + + template + class_ &def_readonly_static(const char *name, const D *pm, const Extra& ...extra) { + cpp_function fget([pm](object) -> const D &{ return *pm; }, scope(*this)); + def_property_readonly_static(name, fget, return_value_policy::reference, extra...); + return *this; + } + + /// Uses return_value_policy::reference_internal by default + template + class_ &def_property_readonly(const char *name, const Getter &fget, const Extra& ...extra) { + return def_property_readonly(name, cpp_function(method_adaptor(fget)), + return_value_policy::reference_internal, extra...); + } + + /// Uses cpp_function's return_value_policy by default + template + class_ &def_property_readonly(const char *name, const cpp_function &fget, const Extra& ...extra) { + return def_property(name, fget, cpp_function(), extra...); + } + + /// Uses return_value_policy::reference by default + template + class_ &def_property_readonly_static(const char *name, const Getter &fget, const Extra& ...extra) { + return def_property_readonly_static(name, cpp_function(fget), return_value_policy::reference, extra...); + } + + /// Uses cpp_function's return_value_policy by default + template + class_ &def_property_readonly_static(const char *name, const cpp_function &fget, const Extra& ...extra) { + return def_property_static(name, fget, cpp_function(), extra...); + } + + /// Uses return_value_policy::reference_internal by default + template + class_ &def_property(const char *name, const Getter &fget, const Setter &fset, const Extra& ...extra) { + return def_property(name, fget, cpp_function(method_adaptor(fset)), extra...); + } + template + class_ &def_property(const char *name, const Getter &fget, const cpp_function &fset, const Extra& ...extra) { + return def_property(name, cpp_function(method_adaptor(fget)), fset, + return_value_policy::reference_internal, extra...); + } + + /// Uses cpp_function's return_value_policy by default + template + class_ &def_property(const char *name, const cpp_function &fget, const cpp_function &fset, const Extra& ...extra) { + return def_property_static(name, fget, fset, is_method(*this), extra...); + } + + /// Uses return_value_policy::reference by default + template + class_ &def_property_static(const char *name, const Getter &fget, const cpp_function &fset, const Extra& ...extra) { + return def_property_static(name, cpp_function(fget), fset, return_value_policy::reference, extra...); + } + + /// Uses cpp_function's return_value_policy by default + template + class_ &def_property_static(const char *name, const cpp_function &fget, const cpp_function &fset, const Extra& ...extra) { + auto rec_fget = get_function_record(fget), rec_fset = get_function_record(fset); + char *doc_prev = rec_fget->doc; /* 'extra' field may include a property-specific documentation string */ + detail::process_attributes::init(extra..., rec_fget); + if (rec_fget->doc && rec_fget->doc != doc_prev) { + free(doc_prev); + rec_fget->doc = strdup(rec_fget->doc); + } + if (rec_fset) { + doc_prev = rec_fset->doc; + detail::process_attributes::init(extra..., rec_fset); + if (rec_fset->doc && rec_fset->doc != doc_prev) { + free(doc_prev); + rec_fset->doc = strdup(rec_fset->doc); + } + } + def_property_static_impl(name, fget, fset, rec_fget); + return *this; + } + +private: + /// Initialize holder object, variant 1: object derives from enable_shared_from_this + template + static void init_holder(detail::instance *inst, detail::value_and_holder &v_h, + const holder_type * /* unused */, const std::enable_shared_from_this * /* dummy */) { + try { + auto sh = std::dynamic_pointer_cast( + v_h.value_ptr()->shared_from_this()); + if (sh) { + new (&v_h.holder()) holder_type(std::move(sh)); + v_h.set_holder_constructed(); + } + } catch (const std::bad_weak_ptr &) {} + + if (!v_h.holder_constructed() && inst->owned) { + new (&v_h.holder()) holder_type(v_h.value_ptr()); + v_h.set_holder_constructed(); + } + } + + static void init_holder_from_existing(const detail::value_and_holder &v_h, + const holder_type *holder_ptr, std::true_type /*is_copy_constructible*/) { + new (&v_h.holder()) holder_type(*reinterpret_cast(holder_ptr)); + } + + static void init_holder_from_existing(const detail::value_and_holder &v_h, + const holder_type *holder_ptr, std::false_type /*is_copy_constructible*/) { + new (&v_h.holder()) holder_type(std::move(*const_cast(holder_ptr))); + } + + /// Initialize holder object, variant 2: try to construct from existing holder object, if possible + static void init_holder(detail::instance *inst, detail::value_and_holder &v_h, + const holder_type *holder_ptr, const void * /* dummy -- not enable_shared_from_this) */) { + if (holder_ptr) { + init_holder_from_existing(v_h, holder_ptr, std::is_copy_constructible()); + v_h.set_holder_constructed(); + } else if (inst->owned || detail::always_construct_holder::value) { + new (&v_h.holder()) holder_type(v_h.value_ptr()); + v_h.set_holder_constructed(); + } + } + + /// Performs instance initialization including constructing a holder and registering the known + /// instance. Should be called as soon as the `type` value_ptr is set for an instance. Takes an + /// optional pointer to an existing holder to use; if not specified and the instance is + /// `.owned`, a new holder will be constructed to manage the value pointer. + static void init_instance(detail::instance *inst, const void *holder_ptr) { + auto v_h = inst->get_value_and_holder(detail::get_type_info(typeid(type))); + if (!v_h.instance_registered()) { + register_instance(inst, v_h.value_ptr(), v_h.type); + v_h.set_instance_registered(); + } + init_holder(inst, v_h, (const holder_type *) holder_ptr, v_h.value_ptr()); + } + + /// Deallocates an instance; via holder, if constructed; otherwise via operator delete. + static void dealloc(const detail::value_and_holder &v_h) { + if (v_h.holder_constructed()) + v_h.holder().~holder_type(); + else + detail::call_operator_delete(v_h.value_ptr(), v_h.type->type_size); + } + + static detail::function_record *get_function_record(handle h) { + h = detail::get_function(h); + return h ? (detail::function_record *) reinterpret_borrow(PyCFunction_GET_SELF(h.ptr())) + : nullptr; + } +}; + +/// Binds C++ enumerations and enumeration classes to Python +template class enum_ : public class_ { +public: + using class_::def; + using class_::def_property_readonly_static; + using Scalar = typename std::underlying_type::type; + + template + enum_(const handle &scope, const char *name, const Extra&... extra) + : class_(scope, name, extra...), m_entries(), m_parent(scope) { + + constexpr bool is_arithmetic = detail::any_of...>::value; + + auto m_entries_ptr = m_entries.inc_ref().ptr(); + def("__repr__", [name, m_entries_ptr](Type value) -> pybind11::str { + for (const auto &kv : reinterpret_borrow(m_entries_ptr)) { + if (pybind11::cast(kv.second) == value) + return pybind11::str("{}.{}").format(name, kv.first); + } + return pybind11::str("{}.???").format(name); + }); + def_property_readonly_static("__members__", [m_entries_ptr](object /* self */) { + dict m; + for (const auto &kv : reinterpret_borrow(m_entries_ptr)) + m[kv.first] = kv.second; + return m; + }, return_value_policy::copy); + def("__init__", [](Type& value, Scalar i) { value = (Type)i; }); + def("__int__", [](Type value) { return (Scalar) value; }); + #if PY_MAJOR_VERSION < 3 + def("__long__", [](Type value) { return (Scalar) value; }); + #endif + def("__eq__", [](const Type &value, Type *value2) { return value2 && value == *value2; }); + def("__ne__", [](const Type &value, Type *value2) { return !value2 || value != *value2; }); + if (is_arithmetic) { + def("__lt__", [](const Type &value, Type *value2) { return value2 && value < *value2; }); + def("__gt__", [](const Type &value, Type *value2) { return value2 && value > *value2; }); + def("__le__", [](const Type &value, Type *value2) { return value2 && value <= *value2; }); + def("__ge__", [](const Type &value, Type *value2) { return value2 && value >= *value2; }); + } + if (std::is_convertible::value) { + // Don't provide comparison with the underlying type if the enum isn't convertible, + // i.e. if Type is a scoped enum, mirroring the C++ behaviour. (NB: we explicitly + // convert Type to Scalar below anyway because this needs to compile). + def("__eq__", [](const Type &value, Scalar value2) { return (Scalar) value == value2; }); + def("__ne__", [](const Type &value, Scalar value2) { return (Scalar) value != value2; }); + if (is_arithmetic) { + def("__lt__", [](const Type &value, Scalar value2) { return (Scalar) value < value2; }); + def("__gt__", [](const Type &value, Scalar value2) { return (Scalar) value > value2; }); + def("__le__", [](const Type &value, Scalar value2) { return (Scalar) value <= value2; }); + def("__ge__", [](const Type &value, Scalar value2) { return (Scalar) value >= value2; }); + def("__invert__", [](const Type &value) { return ~((Scalar) value); }); + def("__and__", [](const Type &value, Scalar value2) { return (Scalar) value & value2; }); + def("__or__", [](const Type &value, Scalar value2) { return (Scalar) value | value2; }); + def("__xor__", [](const Type &value, Scalar value2) { return (Scalar) value ^ value2; }); + def("__rand__", [](const Type &value, Scalar value2) { return (Scalar) value & value2; }); + def("__ror__", [](const Type &value, Scalar value2) { return (Scalar) value | value2; }); + def("__rxor__", [](const Type &value, Scalar value2) { return (Scalar) value ^ value2; }); + def("__and__", [](const Type &value, const Type &value2) { return (Scalar) value & (Scalar) value2; }); + def("__or__", [](const Type &value, const Type &value2) { return (Scalar) value | (Scalar) value2; }); + def("__xor__", [](const Type &value, const Type &value2) { return (Scalar) value ^ (Scalar) value2; }); + } + } + def("__hash__", [](const Type &value) { return (Scalar) value; }); + // Pickling and unpickling -- needed for use with the 'multiprocessing' module + def("__getstate__", [](const Type &value) { return pybind11::make_tuple((Scalar) value); }); + def("__setstate__", [](Type &p, tuple t) { new (&p) Type((Type) t[0].cast()); }); + } + + /// Export enumeration entries into the parent scope + enum_& export_values() { + for (const auto &kv : m_entries) + m_parent.attr(kv.first) = kv.second; + return *this; + } + + /// Add an enumeration entry + enum_& value(char const* name, Type value) { + auto v = pybind11::cast(value, return_value_policy::copy); + this->attr(name) = v; + m_entries[pybind11::str(name)] = v; + return *this; + } + +private: + dict m_entries; + handle m_parent; +}; + +NAMESPACE_BEGIN(detail) +template struct init { + template = 0> + static void execute(Class &cl, const Extra&... extra) { + using Base = typename Class::type; + /// Function which calls a specific C++ in-place constructor + cl.def("__init__", [](Base *self_, Args... args) { new (self_) Base(args...); }, extra...); + } + + template ::value, int> = 0> + static void execute(Class &cl, const Extra&... extra) { + using Base = typename Class::type; + using Alias = typename Class::type_alias; + handle cl_type = cl; + cl.def("__init__", [cl_type](handle self_, Args... args) { + if (self_.get_type().is(cl_type)) + new (self_.cast()) Base(args...); + else + new (self_.cast()) Alias(args...); + }, extra...); + } + + template ::value, int> = 0> + static void execute(Class &cl, const Extra&... extra) { + init_alias::execute(cl, extra...); + } +}; +template struct init_alias { + template ::value, int> = 0> + static void execute(Class &cl, const Extra&... extra) { + using Alias = typename Class::type_alias; + cl.def("__init__", [](Alias *self_, Args... args) { new (self_) Alias(args...); }, extra...); + } +}; + + +inline void keep_alive_impl(handle nurse, handle patient) { + if (!nurse || !patient) + pybind11_fail("Could not activate keep_alive!"); + + if (patient.is_none() || nurse.is_none()) + return; /* Nothing to keep alive or nothing to be kept alive by */ + + auto tinfo = all_type_info(Py_TYPE(nurse.ptr())); + if (!tinfo.empty()) { + /* It's a pybind-registered type, so we can store the patient in the + * internal list. */ + add_patient(nurse.ptr(), patient.ptr()); + } + else { + /* Fall back to clever approach based on weak references taken from + * Boost.Python. This is not used for pybind-registered types because + * the objects can be destroyed out-of-order in a GC pass. */ + cpp_function disable_lifesupport( + [patient](handle weakref) { patient.dec_ref(); weakref.dec_ref(); }); + + weakref wr(nurse, disable_lifesupport); + + patient.inc_ref(); /* reference patient and leak the weak reference */ + (void) wr.release(); + } +} + +PYBIND11_NOINLINE inline void keep_alive_impl(size_t Nurse, size_t Patient, function_call &call, handle ret) { + keep_alive_impl( + Nurse == 0 ? ret : Nurse <= call.args.size() ? call.args[Nurse - 1] : handle(), + Patient == 0 ? ret : Patient <= call.args.size() ? call.args[Patient - 1] : handle() + ); +} + +inline std::pair all_type_info_get_cache(PyTypeObject *type) { + auto res = get_internals().registered_types_py +#ifdef __cpp_lib_unordered_map_try_emplace + .try_emplace(type); +#else + .emplace(type, std::vector()); +#endif + if (res.second) { + // New cache entry created; set up a weak reference to automatically remove it if the type + // gets destroyed: + weakref((PyObject *) type, cpp_function([type](handle wr) { + get_internals().registered_types_py.erase(type); + wr.dec_ref(); + })).release(); + } + + return res; +} + +template +struct iterator_state { + Iterator it; + Sentinel end; + bool first_or_done; +}; + +NAMESPACE_END(detail) + +template detail::init init() { return detail::init(); } +template detail::init_alias init_alias() { return detail::init_alias(); } + +/// Makes a python iterator from a first and past-the-end C++ InputIterator. +template ()), + typename... Extra> +iterator make_iterator(Iterator first, Sentinel last, Extra &&... extra) { + typedef detail::iterator_state state; + + if (!detail::get_type_info(typeid(state), false)) { + class_(handle(), "iterator") + .def("__iter__", [](state &s) -> state& { return s; }) + .def("__next__", [](state &s) -> ValueType { + if (!s.first_or_done) + ++s.it; + else + s.first_or_done = false; + if (s.it == s.end) { + s.first_or_done = true; + throw stop_iteration(); + } + return *s.it; + }, std::forward(extra)..., Policy); + } + + return cast(state{first, last, true}); +} + +/// Makes an python iterator over the keys (`.first`) of a iterator over pairs from a +/// first and past-the-end InputIterator. +template ()).first), + typename... Extra> +iterator make_key_iterator(Iterator first, Sentinel last, Extra &&... extra) { + typedef detail::iterator_state state; + + if (!detail::get_type_info(typeid(state), false)) { + class_(handle(), "iterator") + .def("__iter__", [](state &s) -> state& { return s; }) + .def("__next__", [](state &s) -> KeyType { + if (!s.first_or_done) + ++s.it; + else + s.first_or_done = false; + if (s.it == s.end) { + s.first_or_done = true; + throw stop_iteration(); + } + return (*s.it).first; + }, std::forward(extra)..., Policy); + } + + return cast(state{first, last, true}); +} + +/// Makes an iterator over values of an stl container or other container supporting +/// `std::begin()`/`std::end()` +template iterator make_iterator(Type &value, Extra&&... extra) { + return make_iterator(std::begin(value), std::end(value), extra...); +} + +/// Makes an iterator over the keys (`.first`) of a stl map-like container supporting +/// `std::begin()`/`std::end()` +template iterator make_key_iterator(Type &value, Extra&&... extra) { + return make_key_iterator(std::begin(value), std::end(value), extra...); +} + +template void implicitly_convertible() { + auto implicit_caster = [](PyObject *obj, PyTypeObject *type) -> PyObject * { + if (!detail::make_caster().load(obj, false)) + return nullptr; + tuple args(1); + args[0] = obj; + PyObject *result = PyObject_Call((PyObject *) type, args.ptr(), nullptr); + if (result == nullptr) + PyErr_Clear(); + return result; + }; + + if (auto tinfo = detail::get_type_info(typeid(OutputType))) + tinfo->implicit_conversions.push_back(implicit_caster); + else + pybind11_fail("implicitly_convertible: Unable to find type " + type_id()); +} + +template +void register_exception_translator(ExceptionTranslator&& translator) { + detail::get_internals().registered_exception_translators.push_front( + std::forward(translator)); +} + +/** + * Wrapper to generate a new Python exception type. + * + * This should only be used with PyErr_SetString for now. + * It is not (yet) possible to use as a py::base. + * Template type argument is reserved for future use. + */ +template +class exception : public object { +public: + exception(handle scope, const char *name, PyObject *base = PyExc_Exception) { + std::string full_name = scope.attr("__name__").cast() + + std::string(".") + name; + m_ptr = PyErr_NewException(const_cast(full_name.c_str()), base, NULL); + if (hasattr(scope, name)) + pybind11_fail("Error during initialization: multiple incompatible " + "definitions with name \"" + std::string(name) + "\""); + scope.attr(name) = *this; + } + + // Sets the current python exception to this exception object with the given message + void operator()(const char *message) { + PyErr_SetString(m_ptr, message); + } +}; + +/** + * Registers a Python exception in `m` of the given `name` and installs an exception translator to + * translate the C++ exception to the created Python exception using the exceptions what() method. + * This is intended for simple exception translations; for more complex translation, register the + * exception object and translator directly. + */ +template +exception ®ister_exception(handle scope, + const char *name, + PyObject *base = PyExc_Exception) { + static exception ex(scope, name, base); + register_exception_translator([](std::exception_ptr p) { + if (!p) return; + try { + std::rethrow_exception(p); + } catch (const CppException &e) { + ex(e.what()); + } + }); + return ex; +} + +NAMESPACE_BEGIN(detail) +PYBIND11_NOINLINE inline void print(tuple args, dict kwargs) { + auto strings = tuple(args.size()); + for (size_t i = 0; i < args.size(); ++i) { + strings[i] = str(args[i]); + } + auto sep = kwargs.contains("sep") ? kwargs["sep"] : cast(" "); + auto line = sep.attr("join")(strings); + + object file; + if (kwargs.contains("file")) { + file = kwargs["file"].cast(); + } else { + try { + file = module::import("sys").attr("stdout"); + } catch (const error_already_set &) { + /* If print() is called from code that is executed as + part of garbage collection during interpreter shutdown, + importing 'sys' can fail. Give up rather than crashing the + interpreter in this case. */ + return; + } + } + + auto write = file.attr("write"); + write(line); + write(kwargs.contains("end") ? kwargs["end"] : cast("\n")); + + if (kwargs.contains("flush") && kwargs["flush"].cast()) + file.attr("flush")(); +} +NAMESPACE_END(detail) + +template +void print(Args &&...args) { + auto c = detail::collect_arguments(std::forward(args)...); + detail::print(c.args(), c.kwargs()); +} + +#if defined(WITH_THREAD) && !defined(PYPY_VERSION) + +/* The functions below essentially reproduce the PyGILState_* API using a RAII + * pattern, but there are a few important differences: + * + * 1. When acquiring the GIL from an non-main thread during the finalization + * phase, the GILState API blindly terminates the calling thread, which + * is often not what is wanted. This API does not do this. + * + * 2. The gil_scoped_release function can optionally cut the relationship + * of a PyThreadState and its associated thread, which allows moving it to + * another thread (this is a fairly rare/advanced use case). + * + * 3. The reference count of an acquired thread state can be controlled. This + * can be handy to prevent cases where callbacks issued from an external + * thread would otherwise constantly construct and destroy thread state data + * structures. + * + * See the Python bindings of NanoGUI (http://github.com/wjakob/nanogui) for an + * example which uses features 2 and 3 to migrate the Python thread of + * execution to another thread (to run the event loop on the original thread, + * in this case). + */ + +class gil_scoped_acquire { +public: + PYBIND11_NOINLINE gil_scoped_acquire() { + auto const &internals = detail::get_internals(); + tstate = (PyThreadState *) PyThread_get_key_value(internals.tstate); + + if (!tstate) { + tstate = PyThreadState_New(internals.istate); + #if !defined(NDEBUG) + if (!tstate) + pybind11_fail("scoped_acquire: could not create thread state!"); + #endif + tstate->gilstate_counter = 0; + #if PY_MAJOR_VERSION < 3 + PyThread_delete_key_value(internals.tstate); + #endif + PyThread_set_key_value(internals.tstate, tstate); + } else { + release = detail::get_thread_state_unchecked() != tstate; + } + + if (release) { + /* Work around an annoying assertion in PyThreadState_Swap */ + #if defined(Py_DEBUG) + PyInterpreterState *interp = tstate->interp; + tstate->interp = nullptr; + #endif + PyEval_AcquireThread(tstate); + #if defined(Py_DEBUG) + tstate->interp = interp; + #endif + } + + inc_ref(); + } + + void inc_ref() { + ++tstate->gilstate_counter; + } + + PYBIND11_NOINLINE void dec_ref() { + --tstate->gilstate_counter; + #if !defined(NDEBUG) + if (detail::get_thread_state_unchecked() != tstate) + pybind11_fail("scoped_acquire::dec_ref(): thread state must be current!"); + if (tstate->gilstate_counter < 0) + pybind11_fail("scoped_acquire::dec_ref(): reference count underflow!"); + #endif + if (tstate->gilstate_counter == 0) { + #if !defined(NDEBUG) + if (!release) + pybind11_fail("scoped_acquire::dec_ref(): internal error!"); + #endif + PyThreadState_Clear(tstate); + PyThreadState_DeleteCurrent(); + PyThread_delete_key_value(detail::get_internals().tstate); + release = false; + } + } + + PYBIND11_NOINLINE ~gil_scoped_acquire() { + dec_ref(); + if (release) + PyEval_SaveThread(); + } +private: + PyThreadState *tstate = nullptr; + bool release = true; +}; + +class gil_scoped_release { +public: + explicit gil_scoped_release(bool disassoc = false) : disassoc(disassoc) { + // `get_internals()` must be called here unconditionally in order to initialize + // `internals.tstate` for subsequent `gil_scoped_acquire` calls. Otherwise, an + // initialization race could occur as multiple threads try `gil_scoped_acquire`. + const auto &internals = detail::get_internals(); + tstate = PyEval_SaveThread(); + if (disassoc) { + auto key = internals.tstate; + #if PY_MAJOR_VERSION < 3 + PyThread_delete_key_value(key); + #else + PyThread_set_key_value(key, nullptr); + #endif + } + } + ~gil_scoped_release() { + if (!tstate) + return; + PyEval_RestoreThread(tstate); + if (disassoc) { + auto key = detail::get_internals().tstate; + #if PY_MAJOR_VERSION < 3 + PyThread_delete_key_value(key); + #endif + PyThread_set_key_value(key, tstate); + } + } +private: + PyThreadState *tstate; + bool disassoc; +}; +#elif defined(PYPY_VERSION) +class gil_scoped_acquire { + PyGILState_STATE state; +public: + gil_scoped_acquire() { state = PyGILState_Ensure(); } + ~gil_scoped_acquire() { PyGILState_Release(state); } +}; + +class gil_scoped_release { + PyThreadState *state; +public: + gil_scoped_release() { state = PyEval_SaveThread(); } + ~gil_scoped_release() { PyEval_RestoreThread(state); } +}; +#else +class gil_scoped_acquire { }; +class gil_scoped_release { }; +#endif + +error_already_set::~error_already_set() { + if (type) { + gil_scoped_acquire gil; + type.release().dec_ref(); + value.release().dec_ref(); + trace.release().dec_ref(); + } +} + +inline function get_type_overload(const void *this_ptr, const detail::type_info *this_type, const char *name) { + handle self = detail::get_object_handle(this_ptr, this_type); + if (!self) + return function(); + handle type = self.get_type(); + auto key = std::make_pair(type.ptr(), name); + + /* Cache functions that aren't overloaded in Python to avoid + many costly Python dictionary lookups below */ + auto &cache = detail::get_internals().inactive_overload_cache; + if (cache.find(key) != cache.end()) + return function(); + + function overload = getattr(self, name, function()); + if (overload.is_cpp_function()) { + cache.insert(key); + return function(); + } + + /* Don't call dispatch code if invoked from overridden function. + Unfortunately this doesn't work on PyPy. */ +#if !defined(PYPY_VERSION) + PyFrameObject *frame = PyThreadState_Get()->frame; + if (frame && (std::string) str(frame->f_code->co_name) == name && + frame->f_code->co_argcount > 0) { + PyFrame_FastToLocals(frame); + PyObject *self_caller = PyDict_GetItem( + frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0)); + if (self_caller == self.ptr()) + return function(); + } +#else + /* PyPy currently doesn't provide a detailed cpyext emulation of + frame objects, so we have to emulate this using Python. This + is going to be slow..*/ + dict d; d["self"] = self; d["name"] = pybind11::str(name); + PyObject *result = PyRun_String( + "import inspect\n" + "frame = inspect.currentframe()\n" + "if frame is not None:\n" + " frame = frame.f_back\n" + " if frame is not None and str(frame.f_code.co_name) == name and " + "frame.f_code.co_argcount > 0:\n" + " self_caller = frame.f_locals[frame.f_code.co_varnames[0]]\n" + " if self_caller == self:\n" + " self = None\n", + Py_file_input, d.ptr(), d.ptr()); + if (result == nullptr) + throw error_already_set(); + if (d["self"].is_none()) + return function(); + Py_DECREF(result); +#endif + + return overload; +} + +template function get_overload(const T *this_ptr, const char *name) { + auto tinfo = detail::get_type_info(typeid(T)); + return tinfo ? get_type_overload(this_ptr, tinfo, name) : function(); +} + +#define PYBIND11_OVERLOAD_INT(ret_type, cname, name, ...) { \ + pybind11::gil_scoped_acquire gil; \ + pybind11::function overload = pybind11::get_overload(static_cast(this), name); \ + if (overload) { \ + auto o = overload(__VA_ARGS__); \ + if (pybind11::detail::cast_is_temporary_value_reference::value) { \ + static pybind11::detail::overload_caster_t caster; \ + return pybind11::detail::cast_ref(std::move(o), caster); \ + } \ + else return pybind11::detail::cast_safe(std::move(o)); \ + } \ + } + +#define PYBIND11_OVERLOAD_NAME(ret_type, cname, name, fn, ...) \ + PYBIND11_OVERLOAD_INT(ret_type, cname, name, __VA_ARGS__) \ + return cname::fn(__VA_ARGS__) + +#define PYBIND11_OVERLOAD_PURE_NAME(ret_type, cname, name, fn, ...) \ + PYBIND11_OVERLOAD_INT(ret_type, cname, name, __VA_ARGS__) \ + pybind11::pybind11_fail("Tried to call pure virtual function \"" #cname "::" name "\""); + +#define PYBIND11_OVERLOAD(ret_type, cname, fn, ...) \ + PYBIND11_OVERLOAD_NAME(ret_type, cname, #fn, fn, __VA_ARGS__) + +#define PYBIND11_OVERLOAD_PURE(ret_type, cname, fn, ...) \ + PYBIND11_OVERLOAD_PURE_NAME(ret_type, cname, #fn, fn, __VA_ARGS__) + +NAMESPACE_END(pybind11) + +#if defined(_MSC_VER) +# pragma warning(pop) +#elif defined(__INTEL_COMPILER) +/* Leave ignored warnings on */ +#elif defined(__GNUG__) && !defined(__clang__) +# pragma GCC diagnostic pop +#endif diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pytypes.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pytypes.h" new file mode 100644 index 0000000..095d40f --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/pytypes.h" @@ -0,0 +1,1318 @@ +/* + pybind11/typeid.h: Convenience wrapper classes for basic Python types + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "common.h" +#include "buffer_info.h" +#include +#include + +NAMESPACE_BEGIN(pybind11) + +/* A few forward declarations */ +class handle; class object; +class str; class iterator; +struct arg; struct arg_v; + +NAMESPACE_BEGIN(detail) +class args_proxy; +inline bool isinstance_generic(handle obj, const std::type_info &tp); + +// Accessor forward declarations +template class accessor; +namespace accessor_policies { + struct obj_attr; + struct str_attr; + struct generic_item; + struct sequence_item; + struct list_item; + struct tuple_item; +} +using obj_attr_accessor = accessor; +using str_attr_accessor = accessor; +using item_accessor = accessor; +using sequence_accessor = accessor; +using list_accessor = accessor; +using tuple_accessor = accessor; + +/// Tag and check to identify a class which implements the Python object API +class pyobject_tag { }; +template using is_pyobject = std::is_base_of>; + +/** \rst + A mixin class which adds common functions to `handle`, `object` and various accessors. + The only requirement for `Derived` is to implement ``PyObject *Derived::ptr() const``. +\endrst */ +template +class object_api : public pyobject_tag { + const Derived &derived() const { return static_cast(*this); } + +public: + /** \rst + Return an iterator equivalent to calling ``iter()`` in Python. The object + must be a collection which supports the iteration protocol. + \endrst */ + iterator begin() const; + /// Return a sentinel which ends iteration. + iterator end() const; + + /** \rst + Return an internal functor to invoke the object's sequence protocol. Casting + the returned ``detail::item_accessor`` instance to a `handle` or `object` + subclass causes a corresponding call to ``__getitem__``. Assigning a `handle` + or `object` subclass causes a call to ``__setitem__``. + \endrst */ + item_accessor operator[](handle key) const; + /// See above (the only difference is that they key is provided as a string literal) + item_accessor operator[](const char *key) const; + + /** \rst + Return an internal functor to access the object's attributes. Casting the + returned ``detail::obj_attr_accessor`` instance to a `handle` or `object` + subclass causes a corresponding call to ``getattr``. Assigning a `handle` + or `object` subclass causes a call to ``setattr``. + \endrst */ + obj_attr_accessor attr(handle key) const; + /// See above (the only difference is that they key is provided as a string literal) + str_attr_accessor attr(const char *key) const; + + /** \rst + Matches * unpacking in Python, e.g. to unpack arguments out of a ``tuple`` + or ``list`` for a function call. Applying another * to the result yields + ** unpacking, e.g. to unpack a dict as function keyword arguments. + See :ref:`calling_python_functions`. + \endrst */ + args_proxy operator*() const; + + /// Check if the given item is contained within this object, i.e. ``item in obj``. + template bool contains(T &&item) const; + + /** \rst + Assuming the Python object is a function or implements the ``__call__`` + protocol, ``operator()`` invokes the underlying function, passing an + arbitrary set of parameters. The result is returned as a `object` and + may need to be converted back into a Python object using `handle::cast()`. + + When some of the arguments cannot be converted to Python objects, the + function will throw a `cast_error` exception. When the Python function + call fails, a `error_already_set` exception is thrown. + \endrst */ + template + object operator()(Args &&...args) const; + template + PYBIND11_DEPRECATED("call(...) was deprecated in favor of operator()(...)") + object call(Args&&... args) const; + + /// Equivalent to ``obj is other`` in Python. + bool is(object_api const& other) const { return derived().ptr() == other.derived().ptr(); } + /// Equivalent to ``obj is None`` in Python. + bool is_none() const { return derived().ptr() == Py_None; } + PYBIND11_DEPRECATED("Use py::str(obj) instead") + pybind11::str str() const; + + /// Get or set the object's docstring, i.e. ``obj.__doc__``. + str_attr_accessor doc() const; + + /// Return the object's current reference count + int ref_count() const { return static_cast(Py_REFCNT(derived().ptr())); } + /// Return a handle to the Python type object underlying the instance + handle get_type() const; +}; + +NAMESPACE_END(detail) + +/** \rst + Holds a reference to a Python object (no reference counting) + + The `handle` class is a thin wrapper around an arbitrary Python object (i.e. a + ``PyObject *`` in Python's C API). It does not perform any automatic reference + counting and merely provides a basic C++ interface to various Python API functions. + + .. seealso:: + The `object` class inherits from `handle` and adds automatic reference + counting features. +\endrst */ +class handle : public detail::object_api { +public: + /// The default constructor creates a handle with a ``nullptr``-valued pointer + handle() = default; + /// Creates a ``handle`` from the given raw Python object pointer + handle(PyObject *ptr) : m_ptr(ptr) { } // Allow implicit conversion from PyObject* + + /// Return the underlying ``PyObject *`` pointer + PyObject *ptr() const { return m_ptr; } + PyObject *&ptr() { return m_ptr; } + + /** \rst + Manually increase the reference count of the Python object. Usually, it is + preferable to use the `object` class which derives from `handle` and calls + this function automatically. Returns a reference to itself. + \endrst */ + const handle& inc_ref() const & { Py_XINCREF(m_ptr); return *this; } + + /** \rst + Manually decrease the reference count of the Python object. Usually, it is + preferable to use the `object` class which derives from `handle` and calls + this function automatically. Returns a reference to itself. + \endrst */ + const handle& dec_ref() const & { Py_XDECREF(m_ptr); return *this; } + + /** \rst + Attempt to cast the Python object into the given C++ type. A `cast_error` + will be throw upon failure. + \endrst */ + template T cast() const; + /// Return ``true`` when the `handle` wraps a valid Python object + explicit operator bool() const { return m_ptr != nullptr; } + /** \rst + Deprecated: Check that the underlying pointers are the same. + Equivalent to ``obj1 is obj2`` in Python. + \endrst */ + PYBIND11_DEPRECATED("Use obj1.is(obj2) instead") + bool operator==(const handle &h) const { return m_ptr == h.m_ptr; } + PYBIND11_DEPRECATED("Use !obj1.is(obj2) instead") + bool operator!=(const handle &h) const { return m_ptr != h.m_ptr; } + PYBIND11_DEPRECATED("Use handle::operator bool() instead") + bool check() const { return m_ptr != nullptr; } +protected: + PyObject *m_ptr = nullptr; +}; + +/** \rst + Holds a reference to a Python object (with reference counting) + + Like `handle`, the `object` class is a thin wrapper around an arbitrary Python + object (i.e. a ``PyObject *`` in Python's C API). In contrast to `handle`, it + optionally increases the object's reference count upon construction, and it + *always* decreases the reference count when the `object` instance goes out of + scope and is destructed. When using `object` instances consistently, it is much + easier to get reference counting right at the first attempt. +\endrst */ +class object : public handle { +public: + object() = default; + PYBIND11_DEPRECATED("Use reinterpret_borrow() or reinterpret_steal()") + object(handle h, bool is_borrowed) : handle(h) { if (is_borrowed) inc_ref(); } + /// Copy constructor; always increases the reference count + object(const object &o) : handle(o) { inc_ref(); } + /// Move constructor; steals the object from ``other`` and preserves its reference count + object(object &&other) noexcept { m_ptr = other.m_ptr; other.m_ptr = nullptr; } + /// Destructor; automatically calls `handle::dec_ref()` + ~object() { dec_ref(); } + + /** \rst + Resets the internal pointer to ``nullptr`` without without decreasing the + object's reference count. The function returns a raw handle to the original + Python object. + \endrst */ + handle release() { + PyObject *tmp = m_ptr; + m_ptr = nullptr; + return handle(tmp); + } + + object& operator=(const object &other) { + other.inc_ref(); + dec_ref(); + m_ptr = other.m_ptr; + return *this; + } + + object& operator=(object &&other) noexcept { + if (this != &other) { + handle temp(m_ptr); + m_ptr = other.m_ptr; + other.m_ptr = nullptr; + temp.dec_ref(); + } + return *this; + } + + // Calling cast() on an object lvalue just copies (via handle::cast) + template T cast() const &; + // Calling on an object rvalue does a move, if needed and/or possible + template T cast() &&; + +protected: + // Tags for choosing constructors from raw PyObject * + struct borrowed_t { }; + struct stolen_t { }; + + template friend T reinterpret_borrow(handle); + template friend T reinterpret_steal(handle); + +public: + // Only accessible from derived classes and the reinterpret_* functions + object(handle h, borrowed_t) : handle(h) { inc_ref(); } + object(handle h, stolen_t) : handle(h) { } +}; + +/** \rst + Declare that a `handle` or ``PyObject *`` is a certain type and borrow the reference. + The target type ``T`` must be `object` or one of its derived classes. The function + doesn't do any conversions or checks. It's up to the user to make sure that the + target type is correct. + + .. code-block:: cpp + + PyObject *p = PyList_GetItem(obj, index); + py::object o = reinterpret_borrow(p); + // or + py::tuple t = reinterpret_borrow(p); // <-- `p` must be already be a `tuple` +\endrst */ +template T reinterpret_borrow(handle h) { return {h, object::borrowed_t{}}; } + +/** \rst + Like `reinterpret_borrow`, but steals the reference. + + .. code-block:: cpp + + PyObject *p = PyObject_Str(obj); + py::str s = reinterpret_steal(p); // <-- `p` must be already be a `str` +\endrst */ +template T reinterpret_steal(handle h) { return {h, object::stolen_t{}}; } + +NAMESPACE_BEGIN(detail) +inline std::string error_string(); +NAMESPACE_END(detail) + +/// Fetch and hold an error which was already set in Python. An instance of this is typically +/// thrown to propagate python-side errors back through C++ which can either be caught manually or +/// else falls back to the function dispatcher (which then raises the captured error back to +/// python). +class error_already_set : public std::runtime_error { +public: + /// Constructs a new exception from the current Python error indicator, if any. The current + /// Python error indicator will be cleared. + error_already_set() : std::runtime_error(detail::error_string()) { + PyErr_Fetch(&type.ptr(), &value.ptr(), &trace.ptr()); + } + + inline ~error_already_set(); + + /// Give the currently-held error back to Python, if any. If there is currently a Python error + /// already set it is cleared first. After this call, the current object no longer stores the + /// error variables (but the `.what()` string is still available). + void restore() { PyErr_Restore(type.release().ptr(), value.release().ptr(), trace.release().ptr()); } + + // Does nothing; provided for backwards compatibility. + PYBIND11_DEPRECATED("Use of error_already_set.clear() is deprecated") + void clear() {} + + /// Check if the currently trapped error type matches the given Python exception class (or a + /// subclass thereof). May also be passed a tuple to search for any exception class matches in + /// the given tuple. + bool matches(handle ex) const { return PyErr_GivenExceptionMatches(ex.ptr(), type.ptr()); } + +private: + object type, value, trace; +}; + +/** \defgroup python_builtins _ + Unless stated otherwise, the following C++ functions behave the same + as their Python counterparts. + */ + +/** \ingroup python_builtins + \rst + Return true if ``obj`` is an instance of ``T``. Type ``T`` must be a subclass of + `object` or a class which was exposed to Python as ``py::class_``. +\endrst */ +template ::value, int> = 0> +bool isinstance(handle obj) { return T::check_(obj); } + +template ::value, int> = 0> +bool isinstance(handle obj) { return detail::isinstance_generic(obj, typeid(T)); } + +template <> inline bool isinstance(handle obj) = delete; +template <> inline bool isinstance(handle obj) { return obj.ptr() != nullptr; } + +/// \ingroup python_builtins +/// Return true if ``obj`` is an instance of the ``type``. +inline bool isinstance(handle obj, handle type) { + const auto result = PyObject_IsInstance(obj.ptr(), type.ptr()); + if (result == -1) + throw error_already_set(); + return result != 0; +} + +/// \addtogroup python_builtins +/// @{ +inline bool hasattr(handle obj, handle name) { + return PyObject_HasAttr(obj.ptr(), name.ptr()) == 1; +} + +inline bool hasattr(handle obj, const char *name) { + return PyObject_HasAttrString(obj.ptr(), name) == 1; +} + +inline object getattr(handle obj, handle name) { + PyObject *result = PyObject_GetAttr(obj.ptr(), name.ptr()); + if (!result) { throw error_already_set(); } + return reinterpret_steal(result); +} + +inline object getattr(handle obj, const char *name) { + PyObject *result = PyObject_GetAttrString(obj.ptr(), name); + if (!result) { throw error_already_set(); } + return reinterpret_steal(result); +} + +inline object getattr(handle obj, handle name, handle default_) { + if (PyObject *result = PyObject_GetAttr(obj.ptr(), name.ptr())) { + return reinterpret_steal(result); + } else { + PyErr_Clear(); + return reinterpret_borrow(default_); + } +} + +inline object getattr(handle obj, const char *name, handle default_) { + if (PyObject *result = PyObject_GetAttrString(obj.ptr(), name)) { + return reinterpret_steal(result); + } else { + PyErr_Clear(); + return reinterpret_borrow(default_); + } +} + +inline void setattr(handle obj, handle name, handle value) { + if (PyObject_SetAttr(obj.ptr(), name.ptr(), value.ptr()) != 0) { throw error_already_set(); } +} + +inline void setattr(handle obj, const char *name, handle value) { + if (PyObject_SetAttrString(obj.ptr(), name, value.ptr()) != 0) { throw error_already_set(); } +} +/// @} python_builtins + +NAMESPACE_BEGIN(detail) +inline handle get_function(handle value) { + if (value) { +#if PY_MAJOR_VERSION >= 3 + if (PyInstanceMethod_Check(value.ptr())) + value = PyInstanceMethod_GET_FUNCTION(value.ptr()); + else +#endif + if (PyMethod_Check(value.ptr())) + value = PyMethod_GET_FUNCTION(value.ptr()); + } + return value; +} + +// Helper aliases/functions to support implicit casting of values given to python accessors/methods. +// When given a pyobject, this simply returns the pyobject as-is; for other C++ type, the value goes +// through pybind11::cast(obj) to convert it to an `object`. +template ::value, int> = 0> +auto object_or_cast(T &&o) -> decltype(std::forward(o)) { return std::forward(o); } +// The following casting version is implemented in cast.h: +template ::value, int> = 0> +object object_or_cast(T &&o); +// Match a PyObject*, which we want to convert directly to handle via its converting constructor +inline handle object_or_cast(PyObject *ptr) { return ptr; } + + +template +class accessor : public object_api> { + using key_type = typename Policy::key_type; + +public: + accessor(handle obj, key_type key) : obj(obj), key(std::move(key)) { } + accessor(const accessor &a) = default; + accessor(accessor &&a) = default; + + // accessor overload required to override default assignment operator (templates are not allowed + // to replace default compiler-generated assignments). + void operator=(const accessor &a) && { std::move(*this).operator=(handle(a)); } + void operator=(const accessor &a) & { operator=(handle(a)); } + + template void operator=(T &&value) && { + Policy::set(obj, key, object_or_cast(std::forward(value))); + } + template void operator=(T &&value) & { + get_cache() = reinterpret_borrow(object_or_cast(std::forward(value))); + } + + template + PYBIND11_DEPRECATED("Use of obj.attr(...) as bool is deprecated in favor of pybind11::hasattr(obj, ...)") + explicit operator enable_if_t::value || + std::is_same::value, bool>() const { + return hasattr(obj, key); + } + template + PYBIND11_DEPRECATED("Use of obj[key] as bool is deprecated in favor of obj.contains(key)") + explicit operator enable_if_t::value, bool>() const { + return obj.contains(key); + } + + operator object() const { return get_cache(); } + PyObject *ptr() const { return get_cache().ptr(); } + template T cast() const { return get_cache().template cast(); } + +private: + object &get_cache() const { + if (!cache) { cache = Policy::get(obj, key); } + return cache; + } + +private: + handle obj; + key_type key; + mutable object cache; +}; + +NAMESPACE_BEGIN(accessor_policies) +struct obj_attr { + using key_type = object; + static object get(handle obj, handle key) { return getattr(obj, key); } + static void set(handle obj, handle key, handle val) { setattr(obj, key, val); } +}; + +struct str_attr { + using key_type = const char *; + static object get(handle obj, const char *key) { return getattr(obj, key); } + static void set(handle obj, const char *key, handle val) { setattr(obj, key, val); } +}; + +struct generic_item { + using key_type = object; + + static object get(handle obj, handle key) { + PyObject *result = PyObject_GetItem(obj.ptr(), key.ptr()); + if (!result) { throw error_already_set(); } + return reinterpret_steal(result); + } + + static void set(handle obj, handle key, handle val) { + if (PyObject_SetItem(obj.ptr(), key.ptr(), val.ptr()) != 0) { throw error_already_set(); } + } +}; + +struct sequence_item { + using key_type = size_t; + + static object get(handle obj, size_t index) { + PyObject *result = PySequence_GetItem(obj.ptr(), static_cast(index)); + if (!result) { throw error_already_set(); } + return reinterpret_steal(result); + } + + static void set(handle obj, size_t index, handle val) { + // PySequence_SetItem does not steal a reference to 'val' + if (PySequence_SetItem(obj.ptr(), static_cast(index), val.ptr()) != 0) { + throw error_already_set(); + } + } +}; + +struct list_item { + using key_type = size_t; + + static object get(handle obj, size_t index) { + PyObject *result = PyList_GetItem(obj.ptr(), static_cast(index)); + if (!result) { throw error_already_set(); } + return reinterpret_borrow(result); + } + + static void set(handle obj, size_t index, handle val) { + // PyList_SetItem steals a reference to 'val' + if (PyList_SetItem(obj.ptr(), static_cast(index), val.inc_ref().ptr()) != 0) { + throw error_already_set(); + } + } +}; + +struct tuple_item { + using key_type = size_t; + + static object get(handle obj, size_t index) { + PyObject *result = PyTuple_GetItem(obj.ptr(), static_cast(index)); + if (!result) { throw error_already_set(); } + return reinterpret_borrow(result); + } + + static void set(handle obj, size_t index, handle val) { + // PyTuple_SetItem steals a reference to 'val' + if (PyTuple_SetItem(obj.ptr(), static_cast(index), val.inc_ref().ptr()) != 0) { + throw error_already_set(); + } + } +}; +NAMESPACE_END(accessor_policies) + +/// STL iterator template used for tuple, list, sequence and dict +template +class generic_iterator : public Policy { + using It = generic_iterator; + +public: + using difference_type = ssize_t; + using iterator_category = typename Policy::iterator_category; + using value_type = typename Policy::value_type; + using reference = typename Policy::reference; + using pointer = typename Policy::pointer; + + generic_iterator() = default; + generic_iterator(handle seq, ssize_t index) : Policy(seq, index) { } + + reference operator*() const { return Policy::dereference(); } + reference operator[](difference_type n) const { return *(*this + n); } + pointer operator->() const { return **this; } + + It &operator++() { Policy::increment(); return *this; } + It operator++(int) { auto copy = *this; Policy::increment(); return copy; } + It &operator--() { Policy::decrement(); return *this; } + It operator--(int) { auto copy = *this; Policy::decrement(); return copy; } + It &operator+=(difference_type n) { Policy::advance(n); return *this; } + It &operator-=(difference_type n) { Policy::advance(-n); return *this; } + + friend It operator+(const It &a, difference_type n) { auto copy = a; return copy += n; } + friend It operator+(difference_type n, const It &b) { return b + n; } + friend It operator-(const It &a, difference_type n) { auto copy = a; return copy -= n; } + friend difference_type operator-(const It &a, const It &b) { return a.distance_to(b); } + + friend bool operator==(const It &a, const It &b) { return a.equal(b); } + friend bool operator!=(const It &a, const It &b) { return !(a == b); } + friend bool operator< (const It &a, const It &b) { return b - a > 0; } + friend bool operator> (const It &a, const It &b) { return b < a; } + friend bool operator>=(const It &a, const It &b) { return !(a < b); } + friend bool operator<=(const It &a, const It &b) { return !(a > b); } +}; + +NAMESPACE_BEGIN(iterator_policies) +/// Quick proxy class needed to implement ``operator->`` for iterators which can't return pointers +template +struct arrow_proxy { + T value; + + arrow_proxy(T &&value) : value(std::move(value)) { } + T *operator->() const { return &value; } +}; + +/// Lightweight iterator policy using just a simple pointer: see ``PySequence_Fast_ITEMS`` +class sequence_fast_readonly { +protected: + using iterator_category = std::random_access_iterator_tag; + using value_type = handle; + using reference = const handle; + using pointer = arrow_proxy; + + sequence_fast_readonly(handle obj, ssize_t n) : ptr(PySequence_Fast_ITEMS(obj.ptr()) + n) { } + + reference dereference() const { return *ptr; } + void increment() { ++ptr; } + void decrement() { --ptr; } + void advance(ssize_t n) { ptr += n; } + bool equal(const sequence_fast_readonly &b) const { return ptr == b.ptr; } + ssize_t distance_to(const sequence_fast_readonly &b) const { return ptr - b.ptr; } + +private: + PyObject **ptr; +}; + +/// Full read and write access using the sequence protocol: see ``detail::sequence_accessor`` +class sequence_slow_readwrite { +protected: + using iterator_category = std::random_access_iterator_tag; + using value_type = object; + using reference = sequence_accessor; + using pointer = arrow_proxy; + + sequence_slow_readwrite(handle obj, ssize_t index) : obj(obj), index(index) { } + + reference dereference() const { return {obj, static_cast(index)}; } + void increment() { ++index; } + void decrement() { --index; } + void advance(ssize_t n) { index += n; } + bool equal(const sequence_slow_readwrite &b) const { return index == b.index; } + ssize_t distance_to(const sequence_slow_readwrite &b) const { return index - b.index; } + +private: + handle obj; + ssize_t index; +}; + +/// Python's dictionary protocol permits this to be a forward iterator +class dict_readonly { +protected: + using iterator_category = std::forward_iterator_tag; + using value_type = std::pair; + using reference = const value_type; + using pointer = arrow_proxy; + + dict_readonly() = default; + dict_readonly(handle obj, ssize_t pos) : obj(obj), pos(pos) { increment(); } + + reference dereference() const { return {key, value}; } + void increment() { if (!PyDict_Next(obj.ptr(), &pos, &key, &value)) { pos = -1; } } + bool equal(const dict_readonly &b) const { return pos == b.pos; } + +private: + handle obj; + PyObject *key, *value; + ssize_t pos = -1; +}; +NAMESPACE_END(iterator_policies) + +#if !defined(PYPY_VERSION) +using tuple_iterator = generic_iterator; +using list_iterator = generic_iterator; +#else +using tuple_iterator = generic_iterator; +using list_iterator = generic_iterator; +#endif + +using sequence_iterator = generic_iterator; +using dict_iterator = generic_iterator; + +inline bool PyIterable_Check(PyObject *obj) { + PyObject *iter = PyObject_GetIter(obj); + if (iter) { + Py_DECREF(iter); + return true; + } else { + PyErr_Clear(); + return false; + } +} + +inline bool PyNone_Check(PyObject *o) { return o == Py_None; } + +inline bool PyUnicode_Check_Permissive(PyObject *o) { return PyUnicode_Check(o) || PYBIND11_BYTES_CHECK(o); } + +class kwargs_proxy : public handle { +public: + explicit kwargs_proxy(handle h) : handle(h) { } +}; + +class args_proxy : public handle { +public: + explicit args_proxy(handle h) : handle(h) { } + kwargs_proxy operator*() const { return kwargs_proxy(*this); } +}; + +/// Python argument categories (using PEP 448 terms) +template using is_keyword = std::is_base_of; +template using is_s_unpacking = std::is_same; // * unpacking +template using is_ds_unpacking = std::is_same; // ** unpacking +template using is_positional = satisfies_none_of; +template using is_keyword_or_ds = satisfies_any_of; + +// Call argument collector forward declarations +template +class simple_collector; +template +class unpacking_collector; + +NAMESPACE_END(detail) + +// TODO: After the deprecated constructors are removed, this macro can be simplified by +// inheriting ctors: `using Parent::Parent`. It's not an option right now because +// the `using` statement triggers the parent deprecation warning even if the ctor +// isn't even used. +#define PYBIND11_OBJECT_COMMON(Name, Parent, CheckFun) \ + public: \ + PYBIND11_DEPRECATED("Use reinterpret_borrow<"#Name">() or reinterpret_steal<"#Name">()") \ + Name(handle h, bool is_borrowed) : Parent(is_borrowed ? Parent(h, borrowed_t{}) : Parent(h, stolen_t{})) { } \ + Name(handle h, borrowed_t) : Parent(h, borrowed_t{}) { } \ + Name(handle h, stolen_t) : Parent(h, stolen_t{}) { } \ + PYBIND11_DEPRECATED("Use py::isinstance(obj) instead") \ + bool check() const { return m_ptr != nullptr && (bool) CheckFun(m_ptr); } \ + static bool check_(handle h) { return h.ptr() != nullptr && CheckFun(h.ptr()); } + +#define PYBIND11_OBJECT_CVT(Name, Parent, CheckFun, ConvertFun) \ + PYBIND11_OBJECT_COMMON(Name, Parent, CheckFun) \ + /* This is deliberately not 'explicit' to allow implicit conversion from object: */ \ + Name(const object &o) : Parent(ConvertFun(o.ptr()), stolen_t{}) { if (!m_ptr) throw error_already_set(); } + +#define PYBIND11_OBJECT(Name, Parent, CheckFun) \ + PYBIND11_OBJECT_COMMON(Name, Parent, CheckFun) \ + /* This is deliberately not 'explicit' to allow implicit conversion from object: */ \ + Name(const object &o) : Parent(o) { } \ + Name(object &&o) : Parent(std::move(o)) { } + +#define PYBIND11_OBJECT_DEFAULT(Name, Parent, CheckFun) \ + PYBIND11_OBJECT(Name, Parent, CheckFun) \ + Name() : Parent() { } + +/// \addtogroup pytypes +/// @{ + +/** \rst + Wraps a Python iterator so that it can also be used as a C++ input iterator + + Caveat: copying an iterator does not (and cannot) clone the internal + state of the Python iterable. This also applies to the post-increment + operator. This iterator should only be used to retrieve the current + value using ``operator*()``. +\endrst */ +class iterator : public object { +public: + using iterator_category = std::input_iterator_tag; + using difference_type = ssize_t; + using value_type = handle; + using reference = const handle; + using pointer = const handle *; + + PYBIND11_OBJECT_DEFAULT(iterator, object, PyIter_Check) + + iterator& operator++() { + advance(); + return *this; + } + + iterator operator++(int) { + auto rv = *this; + advance(); + return rv; + } + + reference operator*() const { + if (m_ptr && !value.ptr()) { + auto& self = const_cast(*this); + self.advance(); + } + return value; + } + + pointer operator->() const { operator*(); return &value; } + + /** \rst + The value which marks the end of the iteration. ``it == iterator::sentinel()`` + is equivalent to catching ``StopIteration`` in Python. + + .. code-block:: cpp + + void foo(py::iterator it) { + while (it != py::iterator::sentinel()) { + // use `*it` + ++it; + } + } + \endrst */ + static iterator sentinel() { return {}; } + + friend bool operator==(const iterator &a, const iterator &b) { return a->ptr() == b->ptr(); } + friend bool operator!=(const iterator &a, const iterator &b) { return a->ptr() != b->ptr(); } + +private: + void advance() { + value = reinterpret_steal(PyIter_Next(m_ptr)); + if (PyErr_Occurred()) { throw error_already_set(); } + } + +private: + object value = {}; +}; + +class iterable : public object { +public: + PYBIND11_OBJECT_DEFAULT(iterable, object, detail::PyIterable_Check) +}; + +class bytes; + +class str : public object { +public: + PYBIND11_OBJECT_CVT(str, object, detail::PyUnicode_Check_Permissive, raw_str) + + str(const char *c, size_t n) + : object(PyUnicode_FromStringAndSize(c, (ssize_t) n), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate string object!"); + } + + // 'explicit' is explicitly omitted from the following constructors to allow implicit conversion to py::str from C++ string-like objects + str(const char *c = "") + : object(PyUnicode_FromString(c), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate string object!"); + } + + str(const std::string &s) : str(s.data(), s.size()) { } + + explicit str(const bytes &b); + + /** \rst + Return a string representation of the object. This is analogous to + the ``str()`` function in Python. + \endrst */ + explicit str(handle h) : object(raw_str(h.ptr()), stolen_t{}) { } + + operator std::string() const { + object temp = *this; + if (PyUnicode_Check(m_ptr)) { + temp = reinterpret_steal(PyUnicode_AsUTF8String(m_ptr)); + if (!temp) + pybind11_fail("Unable to extract string contents! (encoding issue)"); + } + char *buffer; + ssize_t length; + if (PYBIND11_BYTES_AS_STRING_AND_SIZE(temp.ptr(), &buffer, &length)) + pybind11_fail("Unable to extract string contents! (invalid type)"); + return std::string(buffer, (size_t) length); + } + + template + str format(Args &&...args) const { + return attr("format")(std::forward(args)...); + } + +private: + /// Return string representation -- always returns a new reference, even if already a str + static PyObject *raw_str(PyObject *op) { + PyObject *str_value = PyObject_Str(op); +#if PY_MAJOR_VERSION < 3 + if (!str_value) throw error_already_set(); + PyObject *unicode = PyUnicode_FromEncodedObject(str_value, "utf-8", nullptr); + Py_XDECREF(str_value); str_value = unicode; +#endif + return str_value; + } +}; +/// @} pytypes + +inline namespace literals { +/** \rst + String literal version of `str` + \endrst */ +inline str operator"" _s(const char *s, size_t size) { return {s, size}; } +} + +/// \addtogroup pytypes +/// @{ +class bytes : public object { +public: + PYBIND11_OBJECT(bytes, object, PYBIND11_BYTES_CHECK) + + // Allow implicit conversion: + bytes(const char *c = "") + : object(PYBIND11_BYTES_FROM_STRING(c), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate bytes object!"); + } + + bytes(const char *c, size_t n) + : object(PYBIND11_BYTES_FROM_STRING_AND_SIZE(c, (ssize_t) n), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate bytes object!"); + } + + // Allow implicit conversion: + bytes(const std::string &s) : bytes(s.data(), s.size()) { } + + explicit bytes(const pybind11::str &s); + + operator std::string() const { + char *buffer; + ssize_t length; + if (PYBIND11_BYTES_AS_STRING_AND_SIZE(m_ptr, &buffer, &length)) + pybind11_fail("Unable to extract bytes contents!"); + return std::string(buffer, (size_t) length); + } +}; + +inline bytes::bytes(const pybind11::str &s) { + object temp = s; + if (PyUnicode_Check(s.ptr())) { + temp = reinterpret_steal(PyUnicode_AsUTF8String(s.ptr())); + if (!temp) + pybind11_fail("Unable to extract string contents! (encoding issue)"); + } + char *buffer; + ssize_t length; + if (PYBIND11_BYTES_AS_STRING_AND_SIZE(temp.ptr(), &buffer, &length)) + pybind11_fail("Unable to extract string contents! (invalid type)"); + auto obj = reinterpret_steal(PYBIND11_BYTES_FROM_STRING_AND_SIZE(buffer, length)); + if (!obj) + pybind11_fail("Could not allocate bytes object!"); + m_ptr = obj.release().ptr(); +} + +inline str::str(const bytes& b) { + char *buffer; + ssize_t length; + if (PYBIND11_BYTES_AS_STRING_AND_SIZE(b.ptr(), &buffer, &length)) + pybind11_fail("Unable to extract bytes contents!"); + auto obj = reinterpret_steal(PyUnicode_FromStringAndSize(buffer, (ssize_t) length)); + if (!obj) + pybind11_fail("Could not allocate string object!"); + m_ptr = obj.release().ptr(); +} + +class none : public object { +public: + PYBIND11_OBJECT(none, object, detail::PyNone_Check) + none() : object(Py_None, borrowed_t{}) { } +}; + +class bool_ : public object { +public: + PYBIND11_OBJECT_CVT(bool_, object, PyBool_Check, raw_bool) + bool_() : object(Py_False, borrowed_t{}) { } + // Allow implicit conversion from and to `bool`: + bool_(bool value) : object(value ? Py_True : Py_False, borrowed_t{}) { } + operator bool() const { return m_ptr && PyLong_AsLong(m_ptr) != 0; } + +private: + /// Return the truth value of an object -- always returns a new reference + static PyObject *raw_bool(PyObject *op) { + const auto value = PyObject_IsTrue(op); + if (value == -1) return nullptr; + return handle(value ? Py_True : Py_False).inc_ref().ptr(); + } +}; + +NAMESPACE_BEGIN(detail) +// Converts a value to the given unsigned type. If an error occurs, you get back (Unsigned) -1; +// otherwise you get back the unsigned long or unsigned long long value cast to (Unsigned). +// (The distinction is critically important when casting a returned -1 error value to some other +// unsigned type: (A)-1 != (B)-1 when A and B are unsigned types of different sizes). +template +Unsigned as_unsigned(PyObject *o) { + if (sizeof(Unsigned) <= sizeof(unsigned long) +#if PY_VERSION_HEX < 0x03000000 + || PyInt_Check(o) +#endif + ) { + unsigned long v = PyLong_AsUnsignedLong(o); + return v == (unsigned long) -1 && PyErr_Occurred() ? (Unsigned) -1 : (Unsigned) v; + } + else { + unsigned long long v = PyLong_AsUnsignedLongLong(o); + return v == (unsigned long long) -1 && PyErr_Occurred() ? (Unsigned) -1 : (Unsigned) v; + } +} +NAMESPACE_END(detail) + +class int_ : public object { +public: + PYBIND11_OBJECT_CVT(int_, object, PYBIND11_LONG_CHECK, PyNumber_Long) + int_() : object(PyLong_FromLong(0), stolen_t{}) { } + // Allow implicit conversion from C++ integral types: + template ::value, int> = 0> + int_(T value) { + if (sizeof(T) <= sizeof(long)) { + if (std::is_signed::value) + m_ptr = PyLong_FromLong((long) value); + else + m_ptr = PyLong_FromUnsignedLong((unsigned long) value); + } else { + if (std::is_signed::value) + m_ptr = PyLong_FromLongLong((long long) value); + else + m_ptr = PyLong_FromUnsignedLongLong((unsigned long long) value); + } + if (!m_ptr) pybind11_fail("Could not allocate int object!"); + } + + template ::value, int> = 0> + operator T() const { + return std::is_unsigned::value + ? detail::as_unsigned(m_ptr) + : sizeof(T) <= sizeof(long) + ? (T) PyLong_AsLong(m_ptr) + : (T) PYBIND11_LONG_AS_LONGLONG(m_ptr); + } +}; + +class float_ : public object { +public: + PYBIND11_OBJECT_CVT(float_, object, PyFloat_Check, PyNumber_Float) + // Allow implicit conversion from float/double: + float_(float value) : object(PyFloat_FromDouble((double) value), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate float object!"); + } + float_(double value = .0) : object(PyFloat_FromDouble((double) value), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate float object!"); + } + operator float() const { return (float) PyFloat_AsDouble(m_ptr); } + operator double() const { return (double) PyFloat_AsDouble(m_ptr); } +}; + +class weakref : public object { +public: + PYBIND11_OBJECT_DEFAULT(weakref, object, PyWeakref_Check) + explicit weakref(handle obj, handle callback = {}) + : object(PyWeakref_NewRef(obj.ptr(), callback.ptr()), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate weak reference!"); + } +}; + +class slice : public object { +public: + PYBIND11_OBJECT_DEFAULT(slice, object, PySlice_Check) + slice(ssize_t start_, ssize_t stop_, ssize_t step_) { + int_ start(start_), stop(stop_), step(step_); + m_ptr = PySlice_New(start.ptr(), stop.ptr(), step.ptr()); + if (!m_ptr) pybind11_fail("Could not allocate slice object!"); + } + bool compute(size_t length, size_t *start, size_t *stop, size_t *step, + size_t *slicelength) const { + return PySlice_GetIndicesEx((PYBIND11_SLICE_OBJECT *) m_ptr, + (ssize_t) length, (ssize_t *) start, + (ssize_t *) stop, (ssize_t *) step, + (ssize_t *) slicelength) == 0; + } +}; + +class capsule : public object { +public: + PYBIND11_OBJECT_DEFAULT(capsule, object, PyCapsule_CheckExact) + PYBIND11_DEPRECATED("Use reinterpret_borrow() or reinterpret_steal()") + capsule(PyObject *ptr, bool is_borrowed) : object(is_borrowed ? object(ptr, borrowed_t{}) : object(ptr, stolen_t{})) { } + + explicit capsule(const void *value, const char *name = nullptr, void (*destructor)(PyObject *) = nullptr) + : object(PyCapsule_New(const_cast(value), name, destructor), stolen_t{}) { + if (!m_ptr) + pybind11_fail("Could not allocate capsule object!"); + } + + PYBIND11_DEPRECATED("Please pass a destructor that takes a void pointer as input") + capsule(const void *value, void (*destruct)(PyObject *)) + : object(PyCapsule_New(const_cast(value), nullptr, destruct), stolen_t{}) { + if (!m_ptr) + pybind11_fail("Could not allocate capsule object!"); + } + + capsule(const void *value, void (*destructor)(void *)) { + m_ptr = PyCapsule_New(const_cast(value), nullptr, [](PyObject *o) { + auto destructor = reinterpret_cast(PyCapsule_GetContext(o)); + void *ptr = PyCapsule_GetPointer(o, nullptr); + destructor(ptr); + }); + + if (!m_ptr) + pybind11_fail("Could not allocate capsule object!"); + + if (PyCapsule_SetContext(m_ptr, (void *) destructor) != 0) + pybind11_fail("Could not set capsule context!"); + } + + capsule(void (*destructor)()) { + m_ptr = PyCapsule_New(reinterpret_cast(destructor), nullptr, [](PyObject *o) { + auto destructor = reinterpret_cast(PyCapsule_GetPointer(o, nullptr)); + destructor(); + }); + + if (!m_ptr) + pybind11_fail("Could not allocate capsule object!"); + } + + template operator T *() const { + auto name = this->name(); + T * result = static_cast(PyCapsule_GetPointer(m_ptr, name)); + if (!result) pybind11_fail("Unable to extract capsule contents!"); + return result; + } + + const char *name() const { return PyCapsule_GetName(m_ptr); } +}; + +class tuple : public object { +public: + PYBIND11_OBJECT_CVT(tuple, object, PyTuple_Check, PySequence_Tuple) + explicit tuple(size_t size = 0) : object(PyTuple_New((ssize_t) size), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate tuple object!"); + } + size_t size() const { return (size_t) PyTuple_Size(m_ptr); } + detail::tuple_accessor operator[](size_t index) const { return {*this, index}; } + detail::tuple_iterator begin() const { return {*this, 0}; } + detail::tuple_iterator end() const { return {*this, PyTuple_GET_SIZE(m_ptr)}; } +}; + +class dict : public object { +public: + PYBIND11_OBJECT_CVT(dict, object, PyDict_Check, raw_dict) + dict() : object(PyDict_New(), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate dict object!"); + } + template ...>::value>, + // MSVC workaround: it can't compile an out-of-line definition, so defer the collector + typename collector = detail::deferred_t, Args...>> + explicit dict(Args &&...args) : dict(collector(std::forward(args)...).kwargs()) { } + + size_t size() const { return (size_t) PyDict_Size(m_ptr); } + detail::dict_iterator begin() const { return {*this, 0}; } + detail::dict_iterator end() const { return {}; } + void clear() const { PyDict_Clear(ptr()); } + bool contains(handle key) const { return PyDict_Contains(ptr(), key.ptr()) == 1; } + bool contains(const char *key) const { return PyDict_Contains(ptr(), pybind11::str(key).ptr()) == 1; } + +private: + /// Call the `dict` Python type -- always returns a new reference + static PyObject *raw_dict(PyObject *op) { + if (PyDict_Check(op)) + return handle(op).inc_ref().ptr(); + return PyObject_CallFunctionObjArgs((PyObject *) &PyDict_Type, op, nullptr); + } +}; + +class sequence : public object { +public: + PYBIND11_OBJECT_DEFAULT(sequence, object, PySequence_Check) + size_t size() const { return (size_t) PySequence_Size(m_ptr); } + detail::sequence_accessor operator[](size_t index) const { return {*this, index}; } + detail::sequence_iterator begin() const { return {*this, 0}; } + detail::sequence_iterator end() const { return {*this, PySequence_Size(m_ptr)}; } +}; + +class list : public object { +public: + PYBIND11_OBJECT_CVT(list, object, PyList_Check, PySequence_List) + explicit list(size_t size = 0) : object(PyList_New((ssize_t) size), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate list object!"); + } + size_t size() const { return (size_t) PyList_Size(m_ptr); } + detail::list_accessor operator[](size_t index) const { return {*this, index}; } + detail::list_iterator begin() const { return {*this, 0}; } + detail::list_iterator end() const { return {*this, PyList_GET_SIZE(m_ptr)}; } + template void append(T &&val) const { + PyList_Append(m_ptr, detail::object_or_cast(std::forward(val)).ptr()); + } +}; + +class args : public tuple { PYBIND11_OBJECT_DEFAULT(args, tuple, PyTuple_Check) }; +class kwargs : public dict { PYBIND11_OBJECT_DEFAULT(kwargs, dict, PyDict_Check) }; + +class set : public object { +public: + PYBIND11_OBJECT_CVT(set, object, PySet_Check, PySet_New) + set() : object(PySet_New(nullptr), stolen_t{}) { + if (!m_ptr) pybind11_fail("Could not allocate set object!"); + } + size_t size() const { return (size_t) PySet_Size(m_ptr); } + template bool add(T &&val) const { + return PySet_Add(m_ptr, detail::object_or_cast(std::forward(val)).ptr()) == 0; + } + void clear() const { PySet_Clear(m_ptr); } +}; + +class function : public object { +public: + PYBIND11_OBJECT_DEFAULT(function, object, PyCallable_Check) + handle cpp_function() const { + handle fun = detail::get_function(m_ptr); + if (fun && PyCFunction_Check(fun.ptr())) + return fun; + return handle(); + } + bool is_cpp_function() const { return (bool) cpp_function(); } +}; + +class buffer : public object { +public: + PYBIND11_OBJECT_DEFAULT(buffer, object, PyObject_CheckBuffer) + + buffer_info request(bool writable = false) { + int flags = PyBUF_STRIDES | PyBUF_FORMAT; + if (writable) flags |= PyBUF_WRITABLE; + Py_buffer *view = new Py_buffer(); + if (PyObject_GetBuffer(m_ptr, view, flags) != 0) { + delete view; + throw error_already_set(); + } + return buffer_info(view); + } +}; + +class memoryview : public object { +public: + explicit memoryview(const buffer_info& info) { + static Py_buffer buf { }; + // Py_buffer uses signed sizes, strides and shape!.. + static std::vector py_strides { }; + static std::vector py_shape { }; + buf.buf = info.ptr; + buf.itemsize = info.itemsize; + buf.format = const_cast(info.format.c_str()); + buf.ndim = (int) info.ndim; + buf.len = info.size; + py_strides.clear(); + py_shape.clear(); + for (size_t i = 0; i < (size_t) info.ndim; ++i) { + py_strides.push_back(info.strides[i]); + py_shape.push_back(info.shape[i]); + } + buf.strides = py_strides.data(); + buf.shape = py_shape.data(); + buf.suboffsets = nullptr; + buf.readonly = false; + buf.internal = nullptr; + + m_ptr = PyMemoryView_FromBuffer(&buf); + if (!m_ptr) + pybind11_fail("Unable to create memoryview from buffer descriptor"); + } + + PYBIND11_OBJECT_CVT(memoryview, object, PyMemoryView_Check, PyMemoryView_FromObject) +}; +/// @} pytypes + +/// \addtogroup python_builtins +/// @{ +inline size_t len(handle h) { + ssize_t result = PyObject_Length(h.ptr()); + if (result < 0) + pybind11_fail("Unable to compute length of object"); + return (size_t) result; +} + +inline str repr(handle h) { + PyObject *str_value = PyObject_Repr(h.ptr()); + if (!str_value) throw error_already_set(); +#if PY_MAJOR_VERSION < 3 + PyObject *unicode = PyUnicode_FromEncodedObject(str_value, "utf-8", nullptr); + Py_XDECREF(str_value); str_value = unicode; + if (!str_value) throw error_already_set(); +#endif + return reinterpret_steal(str_value); +} + +inline iterator iter(handle obj) { + PyObject *result = PyObject_GetIter(obj.ptr()); + if (!result) { throw error_already_set(); } + return reinterpret_steal(result); +} +/// @} python_builtins + +NAMESPACE_BEGIN(detail) +template iterator object_api::begin() const { return iter(derived()); } +template iterator object_api::end() const { return iterator::sentinel(); } +template item_accessor object_api::operator[](handle key) const { + return {derived(), reinterpret_borrow(key)}; +} +template item_accessor object_api::operator[](const char *key) const { + return {derived(), pybind11::str(key)}; +} +template obj_attr_accessor object_api::attr(handle key) const { + return {derived(), reinterpret_borrow(key)}; +} +template str_attr_accessor object_api::attr(const char *key) const { + return {derived(), key}; +} +template args_proxy object_api::operator*() const { + return args_proxy(derived().ptr()); +} +template template bool object_api::contains(T &&item) const { + return attr("__contains__")(std::forward(item)).template cast(); +} + +template +pybind11::str object_api::str() const { return pybind11::str(derived()); } + +template +str_attr_accessor object_api::doc() const { return attr("__doc__"); } + +template +handle object_api::get_type() const { return (PyObject *) Py_TYPE(derived().ptr()); } + +NAMESPACE_END(detail) +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl.h" new file mode 100644 index 0000000..d07a81f --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl.h" @@ -0,0 +1,367 @@ +/* + pybind11/stl.h: Transparent conversion for STL data types + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "pybind11.h" +#include +#include +#include +#include +#include +#include +#include + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable: 4127) // warning C4127: Conditional expression is constant +#endif + +#ifdef __has_include +// std::optional (but including it in c++14 mode isn't allowed) +# if defined(PYBIND11_CPP17) && __has_include() +# include +# define PYBIND11_HAS_OPTIONAL 1 +# endif +// std::experimental::optional (but not allowed in c++11 mode) +# if defined(PYBIND11_CPP14) && __has_include() +# include +# define PYBIND11_HAS_EXP_OPTIONAL 1 +# endif +// std::variant +# if defined(PYBIND11_CPP17) && __has_include() +# include +# define PYBIND11_HAS_VARIANT 1 +# endif +#elif defined(_MSC_VER) && defined(PYBIND11_CPP17) +# include +# include +# define PYBIND11_HAS_OPTIONAL 1 +# define PYBIND11_HAS_VARIANT 1 +#endif + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +/// Extracts an const lvalue reference or rvalue reference for U based on the type of T (e.g. for +/// forwarding a container element). Typically used indirect via forwarded_type(), below. +template +using forwarded_type = conditional_t< + std::is_lvalue_reference::value, remove_reference_t &, remove_reference_t &&>; + +/// Forwards a value U as rvalue or lvalue according to whether T is rvalue or lvalue; typically +/// used for forwarding a container's elements. +template +forwarded_type forward_like(U &&u) { + return std::forward>(std::forward(u)); +} + +template struct set_caster { + using type = Type; + using key_conv = make_caster; + + bool load(handle src, bool convert) { + if (!isinstance(src)) + return false; + auto s = reinterpret_borrow(src); + value.clear(); + for (auto entry : s) { + key_conv conv; + if (!conv.load(entry, convert)) + return false; + value.insert(cast_op(std::move(conv))); + } + return true; + } + + template + static handle cast(T &&src, return_value_policy policy, handle parent) { + pybind11::set s; + for (auto &value: src) { + auto value_ = reinterpret_steal(key_conv::cast(forward_like(value), policy, parent)); + if (!value_ || !s.add(value_)) + return handle(); + } + return s.release(); + } + + PYBIND11_TYPE_CASTER(type, _("Set[") + key_conv::name() + _("]")); +}; + +template struct map_caster { + using key_conv = make_caster; + using value_conv = make_caster; + + bool load(handle src, bool convert) { + if (!isinstance(src)) + return false; + auto d = reinterpret_borrow(src); + value.clear(); + for (auto it : d) { + key_conv kconv; + value_conv vconv; + if (!kconv.load(it.first.ptr(), convert) || + !vconv.load(it.second.ptr(), convert)) + return false; + value.emplace(cast_op(std::move(kconv)), cast_op(std::move(vconv))); + } + return true; + } + + template + static handle cast(T &&src, return_value_policy policy, handle parent) { + dict d; + for (auto &kv: src) { + auto key = reinterpret_steal(key_conv::cast(forward_like(kv.first), policy, parent)); + auto value = reinterpret_steal(value_conv::cast(forward_like(kv.second), policy, parent)); + if (!key || !value) + return handle(); + d[key] = value; + } + return d.release(); + } + + PYBIND11_TYPE_CASTER(Type, _("Dict[") + key_conv::name() + _(", ") + value_conv::name() + _("]")); +}; + +template struct list_caster { + using value_conv = make_caster; + + bool load(handle src, bool convert) { + if (!isinstance(src)) + return false; + auto s = reinterpret_borrow(src); + value.clear(); + reserve_maybe(s, &value); + for (auto it : s) { + value_conv conv; + if (!conv.load(it, convert)) + return false; + value.push_back(cast_op(std::move(conv))); + } + return true; + } + +private: + template ().reserve(0)), void>::value, int> = 0> + void reserve_maybe(sequence s, Type *) { value.reserve(s.size()); } + void reserve_maybe(sequence, void *) { } + +public: + template + static handle cast(T &&src, return_value_policy policy, handle parent) { + list l(src.size()); + size_t index = 0; + for (auto &value: src) { + auto value_ = reinterpret_steal(value_conv::cast(forward_like(value), policy, parent)); + if (!value_) + return handle(); + PyList_SET_ITEM(l.ptr(), (ssize_t) index++, value_.release().ptr()); // steals a reference + } + return l.release(); + } + + PYBIND11_TYPE_CASTER(Type, _("List[") + value_conv::name() + _("]")); +}; + +template struct type_caster> + : list_caster, Type> { }; + +template struct type_caster> + : list_caster, Type> { }; + +template struct array_caster { + using value_conv = make_caster; + +private: + template + bool require_size(enable_if_t size) { + if (value.size() != size) + value.resize(size); + return true; + } + template + bool require_size(enable_if_t size) { + return size == Size; + } + +public: + bool load(handle src, bool convert) { + if (!isinstance(src)) + return false; + auto l = reinterpret_borrow(src); + if (!require_size(l.size())) + return false; + size_t ctr = 0; + for (auto it : l) { + value_conv conv; + if (!conv.load(it, convert)) + return false; + value[ctr++] = cast_op(std::move(conv)); + } + return true; + } + + template + static handle cast(T &&src, return_value_policy policy, handle parent) { + list l(src.size()); + size_t index = 0; + for (auto &value: src) { + auto value_ = reinterpret_steal(value_conv::cast(forward_like(value), policy, parent)); + if (!value_) + return handle(); + PyList_SET_ITEM(l.ptr(), (ssize_t) index++, value_.release().ptr()); // steals a reference + } + return l.release(); + } + + PYBIND11_TYPE_CASTER(ArrayType, _("List[") + value_conv::name() + _(_(""), _("[") + _() + _("]")) + _("]")); +}; + +template struct type_caster> + : array_caster, Type, false, Size> { }; + +template struct type_caster> + : array_caster, Type, true> { }; + +template struct type_caster> + : set_caster, Key> { }; + +template struct type_caster> + : set_caster, Key> { }; + +template struct type_caster> + : map_caster, Key, Value> { }; + +template struct type_caster> + : map_caster, Key, Value> { }; + +// This type caster is intended to be used for std::optional and std::experimental::optional +template struct optional_caster { + using value_conv = make_caster; + + template + static handle cast(T_ &&src, return_value_policy policy, handle parent) { + if (!src) + return none().inc_ref(); + return value_conv::cast(*std::forward(src), policy, parent); + } + + bool load(handle src, bool convert) { + if (!src) { + return false; + } else if (src.is_none()) { + return true; // default-constructed value is already empty + } + value_conv inner_caster; + if (!inner_caster.load(src, convert)) + return false; + + value.emplace(cast_op(std::move(inner_caster))); + return true; + } + + PYBIND11_TYPE_CASTER(T, _("Optional[") + value_conv::name() + _("]")); +}; + +#if PYBIND11_HAS_OPTIONAL +template struct type_caster> + : public optional_caster> {}; + +template<> struct type_caster + : public void_caster {}; +#endif + +#if PYBIND11_HAS_EXP_OPTIONAL +template struct type_caster> + : public optional_caster> {}; + +template<> struct type_caster + : public void_caster {}; +#endif + +/// Visit a variant and cast any found type to Python +struct variant_caster_visitor { + return_value_policy policy; + handle parent; + + template + handle operator()(T &&src) const { + return make_caster::cast(std::forward(src), policy, parent); + } +}; + +/// Helper class which abstracts away variant's `visit` function. `std::variant` and similar +/// `namespace::variant` types which provide a `namespace::visit()` function are handled here +/// automatically using argument-dependent lookup. Users can provide specializations for other +/// variant-like classes, e.g. `boost::variant` and `boost::apply_visitor`. +template class Variant> +struct visit_helper { + template + static auto call(Args &&...args) -> decltype(visit(std::forward(args)...)) { + return visit(std::forward(args)...); + } +}; + +/// Generic variant caster +template struct variant_caster; + +template class V, typename... Ts> +struct variant_caster> { + static_assert(sizeof...(Ts) > 0, "Variant must consist of at least one alternative."); + + template + bool load_alternative(handle src, bool convert, type_list) { + auto caster = make_caster(); + if (caster.load(src, convert)) { + value = cast_op(caster); + return true; + } + return load_alternative(src, convert, type_list{}); + } + + bool load_alternative(handle, bool, type_list<>) { return false; } + + bool load(handle src, bool convert) { + // Do a first pass without conversions to improve constructor resolution. + // E.g. `py::int_(1).cast>()` needs to fill the `int` + // slot of the variant. Without two-pass loading `double` would be filled + // because it appears first and a conversion is possible. + if (convert && load_alternative(src, false, type_list{})) + return true; + return load_alternative(src, convert, type_list{}); + } + + template + static handle cast(Variant &&src, return_value_policy policy, handle parent) { + return visit_helper::call(variant_caster_visitor{policy, parent}, + std::forward(src)); + } + + using Type = V; + PYBIND11_TYPE_CASTER(Type, _("Union[") + detail::concat(make_caster::name()...) + _("]")); +}; + +#if PYBIND11_HAS_VARIANT +template +struct type_caster> : variant_caster> { }; +#endif +NAMESPACE_END(detail) + +inline std::ostream &operator<<(std::ostream &os, const handle &obj) { + os << (std::string) str(obj); + return os; +} + +NAMESPACE_END(pybind11) + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl_bind.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl_bind.h" new file mode 100644 index 0000000..f16e9d2 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/stl_bind.h" @@ -0,0 +1,585 @@ +/* + pybind11/std_bind.h: Binding generators for STL data types + + Copyright (c) 2016 Sergey Lyskov and Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include "common.h" +#include "operators.h" + +#include +#include + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) + +/* SFINAE helper class used by 'is_comparable */ +template struct container_traits { + template static std::true_type test_comparable(decltype(std::declval() == std::declval())*); + template static std::false_type test_comparable(...); + template static std::true_type test_value(typename T2::value_type *); + template static std::false_type test_value(...); + template static std::true_type test_pair(typename T2::first_type *, typename T2::second_type *); + template static std::false_type test_pair(...); + + static constexpr const bool is_comparable = std::is_same(nullptr))>::value; + static constexpr const bool is_pair = std::is_same(nullptr, nullptr))>::value; + static constexpr const bool is_vector = std::is_same(nullptr))>::value; + static constexpr const bool is_element = !is_pair && !is_vector; +}; + +/* Default: is_comparable -> std::false_type */ +template +struct is_comparable : std::false_type { }; + +/* For non-map data structures, check whether operator== can be instantiated */ +template +struct is_comparable< + T, enable_if_t::is_element && + container_traits::is_comparable>> + : std::true_type { }; + +/* For a vector/map data structure, recursively check the value type (which is std::pair for maps) */ +template +struct is_comparable::is_vector>> { + static constexpr const bool value = + is_comparable::value; +}; + +/* For pairs, recursively check the two data types */ +template +struct is_comparable::is_pair>> { + static constexpr const bool value = + is_comparable::value && + is_comparable::value; +}; + +/* Fallback functions */ +template void vector_if_copy_constructible(const Args &...) { } +template void vector_if_equal_operator(const Args &...) { } +template void vector_if_insertion_operator(const Args &...) { } +template void vector_modifiers(const Args &...) { } + +template +void vector_if_copy_constructible(enable_if_t::value, Class_> &cl) { + cl.def(init(), "Copy constructor"); +} + +template +void vector_if_equal_operator(enable_if_t::value, Class_> &cl) { + using T = typename Vector::value_type; + + cl.def(self == self); + cl.def(self != self); + + cl.def("count", + [](const Vector &v, const T &x) { + return std::count(v.begin(), v.end(), x); + }, + arg("x"), + "Return the number of times ``x`` appears in the list" + ); + + cl.def("remove", [](Vector &v, const T &x) { + auto p = std::find(v.begin(), v.end(), x); + if (p != v.end()) + v.erase(p); + else + throw value_error(); + }, + arg("x"), + "Remove the first item from the list whose value is x. " + "It is an error if there is no such item." + ); + + cl.def("__contains__", + [](const Vector &v, const T &x) { + return std::find(v.begin(), v.end(), x) != v.end(); + }, + arg("x"), + "Return true the container contains ``x``" + ); +} + +// Vector modifiers -- requires a copyable vector_type: +// (Technically, some of these (pop and __delitem__) don't actually require copyability, but it seems +// silly to allow deletion but not insertion, so include them here too.) +template +void vector_modifiers(enable_if_t::value, Class_> &cl) { + using T = typename Vector::value_type; + using SizeType = typename Vector::size_type; + using DiffType = typename Vector::difference_type; + + cl.def("append", + [](Vector &v, const T &value) { v.push_back(value); }, + arg("x"), + "Add an item to the end of the list"); + + cl.def("__init__", [](Vector &v, iterable it) { + new (&v) Vector(); + try { + v.reserve(len(it)); + for (handle h : it) + v.push_back(h.cast()); + } catch (...) { + v.~Vector(); + throw; + } + }); + + cl.def("extend", + [](Vector &v, const Vector &src) { + v.insert(v.end(), src.begin(), src.end()); + }, + arg("L"), + "Extend the list by appending all the items in the given list" + ); + + cl.def("insert", + [](Vector &v, SizeType i, const T &x) { + if (i > v.size()) + throw index_error(); + v.insert(v.begin() + (DiffType) i, x); + }, + arg("i") , arg("x"), + "Insert an item at a given position." + ); + + cl.def("pop", + [](Vector &v) { + if (v.empty()) + throw index_error(); + T t = v.back(); + v.pop_back(); + return t; + }, + "Remove and return the last item" + ); + + cl.def("pop", + [](Vector &v, SizeType i) { + if (i >= v.size()) + throw index_error(); + T t = v[i]; + v.erase(v.begin() + (DiffType) i); + return t; + }, + arg("i"), + "Remove and return the item at index ``i``" + ); + + cl.def("__setitem__", + [](Vector &v, SizeType i, const T &t) { + if (i >= v.size()) + throw index_error(); + v[i] = t; + } + ); + + /// Slicing protocol + cl.def("__getitem__", + [](const Vector &v, slice slice) -> Vector * { + size_t start, stop, step, slicelength; + + if (!slice.compute(v.size(), &start, &stop, &step, &slicelength)) + throw error_already_set(); + + Vector *seq = new Vector(); + seq->reserve((size_t) slicelength); + + for (size_t i=0; ipush_back(v[start]); + start += step; + } + return seq; + }, + arg("s"), + "Retrieve list elements using a slice object" + ); + + cl.def("__setitem__", + [](Vector &v, slice slice, const Vector &value) { + size_t start, stop, step, slicelength; + if (!slice.compute(v.size(), &start, &stop, &step, &slicelength)) + throw error_already_set(); + + if (slicelength != value.size()) + throw std::runtime_error("Left and right hand size of slice assignment have different sizes!"); + + for (size_t i=0; i= v.size()) + throw index_error(); + v.erase(v.begin() + DiffType(i)); + }, + "Delete the list elements at index ``i``" + ); + + cl.def("__delitem__", + [](Vector &v, slice slice) { + size_t start, stop, step, slicelength; + + if (!slice.compute(v.size(), &start, &stop, &step, &slicelength)) + throw error_already_set(); + + if (step == 1 && false) { + v.erase(v.begin() + (DiffType) start, v.begin() + DiffType(start + slicelength)); + } else { + for (size_t i = 0; i < slicelength; ++i) { + v.erase(v.begin() + DiffType(start)); + start += step - 1; + } + } + }, + "Delete list elements using a slice object" + ); + +} + +// If the type has an operator[] that doesn't return a reference (most notably std::vector), +// we have to access by copying; otherwise we return by reference. +template using vector_needs_copy = negation< + std::is_same()[typename Vector::size_type()]), typename Vector::value_type &>>; + +// The usual case: access and iterate by reference +template +void vector_accessor(enable_if_t::value, Class_> &cl) { + using T = typename Vector::value_type; + using SizeType = typename Vector::size_type; + using ItType = typename Vector::iterator; + + cl.def("__getitem__", + [](Vector &v, SizeType i) -> T & { + if (i >= v.size()) + throw index_error(); + return v[i]; + }, + return_value_policy::reference_internal // ref + keepalive + ); + + cl.def("__iter__", + [](Vector &v) { + return make_iterator< + return_value_policy::reference_internal, ItType, ItType, T&>( + v.begin(), v.end()); + }, + keep_alive<0, 1>() /* Essential: keep list alive while iterator exists */ + ); +} + +// The case for special objects, like std::vector, that have to be returned-by-copy: +template +void vector_accessor(enable_if_t::value, Class_> &cl) { + using T = typename Vector::value_type; + using SizeType = typename Vector::size_type; + using ItType = typename Vector::iterator; + cl.def("__getitem__", + [](const Vector &v, SizeType i) -> T { + if (i >= v.size()) + throw index_error(); + return v[i]; + } + ); + + cl.def("__iter__", + [](Vector &v) { + return make_iterator< + return_value_policy::copy, ItType, ItType, T>( + v.begin(), v.end()); + }, + keep_alive<0, 1>() /* Essential: keep list alive while iterator exists */ + ); +} + +template auto vector_if_insertion_operator(Class_ &cl, std::string const &name) + -> decltype(std::declval() << std::declval(), void()) { + using size_type = typename Vector::size_type; + + cl.def("__repr__", + [name](Vector &v) { + std::ostringstream s; + s << name << '['; + for (size_type i=0; i < v.size(); ++i) { + s << v[i]; + if (i != v.size() - 1) + s << ", "; + } + s << ']'; + return s.str(); + }, + "Return the canonical string representation of this list." + ); +} + +// Provide the buffer interface for vectors if we have data() and we have a format for it +// GCC seems to have "void std::vector::data()" - doing SFINAE on the existence of data() is insufficient, we need to check it returns an appropriate pointer +template +struct vector_has_data_and_format : std::false_type {}; +template +struct vector_has_data_and_format::format(), std::declval().data()), typename Vector::value_type*>::value>> : std::true_type {}; + +// Add the buffer interface to a vector +template +enable_if_t...>::value> +vector_buffer(Class_& cl) { + using T = typename Vector::value_type; + + static_assert(vector_has_data_and_format::value, "There is not an appropriate format descriptor for this vector"); + + // numpy.h declares this for arbitrary types, but it may raise an exception and crash hard at runtime if PYBIND11_NUMPY_DTYPE hasn't been called, so check here + format_descriptor::format(); + + cl.def_buffer([](Vector& v) -> buffer_info { + return buffer_info(v.data(), static_cast(sizeof(T)), format_descriptor::format(), 1, {v.size()}, {sizeof(T)}); + }); + + cl.def("__init__", [](Vector& vec, buffer buf) { + auto info = buf.request(); + if (info.ndim != 1 || info.strides[0] % static_cast(sizeof(T))) + throw type_error("Only valid 1D buffers can be copied to a vector"); + if (!detail::compare_buffer_info::compare(info) || (ssize_t) sizeof(T) != info.itemsize) + throw type_error("Format mismatch (Python: " + info.format + " C++: " + format_descriptor::format() + ")"); + new (&vec) Vector(); + vec.reserve((size_t) info.shape[0]); + T *p = static_cast(info.ptr); + ssize_t step = info.strides[0] / static_cast(sizeof(T)); + T *end = p + info.shape[0] * step; + for (; p != end; p += step) + vec.push_back(*p); + }); + + return; +} + +template +enable_if_t...>::value> vector_buffer(Class_&) {} + +NAMESPACE_END(detail) + +// +// std::vector +// +template , typename... Args> +class_ bind_vector(module &m, std::string const &name, Args&&... args) { + using Class_ = class_; + + Class_ cl(m, name.c_str(), std::forward(args)...); + + // Declare the buffer interface if a buffer_protocol() is passed in + detail::vector_buffer(cl); + + cl.def(init<>()); + + // Register copy constructor (if possible) + detail::vector_if_copy_constructible(cl); + + // Register comparison-related operators and functions (if possible) + detail::vector_if_equal_operator(cl); + + // Register stream insertion operator (if possible) + detail::vector_if_insertion_operator(cl, name); + + // Modifiers require copyable vector value type + detail::vector_modifiers(cl); + + // Accessor and iterator; return by value if copyable, otherwise we return by ref + keep-alive + detail::vector_accessor(cl); + + cl.def("__bool__", + [](const Vector &v) -> bool { + return !v.empty(); + }, + "Check whether the list is nonempty" + ); + + cl.def("__len__", &Vector::size); + + + + +#if 0 + // C++ style functions deprecated, leaving it here as an example + cl.def(init()); + + cl.def("resize", + (void (Vector::*) (size_type count)) & Vector::resize, + "changes the number of elements stored"); + + cl.def("erase", + [](Vector &v, SizeType i) { + if (i >= v.size()) + throw index_error(); + v.erase(v.begin() + i); + }, "erases element at index ``i``"); + + cl.def("empty", &Vector::empty, "checks whether the container is empty"); + cl.def("size", &Vector::size, "returns the number of elements"); + cl.def("push_back", (void (Vector::*)(const T&)) &Vector::push_back, "adds an element to the end"); + cl.def("pop_back", &Vector::pop_back, "removes the last element"); + + cl.def("max_size", &Vector::max_size, "returns the maximum possible number of elements"); + cl.def("reserve", &Vector::reserve, "reserves storage"); + cl.def("capacity", &Vector::capacity, "returns the number of elements that can be held in currently allocated storage"); + cl.def("shrink_to_fit", &Vector::shrink_to_fit, "reduces memory usage by freeing unused memory"); + + cl.def("clear", &Vector::clear, "clears the contents"); + cl.def("swap", &Vector::swap, "swaps the contents"); + + cl.def("front", [](Vector &v) { + if (v.size()) return v.front(); + else throw index_error(); + }, "access the first element"); + + cl.def("back", [](Vector &v) { + if (v.size()) return v.back(); + else throw index_error(); + }, "access the last element "); + +#endif + + return cl; +} + + + +// +// std::map, std::unordered_map +// + +NAMESPACE_BEGIN(detail) + +/* Fallback functions */ +template void map_if_insertion_operator(const Args &...) { } +template void map_assignment(const Args &...) { } + +// Map assignment when copy-assignable: just copy the value +template +void map_assignment(enable_if_t::value, Class_> &cl) { + using KeyType = typename Map::key_type; + using MappedType = typename Map::mapped_type; + + cl.def("__setitem__", + [](Map &m, const KeyType &k, const MappedType &v) { + auto it = m.find(k); + if (it != m.end()) it->second = v; + else m.emplace(k, v); + } + ); +} + +// Not copy-assignable, but still copy-constructible: we can update the value by erasing and reinserting +template +void map_assignment(enable_if_t< + !std::is_copy_assignable::value && + is_copy_constructible::value, + Class_> &cl) { + using KeyType = typename Map::key_type; + using MappedType = typename Map::mapped_type; + + cl.def("__setitem__", + [](Map &m, const KeyType &k, const MappedType &v) { + // We can't use m[k] = v; because value type might not be default constructable + auto r = m.emplace(k, v); + if (!r.second) { + // value type is not copy assignable so the only way to insert it is to erase it first... + m.erase(r.first); + m.emplace(k, v); + } + } + ); +} + + +template auto map_if_insertion_operator(Class_ &cl, std::string const &name) +-> decltype(std::declval() << std::declval() << std::declval(), void()) { + + cl.def("__repr__", + [name](Map &m) { + std::ostringstream s; + s << name << '{'; + bool f = false; + for (auto const &kv : m) { + if (f) + s << ", "; + s << kv.first << ": " << kv.second; + f = true; + } + s << '}'; + return s.str(); + }, + "Return the canonical string representation of this map." + ); +} + + +NAMESPACE_END(detail) + +template , typename... Args> +class_ bind_map(module &m, const std::string &name, Args&&... args) { + using KeyType = typename Map::key_type; + using MappedType = typename Map::mapped_type; + using Class_ = class_; + + Class_ cl(m, name.c_str(), std::forward(args)...); + + cl.def(init<>()); + + // Register stream insertion operator (if possible) + detail::map_if_insertion_operator(cl, name); + + cl.def("__bool__", + [](const Map &m) -> bool { return !m.empty(); }, + "Check whether the map is nonempty" + ); + + cl.def("__iter__", + [](Map &m) { return make_key_iterator(m.begin(), m.end()); }, + keep_alive<0, 1>() /* Essential: keep list alive while iterator exists */ + ); + + cl.def("items", + [](Map &m) { return make_iterator(m.begin(), m.end()); }, + keep_alive<0, 1>() /* Essential: keep list alive while iterator exists */ + ); + + cl.def("__getitem__", + [](Map &m, const KeyType &k) -> MappedType & { + auto it = m.find(k); + if (it == m.end()) + throw key_error(); + return it->second; + }, + return_value_policy::reference_internal // ref + keepalive + ); + + // Assignment provided only if the type is copyable + detail::map_assignment(cl); + + cl.def("__delitem__", + [](Map &m, const KeyType &k) { + auto it = m.find(k); + if (it == m.end()) + throw key_error(); + return m.erase(it); + } + ); + + cl.def("__len__", &Map::size); + + return cl; +} + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/typeid.h" "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/typeid.h" new file mode 100644 index 0000000..c903fb1 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/include/pybind11/typeid.h" @@ -0,0 +1,53 @@ +/* + pybind11/typeid.h: Compiler-independent access to type identifiers + + Copyright (c) 2016 Wenzel Jakob + + All rights reserved. Use of this source code is governed by a + BSD-style license that can be found in the LICENSE file. +*/ + +#pragma once + +#include +#include + +#if defined(__GNUG__) +#include +#endif + +NAMESPACE_BEGIN(pybind11) +NAMESPACE_BEGIN(detail) +/// Erase all occurrences of a substring +inline void erase_all(std::string &string, const std::string &search) { + for (size_t pos = 0;;) { + pos = string.find(search, pos); + if (pos == std::string::npos) break; + string.erase(pos, search.length()); + } +} + +PYBIND11_NOINLINE inline void clean_type_id(std::string &name) { +#if defined(__GNUG__) + int status = 0; + std::unique_ptr res { + abi::__cxa_demangle(name.c_str(), nullptr, nullptr, &status), std::free }; + if (status == 0) + name = res.get(); +#else + detail::erase_all(name, "class "); + detail::erase_all(name, "struct "); + detail::erase_all(name, "enum "); +#endif + detail::erase_all(name, "pybind11::"); +} +NAMESPACE_END(detail) + +/// Return a string representation of a C++ type +template static std::string type_id() { + std::string name(typeid(T).name()); + detail::clean_type_id(name); + return name; +} + +NAMESPACE_END(pybind11) diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/lanms.h" "b/\346\225\264\347\220\206/EAST/lanms-master/lanms.h" new file mode 100644 index 0000000..679666c --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/lanms.h" @@ -0,0 +1,234 @@ +#pragma once + +#include "clipper/clipper.hpp" + +// locality-aware NMS +namespace lanms { + + namespace cl = ClipperLib; + + struct Polygon { + cl::Path poly; + float score; + }; + + float paths_area(const ClipperLib::Paths &ps) { + float area = 0; + for (auto &&p: ps) + area += cl::Area(p); + return area; + } + + float poly_iou(const Polygon &a, const Polygon &b) { + cl::Clipper clpr; + clpr.AddPath(a.poly, cl::ptSubject, true); + clpr.AddPath(b.poly, cl::ptClip, true); + + cl::Paths inter, uni; + clpr.Execute(cl::ctIntersection, inter, cl::pftEvenOdd); + clpr.Execute(cl::ctUnion, uni, cl::pftEvenOdd); + + auto inter_area = paths_area(inter), + uni_area = paths_area(uni); + return std::abs(inter_area) / std::max(std::abs(uni_area), 1.0f); + } + + bool should_merge(const Polygon &a, const Polygon &b, float iou_threshold) { + return poly_iou(a, b) > iou_threshold; + } + + /** + * Incrementally merge polygons + */ + class PolyMerger { + public: + PolyMerger(): score(0), nr_polys(0) { + memset(data, 0, sizeof(data)); + } + + /** + * Add a new polygon to be merged. + */ + void add(const Polygon &p_given) { + Polygon p; + if (nr_polys > 0) { + // vertices of two polygons to merge may not in the same order; + // we match their vertices by choosing the ordering that + // minimizes the total squared distance. + // see function normalize_poly for details. + p = normalize_poly(get(), p_given); + } else { + p = p_given; + } + assert(p.poly.size() == 4); + auto &poly = p.poly; + auto s = p.score; + data[0] += poly[0].X * s; + data[1] += poly[0].Y * s; + + data[2] += poly[1].X * s; + data[3] += poly[1].Y * s; + + data[4] += poly[2].X * s; + data[5] += poly[2].Y * s; + + data[6] += poly[3].X * s; + data[7] += poly[3].Y * s; + + score += p.score; + + nr_polys += 1; + } + + inline std::int64_t sqr(std::int64_t x) { return x * x; } + + Polygon normalize_poly( + const Polygon &ref, + const Polygon &p) { + + std::int64_t min_d = std::numeric_limits::max(); + size_t best_start = 0, best_order = 0; + + for (size_t start = 0; start < 4; start ++) { + size_t j = start; + std::int64_t d = ( + sqr(ref.poly[(j + 0) % 4].X - p.poly[(j + 0) % 4].X) + + sqr(ref.poly[(j + 0) % 4].Y - p.poly[(j + 0) % 4].Y) + + sqr(ref.poly[(j + 1) % 4].X - p.poly[(j + 1) % 4].X) + + sqr(ref.poly[(j + 1) % 4].Y - p.poly[(j + 1) % 4].Y) + + sqr(ref.poly[(j + 2) % 4].X - p.poly[(j + 2) % 4].X) + + sqr(ref.poly[(j + 2) % 4].Y - p.poly[(j + 2) % 4].Y) + + sqr(ref.poly[(j + 3) % 4].X - p.poly[(j + 3) % 4].X) + + sqr(ref.poly[(j + 3) % 4].Y - p.poly[(j + 3) % 4].Y) + ); + if (d < min_d) { + min_d = d; + best_start = start; + best_order = 0; + } + + d = ( + sqr(ref.poly[(j + 0) % 4].X - p.poly[(j + 3) % 4].X) + + sqr(ref.poly[(j + 0) % 4].Y - p.poly[(j + 3) % 4].Y) + + sqr(ref.poly[(j + 1) % 4].X - p.poly[(j + 2) % 4].X) + + sqr(ref.poly[(j + 1) % 4].Y - p.poly[(j + 2) % 4].Y) + + sqr(ref.poly[(j + 2) % 4].X - p.poly[(j + 1) % 4].X) + + sqr(ref.poly[(j + 2) % 4].Y - p.poly[(j + 1) % 4].Y) + + sqr(ref.poly[(j + 3) % 4].X - p.poly[(j + 0) % 4].X) + + sqr(ref.poly[(j + 3) % 4].Y - p.poly[(j + 0) % 4].Y) + ); + if (d < min_d) { + min_d = d; + best_start = start; + best_order = 1; + } + } + + Polygon r; + r.poly.resize(4); + auto j = best_start; + if (best_order == 0) { + for (size_t i = 0; i < 4; i ++) + r.poly[i] = p.poly[(j + i) % 4]; + } else { + for (size_t i = 0; i < 4; i ++) + r.poly[i] = p.poly[(j + 4 - i - 1) % 4]; + } + r.score = p.score; + return r; + } + + Polygon get() const { + Polygon p; + + auto &poly = p.poly; + poly.resize(4); + auto score_inv = 1.0f / std::max(1e-8f, score); + poly[0].X = data[0] * score_inv; + poly[0].Y = data[1] * score_inv; + poly[1].X = data[2] * score_inv; + poly[1].Y = data[3] * score_inv; + poly[2].X = data[4] * score_inv; + poly[2].Y = data[5] * score_inv; + poly[3].X = data[6] * score_inv; + poly[3].Y = data[7] * score_inv; + + assert(score > 0); + p.score = score; + + return p; + } + + private: + std::int64_t data[8]; + float score; + std::int32_t nr_polys; + }; + + + /** + * The standard NMS algorithm. + */ + std::vector standard_nms(std::vector &polys, float iou_threshold) { + size_t n = polys.size(); + if (n == 0) + return {}; + std::vector indices(n); + std::iota(std::begin(indices), std::end(indices), 0); + std::sort(std::begin(indices), std::end(indices), [&](size_t i, size_t j) { return polys[i].score > polys[j].score; }); + + std::vector keep; + while (indices.size()) { + size_t p = 0, cur = indices[0]; + keep.emplace_back(cur); + for (size_t i = 1; i < indices.size(); i ++) { + if (!should_merge(polys[cur], polys[indices[i]], iou_threshold)) { + indices[p ++] = indices[i]; + } + } + indices.resize(p); + } + + std::vector ret; + for (auto &&i: keep) { + ret.emplace_back(polys[i]); + } + return ret; + } + + std::vector + merge_quadrangle_n9(const float *data, size_t n, float iou_threshold) { + using cInt = cl::cInt; + + // first pass + std::vector polys; + for (size_t i = 0; i < n; i ++) { + auto p = data + i * 9; + Polygon poly{ + { + {cInt(p[0]), cInt(p[1])}, + {cInt(p[2]), cInt(p[3])}, + {cInt(p[4]), cInt(p[5])}, + {cInt(p[6]), cInt(p[7])}, + }, + p[8], + }; + + if (polys.size()) { + // merge with the last one + auto &bpoly = polys.back(); + if (should_merge(poly, bpoly, iou_threshold)) { + PolyMerger merger; + merger.add(bpoly); + merger.add(poly); + bpoly = merger.get(); + } else { + polys.emplace_back(poly); + } + } else { + polys.emplace_back(poly); + } + } + return standard_nms(polys, iou_threshold); + } +} diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/lanms/__init__.py" "b/\346\225\264\347\220\206/EAST/lanms-master/lanms/__init__.py" new file mode 100644 index 0000000..7faa6d7 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/lanms/__init__.py" @@ -0,0 +1,13 @@ +import numpy as np +from .adaptor import merge_quadrangle_n9 as nms_impl + + +def merge_quadrangle_n9(polys, thres=0.3, precision=10000): + if len(polys) == 0: + return np.array([], dtype='float32') + p = polys.copy() + p[:, :8] *= precision + ret = np.array(nms_impl(p, thres), dtype='float32') + ret[:, :8] /= precision + return ret + diff --git "a/\346\225\264\347\220\206/EAST/lanms-master/setup.py" "b/\346\225\264\347\220\206/EAST/lanms-master/setup.py" new file mode 100644 index 0000000..66cf70e --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms-master/setup.py" @@ -0,0 +1,68 @@ +#! /usr/bin/env python3 +"""A setuptools based setup module. + +See: +https://packaging.python.org/en/latest/distributing.html +https://github.com/pypa/sampleproject +""" + +import os +import subprocess + +import setuptools +from setuptools.dist import Distribution + + +# This is a hack around python wheels not including the adaptor.so library. +class BinaryDistribution(Distribution): + def is_pure(self): + return False + + def has_ext_modules(self): + return True + + +BASE_DIR = os.path.dirname(os.path.realpath(__file__)) + +if subprocess.call(['make', '--always-make','-C', BASE_DIR]) != 0: + raise RuntimeError('Cannot compile lanms in the directory: {}'.format(BASE_DIR)) + +setuptools.setup( + name='lanms', + + version='1.0.2', + + description='Locality-Aware Non-Maximum Suppression', + + # The project's main homepage. + url='https://github.com/Parquery/lanms', + + # Author details + author='argmen (boostczc@gmail.com) is code author, ' + 'Dominik Walder (dominik.walder@parquery.com) and Marko Ristin (marko@parquery.com) only packaged the code', + author_email='devs@parquery.com', + + # Choose your license + license='GNU General Public License v3.0', + + # See https://pypi.python.org/pypi?%3Aaction=list_classifiers + classifiers=[ + 'Development Status :: 5 - Production/Stable', + + 'Intended Audience :: Developers', + 'Topic :: Scientific/Engineering :: Artificial Intelligence', + + 'License :: OSI Approved :: GNU General Public License v3 (GPLv3)', + + 'Programming Language :: Python :: 3.5', + ], + + keywords='locality aware non-maximum suppression', + + packages=setuptools.find_packages(exclude=[]), + + install_requires=["numpy"], + + include_package_data=True, + distclass=BinaryDistribution, +) diff --git "a/\346\225\264\347\220\206/EAST/lanms/__init__.py" "b/\346\225\264\347\220\206/EAST/lanms/__init__.py" new file mode 100644 index 0000000..f5ea3c1 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/lanms/__init__.py" @@ -0,0 +1,14 @@ +import numpy as np +from .adaptor import merge_quadrangle_n9 as nms_impl + + +def merge_quadrangle_n9(polys, thres=0.3, precision=10000): + if len(polys) == 0: + return np.array([], dtype='float32') + p = polys.copy() + p[:, :8] *= precision + ret = np.array(nms_impl(p, thres), dtype='float32') + ret[:, :8] /= precision + return ret + +# cl adaptor.cpp ./include/clipper/clipper.cpp /I ./include /I "C:\Users\endman100\AppData\Local\Programs\Python\Python36\include" /LD /Fe:adaptor.pyd /link/LIBPATH:"C:\Users\endman100\AppData\Local\Programs\Python\Python36\libs" diff --git "a/\346\225\264\347\220\206/EAST/lanms/__pycache__/__init__.cpython-36.pyc" "b/\346\225\264\347\220\206/EAST/lanms/__pycache__/__init__.cpython-36.pyc" new file mode 100644 index 0000000..0f799b7 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms/__pycache__/__init__.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/EAST/lanms/adaptor.pyd" "b/\346\225\264\347\220\206/EAST/lanms/adaptor.pyd" new file mode 100644 index 0000000..de49cd1 Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/lanms/adaptor.pyd" differ diff --git "a/\346\225\264\347\220\206/EAST/loss.py" "b/\346\225\264\347\220\206/EAST/loss.py" new file mode 100644 index 0000000..9c7583b --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/loss.py" @@ -0,0 +1,41 @@ +import torch +import torch.nn as nn + + +def get_dice_loss(gt_score, pred_score): + inter = torch.sum(gt_score * pred_score) + union = torch.sum(gt_score) + torch.sum(pred_score) + 1e-5 + return 1. - (2 * inter / union) + + +def get_geo_loss(gt_geo, pred_geo): + d1_gt, d2_gt, d3_gt, d4_gt, angle_gt = torch.split(gt_geo, 1, 1) + d1_pred, d2_pred, d3_pred, d4_pred, angle_pred = torch.split(pred_geo, 1, 1) + area_gt = (d1_gt + d2_gt) * (d3_gt + d4_gt) + area_pred = (d1_pred + d2_pred) * (d3_pred + d4_pred) + w_union = torch.min(d3_gt, d3_pred) + torch.min(d4_gt, d4_pred) + h_union = torch.min(d1_gt, d1_pred) + torch.min(d2_gt, d2_pred) + area_intersect = w_union * h_union + area_union = area_gt + area_pred - area_intersect + iou_loss_map = -torch.log((area_intersect + 1.0)/(area_union + 1.0)) + angle_loss_map = 1 - torch.cos(angle_pred - angle_gt) + return iou_loss_map, angle_loss_map + + +class Loss(nn.Module): + def __init__(self, weight_angle=10): + super(Loss, self).__init__() + self.weight_angle = weight_angle + + def forward(self, gt_score, pred_score, gt_geo, pred_geo, ignored_map): + if torch.sum(gt_score) < 1: + return torch.sum(pred_score + pred_geo) * 0 + + classify_loss = get_dice_loss(gt_score, pred_score*(1-ignored_map)) + iou_loss_map, angle_loss_map = get_geo_loss(gt_geo, pred_geo) + + angle_loss = torch.sum(angle_loss_map*gt_score) / torch.sum(gt_score) + iou_loss = torch.sum(iou_loss_map*gt_score) / torch.sum(gt_score) + geo_loss = self.weight_angle * angle_loss + iou_loss + print('classify loss is {:.8f}, angle loss is {:.8f}, iou loss is {:.8f}'.format(classify_loss, angle_loss, iou_loss)) + return geo_loss + classify_loss diff --git "a/\346\225\264\347\220\206/EAST/model.py" "b/\346\225\264\347\220\206/EAST/model.py" new file mode 100644 index 0000000..110cb88 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/model.py" @@ -0,0 +1,177 @@ +import torch +import torch.nn as nn +import torch.utils.model_zoo as model_zoo +import torch.nn.functional as F +import math + + +cfg = [64, 64, 'M', 128, 128, 'M', 256, 256, 256, 'M', 512, 512, 512, 'M', 512, 512, 512, 'M'] + + +def make_layers(cfg, batch_norm=False): + layers = [] + in_channels = 3 + for v in cfg: + if v == 'M': + layers += [nn.MaxPool2d(kernel_size=2, stride=2)] + else: + conv2d = nn.Conv2d(in_channels, v, kernel_size=3, padding=1) + if batch_norm: + layers += [conv2d, nn.BatchNorm2d(v), nn.ReLU(inplace=True)] + else: + layers += [conv2d, nn.ReLU(inplace=True)] + in_channels = v + return nn.Sequential(*layers) + + +class VGG(nn.Module): + def __init__(self, features): + super(VGG, self).__init__() + self.features = features + self.avgpool = nn.AdaptiveAvgPool2d((7, 7)) + self.classifier = nn.Sequential( + nn.Linear(512 * 7 * 7, 4096), + nn.ReLU(True), + nn.Dropout(), + nn.Linear(4096, 4096), + nn.ReLU(True), + nn.Dropout(), + nn.Linear(4096, 1000), + ) + + for m in self.modules(): + if isinstance(m, nn.Conv2d): + nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu') + if m.bias is not None: + nn.init.constant_(m.bias, 0) + elif isinstance(m, nn.BatchNorm2d): + nn.init.constant_(m.weight, 1) + nn.init.constant_(m.bias, 0) + elif isinstance(m, nn.Linear): + nn.init.normal_(m.weight, 0, 0.01) + nn.init.constant_(m.bias, 0) + + def forward(self, x): + x = self.features(x) + x = self.avgpool(x) + x = x.view(x.size(0), -1) + x = self.classifier(x) + return x + + +class extractor(nn.Module): + def __init__(self, pretrained): + super(extractor, self).__init__() + vgg16_bn = VGG(make_layers(cfg, batch_norm=True)) + if pretrained: + vgg16_bn.load_state_dict(torch.load('./pths/vgg16_bn-6c64b313.pth')) + self.features = vgg16_bn.features + + def forward(self, x): + out = [] + for m in self.features: + x = m(x) + if isinstance(m, nn.MaxPool2d): + out.append(x) + return out[1:] + + +class merge(nn.Module): + def __init__(self): + super(merge, self).__init__() + + self.conv1 = nn.Conv2d(1024, 128, 1) + self.bn1 = nn.BatchNorm2d(128) + self.relu1 = nn.ReLU() + self.conv2 = nn.Conv2d(128, 128, 3, padding=1) + self.bn2 = nn.BatchNorm2d(128) + self.relu2 = nn.ReLU() + + self.conv3 = nn.Conv2d(384, 64, 1) + self.bn3 = nn.BatchNorm2d(64) + self.relu3 = nn.ReLU() + self.conv4 = nn.Conv2d(64, 64, 3, padding=1) + self.bn4 = nn.BatchNorm2d(64) + self.relu4 = nn.ReLU() + + self.conv5 = nn.Conv2d(192, 32, 1) + self.bn5 = nn.BatchNorm2d(32) + self.relu5 = nn.ReLU() + self.conv6 = nn.Conv2d(32, 32, 3, padding=1) + self.bn6 = nn.BatchNorm2d(32) + self.relu6 = nn.ReLU() + + self.conv7 = nn.Conv2d(32, 32, 3, padding=1) + self.bn7 = nn.BatchNorm2d(32) + self.relu7 = nn.ReLU() + + for m in self.modules(): + if isinstance(m, nn.Conv2d): + nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu') + if m.bias is not None: + nn.init.constant_(m.bias, 0) + elif isinstance(m, nn.BatchNorm2d): + nn.init.constant_(m.weight, 1) + nn.init.constant_(m.bias, 0) + + def forward(self, x): + y = F.interpolate(x[3], scale_factor=2, mode='bilinear', align_corners=True) + y = torch.cat((y, x[2]), 1) + y = self.relu1(self.bn1(self.conv1(y))) + y = self.relu2(self.bn2(self.conv2(y))) + + y = F.interpolate(y, scale_factor=2, mode='bilinear', align_corners=True) + y = torch.cat((y, x[1]), 1) + y = self.relu3(self.bn3(self.conv3(y))) + y = self.relu4(self.bn4(self.conv4(y))) + + y = F.interpolate(y, scale_factor=2, mode='bilinear', align_corners=True) + y = torch.cat((y, x[0]), 1) + y = self.relu5(self.bn5(self.conv5(y))) + y = self.relu6(self.bn6(self.conv6(y))) + + y = self.relu7(self.bn7(self.conv7(y))) + return y + +class output(nn.Module): + def __init__(self, scope=512): + super(output, self).__init__() + self.conv1 = nn.Conv2d(32, 1, 1) + self.sigmoid1 = nn.Sigmoid() + self.conv2 = nn.Conv2d(32, 4, 1) + self.sigmoid2 = nn.Sigmoid() + self.conv3 = nn.Conv2d(32, 1, 1) + self.sigmoid3 = nn.Sigmoid() + self.scope = 512 + for m in self.modules(): + if isinstance(m, nn.Conv2d): + nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu') + if m.bias is not None: + nn.init.constant_(m.bias, 0) + + def forward(self, x): + score = self.sigmoid1(self.conv1(x)) + loc = self.sigmoid2(self.conv2(x)) * self.scope + angle = (self.sigmoid3(self.conv3(x)) - 0.5) * math.pi + geo = torch.cat((loc, angle), 1) + return score, geo + + +class EAST(nn.Module): + def __init__(self, pretrained=True): + super(EAST, self).__init__() + self.extractor = extractor(pretrained) + self.merge = merge() + self.output = output() + + def forward(self, x): + return self.output(self.merge(self.extractor(x))) + + +if __name__ == '__main__': + m = EAST() + x = torch.randn(1, 3, 256, 256) + score, geo = m(x) + print(score.shape) + print(geo.shape) + print(geo[0,:,0,0]) diff --git "a/\346\225\264\347\220\206/EAST/pths/needModel.txt" "b/\346\225\264\347\220\206/EAST/pths/needModel.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/EAST/res.bmp" "b/\346\225\264\347\220\206/EAST/res.bmp" new file mode 100644 index 0000000..1eb1acb Binary files /dev/null and "b/\346\225\264\347\220\206/EAST/res.bmp" differ diff --git "a/\346\225\264\347\220\206/EAST/result.csv" "b/\346\225\264\347\220\206/EAST/result.csv" new file mode 100644 index 0000000..7906c78 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/result.csv" @@ -0,0 +1,18 @@ +79.3599,23.5043,96.6089,37.8097 +97.7105,76.0359,94.1356,84.1232 +95.0646,80.5773,92.5321,86.1419 +91.7591,64.7032,95.3041,77.0775 +98.5821,76.1694,91.2094,83.0137 +98.4697,85.2423,87.3041,86.2609 +82.7505,27.4423,91.0250,42.1708 +91.3141,60.6835,94.1097,73.7876 +98.4289,72.8954,91.9037,81.3033 +96.1933,70.2920,92.8812,80.0230 +95.9925,73.4466,87.0450,79.6697 +94.4648,67.5882,91.3431,77.6904 +83.5820,70.6472,34.0229,45.9276 +90.0911,65.9082,68.3004,67.0830 +97.3527,77.5644,95.6199,85.6509 +98.2736,79.9701,94.9495,86.8184 +97.8719,87.5814,84.0034,85.7551 +95.4131,74.1443,72.9707,73.5528 diff --git "a/\346\225\264\347\220\206/EAST/testFlooder.py" "b/\346\225\264\347\220\206/EAST/testFlooder.py" new file mode 100644 index 0000000..0b5629c --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/testFlooder.py" @@ -0,0 +1,394 @@ +import os +import torch +import cv2 +import numpy as np +from PIL import Image, ImageDraw +import csv +import json + +import detect +import lanms +from model import EAST +def plot_result_boxes(boxes, imgShape, img=None): + if(type(img) == type(None)): + img = Image.new(mode = "RGB", size = [imgShape[1], imgShape[0]]) + else: + img = Image.fromarray(cv2.cvtColor(img,cv2.COLOR_BGR2RGB)) + if boxes is None: + return img + + draw = ImageDraw.Draw(img) + if(type(img) == type(None)): + for box in boxes: + draw.polygon([box[0], box[1], box[2], box[3], box[4], box[5], box[6], box[7]], fill ="#ffffff", outline=(255,255,255)) + else: + for box in boxes: + # draw.polygon([box[0], box[1], box[2], box[3], box[4], box[5], box[6], box[7]], outline=(255,0,0)) + draw.line([box[0], box[1], box[2], box[3], box[4], box[5], box[6], box[7], box[0], box[1]], fill="red", width=5) + return img +def get_boxes(score, geo, score_thresh=0.9, nms_thresh=0.2): + '''get boxes from feature map + Input: + score : score map from model + geo : geo map from model + score_thresh: threshold to segment score map + nms_thresh : threshold in nms + Output: + boxes : final polys + ''' + score = score[0,:,:] + xy_text = np.argwhere(score > score_thresh) # n x 2, format is [r, c] + if xy_text.size == 0: + return None + + xy_text = xy_text[np.argsort(xy_text[:, 0])] + valid_pos = xy_text[:, ::-1].copy() # n x 2, [x, y] + valid_geo = geo[:, xy_text[:, 0], xy_text[:, 1]] # 5 x n + polys_restored, index = detect.restore_polys(valid_pos, valid_geo, score.shape) + if polys_restored.size == 0: + return None + + boxes = np.zeros((polys_restored.shape[0], 9), dtype=np.float32) + boxes[:, :8] = polys_restored + boxes[:, 8] = score[xy_text[index, 0], xy_text[index, 1]] + # boxes = lanms.merge_quadrangle_n9(boxes.astype('float32'), nms_thresh) + return boxes +def cutImage(img, sliceSize=1000): + y = img.shape[0] + x = img.shape[1] + if(x 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + + return [dets[i] for i in keep] +def delLowScores(rects, thresh=0.4): + returnRects = [] + for rect in rects: + if(rect[4] > thresh): + returnRects.append(rect) + return returnRects +def delInclude(rects, includeThreshold=0.9): + rectSum = [] + + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + if(aArea <= intersect and aArea / intersect > includeThreshold): + j = -1 + break + elif(bArea <= intersect and bArea / intersect > includeThreshold): + rects[j][0] = -1 + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0, -1, S_rec1, S_rec2 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0, intersect, S_rec1, S_rec2 +def delSmallerThan8X8(rects): + returnRects = [] + for rect in rects: + h = (rect[2]-rect[0]) + w = (rect[3]-rect[1]) + if(h >= 8 and w >= 8): + returnRects.append(rect) + return returnRects +def delUnreasonableRects(rects, ratio=4): + # print(type(rects)) + hList = [] + wList = [] + for rect in rects: + h = (rect[2]-rect[0])//2 + w = (rect[3]-rect[1])//2 + + hList.append(h) + wList.append(w) + + # hList = np.array(hList) + # wList = np.array(wList) + hStd = np.std(hList, ddof=0) + wStd = np.std(wList, ddof=0) + hMean = np.mean(hList) + wMean = np.mean(wList) + # print("hStd: {:.4f} wStd: {:.4f}".format(hStd, wStd)) + # print("hMean:{:.4f} wMean:{:.4f}".format(hMean, wMean)) + returnRects = [] + for i, (h, w) in enumerate(zip(hList, wList)): + if(h < hMean + hStd*ratio and h > hMean - hStd*ratio and w < wMean + wStd*ratio and w > wMean - wStd*ratio): + returnRects.append(rects[i]) + if(len(returnRects) < len(rects)): + return delUnreasonableRects(returnRects) + return returnRects + + +device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") +model = EAST().to(device) +if __name__ == '__main__': + # img_flooder_path = '../../groundtruth/image/' + # save_flooder_path = '../EAST-Result-pretrain/' + # model_path = './pths/east_vgg16.pth' + # testModel(img_flooder_path, save_flooder_path, model_path) + + # img_flooder_path = '../../groundtruth/image/' + # save_flooder_path = '../EAST-Result_retrain/' + # model_flooder_path = './pths/Create/' + # testModels(img_flooder_path, save_flooder_path, model_flooder_path) + + img_flooder_path = '../../groundtruth/image/' + save_flooder_path = '../EAST-Result/' + model_path = './pths/CreateBlock/model_epoch_8.pth' + testModel(img_flooder_path, save_flooder_path, model_path) + + + # EASTImgFlooders = '../EAST-Result/' + # GTFlooders = "../../groundtruth/marge" + # with open('result.csv', 'w', newline='') as csvfile: + # writer = csv.writer(csvfile) + # countAcc(EASTImgFlooders, GTFlooders) + + + + + + + diff --git "a/\346\225\264\347\220\206/EAST/train.py" "b/\346\225\264\347\220\206/EAST/train.py" new file mode 100644 index 0000000..53a33ae --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/train.py" @@ -0,0 +1,68 @@ +import torch +from torch.utils import data +from torch import nn +from torch.optim import lr_scheduler +from dataset import custom_dataset +from model import EAST +from loss import Loss +import os +import time +import numpy as np + + +def train(train_img_path, train_gt_path, pths_path, batch_size, lr, num_workers, epoch_iter, interval): + file_num = len(os.listdir(train_img_path)) + trainset = custom_dataset(train_img_path, train_gt_path) + train_loader = data.DataLoader(trainset, batch_size=batch_size, \ + shuffle=True, num_workers=num_workers, drop_last=True) + + criterion = Loss() + device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") + model = EAST() + data_parallel = False + if torch.cuda.device_count() > 1: + model = nn.DataParallel(model) + data_parallel = True + model.to(device) + optimizer = torch.optim.Adam(model.parameters(), lr=lr) + scheduler = lr_scheduler.MultiStepLR(optimizer, milestones=[epoch_iter//2], gamma=0.1) + + for epoch in range(epoch_iter): + model.train() + scheduler.step() + epoch_loss = 0 + epoch_time = time.time() + for i, (img, gt_score, gt_geo, ignored_map) in enumerate(train_loader): + start_time = time.time() + img, gt_score, gt_geo, ignored_map = img.to(device), gt_score.to(device), gt_geo.to(device), ignored_map.to(device) + print("{} gt_score {}; gt_geo {}; ignored_map {}".format(img.shape, gt_score.shape, gt_geo.shape, ignored_map.shape)) + pred_score, pred_geo = model(img) + loss = criterion(gt_score, pred_score, gt_geo, pred_geo, ignored_map) + + epoch_loss += loss.item() + optimizer.zero_grad() + loss.backward() + optimizer.step() + + print('Epoch is [{}/{}], mini-batch is [{}/{}], time consumption is {:.8f}, batch_loss is {:.8f}'.format(\ + epoch+1, epoch_iter, i+1, int(file_num/batch_size), time.time()-start_time, loss.item())) + + print('epoch_loss is {:.8f}, epoch_time is {:.8f}'.format(epoch_loss/int(file_num/batch_size), time.time()-epoch_time)) + print(time.asctime(time.localtime(time.time()))) + print('='*50) + if (epoch + 1) % interval == 0: + state_dict = model.module.state_dict() if data_parallel else model.state_dict() + torch.save(state_dict, os.path.join(pths_path, 'model_epoch_{}.pth'.format(epoch+1))) + + +if __name__ == '__main__': + train_img_path = os.path.abspath('./data/train_img/') + train_gt_path = os.path.abspath('./data/train_gt/') + pths_path = './pths' + batch_size = 4 + lr = 1e-3 + num_workers = 4 + epoch_iter = 600 + save_interval = 5 + train(train_img_path, train_gt_path, pths_path, batch_size, lr, num_workers, epoch_iter, save_interval) + diff --git "a/\346\225\264\347\220\206/EAST/trainMy.py" "b/\346\225\264\347\220\206/EAST/trainMy.py" new file mode 100644 index 0000000..15284e5 --- /dev/null +++ "b/\346\225\264\347\220\206/EAST/trainMy.py" @@ -0,0 +1,67 @@ +import torch +from torch.utils import data +from torch import nn +from torch.optim import lr_scheduler +from dataset import custom_dataset +from model import EAST +from loss import Loss +import os +import time +import numpy as np + + +def train(train_img_path, train_gt_path, pths_path, batch_size, lr, num_workers, epoch_iter, interval): + file_num = len(os.listdir(train_img_path)) + trainset = custom_dataset(train_img_path, train_gt_path) + train_loader = data.DataLoader(trainset, batch_size=batch_size, \ + shuffle=True, num_workers=num_workers, drop_last=True) + + criterion = Loss() + device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") + model = EAST() + data_parallel = False + if torch.cuda.device_count() > 1: + model = nn.DataParallel(model) + data_parallel = True + model.to(device) + optimizer = torch.optim.Adam(model.parameters(), lr=lr) + scheduler = lr_scheduler.MultiStepLR(optimizer, milestones=[epoch_iter//2], gamma=0.1) + + for epoch in range(epoch_iter): + model.train() + scheduler.step() + epoch_loss = 0 + epoch_time = time.time() + for i, (img, gt_score, gt_geo, ignored_map) in enumerate(train_loader): + start_time = time.time() + img, gt_score, gt_geo, ignored_map = img.to(device), gt_score.to(device), gt_geo.to(device), ignored_map.to(device) + pred_score, pred_geo = model(img) + loss = criterion(gt_score, pred_score, gt_geo, pred_geo, ignored_map) + + epoch_loss += loss.item() + optimizer.zero_grad() + loss.backward() + optimizer.step() + + print('Epoch is [{}/{}], mini-batch is [{}/{}], time consumption is {:.8f}, batch_loss is {:.8f}'.format(\ + epoch+1, epoch_iter, i+1, int(file_num/batch_size), time.time()-start_time, loss.item())) + + print('epoch_loss is {:.8f}, epoch_time is {:.8f}'.format(epoch_loss/int(file_num/batch_size), time.time()-epoch_time)) + print(time.asctime(time.localtime(time.time()))) + print('='*50) + if (epoch + 1) % interval == 0: + state_dict = model.module.state_dict() if data_parallel else model.state_dict() + torch.save(state_dict, os.path.join(pths_path, 'model_epoch_{}.pth'.format(epoch+1))) + + +if __name__ == '__main__': + train_img_path = os.path.abspath('./dataCreate/block/train_img/') + train_gt_path = os.path.abspath('./dataCreate/block/train_gt/') + pths_path = './pths/CreateBlock' + batch_size = 8 + lr = 1e-3 + num_workers = 0 + epoch_iter = 600 + save_interval = 5 + train(train_img_path, train_gt_path, pths_path, batch_size, lr, num_workers, epoch_iter, save_interval) + diff --git "a/\346\225\264\347\220\206/OCR/__pycache__/drawer.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/__pycache__/drawer.cpython-36.pyc" new file mode 100644 index 0000000..9a8e029 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/__pycache__/drawer.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/CRNN.py" "b/\346\225\264\347\220\206/OCR/cfg/CRNN.py" new file mode 100644 index 0000000..f6182a2 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/CRNN.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./recognitionVersion1/checkpoint/None-VGG-BiLSTM-CTC.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = False + self.PAD = False + self.Transformation="None" + self.FeatureExtraction="VGG" + self.SequenceModeling="BiLSTM" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/RARE.py" "b/\346\225\264\347\220\206/OCR/cfg/RARE.py" new file mode 100644 index 0000000..6898e25 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/RARE.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./recognitionVersion1/checkpoint/TPS-ResNet-BiLSTM-Attn-case-sensitive.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = True + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="Attn" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/Rosetta.py" "b/\346\225\264\347\220\206/OCR/cfg/Rosetta.py" new file mode 100644 index 0000000..58d2478 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/Rosetta.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./recognitionVersion1/checkpoint/None-ResNet-None-CTC.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = False + self.PAD = False + self.Transformation="None" + self.FeatureExtraction="ResNet" + self.SequenceModeling="None" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/STARNet.py" "b/\346\225\264\347\220\206/OCR/cfg/STARNet.py" new file mode 100644 index 0000000..748b9d8 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/STARNet.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./recognitionVersion1/checkpoint/TPS-ResNet-BiLSTM-CTC.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = False + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/CRNN.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/CRNN.cpython-36.pyc" new file mode 100644 index 0000000..297911a Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/CRNN.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCSeed20201015.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCSeed20201015.cpython-36.pyc" new file mode 100644 index 0000000..f3233f0 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCSeed20201015.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCdatargb20201020.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCdatargb20201020.cpython-36.pyc" new file mode 100644 index 0000000..330e860 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/NoneVGGBiLSTMCTCdatargb20201020.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/RARE.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/RARE.cpython-36.pyc" new file mode 100644 index 0000000..d1918a7 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/RARE.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/Rosetta.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/Rosetta.cpython-36.pyc" new file mode 100644 index 0000000..d3fa0b6 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/Rosetta.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/STARNet.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/STARNet.cpython-36.pyc" new file mode 100644 index 0000000..af79c0b Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/STARNet.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSResNetBiLSTMAttn20201007.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSResNetBiLSTMAttn20201007.cpython-36.pyc" new file mode 100644 index 0000000..c4e1319 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSResNetBiLSTMAttn20201007.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSRestNetBiLSTMAttndatargb20201020.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSRestNetBiLSTMAttndatargb20201020.cpython-36.pyc" new file mode 100644 index 0000000..6cf763a Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/__pycache__/TPSRestNetBiLSTMAttndatargb20201020.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/CRNN.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/CRNN.py" new file mode 100644 index 0000000..346b8f0 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/CRNN.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/NoneVGGBiLSTMCTC/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="None" + self.FeatureExtraction="VGG" + self.SequenceModeling="BiLSTM" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=3 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/NoneResNetBiLSTMCTC.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/NoneResNetBiLSTMCTC.py" new file mode 100644 index 0000000..fc38639 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/NoneResNetBiLSTMCTC.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/NoneResNetBiLSTMCTC/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="None" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/RARE.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/RARE.py" new file mode 100644 index 0000000..1b555fc --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/RARE.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/TPSVGGBiLSTMAttn/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="VGG" + self.SequenceModeling="BiLSTM" + self.Prediction="Attn" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/Rosetta.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/Rosetta.py" new file mode 100644 index 0000000..66d9de1 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/Rosetta.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/NoneResNetNoneCTC/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="None" + self.FeatureExtraction="ResNet" + self.SequenceModeling="None" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/STARNet.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/STARNet.py" new file mode 100644 index 0000000..1602b7d --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/STARNet.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/TPSResNetBiLSTMCTC/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSResNetNoneCTC.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSResNetNoneCTC.py" new file mode 100644 index 0000000..7268c2d --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSResNetNoneCTC.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/dataColor/NoneVGGBiLSTMCTC/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="RestNet" + self.SequenceModeling="None" + self.Prediction="CTC" + self.num_fiducial=20 + self.input_channel=3 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSRestNetBiLSTMAttn.py" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSRestNetBiLSTMAttn.py" new file mode 100644 index 0000000..be5973b --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/cfg/dataColor/TPSRestNetBiLSTMAttn.py" @@ -0,0 +1,21 @@ +class optClass(): + def __init__(self): + self.image_folder = "../groundtruth/recognitionRotateBinary/all/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./saved_models/TPSRestNetBiLSTMAttndatargb20201020/best_accuracy.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = True + self.character = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_()/#-+' + self.sensitive = False + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="Attn" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/CRNN.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/CRNN.cpython-36.pyc" new file mode 100644 index 0000000..cab76b1 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/CRNN.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetBiLSTMCTC.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetBiLSTMCTC.cpython-36.pyc" new file mode 100644 index 0000000..6c2f539 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetBiLSTMCTC.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetNoneCTC.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetNoneCTC.cpython-36.pyc" new file mode 100644 index 0000000..b44f9a9 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneResNetNoneCTC.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneVGGBiLSTMCTC.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneVGGBiLSTMCTC.cpython-36.pyc" new file mode 100644 index 0000000..97f7d16 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/NoneVGGBiLSTMCTC.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/RARE.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/RARE.cpython-36.pyc" new file mode 100644 index 0000000..8ce697f Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/RARE.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/Rosetta.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/Rosetta.cpython-36.pyc" new file mode 100644 index 0000000..589a7fc Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/Rosetta.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STAR-Net.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STAR-Net.cpython-36.pyc" new file mode 100644 index 0000000..bb94f6b Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STAR-Net.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STARNet.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STARNet.cpython-36.pyc" new file mode 100644 index 0000000..26c2352 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/STARNet.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSResNetBiLSTMCTC.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSResNetBiLSTMCTC.cpython-36.pyc" new file mode 100644 index 0000000..432f891 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSResNetBiLSTMCTC.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSVGGBiLSTMAttn.cpython-36.pyc" "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSVGGBiLSTMAttn.cpython-36.pyc" new file mode 100644 index 0000000..c146f52 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/cfg/dataColor/__pycache__/TPSVGGBiLSTMAttn.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/OCR/drawer.py" "b/\346\225\264\347\220\206/OCR/drawer.py" new file mode 100644 index 0000000..7dc6f31 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/drawer.py" @@ -0,0 +1,24 @@ +import cv2 +def drawCounters(counters, img, color=(0, 0, 255), width=4, predList=False, savePath=None): + for i, counter in enumerate(counters): + # print((counter[2]-counter[0])//100+1) + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), color, width) + if(predList): + cv2.putText(img, counter[7].upper(), (counter[0], counter[1]) + , cv2.FONT_HERSHEY_SIMPLEX, (counter[3]-counter[1])//100+1, (255, 0, 0), 2, cv2.LINE_AA) + if(savePath): + print("store " + savePath) + cv2.imwrite(savePath, img) + return img +def drawGrid(centerY, centerX, img, width=3, color=(0, 0, 255), colorKey=(0, 255, 255)): + for i in range(len(centerY)): + cv2.line(img, (centerY[i], 0), (centerY[i], img.shape[0]), color, width) + for i in range(len(centerX)): + cv2.line(img, (0, centerX[i]), (img.shape[1], centerX[i]), color, width) + return img +def drawReferece(img, rects, yGrid, xGrid, color=(0, 255, 0)): + for rect in rects: + centerY = (rect[0]+rect[2])//2 + centerX = (rect[1]+rect[3])//2 + cv2.line(img, (centerY, centerX), (yGrid[rect[9]], xGrid[rect[8]]), color, 2) + return img diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/.gitignore" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/.gitignore" new file mode 100644 index 0000000..14accb5 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/.gitignore" @@ -0,0 +1,208 @@ +**/saved_models/* +**/data_lmdb_release/* +**/image_release/* +**/result/* +*.mdb +*.pth +*.tar +*.sh +*.txt +*.ipynb +*.zip +*.eps +*.pdf + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### OSX ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +### Python Patch ### +.venv/ + +### Python.VirtualEnv Stack ### +# Virtualenv +# http://iamzed.com/2009/05/07/a-primer-on-virtualenv/ +[Bb]in +[Ii]nclude +[Ll]ib +[Ll]ib64 +[Ll]ocal +[Ss]cripts +pyvenv.cfg +pip-selfcheck.json + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/__init__.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/__init__.py" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/create_lmdb_dataset.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/create_lmdb_dataset.py" new file mode 100644 index 0000000..a58d137 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/create_lmdb_dataset.py" @@ -0,0 +1,87 @@ +""" a modified version of CRNN torch repository https://github.com/bgshih/crnn/blob/master/tool/create_dataset.py """ + +import fire +import os +import lmdb +import cv2 + +import numpy as np + + +def checkImageIsValid(imageBin): + if imageBin is None: + return False + imageBuf = np.frombuffer(imageBin, dtype=np.uint8) + img = cv2.imdecode(imageBuf, cv2.IMREAD_GRAYSCALE) + imgH, imgW = img.shape[0], img.shape[1] + if imgH * imgW == 0: + return False + return True + + +def writeCache(env, cache): + with env.begin(write=True) as txn: + for k, v in cache.items(): + txn.put(k, v) + + +def createDataset(inputPath, gtFile, outputPath, checkValid=True): + """ + Create LMDB dataset for training and evaluation. + ARGS: + inputPath : input folder path where starts imagePath + outputPath : LMDB output path + gtFile : list of image path and label + checkValid : if true, check the validity of every image + """ + os.makedirs(outputPath, exist_ok=True) + env = lmdb.open(outputPath, map_size=1099511627776) + cache = {} + cnt = 1 + + with open(gtFile, 'r', encoding='utf-8') as data: + datalist = data.readlines() + + nSamples = len(datalist) + for i in range(nSamples): + imagePath, label = datalist[i].strip('\n').split('\t') + imagePath = os.path.join(inputPath, imagePath) + + # # only use alphanumeric data + # if re.search('[^a-zA-Z0-9]', label): + # continue + + if not os.path.exists(imagePath): + print('%s does not exist' % imagePath) + continue + with open(imagePath, 'rb') as f: + imageBin = f.read() + if checkValid: + try: + if not checkImageIsValid(imageBin): + print('%s is not a valid image' % imagePath) + continue + except: + print('error occured', i) + with open(outputPath + '/error_image_log.txt', 'a') as log: + log.write('%s-th image data occured error\n' % str(i)) + continue + + imageKey = 'image-%09d'.encode() % cnt + labelKey = 'label-%09d'.encode() % cnt + cache[imageKey] = imageBin + cache[labelKey] = label.encode() + + if cnt % 1000 == 0: + writeCache(env, cache) + cache = {} + print('Written %d / %d' % (cnt, nSamples)) + cnt += 1 + nSamples = cnt-1 + cache['num-samples'.encode()] = str(nSamples).encode() + writeCache(env, cache) + print('Created dataset with %d samples' % nSamples) + + +if __name__ == '__main__': + fire.Fire(createDataset) diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/dataset.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/dataset.py" new file mode 100644 index 0000000..38a2196 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/dataset.py" @@ -0,0 +1,328 @@ +import os +import sys +import re +import six +import math +import lmdb +import torch + +from natsort import natsorted +from PIL import Image +import numpy as np +from torch.utils.data import Dataset, ConcatDataset, Subset +from torch._utils import _accumulate +import torchvision.transforms as transforms + + +class Batch_Balanced_Dataset(object): + + def __init__(self, opt): + """ + Modulate the data ratio in the batch. + For example, when select_data is "MJ-ST" and batch_ratio is "0.5-0.5", + the 50% of the batch is filled with MJ and the other 50% of the batch is filled with ST. + """ + print('-' * 80) + print(f'dataset_root: {opt.train_data}\nopt.select_data: {opt.select_data}\nopt.batch_ratio: {opt.batch_ratio}') + assert len(opt.select_data) == len(opt.batch_ratio) + + _AlignCollate = AlignCollate(imgH=opt.imgH, imgW=opt.imgW, keep_ratio_with_pad=opt.PAD) + self.data_loader_list = [] + self.dataloader_iter_list = [] + batch_size_list = [] + Total_batch_size = 0 + for selected_d, batch_ratio_d in zip(opt.select_data, opt.batch_ratio): + _batch_size = max(round(opt.batch_size * float(batch_ratio_d)), 1) + print('-' * 80) + _dataset = hierarchical_dataset(root=opt.train_data, opt=opt, select_data=[selected_d]) + total_number_dataset = len(_dataset) + + """ + The total number of data can be modified with opt.total_data_usage_ratio. + ex) opt.total_data_usage_ratio = 1 indicates 100% usage, and 0.2 indicates 20% usage. + See 4.2 section in our paper. + """ + number_dataset = int(total_number_dataset * float(opt.total_data_usage_ratio)) + dataset_split = [number_dataset, total_number_dataset - number_dataset] + indices = range(total_number_dataset) + _dataset, _ = [Subset(_dataset, indices[offset - length:offset]) + for offset, length in zip(_accumulate(dataset_split), dataset_split)] + print(f'num total samples of {selected_d}: {total_number_dataset} x {opt.total_data_usage_ratio} (total_data_usage_ratio) = {len(_dataset)}') + print(f'num samples of {selected_d} per batch: {opt.batch_size} x {float(batch_ratio_d)} (batch_ratio) = {_batch_size}') + batch_size_list.append(str(_batch_size)) + Total_batch_size += _batch_size + + _data_loader = torch.utils.data.DataLoader( + _dataset, batch_size=_batch_size, + shuffle=True, + num_workers=int(opt.workers), + collate_fn=_AlignCollate, pin_memory=True) + self.data_loader_list.append(_data_loader) + self.dataloader_iter_list.append(iter(_data_loader)) + print('-' * 80) + print('Total_batch_size: ', '+'.join(batch_size_list), '=', str(Total_batch_size)) + opt.batch_size = Total_batch_size + print('-' * 80) + + def get_batch(self): + balanced_batch_images = [] + balanced_batch_texts = [] + + for i, data_loader_iter in enumerate(self.dataloader_iter_list): + try: + image, text = data_loader_iter.next() + balanced_batch_images.append(image) + balanced_batch_texts += text + except StopIteration: + self.dataloader_iter_list[i] = iter(self.data_loader_list[i]) + image, text = self.dataloader_iter_list[i].next() + balanced_batch_images.append(image) + balanced_batch_texts += text + except ValueError: + pass + + balanced_batch_images = torch.cat(balanced_batch_images, 0) + + return balanced_batch_images, balanced_batch_texts + + +def hierarchical_dataset(root, opt, select_data='/'): + """ select_data='/' contains all sub-directory of root directory """ + dataset_list = [] + print(f'dataset_root: {root}\t dataset: {select_data[0]}') + for dirpath, dirnames, filenames in os.walk(root+'/'): + if not dirnames: + select_flag = False + for selected_d in select_data: + if selected_d in dirpath: + select_flag = True + break + + if select_flag: + dataset = LmdbDataset(dirpath, opt) + print(f'sub-directory:\t/{os.path.relpath(dirpath, root)}\t num samples: {len(dataset)}') + dataset_list.append(dataset) + + concatenated_dataset = ConcatDataset(dataset_list) + + return concatenated_dataset + + +class LmdbDataset(Dataset): + + def __init__(self, root, opt): + + self.root = root + self.opt = opt + self.env = lmdb.open(root, max_readers=32, readonly=True, lock=False, readahead=False, meminit=False) + if not self.env: + print('cannot create lmdb from %s' % (root)) + sys.exit(0) + + with self.env.begin(write=False) as txn: + nSamples = int(txn.get('num-samples'.encode())) + self.nSamples = nSamples + + if self.opt.data_filtering_off: + # for fast check or benchmark evaluation with no filtering + self.filtered_index_list = [index + 1 for index in range(self.nSamples)] + else: + """ Filtering part + If you want to evaluate IC15-2077 & CUTE datasets which have special character labels, + use --data_filtering_off and evaluation with this snippet (only evaluate on alphabets and digits). + https://github.com/clovaai/deep-text-recognition-benchmark/blob/master/dataset.py#L186-L188 + """ + self.filtered_index_list = [] + for index in range(self.nSamples): + index += 1 # lmdb starts with 1 + label_key = 'label-%09d'.encode() % index + label = txn.get(label_key).decode('utf-8') + + if len(label) > self.opt.batch_max_length: + # print(f'The length of the label is longer than max_length: length + # {len(label)}, {label} in dataset {self.root}') + continue + + # By default, images containing characters which are not in opt.character are filtered. + # You can add [UNK] token to `opt.character` in utils.py instead of this filtering. + out_of_char = f'[^{self.opt.character}]' + if re.search(out_of_char, label.lower()): + continue + + self.filtered_index_list.append(index) + + self.nSamples = len(self.filtered_index_list) + + def __len__(self): + return self.nSamples + + def __getitem__(self, index): + assert index <= len(self), 'index range error' + index = self.filtered_index_list[index] + + with self.env.begin(write=False) as txn: + label_key = 'label-%09d'.encode() % index + label = txn.get(label_key).decode('utf-8') + img_key = 'image-%09d'.encode() % index + imgbuf = txn.get(img_key) + + buf = six.BytesIO() + buf.write(imgbuf) + buf.seek(0) + try: + if self.opt.rgb: + img = Image.open(buf).convert('RGB') # for color image + else: + img = Image.open(buf).convert('L') + + except IOError: + print(f'Corrupted image for {index}') + # make dummy image and dummy label for corrupted image. + if self.opt.rgb: + img = Image.new('RGB', (self.opt.imgW, self.opt.imgH)) + else: + img = Image.new('L', (self.opt.imgW, self.opt.imgH)) + label = '[dummy_label]' + + if not self.opt.sensitive: + label = label.lower() + + # We only train and evaluate on alphanumerics (or pre-defined character set in train.py) + out_of_char = f'[^{self.opt.character}]' + label = re.sub(out_of_char, '', label) + + return (img, label) + + +class RawDataset(Dataset): + + def __init__(self, root, opt): + self.opt = opt + self.image_path_list = [] + for dirpath, dirnames, filenames in os.walk(root): + for name in filenames: + _, ext = os.path.splitext(name) + ext = ext.lower() + if ext == '.jpg' or ext == '.jpeg' or ext == '.png': + self.image_path_list.append(os.path.join(dirpath, name)) + + self.image_path_list = natsorted(self.image_path_list) + self.nSamples = len(self.image_path_list) + + def __len__(self): + return self.nSamples + + def __getitem__(self, index): + + try: + if self.opt.rgb: + img = Image.open(self.image_path_list[index]).convert('RGB') # for color image + else: + img = Image.open(self.image_path_list[index]).convert('L') + + except IOError: + print(f'Corrupted image for {index}') + # make dummy image and dummy label for corrupted image. + if self.opt.rgb: + img = Image.new('RGB', (self.opt.imgW, self.opt.imgH)) + # img.show() + else: + img = Image.new('L', (self.opt.imgW, self.opt.imgH)) + return (img, self.image_path_list[index]) +class RawDataset2(Dataset): + + def __init__(self, root, opt, imgs): + self.opt = opt + self.image_list = imgs + def __len__(self): + return len(self.image_list) + + def __getitem__(self, index): + cv2_im = cv2.cvtColor(self.image_list[index], cv2.COLOR_BGR2RGB) + pil_im = Image.fromarray(cv2_im) + return pil_im + +class ResizeNormalize(object): + + def __init__(self, size, interpolation=Image.BICUBIC): + self.size = size + self.interpolation = interpolation + self.toTensor = transforms.ToTensor() + + def __call__(self, img): + img = img.resize(self.size, self.interpolation) + img = self.toTensor(img) + img.sub_(0.5).div_(0.5) + return img + + +class NormalizePAD(object): + + def __init__(self, max_size, PAD_type='right'): + self.toTensor = transforms.ToTensor() + self.max_size = max_size + self.max_width_half = math.floor(max_size[2] / 2) + self.PAD_type = PAD_type + + def __call__(self, img): + img = self.toTensor(img) + img.sub_(0.5).div_(0.5) + c, h, w = img.size() + Pad_img = torch.FloatTensor(*self.max_size).fill_(0) + Pad_img[:, :, :w] = img # right pad + if self.max_size[2] != w: # add border Pad + Pad_img[:, :, w:] = img[:, :, w - 1].unsqueeze(2).expand(c, h, self.max_size[2] - w) + + return Pad_img + + +class AlignCollate(object): + + def __init__(self, imgH=32, imgW=100, keep_ratio_with_pad=False): + self.imgH = imgH + self.imgW = imgW + self.keep_ratio_with_pad = keep_ratio_with_pad + + def __call__(self, batch): + batch = filter(lambda x: x is not None, batch) + images, labels = zip(*batch) + + if self.keep_ratio_with_pad: # same concept with 'Rosetta' paper + resized_max_w = self.imgW + input_channel = 3 if images[0].mode == 'RGB' else 1 + transform = NormalizePAD((input_channel, self.imgH, resized_max_w)) + + resized_images = [] + for image in images: + w, h = image.size + ratio = w / float(h) + if math.ceil(self.imgH * ratio) > self.imgW: + resized_w = self.imgW + else: + resized_w = math.ceil(self.imgH * ratio) + + resized_image = image.resize((resized_w, self.imgH), Image.BICUBIC) + resized_images.append(transform(resized_image)) + # resized_image.save('./image_test/%d_test.jpg' % w) + + image_tensors = torch.cat([t.unsqueeze(0) for t in resized_images], 0) + + else: + transform = ResizeNormalize((self.imgW, self.imgH)) + image_tensors = [transform(image) for image in images] + image_tensors = torch.cat([t.unsqueeze(0) for t in image_tensors], 0) + + return image_tensors, labels + + +def tensor2im(image_tensor, imtype=np.uint8): + image_numpy = image_tensor.cpu().float().numpy() + if image_numpy.shape[0] == 1: + image_numpy = np.tile(image_numpy, (3, 1, 1)) + image_numpy = (np.transpose(image_numpy, (1, 2, 0)) + 1) / 2.0 * 255.0 + return image_numpy.astype(imtype) + + +def save_image(image_numpy, image_path): + image_pil = Image.fromarray(image_numpy) + image_pil.save(image_path) diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/demo.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/demo.py" new file mode 100644 index 0000000..9ee45b8 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/demo.py" @@ -0,0 +1,137 @@ +import string +import argparse + +import torch +import torch.backends.cudnn as cudnn +import torch.utils.data +import torch.nn.functional as F + +from utils import CTCLabelConverter, AttnLabelConverter +from dataset import RawDataset, AlignCollate +from model import Model +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + +def demo(opt): + """ model configuration """ + if 'CTC' in opt.Prediction: + converter = CTCLabelConverter(opt.character) + else: + converter = AttnLabelConverter(opt.character) + opt.num_class = len(converter.character) + + if opt.rgb: + opt.input_channel = 3 + model = Model(opt) + # print('model input parameters', opt.imgH, opt.imgW, opt.num_fiducial, opt.input_channel, opt.output_channel, + # opt.hidden_size, opt.num_class, opt.batch_max_length, opt.Transformation, opt.FeatureExtraction, + # opt.SequenceModeling, opt.Prediction) + model = torch.nn.DataParallel(model).to(device) + + # load model + # print('loading pretrained model from %s' % opt.saved_model) + model.load_state_dict(torch.load(opt.saved_model, map_location=device)) + + # prepare data. two demo images from https://github.com/bgshih/crnn#run-demo + AlignCollate_demo = AlignCollate(imgH=opt.imgH, imgW=opt.imgW, keep_ratio_with_pad=opt.PAD) + demo_data = RawDataset(root=opt.image_folder, opt=opt) # use RawDataset + demo_loader = torch.utils.data.DataLoader( + demo_data, batch_size=opt.batch_size, + shuffle=False, + num_workers=int(opt.workers), + collate_fn=AlignCollate_demo, pin_memory=True) + + # predict + img_nameList = [] + predList = [] + confidence_scoreList = [] + model.eval() + with torch.no_grad(): + for image_tensors, image_path_list in demo_loader: + batch_size = image_tensors.size(0) + image = image_tensors.to(device) + # For max length prediction + length_for_pred = torch.IntTensor([opt.batch_max_length] * batch_size).to(device) + text_for_pred = torch.LongTensor(batch_size, opt.batch_max_length + 1).fill_(0).to(device) + + if 'CTC' in opt.Prediction: + preds = model(image, text_for_pred).log_softmax(2) + + # Select max probabilty (greedy decoding) then decode index to character + preds_size = torch.IntTensor([preds.size(1)] * batch_size) + _, preds_index = preds.max(2) + preds_index = preds_index.view(-1) + preds_str = converter.decode(preds_index.data, preds_size.data) + + else: + preds = model(image, text_for_pred, is_train=False) + + # select max probabilty (greedy decoding) then decode index to character + _, preds_index = preds.max(2) + preds_str = converter.decode(preds_index, length_for_pred) + + # print('-' * 80) + # print(f'{"image_path":25s}\t{"predicted_labels":25s}\tconfidence score') + # print('-' * 80) + preds_prob = F.softmax(preds, dim=2) + preds_max_prob, _ = preds_prob.max(dim=2) + for img_name, pred, pred_max_prob in zip(image_path_list, preds_str, preds_max_prob): + if 'Attn' in opt.Prediction: + pred_EOS = pred.find('[s]') + pred = pred[:pred_EOS] # prune after "end of sentence" token ([s]) + pred_max_prob = pred_max_prob[:pred_EOS] + + # calculate confidence score (= multiply of pred_max_prob) + confidence_score = pred_max_prob.cumprod(dim=0)[-1] + + # print(f'{img_name}\t{pred}\t{confidence_score:0.4f}') + # print(f'{img_name:25s}\t{pred:25s}\t{confidence_score:0.4f}') + img_nameList.append(img_name) + predList.append(pred) + confidence_scoreList.append(confidence_score) + return img_nameList, predList, confidence_scoreList + + + +def index(): + parser = argparse.ArgumentParser() + parser.add_argument('--image_folder', default="demo_image/", help='path to image_folder which contains text images') + parser.add_argument('--workers', type=int, help='number of data loading workers', default=4) + parser.add_argument('--batch_size', type=int, default=192, help='input batch size') + parser.add_argument('--saved_model', default="checkpoint/TPS-ResNet-BiLSTM-Attn.pth", help="path to saved_model to evaluation") + """ Data processing """ + parser.add_argument('--batch_max_length', type=int, default=25, help='maximum-label-length') + parser.add_argument('--imgH', type=int, default=32, help='the height of the input image') + parser.add_argument('--imgW', type=int, default=100, help='the width of the input image') + parser.add_argument('--rgb', action='store_true', help='use rgb input') + parser.add_argument('--character', type=str, default='0123456789abcdefghijklmnopqrstuvwxyz', help='character label') + parser.add_argument('--sensitive', action='store_true', help='for sensitive character mode') + parser.add_argument('--PAD', action='store_true', help='whether to keep ratio then pad for image resize') + """ Model Architecture """ + parser.add_argument('--Transformation', type=str, default="TPS", help='Transformation stage. None|TPS') + parser.add_argument('--FeatureExtraction', type=str, default="ResNet", help='FeatureExtraction stage. VGG|RCNN|ResNet') + parser.add_argument('--SequenceModeling', type=str, default="BiLSTM", help='SequenceModeling stage. None|BiLSTM') + parser.add_argument('--Prediction', type=str, default="Attn", help='Prediction stage. CTC|Attn') + parser.add_argument('--num_fiducial', type=int, default=20, help='number of fiducial points of TPS-STN') + parser.add_argument('--input_channel', type=int, default=1, help='the number of input channel of Feature extractor') + parser.add_argument('--output_channel', type=int, default=512, + help='the number of output channel of Feature extractor') + parser.add_argument('--hidden_size', type=int, default=256, help='the size of the LSTM hidden state') + + opt = parser.parse_args() + + """ vocab / character number configuration """ + if opt.sensitive: + opt.character = string.printable[:-6] # same with ASTER setting (use 94 char). + + cudnn.benchmark = True + cudnn.deterministic = True + opt.num_gpu = torch.cuda.device_count() + + img_name, pred, confidence_score = demo(opt) + return img_name, pred, confidence_score +if __name__ == '__main__': + img_name, pred, confidence_score = index() + for i in range(len(img_name)): + print(f'{img_name[i]:25s}\t{pred[i]:25s}\t{confidence_score[i]:0.4f}') +#python demo.py --Transformation TPS --FeatureExtraction ResNet --SequenceModeling BiLSTM --Prediction Attn --image_folder demo_image/ --saved_model TPS-ResNet-BiLSTM-Attn.pth diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/failure-case.jpg" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/failure-case.jpg" new file mode 100644 index 0000000..99fc90c Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/failure-case.jpg" differ diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/trade-off.png" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/trade-off.png" new file mode 100644 index 0000000..b07aa59 Binary files /dev/null and "b/\346\225\264\347\220\206/OCR/recognitionVersion1/figures/trade-off.png" differ diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/model.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/model.py" new file mode 100644 index 0000000..d4fbadb --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/model.py" @@ -0,0 +1,93 @@ +""" +Copyright (c) 2019-present NAVER Corp. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +""" + + +import torch.nn as nn + +from .modules.transformation import TPS_SpatialTransformerNetwork +from .modules.feature_extraction import VGG_FeatureExtractor, RCNN_FeatureExtractor, ResNet_FeatureExtractor +from .modules.sequence_modeling import BidirectionalLSTM +from .modules.prediction import Attention + + +class Model(nn.Module): + + def __init__(self, opt): + super(Model, self).__init__() + self.opt = opt + self.stages = {'Trans': opt.Transformation, 'Feat': opt.FeatureExtraction, + 'Seq': opt.SequenceModeling, 'Pred': opt.Prediction} + + """ Transformation """ + if opt.Transformation == 'TPS': + self.Transformation = TPS_SpatialTransformerNetwork( + F=opt.num_fiducial, I_size=(opt.imgH, opt.imgW), I_r_size=(opt.imgH, opt.imgW), I_channel_num=opt.input_channel) + else: + print('No Transformation module specified') + + """ FeatureExtraction """ + if opt.FeatureExtraction == 'VGG': + self.FeatureExtraction = VGG_FeatureExtractor(opt.input_channel, opt.output_channel) + elif opt.FeatureExtraction == 'RCNN': + self.FeatureExtraction = RCNN_FeatureExtractor(opt.input_channel, opt.output_channel) + elif opt.FeatureExtraction == 'ResNet': + self.FeatureExtraction = ResNet_FeatureExtractor(opt.input_channel, opt.output_channel) + else: + raise Exception('No FeatureExtraction module specified') + self.FeatureExtraction_output = opt.output_channel # int(imgH/16-1) * 512 + self.AdaptiveAvgPool = nn.AdaptiveAvgPool2d((None, 1)) # Transform final (imgH/16-1) -> 1 + + """ Sequence modeling""" + if opt.SequenceModeling == 'BiLSTM': + self.SequenceModeling = nn.Sequential( + BidirectionalLSTM(self.FeatureExtraction_output, opt.hidden_size, opt.hidden_size), + BidirectionalLSTM(opt.hidden_size, opt.hidden_size, opt.hidden_size)) + self.SequenceModeling_output = opt.hidden_size + else: + print('No SequenceModeling module specified') + self.SequenceModeling_output = self.FeatureExtraction_output + + """ Prediction """ + if opt.Prediction == 'CTC': + self.Prediction = nn.Linear(self.SequenceModeling_output, opt.num_class) + elif opt.Prediction == 'Attn': + self.Prediction = Attention(self.SequenceModeling_output, opt.hidden_size, opt.num_class) + else: + raise Exception('Prediction is neither CTC or Attn') + + def forward(self, input, text, is_train=True): + """ Transformation stage """ + if not self.stages['Trans'] == "None": + input = self.Transformation(input) + + """ Feature extraction stage """ + visual_feature = self.FeatureExtraction(input) + visual_feature = self.AdaptiveAvgPool(visual_feature.permute(0, 3, 1, 2)) # [b, c, h, w] -> [b, w, c, h] + visual_feature = visual_feature.squeeze(3) + + """ Sequence modeling stage """ + if self.stages['Seq'] == 'BiLSTM': + contextual_feature = self.SequenceModeling(visual_feature) + else: + contextual_feature = visual_feature # for convenience. this is NOT contextually modeled by BiLSTM + + """ Prediction stage """ + if self.stages['Pred'] == 'CTC': + prediction = self.Prediction(contextual_feature.contiguous()) + else: + prediction = self.Prediction(contextual_feature.contiguous(), text, is_train, batch_max_length=self.opt.batch_max_length) + # print("prediction", prediction.shape) + return prediction diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/feature_extraction.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/feature_extraction.py" new file mode 100644 index 0000000..b5f3004 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/feature_extraction.py" @@ -0,0 +1,246 @@ +import torch.nn as nn +import torch.nn.functional as F + + +class VGG_FeatureExtractor(nn.Module): + """ FeatureExtractor of CRNN (https://arxiv.org/pdf/1507.05717.pdf) """ + + def __init__(self, input_channel, output_channel=512): + super(VGG_FeatureExtractor, self).__init__() + self.output_channel = [int(output_channel / 8), int(output_channel / 4), + int(output_channel / 2), output_channel] # [64, 128, 256, 512] + self.ConvNet = nn.Sequential( + nn.Conv2d(input_channel, self.output_channel[0], 3, 1, 1), nn.ReLU(True), + nn.MaxPool2d(2, 2), # 64x16x50 + nn.Conv2d(self.output_channel[0], self.output_channel[1], 3, 1, 1), nn.ReLU(True), + nn.MaxPool2d(2, 2), # 128x8x25 + nn.Conv2d(self.output_channel[1], self.output_channel[2], 3, 1, 1), nn.ReLU(True), # 256x8x25 + nn.Conv2d(self.output_channel[2], self.output_channel[2], 3, 1, 1), nn.ReLU(True), + nn.MaxPool2d((2, 1), (2, 1)), # 256x4x25 + nn.Conv2d(self.output_channel[2], self.output_channel[3], 3, 1, 1, bias=False), + nn.BatchNorm2d(self.output_channel[3]), nn.ReLU(True), # 512x4x25 + nn.Conv2d(self.output_channel[3], self.output_channel[3], 3, 1, 1, bias=False), + nn.BatchNorm2d(self.output_channel[3]), nn.ReLU(True), + nn.MaxPool2d((2, 1), (2, 1)), # 512x2x25 + nn.Conv2d(self.output_channel[3], self.output_channel[3], 2, 1, 0), nn.ReLU(True)) # 512x1x24 + + def forward(self, input): + return self.ConvNet(input) + + +class RCNN_FeatureExtractor(nn.Module): + """ FeatureExtractor of GRCNN (https://papers.nips.cc/paper/6637-gated-recurrent-convolution-neural-network-for-ocr.pdf) """ + + def __init__(self, input_channel, output_channel=512): + super(RCNN_FeatureExtractor, self).__init__() + self.output_channel = [int(output_channel / 8), int(output_channel / 4), + int(output_channel / 2), output_channel] # [64, 128, 256, 512] + self.ConvNet = nn.Sequential( + nn.Conv2d(input_channel, self.output_channel[0], 3, 1, 1), nn.ReLU(True), + nn.MaxPool2d(2, 2), # 64 x 16 x 50 + GRCL(self.output_channel[0], self.output_channel[0], num_iteration=5, kernel_size=3, pad=1), + nn.MaxPool2d(2, 2), # 64 x 8 x 25 + GRCL(self.output_channel[0], self.output_channel[1], num_iteration=5, kernel_size=3, pad=1), + nn.MaxPool2d(2, (2, 1), (0, 1)), # 128 x 4 x 26 + GRCL(self.output_channel[1], self.output_channel[2], num_iteration=5, kernel_size=3, pad=1), + nn.MaxPool2d(2, (2, 1), (0, 1)), # 256 x 2 x 27 + nn.Conv2d(self.output_channel[2], self.output_channel[3], 2, 1, 0, bias=False), + nn.BatchNorm2d(self.output_channel[3]), nn.ReLU(True)) # 512 x 1 x 26 + + def forward(self, input): + return self.ConvNet(input) + + +class ResNet_FeatureExtractor(nn.Module): + """ FeatureExtractor of FAN (http://openaccess.thecvf.com/content_ICCV_2017/papers/Cheng_Focusing_Attention_Towards_ICCV_2017_paper.pdf) """ + + def __init__(self, input_channel, output_channel=512): + super(ResNet_FeatureExtractor, self).__init__() + self.ConvNet = ResNet(input_channel, output_channel, BasicBlock, [1, 2, 5, 3]) + + def forward(self, input): + return self.ConvNet(input) + + +# For Gated RCNN +class GRCL(nn.Module): + + def __init__(self, input_channel, output_channel, num_iteration, kernel_size, pad): + super(GRCL, self).__init__() + self.wgf_u = nn.Conv2d(input_channel, output_channel, 1, 1, 0, bias=False) + self.wgr_x = nn.Conv2d(output_channel, output_channel, 1, 1, 0, bias=False) + self.wf_u = nn.Conv2d(input_channel, output_channel, kernel_size, 1, pad, bias=False) + self.wr_x = nn.Conv2d(output_channel, output_channel, kernel_size, 1, pad, bias=False) + + self.BN_x_init = nn.BatchNorm2d(output_channel) + + self.num_iteration = num_iteration + self.GRCL = [GRCL_unit(output_channel) for _ in range(num_iteration)] + self.GRCL = nn.Sequential(*self.GRCL) + + def forward(self, input): + """ The input of GRCL is consistant over time t, which is denoted by u(0) + thus wgf_u / wf_u is also consistant over time t. + """ + wgf_u = self.wgf_u(input) + wf_u = self.wf_u(input) + x = F.relu(self.BN_x_init(wf_u)) + + for i in range(self.num_iteration): + x = self.GRCL[i](wgf_u, self.wgr_x(x), wf_u, self.wr_x(x)) + + return x + + +class GRCL_unit(nn.Module): + + def __init__(self, output_channel): + super(GRCL_unit, self).__init__() + self.BN_gfu = nn.BatchNorm2d(output_channel) + self.BN_grx = nn.BatchNorm2d(output_channel) + self.BN_fu = nn.BatchNorm2d(output_channel) + self.BN_rx = nn.BatchNorm2d(output_channel) + self.BN_Gx = nn.BatchNorm2d(output_channel) + + def forward(self, wgf_u, wgr_x, wf_u, wr_x): + G_first_term = self.BN_gfu(wgf_u) + G_second_term = self.BN_grx(wgr_x) + G = F.sigmoid(G_first_term + G_second_term) + + x_first_term = self.BN_fu(wf_u) + x_second_term = self.BN_Gx(self.BN_rx(wr_x) * G) + x = F.relu(x_first_term + x_second_term) + + return x + + +class BasicBlock(nn.Module): + expansion = 1 + + def __init__(self, inplanes, planes, stride=1, downsample=None): + super(BasicBlock, self).__init__() + self.conv1 = self._conv3x3(inplanes, planes) + self.bn1 = nn.BatchNorm2d(planes) + self.conv2 = self._conv3x3(planes, planes) + self.bn2 = nn.BatchNorm2d(planes) + self.relu = nn.ReLU(inplace=True) + self.downsample = downsample + self.stride = stride + + def _conv3x3(self, in_planes, out_planes, stride=1): + "3x3 convolution with padding" + return nn.Conv2d(in_planes, out_planes, kernel_size=3, stride=stride, + padding=1, bias=False) + + def forward(self, x): + residual = x + + out = self.conv1(x) + out = self.bn1(out) + out = self.relu(out) + + out = self.conv2(out) + out = self.bn2(out) + + if self.downsample is not None: + residual = self.downsample(x) + out += residual + out = self.relu(out) + + return out + + +class ResNet(nn.Module): + + def __init__(self, input_channel, output_channel, block, layers): + super(ResNet, self).__init__() + + self.output_channel_block = [int(output_channel / 4), int(output_channel / 2), output_channel, output_channel] + + self.inplanes = int(output_channel / 8) + self.conv0_1 = nn.Conv2d(input_channel, int(output_channel / 16), + kernel_size=3, stride=1, padding=1, bias=False) + self.bn0_1 = nn.BatchNorm2d(int(output_channel / 16)) + self.conv0_2 = nn.Conv2d(int(output_channel / 16), self.inplanes, + kernel_size=3, stride=1, padding=1, bias=False) + self.bn0_2 = nn.BatchNorm2d(self.inplanes) + self.relu = nn.ReLU(inplace=True) + + self.maxpool1 = nn.MaxPool2d(kernel_size=2, stride=2, padding=0) + self.layer1 = self._make_layer(block, self.output_channel_block[0], layers[0]) + self.conv1 = nn.Conv2d(self.output_channel_block[0], self.output_channel_block[ + 0], kernel_size=3, stride=1, padding=1, bias=False) + self.bn1 = nn.BatchNorm2d(self.output_channel_block[0]) + + self.maxpool2 = nn.MaxPool2d(kernel_size=2, stride=2, padding=0) + self.layer2 = self._make_layer(block, self.output_channel_block[1], layers[1], stride=1) + self.conv2 = nn.Conv2d(self.output_channel_block[1], self.output_channel_block[ + 1], kernel_size=3, stride=1, padding=1, bias=False) + self.bn2 = nn.BatchNorm2d(self.output_channel_block[1]) + + self.maxpool3 = nn.MaxPool2d(kernel_size=2, stride=(2, 1), padding=(0, 1)) + self.layer3 = self._make_layer(block, self.output_channel_block[2], layers[2], stride=1) + self.conv3 = nn.Conv2d(self.output_channel_block[2], self.output_channel_block[ + 2], kernel_size=3, stride=1, padding=1, bias=False) + self.bn3 = nn.BatchNorm2d(self.output_channel_block[2]) + + self.layer4 = self._make_layer(block, self.output_channel_block[3], layers[3], stride=1) + self.conv4_1 = nn.Conv2d(self.output_channel_block[3], self.output_channel_block[ + 3], kernel_size=2, stride=(2, 1), padding=(0, 1), bias=False) + self.bn4_1 = nn.BatchNorm2d(self.output_channel_block[3]) + self.conv4_2 = nn.Conv2d(self.output_channel_block[3], self.output_channel_block[ + 3], kernel_size=2, stride=1, padding=0, bias=False) + self.bn4_2 = nn.BatchNorm2d(self.output_channel_block[3]) + + def _make_layer(self, block, planes, blocks, stride=1): + downsample = None + if stride != 1 or self.inplanes != planes * block.expansion: + downsample = nn.Sequential( + nn.Conv2d(self.inplanes, planes * block.expansion, + kernel_size=1, stride=stride, bias=False), + nn.BatchNorm2d(planes * block.expansion), + ) + + layers = [] + layers.append(block(self.inplanes, planes, stride, downsample)) + self.inplanes = planes * block.expansion + for i in range(1, blocks): + layers.append(block(self.inplanes, planes)) + + return nn.Sequential(*layers) + + def forward(self, x): + x = self.conv0_1(x) + x = self.bn0_1(x) + x = self.relu(x) + x = self.conv0_2(x) + x = self.bn0_2(x) + x = self.relu(x) + + x = self.maxpool1(x) + x = self.layer1(x) + x = self.conv1(x) + x = self.bn1(x) + x = self.relu(x) + + x = self.maxpool2(x) + x = self.layer2(x) + x = self.conv2(x) + x = self.bn2(x) + x = self.relu(x) + + x = self.maxpool3(x) + x = self.layer3(x) + x = self.conv3(x) + x = self.bn3(x) + x = self.relu(x) + + x = self.layer4(x) + x = self.conv4_1(x) + x = self.bn4_1(x) + x = self.relu(x) + x = self.conv4_2(x) + x = self.bn4_2(x) + x = self.relu(x) + + return x diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/prediction.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/prediction.py" new file mode 100644 index 0000000..c8a40af --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/prediction.py" @@ -0,0 +1,81 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + +class Attention(nn.Module): + + def __init__(self, input_size, hidden_size, num_classes): + super(Attention, self).__init__() + self.attention_cell = AttentionCell(input_size, hidden_size, num_classes) + self.hidden_size = hidden_size + self.num_classes = num_classes + self.generator = nn.Linear(hidden_size, num_classes) + + def _char_to_onehot(self, input_char, onehot_dim=38): + input_char = input_char.unsqueeze(1) + batch_size = input_char.size(0) + one_hot = torch.FloatTensor(batch_size, onehot_dim).zero_().to(device) + one_hot = one_hot.scatter_(1, input_char, 1) + return one_hot + + def forward(self, batch_H, text, is_train=True, batch_max_length=25): + """ + input: + batch_H : contextual_feature H = hidden state of encoder. [batch_size x num_steps x num_classes] + text : the text-index of each image. [batch_size x (max_length+1)]. +1 for [GO] token. text[:, 0] = [GO]. + output: probability distribution at each step [batch_size x num_steps x num_classes] + """ + batch_size = batch_H.size(0) + num_steps = batch_max_length + 1 # +1 for [s] at end of sentence. + + output_hiddens = torch.FloatTensor(batch_size, num_steps, self.hidden_size).fill_(0).to(device) + hidden = (torch.FloatTensor(batch_size, self.hidden_size).fill_(0).to(device), + torch.FloatTensor(batch_size, self.hidden_size).fill_(0).to(device)) + + if is_train: + for i in range(num_steps): + # one-hot vectors for a i-th char. in a batch + char_onehots = self._char_to_onehot(text[:, i], onehot_dim=self.num_classes) + # hidden : decoder's hidden s_{t-1}, batch_H : encoder's hidden H, char_onehots : one-hot(y_{t-1}) + hidden, alpha = self.attention_cell(hidden, batch_H, char_onehots) + output_hiddens[:, i, :] = hidden[0] # LSTM hidden index (0: hidden, 1: Cell) + probs = self.generator(output_hiddens) + + else: + targets = torch.LongTensor(batch_size).fill_(0).to(device) # [GO] token + probs = torch.FloatTensor(batch_size, num_steps, self.num_classes).fill_(0).to(device) + + for i in range(num_steps): + char_onehots = self._char_to_onehot(targets, onehot_dim=self.num_classes) + hidden, alpha = self.attention_cell(hidden, batch_H, char_onehots) + probs_step = self.generator(hidden[0]) + probs[:, i, :] = probs_step + _, next_input = probs_step.max(1) + targets = next_input + + return probs # batch_size x num_steps x num_classes + + +class AttentionCell(nn.Module): + + def __init__(self, input_size, hidden_size, num_embeddings): + super(AttentionCell, self).__init__() + self.i2h = nn.Linear(input_size, hidden_size, bias=False) + self.h2h = nn.Linear(hidden_size, hidden_size) # either i2i or h2h should have bias + self.score = nn.Linear(hidden_size, 1, bias=False) + self.rnn = nn.LSTMCell(input_size + num_embeddings, hidden_size) + self.hidden_size = hidden_size + + def forward(self, prev_hidden, batch_H, char_onehots): + # [batch_size x num_encoder_step x num_channel] -> [batch_size x num_encoder_step x hidden_size] + batch_H_proj = self.i2h(batch_H) + prev_hidden_proj = self.h2h(prev_hidden[0]).unsqueeze(1) + e = self.score(torch.tanh(batch_H_proj + prev_hidden_proj)) # batch_size x num_encoder_step * 1 + + alpha = F.softmax(e, dim=1) + context = torch.bmm(alpha.permute(0, 2, 1), batch_H).squeeze(1) # batch_size x num_channel + concat_context = torch.cat([context, char_onehots], 1) # batch_size x (num_channel + num_embedding) + cur_hidden = self.rnn(concat_context, prev_hidden) + return cur_hidden, alpha diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/sequence_modeling.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/sequence_modeling.py" new file mode 100644 index 0000000..af32c59 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/sequence_modeling.py" @@ -0,0 +1,19 @@ +import torch.nn as nn + + +class BidirectionalLSTM(nn.Module): + + def __init__(self, input_size, hidden_size, output_size): + super(BidirectionalLSTM, self).__init__() + self.rnn = nn.LSTM(input_size, hidden_size, bidirectional=True, batch_first=True) + self.linear = nn.Linear(hidden_size * 2, output_size) + + def forward(self, input): + """ + input : visual feature [batch_size x T x input_size] + output : contextual feature [batch_size x T x output_size] + """ + self.rnn.flatten_parameters() + recurrent, _ = self.rnn(input) # batch_size x T x input_size -> batch_size x T x (2*hidden_size) + output = self.linear(recurrent) # batch_size x T x output_size + return output diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/transformation.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/transformation.py" new file mode 100644 index 0000000..5441bb7 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/modules/transformation.py" @@ -0,0 +1,164 @@ +import numpy as np +import torch +import torch.nn as nn +import torch.nn.functional as F +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + + +class TPS_SpatialTransformerNetwork(nn.Module): + """ Rectification Network of RARE, namely TPS based STN """ + + def __init__(self, F, I_size, I_r_size, I_channel_num=1): + """ Based on RARE TPS + input: + batch_I: Batch Input Image [batch_size x I_channel_num x I_height x I_width] + I_size : (height, width) of the input image I + I_r_size : (height, width) of the rectified image I_r + I_channel_num : the number of channels of the input image I + output: + batch_I_r: rectified image [batch_size x I_channel_num x I_r_height x I_r_width] + """ + super(TPS_SpatialTransformerNetwork, self).__init__() + self.F = F + self.I_size = I_size + self.I_r_size = I_r_size # = (I_r_height, I_r_width) + self.I_channel_num = I_channel_num + self.LocalizationNetwork = LocalizationNetwork(self.F, self.I_channel_num) + self.GridGenerator = GridGenerator(self.F, self.I_r_size) + + def forward(self, batch_I): + batch_C_prime = self.LocalizationNetwork(batch_I) # batch_size x K x 2 + build_P_prime = self.GridGenerator.build_P_prime(batch_C_prime) # batch_size x n (= I_r_width x I_r_height) x 2 + build_P_prime_reshape = build_P_prime.reshape([build_P_prime.size(0), self.I_r_size[0], self.I_r_size[1], 2]) + batch_I_r = F.grid_sample(batch_I, build_P_prime_reshape, padding_mode='border') + + return batch_I_r + + +class LocalizationNetwork(nn.Module): + """ Localization Network of RARE, which predicts C' (K x 2) from I (I_width x I_height) """ + + def __init__(self, F, I_channel_num): + super(LocalizationNetwork, self).__init__() + self.F = F + self.I_channel_num = I_channel_num + self.conv = nn.Sequential( + nn.Conv2d(in_channels=self.I_channel_num, out_channels=64, kernel_size=3, stride=1, padding=1, + bias=False), nn.BatchNorm2d(64), nn.ReLU(True), + nn.MaxPool2d(2, 2), # batch_size x 64 x I_height/2 x I_width/2 + nn.Conv2d(64, 128, 3, 1, 1, bias=False), nn.BatchNorm2d(128), nn.ReLU(True), + nn.MaxPool2d(2, 2), # batch_size x 128 x I_height/4 x I_width/4 + nn.Conv2d(128, 256, 3, 1, 1, bias=False), nn.BatchNorm2d(256), nn.ReLU(True), + nn.MaxPool2d(2, 2), # batch_size x 256 x I_height/8 x I_width/8 + nn.Conv2d(256, 512, 3, 1, 1, bias=False), nn.BatchNorm2d(512), nn.ReLU(True), + nn.AdaptiveAvgPool2d(1) # batch_size x 512 + ) + + self.localization_fc1 = nn.Sequential(nn.Linear(512, 256), nn.ReLU(True)) + self.localization_fc2 = nn.Linear(256, self.F * 2) + + # Init fc2 in LocalizationNetwork + self.localization_fc2.weight.data.fill_(0) + """ see RARE paper Fig. 6 (a) """ + ctrl_pts_x = np.linspace(-1.0, 1.0, int(F / 2)) + ctrl_pts_y_top = np.linspace(0.0, -1.0, num=int(F / 2)) + ctrl_pts_y_bottom = np.linspace(1.0, 0.0, num=int(F / 2)) + ctrl_pts_top = np.stack([ctrl_pts_x, ctrl_pts_y_top], axis=1) + ctrl_pts_bottom = np.stack([ctrl_pts_x, ctrl_pts_y_bottom], axis=1) + initial_bias = np.concatenate([ctrl_pts_top, ctrl_pts_bottom], axis=0) + self.localization_fc2.bias.data = torch.from_numpy(initial_bias).float().view(-1) + + def forward(self, batch_I): + """ + input: batch_I : Batch Input Image [batch_size x I_channel_num x I_height x I_width] + output: batch_C_prime : Predicted coordinates of fiducial points for input batch [batch_size x F x 2] + """ + batch_size = batch_I.size(0) + features = self.conv(batch_I).view(batch_size, -1) + batch_C_prime = self.localization_fc2(self.localization_fc1(features)).view(batch_size, self.F, 2) + print("LocalizationNetwork", batch_C_prime.shape) + print("LocalizationNetwork", batch_C_prime[0]) + return batch_C_prime + + +class GridGenerator(nn.Module): + """ Grid Generator of RARE, which produces P_prime by multipling T with P """ + + def __init__(self, F, I_r_size): + """ Generate P_hat and inv_delta_C for later """ + super(GridGenerator, self).__init__() + self.eps = 1e-6 + self.I_r_height, self.I_r_width = I_r_size + self.F = F + self.C = self._build_C(self.F) # F x 2 + self.P = self._build_P(self.I_r_width, self.I_r_height) + ## for multi-gpu, you need register buffer + self.register_buffer("inv_delta_C", torch.tensor(self._build_inv_delta_C(self.F, self.C)).float()) # F+3 x F+3 + self.register_buffer("P_hat", torch.tensor(self._build_P_hat(self.F, self.C, self.P)).float()) # n x F+3 + ## for fine-tuning with different image width, you may use below instead of self.register_buffer + #self.inv_delta_C = torch.tensor(self._build_inv_delta_C(self.F, self.C)).float().cuda() # F+3 x F+3 + #self.P_hat = torch.tensor(self._build_P_hat(self.F, self.C, self.P)).float().cuda() # n x F+3 + + def _build_C(self, F): + """ Return coordinates of fiducial points in I_r; C """ + ctrl_pts_x = np.linspace(-1.0, 1.0, int(F / 2)) + ctrl_pts_y_top = -1 * np.ones(int(F / 2)) + ctrl_pts_y_bottom = np.ones(int(F / 2)) + ctrl_pts_top = np.stack([ctrl_pts_x, ctrl_pts_y_top], axis=1) + ctrl_pts_bottom = np.stack([ctrl_pts_x, ctrl_pts_y_bottom], axis=1) + C = np.concatenate([ctrl_pts_top, ctrl_pts_bottom], axis=0) + return C # F x 2 + + def _build_inv_delta_C(self, F, C): + """ Return inv_delta_C which is needed to calculate T """ + hat_C = np.zeros((F, F), dtype=float) # F x F + for i in range(0, F): + for j in range(i, F): + r = np.linalg.norm(C[i] - C[j]) + hat_C[i, j] = r + hat_C[j, i] = r + np.fill_diagonal(hat_C, 1) + hat_C = (hat_C ** 2) * np.log(hat_C) + # print(C.shape, hat_C.shape) + delta_C = np.concatenate( # F+3 x F+3 + [ + np.concatenate([np.ones((F, 1)), C, hat_C], axis=1), # F x F+3 + np.concatenate([np.zeros((2, 3)), np.transpose(C)], axis=1), # 2 x F+3 + np.concatenate([np.zeros((1, 3)), np.ones((1, F))], axis=1) # 1 x F+3 + ], + axis=0 + ) + inv_delta_C = np.linalg.inv(delta_C) + return inv_delta_C # F+3 x F+3 + + def _build_P(self, I_r_width, I_r_height): + I_r_grid_x = (np.arange(-I_r_width, I_r_width, 2) + 1.0) / I_r_width # self.I_r_width + I_r_grid_y = (np.arange(-I_r_height, I_r_height, 2) + 1.0) / I_r_height # self.I_r_height + P = np.stack( # self.I_r_width x self.I_r_height x 2 + np.meshgrid(I_r_grid_x, I_r_grid_y), + axis=2 + ) + return P.reshape([-1, 2]) # n (= self.I_r_width x self.I_r_height) x 2 + + def _build_P_hat(self, F, C, P): + n = P.shape[0] # n (= self.I_r_width x self.I_r_height) + P_tile = np.tile(np.expand_dims(P, axis=1), (1, F, 1)) # n x 2 -> n x 1 x 2 -> n x F x 2 + C_tile = np.expand_dims(C, axis=0) # 1 x F x 2 + P_diff = P_tile - C_tile # n x F x 2 + rbf_norm = np.linalg.norm(P_diff, ord=2, axis=2, keepdims=False) # n x F + rbf = np.multiply(np.square(rbf_norm), np.log(rbf_norm + self.eps)) # n x F + P_hat = np.concatenate([np.ones((n, 1)), P, rbf], axis=1) + return P_hat # n x F+3 + + def build_P_prime(self, batch_C_prime): + """ Generate Grid from batch_C_prime [batch_size x F x 2] """ + batch_size = batch_C_prime.size(0) + batch_inv_delta_C = self.inv_delta_C.repeat(batch_size, 1, 1) + batch_P_hat = self.P_hat.repeat(batch_size, 1, 1) + batch_C_prime_with_zeros = torch.cat((batch_C_prime, torch.zeros( + batch_size, 3, 2).float().to(device)), dim=1) # batch_size x F+3 x 2 + batch_T = torch.bmm(batch_inv_delta_C, batch_C_prime_with_zeros) # batch_size x F+3 x 2 + batch_P_prime = torch.bmm(batch_P_hat, batch_T) # batch_size x n x 2 + print("batch_P_prime", batch_P_prime.shape) + return batch_P_prime # batch_size x n x 2 diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel1.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel1.py" new file mode 100644 index 0000000..d32950b --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel1.py" @@ -0,0 +1,157 @@ +import string +import argparse + +import torch +import torch.backends.cudnn as cudnn +import torch.utils.data +import torch.nn.functional as F +import cv2 + +from .utils import CTCLabelConverter, AttnLabelConverter +from .dataset import RawDataset, AlignCollate +from .model import Model +class optClass(): + def __init__(self): + self.image_folder = "demo_image/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "recognitionVersion1/checkpoint/TPS-ResNet-BiLSTM-Attn-case-sensitive.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = True + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="ResNet" + self.SequenceModeling="BiLSTM" + self.Prediction="Attn" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 + + +class recognitionModel1(): + def __init__(self, opt=None): + self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + if(opt): + self.opt = opt + else: + self.opt = self.setParser() + print(self.opt.saved_model) + self.converter, self.model = self.init2() + self.demo_loader = None + def setParser(self): + # parser = argparse.ArgumentParser() + # parser.add_argument('--image_folder', default="demo_image/", help='path to image_folder which contains text images') + # parser.add_argument('--workers', type=int, help='number of data loading workers', default=4) + # parser.add_argument('--batch_size', type=int, default=192, help='input batch size') + # parser.add_argument('--saved_model', default="recognitionVersion1/checkpoint/TPS-ResNet-BiLSTM-Attn.pth", help="path to saved_model to evaluation") + # """ Data processing """ + # parser.add_argument('--batch_max_length', type=int, default=25, help='maximum-label-length') + # parser.add_argument('--imgH', type=int, default=32, help='the height of the input image') + # parser.add_argument('--imgW', type=int, default=100, help='the width of the input image') + # parser.add_argument('--rgb', action='store_true', help='use rgb input') + # parser.add_argument('--character', type=str, default='0123456789abcdefghijklmnopqrstuvwxyz', help='character label') + # parser.add_argument('--sensitive', action='store_true', help='for sensitive character mode') + # parser.add_argument('--PAD', action='store_true', help='whether to keep ratio then pad for image resize') + # """ Model Architecture """ + # parser.add_argument('--Transformation', type=str, default="TPS", help='Transformation stage. None|TPS') + # parser.add_argument('--FeatureExtraction', type=str, default="ResNet", help='FeatureExtraction stage. VGG|RCNN|ResNet') + # parser.add_argument('--SequenceModeling', type=str, default="BiLSTM", help='SequenceModeling stage. None|BiLSTM') + # parser.add_argument('--Prediction', type=str, default="Attn", help='Prediction stage. CTC|Attn') + # parser.add_argument('--num_fiducial', type=int, default=20, help='number of fiducial points of TPS-STN') + # parser.add_argument('--input_channel', type=int, default=1, help='the number of input channel of Feature extractor') + # parser.add_argument('--output_channel', type=int, default=512, + # help='the number of output channel of Feature extractor') + # parser.add_argument('--hidden_size', type=int, default=256, help='the size of the LSTM hidden state') + # opt = parser.parse_args() + + """ vocab / character number configuration """ + opt = optClass() + if opt.sensitive: + opt.character = string.printable[:-6] # same with ASTER setting (use 94 char). + + cudnn.benchmark = True + cudnn.deterministic = True + opt.num_gpu = torch.cuda.device_count() + return opt + def init2(self): + """ model configuration """ + if 'CTC' in self.opt.Prediction: + converter = CTCLabelConverter(self.opt.character) + else: + converter = AttnLabelConverter(self.opt.character) + self.opt.num_class = len(converter.character) + + if self.opt.rgb: + self.opt.input_channel = 3 + model = Model(self.opt).cuda() + model = torch.nn.DataParallel(model).to(self.device) + model.load_state_dict(torch.load(self.opt.saved_model, map_location=self.device)) + + + # predict + model.eval() + return converter, model + + def predict(self, image=None): + with torch.no_grad(): + image = torch.from_numpy(image).float().div(255).unsqueeze(0).unsqueeze(0) + # print(image.shape, "image.shape") + + predList = [] + confidence_scoreList = [] + image = image.cuda() + + #print(image.shape) + # For max length prediction + length_for_pred = torch.IntTensor([self.opt.batch_max_length] * 1).to(self.device) + text_for_pred = torch.LongTensor(1, self.opt.batch_max_length + 1).fill_(0).to(self.device) + + if 'CTC' in self.opt.Prediction: + + preds = self.model(image, text_for_pred).log_softmax(2) + + # Select max probabilty (greedy decoding) then decode index to character + preds_size = torch.IntTensor([preds.size(1)] * 1) + _, preds_index = preds.max(2) + preds_index = preds_index.view(-1) + preds_str = self.converter.decode(preds_index.data, preds_size.data) + + else: + # print(image.shape, "image.shape") + preds = self.model(image, text_for_pred, is_train=False) + + # select max probabilty (greedy decoding) then decode index to character + _, preds_index = preds.max(2) + + preds_str = self.converter.decode(preds_index, length_for_pred) + + preds_prob = F.softmax(preds, dim=2) + preds_max_prob, _ = preds_prob.max(dim=2) + # print(preds_str, preds_max_prob) + for pred, pred_max_prob in zip(preds_str, preds_max_prob): + # print(pred, pred_max_prob) + if 'Attn' in self.opt.Prediction: + pred_EOS = pred.find('[s]') + pred = pred[:pred_EOS] # prune after "end of sentence" token ([s]) + pred_max_prob = pred_max_prob[:pred_EOS] + if(len(pred_max_prob) == 0): + confidence_score = 0 + predList = pred + confidence_scoreList = 0 + else: + confidence_score = pred_max_prob.cumprod(dim=0)[-1] + predList = pred + confidence_scoreList = confidence_score.item() + return predList, confidence_scoreList +if __name__ == '__main__': + recognition = recognitionModel() + recognition.ChangeDataLoaderPath("../store/FPK_01/") + img_name, pred, confidence_score = recognition.predict() + for i in range(len(img_name)): + print(f'{img_name[i]:25s}\t{pred[i]:25s}\t{confidence_score[i]:0.4f}') + diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel11.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel11.py" new file mode 100644 index 0000000..975cc6a --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/recognitionModel11.py" @@ -0,0 +1,140 @@ +import string +import argparse + +import torch +import torch.backends.cudnn as cudnn +import torch.utils.data +import torch.nn.functional as F +import cv2 +import matplotlib.pyplot as plt + +from .utils import CTCLabelConverter, AttnLabelConverter +from .dataset import RawDataset, AlignCollate +from .model import Model +cudnn.benchmark = True +cudnn.deterministic = True +class optClass(): + def __init__(self): + self.image_folder = "demo_image/" + self.workers = 4 + self.batch_size = 192 + self.saved_model = "./recognitionVersion1/checkpoint/TPS-ResNet-BiLSTM-Attn-case-sensitive.pth" + self.batch_max_length = 25 + self.imgH = 32 + self.imgW = 100 + self.rgb = False + self.character = '0123456789abcdefghijklmnopqrstuvwxyz' + self.sensitive = True + self.PAD = False + self.Transformation="TPS" + self.FeatureExtraction="VGG" + self.SequenceModeling="BiLSTM" + self.Prediction="Attn" + self.num_fiducial=20 + self.input_channel=1 + self.output_channel=512 + self.hidden_size=256 + + +class recognitionModel1(): + def __init__(self, opt=None): + self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + if(opt): + self.opt = opt + else: + self.opt = optClass() + self.setParser() + print(self.opt.saved_model) + self.converter, self.model = self.init2(self.opt) + self.initDataLoader() + def setParser(self): + if self.opt.sensitive: + self.opt.character = string.printable[:-6] # same with ASTER setting (use 94 char). + + cudnn.benchmark = True + cudnn.deterministic = True + self.opt.num_gpu = torch.cuda.device_count() + def init2(self, opt): + """ model configuration """ + if 'CTC' in opt.Prediction: + converter = CTCLabelConverter(opt.character) + else: + converter = AttnLabelConverter(opt.character) + opt.num_class = len(converter.character) + + if opt.rgb: + opt.input_channel = 3 + model = Model(opt).cuda() + model = torch.nn.DataParallel(model).to(self.device) + model.load_state_dict(torch.load(opt.saved_model, map_location=self.device)) + + + # predict + model.eval() + return converter, model + def initDataLoader(self, image_folder=None): + if(image_folder): + self.opt.image_folder = image_folder + AlignCollate_demo = AlignCollate(imgH=self.opt.imgH, imgW=self.opt.imgW, keep_ratio_with_pad=self.opt.PAD) + demo_data = RawDataset(root=self.opt.image_folder, opt=self.opt) # use RawDataset + demo_loader = torch.utils.data.DataLoader( + demo_data, batch_size=self.opt.batch_size, + shuffle=False, + num_workers=int(self.opt.workers), + collate_fn=AlignCollate_demo , pin_memory=True) + self.demo_loader = demo_loader + def predict(self): + self.model.eval() + returnText = [] + with torch.no_grad(): + for image_tensors, image_path_list in self.demo_loader: + # cv2.imshow('My Image', (((image_tensors[0]*0.5+0.5)*255).permute(1, 2, 0).numpy().astype('uint8'))) + # cv2.waitKey(0) + batch_size = image_tensors.size(0) + image = image_tensors.to(self.device) + # For max length prediction + length_for_pred = torch.IntTensor([self.opt.batch_max_length] * batch_size).to(self.device) + text_for_pred = torch.LongTensor(batch_size, self.opt.batch_max_length + 1).fill_(0).to(self.device) + + if 'CTC' in self.opt.Prediction: + preds = self.model(image, text_for_pred) + + # Select max probabilty (greedy decoding) then decode index to character + preds_size = torch.IntTensor([preds.size(1)] * batch_size) + _, preds_index = preds.max(2) + preds_index = preds_index.view(-1) + # print(preds_index, preds_size) + preds_str = self.converter.decode(preds_index, preds_size) + + else: + preds = self.model(image, text_for_pred, is_train=False) + + # select max probabilty (greedy decoding) then decode index to character + _, preds_index = preds.max(2) + preds_str = self.converter.decode(preds_index, length_for_pred) + + + preds_prob = F.softmax(preds, dim=2) + preds_max_prob, _ = preds_prob.max(dim=2) + # print("preds_max_prob", preds_max_prob) + for img_name, pred, pred_max_prob in zip(image_path_list, preds_str, preds_max_prob): + if 'Attn' in self.opt.Prediction: + pred_EOS = pred.find('[s]') + pred = pred[:pred_EOS] # prune after "end of sentence" token ([s]) + pred_max_prob = pred_max_prob[:pred_EOS] + + # calculate confidence score (= multiply of pred_max_prob) + if(len(pred_max_prob) == 0): + confidence_score = 0 + else: + confidence_score = pred_max_prob.cumprod(dim=0)[-1] + returnText.append(pred) + return returnText +if __name__ == '__main__': + pass + # recognition = recognitionModel() + # recognition.ChangeDataLoaderPath("../store/FPK_01/") + # img_name, pred, confidence_score = recognition.predict() + # for i in range(len(img_name)): + # print(f'{img_name[i]:25s}\t{pred[i]:25s}\t{confidence_score[i]:0.4f}') + diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/test.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/test.py" new file mode 100644 index 0000000..e19d6ed --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/test.py" @@ -0,0 +1,240 @@ +import os +import time +import string +import argparse + +import torch +import torch.backends.cudnn as cudnn +import torch.utils.data +import torch.nn.functional as F +import numpy as np +from nltk.metrics.distance import edit_distance + +from .utils import CTCLabelConverter, AttnLabelConverter, Averager +from .dataset import hierarchical_dataset, AlignCollate +from .model import Model +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + +def benchmark_all_eval(model, criterion, converter, opt, calculate_infer_time=False): + """ evaluation with 10 benchmark evaluation datasets """ + # The evaluation datasets, dataset order is same with Table 1 in our paper. + eval_data_list = ['IIIT5k_3000', 'SVT', 'IC03_860', 'IC03_867', 'IC13_857', + 'IC13_1015', 'IC15_1811', 'IC15_2077', 'SVTP', 'CUTE80'] + + if calculate_infer_time: + evaluation_batch_size = 1 # batch_size should be 1 to calculate the GPU inference time per image. + else: + evaluation_batch_size = opt.batch_size + + list_accuracy = [] + total_forward_time = 0 + total_evaluation_data_number = 0 + total_correct_number = 0 + print('-' * 80) + for eval_data in eval_data_list: + eval_data_path = os.path.join(opt.eval_data, eval_data) + AlignCollate_evaluation = AlignCollate(imgH=opt.imgH, imgW=opt.imgW, keep_ratio_with_pad=opt.PAD) + eval_data = hierarchical_dataset(root=eval_data_path, opt=opt) + evaluation_loader = torch.utils.data.DataLoader( + eval_data, batch_size=evaluation_batch_size, + shuffle=False, + num_workers=int(opt.workers), + collate_fn=AlignCollate_evaluation, pin_memory=True) + + _, accuracy_by_best_model, norm_ED_by_best_model, _, _, _, infer_time, length_of_data = validation( + model, criterion, evaluation_loader, converter, opt) + list_accuracy.append(f'{accuracy_by_best_model:0.3f}') + total_forward_time += infer_time + total_evaluation_data_number += len(eval_data) + total_correct_number += accuracy_by_best_model * length_of_data + print('Acc %0.3f\t normalized_ED %0.3f' % (accuracy_by_best_model, norm_ED_by_best_model)) + print('-' * 80) + + averaged_forward_time = total_forward_time / total_evaluation_data_number * 1000 + total_accuracy = total_correct_number / total_evaluation_data_number + params_num = sum([np.prod(p.size()) for p in model.parameters()]) + + evaluation_log = 'accuracy: ' + for name, accuracy in zip(eval_data_list, list_accuracy): + evaluation_log += f'{name}: {accuracy}\t' + evaluation_log += f'total_accuracy: {total_accuracy:0.3f}\t' + evaluation_log += f'averaged_infer_time: {averaged_forward_time:0.3f}\t# parameters: {params_num/1e6:0.3f}' + print(evaluation_log) + with open(f'./result/{opt.experiment_name}/log_all_evaluation.txt', 'a') as log: + log.write(evaluation_log + '\n') + + return None + + +def validation(model, criterion, evaluation_loader, converter, opt): + """ validation or evaluation """ + n_correct = 0 + norm_ED = 0 + length_of_data = 0 + infer_time = 0 + valid_loss_avg = Averager() + + for i, (image_tensors, labels) in enumerate(evaluation_loader): + batch_size = image_tensors.size(0) + length_of_data = length_of_data + batch_size + image = image_tensors.to(device) + # For max length prediction + length_for_pred = torch.IntTensor([opt.batch_max_length] * batch_size).to(device) + text_for_pred = torch.LongTensor(batch_size, opt.batch_max_length + 1).fill_(0).to(device) + + text_for_loss, length_for_loss = converter.encode(labels, batch_max_length=opt.batch_max_length) + + start_time = time.time() + if 'CTC' in opt.Prediction: + preds = model(image, text_for_pred).log_softmax(2) + forward_time = time.time() - start_time + + # Calculate evaluation loss for CTC deocder. + preds_size = torch.IntTensor([preds.size(1)] * batch_size) + # permute 'preds' to use CTCloss format + cost = criterion(preds.permute(1, 0, 2), text_for_loss, preds_size, length_for_loss) + + # Select max probabilty (greedy decoding) then decode index to character + _, preds_index = preds.max(2) + preds_index = preds_index.view(-1) + preds_str = converter.decode(preds_index.data, preds_size.data) + + else: + preds = model(image, text_for_pred, is_train=False) + forward_time = time.time() - start_time + + preds = preds[:, :text_for_loss.shape[1] - 1, :] + target = text_for_loss[:, 1:] # without [GO] Symbol + cost = criterion(preds.contiguous().view(-1, preds.shape[-1]), target.contiguous().view(-1)) + + # select max probabilty (greedy decoding) then decode index to character + _, preds_index = preds.max(2) + preds_str = converter.decode(preds_index, length_for_pred) + labels = converter.decode(text_for_loss[:, 1:], length_for_loss) + + infer_time += forward_time + valid_loss_avg.add(cost) + + # calculate accuracy & confidence score + preds_prob = F.softmax(preds, dim=2) + preds_max_prob, _ = preds_prob.max(dim=2) + confidence_score_list = [] + for gt, pred, pred_max_prob in zip(labels, preds_str, preds_max_prob): + if 'Attn' in opt.Prediction: + gt = gt[:gt.find('[s]')] + pred_EOS = pred.find('[s]') + pred = pred[:pred_EOS] # prune after "end of sentence" token ([s]) + pred_max_prob = pred_max_prob[:pred_EOS] + + if pred == gt: + n_correct += 1 + if len(gt) == 0: + norm_ED += 1 + else: + norm_ED += edit_distance(pred, gt) / len(gt) + + # calculate confidence score (= multiply of pred_max_prob) + try: + confidence_score = pred_max_prob.cumprod(dim=0)[-1] + except: + confidence_score = 0 # for empty pred case, when prune after "end of sentence" token ([s]) + confidence_score_list.append(confidence_score) + # print(pred, gt, pred==gt, confidence_score) + + accuracy = n_correct / float(length_of_data) * 100 + + return valid_loss_avg.val(), accuracy, norm_ED, preds_str, confidence_score_list, labels, infer_time, length_of_data + + +def test(opt): + """ model configuration """ + if 'CTC' in opt.Prediction: + converter = CTCLabelConverter(opt.character) + else: + converter = AttnLabelConverter(opt.character) + opt.num_class = len(converter.character) + + if opt.rgb: + opt.input_channel = 3 + model = Model(opt) + print('model input parameters', opt.imgH, opt.imgW, opt.num_fiducial, opt.input_channel, opt.output_channel, + opt.hidden_size, opt.num_class, opt.batch_max_length, opt.Transformation, opt.FeatureExtraction, + opt.SequenceModeling, opt.Prediction) + model = torch.nn.DataParallel(model).to(device) + + # load model + print('loading pretrained model from %s' % opt.saved_model) + model.load_state_dict(torch.load(opt.saved_model, map_location=device)) + opt.experiment_name = '_'.join(opt.saved_model.split('/')[1:]) + # print(model) + + """ keep evaluation model and result logs """ + os.makedirs(f'./result/{opt.experiment_name}', exist_ok=True) + os.system(f'cp {opt.saved_model} ./result/{opt.experiment_name}/') + + """ setup loss """ + if 'CTC' in opt.Prediction: + criterion = torch.nn.CTCLoss(zero_infinity=True).to(device) + else: + criterion = torch.nn.CrossEntropyLoss(ignore_index=0).to(device) # ignore [GO] token = ignore index 0 + + """ evaluation """ + model.eval() + with torch.no_grad(): + if opt.benchmark_all_eval: # evaluation with 10 benchmark evaluation datasets + benchmark_all_eval(model, criterion, converter, opt) + else: + AlignCollate_evaluation = AlignCollate(imgH=opt.imgH, imgW=opt.imgW, keep_ratio_with_pad=opt.PAD) + eval_data = hierarchical_dataset(root=opt.eval_data, opt=opt) + evaluation_loader = torch.utils.data.DataLoader( + eval_data, batch_size=opt.batch_size, + shuffle=False, + num_workers=int(opt.workers), + collate_fn=AlignCollate_evaluation, pin_memory=True) + _, accuracy_by_best_model, _, _, _, _, _, _ = validation( + model, criterion, evaluation_loader, converter, opt) + + print(accuracy_by_best_model) + with open('./result/{0}/log_evaluation.txt'.format(opt.experiment_name), 'a') as log: + log.write(str(accuracy_by_best_model) + '\n') + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--eval_data', required=True, help='path to evaluation dataset') + parser.add_argument('--benchmark_all_eval', action='store_true', help='evaluate 10 benchmark evaluation datasets') + parser.add_argument('--workers', type=int, help='number of data loading workers', default=4) + parser.add_argument('--batch_size', type=int, default=192, help='input batch size') + parser.add_argument('--saved_model', required=True, help="path to saved_model to evaluation") + """ Data processing """ + parser.add_argument('--batch_max_length', type=int, default=25, help='maximum-label-length') + parser.add_argument('--imgH', type=int, default=32, help='the height of the input image') + parser.add_argument('--imgW', type=int, default=100, help='the width of the input image') + parser.add_argument('--rgb', action='store_true', help='use rgb input') + parser.add_argument('--character', type=str, default='0123456789abcdefghijklmnopqrstuvwxyz', help='character label') + parser.add_argument('--sensitive', action='store_true', help='for sensitive character mode') + parser.add_argument('--PAD', action='store_true', help='whether to keep ratio then pad for image resize') + parser.add_argument('--data_filtering_off', action='store_true', help='for data_filtering_off mode') + """ Model Architecture """ + parser.add_argument('--Transformation', type=str, required=True, help='Transformation stage. None|TPS') + parser.add_argument('--FeatureExtraction', type=str, required=True, help='FeatureExtraction stage. VGG|RCNN|ResNet') + parser.add_argument('--SequenceModeling', type=str, required=True, help='SequenceModeling stage. None|BiLSTM') + parser.add_argument('--Prediction', type=str, required=True, help='Prediction stage. CTC|Attn') + parser.add_argument('--num_fiducial', type=int, default=20, help='number of fiducial points of TPS-STN') + parser.add_argument('--input_channel', type=int, default=1, help='the number of input channel of Feature extractor') + parser.add_argument('--output_channel', type=int, default=512, + help='the number of output channel of Feature extractor') + parser.add_argument('--hidden_size', type=int, default=256, help='the size of the LSTM hidden state') + + opt = parser.parse_args() + + """ vocab / character number configuration """ + if opt.sensitive: + opt.character = string.printable[:-6] # same with ASTER setting (use 94 char). + + cudnn.benchmark = True + cudnn.deterministic = True + opt.num_gpu = torch.cuda.device_count() + + test(opt) diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/toXls.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/toXls.py" new file mode 100644 index 0000000..7240cac --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/toXls.py" @@ -0,0 +1,80 @@ +import numpy as np +from openpyxl import Workbook +def toXls(xGrid, yGrid, rect, pred, storeName): + ansList = [] + for j in range(len(yGrid)): + ansList.append([]) + for k in range(len(xGrid)): + ansList[-1].append("-") + for j in range(len(rect)): + imgCenterX = (rect[j][0] + rect[j][2])//2 + imgCenterY = (rect[j][1] + rect[j][3])//2 + targetX = np.argmin(np.absolute(xGrid-imgCenterY), axis=0) + targetY = np.argmin(np.absolute(yGrid-imgCenterX), axis=0) + if(ansList[targetY][targetX] != "-"): + ansList[targetY][targetX] += "-"+pred[j].upper() + else: + ansList[targetY][targetX] = pred[j].upper() + #print(ansList) + ansListTemp = [] + for j in range(len(ansList)): + flag = 0 + for k in range(len(ansList[j])): + if(ansList[j][k] != "-"): + flag += 1 + if(flag >= 2): + ansListTemp.append(ansList[j][:]) + ansList = ansListTemp[:] + j = 0 + #print(ansList) + while(j < len(ansList[0])): + flag = 0 + for k in range(len(ansList)): + if(ansList[k][j] != "-"): + flag += 1 + if(flag < 2): + for k in range(len(ansList)): + del ansList[k][j] + else: + j+=1 + #print(ansList) + + xKey = -1 + xKeyMin = 1000 + for j in range(len(ansList)): + counter = 0 + flag = 0 + for k in range(len(ansList[j])): + counter += len(ansList[j][k]) + if(len(ansList[j][k]) > 5): + flag = 1 + break + if(counter < xKeyMin and flag == 0): + xKeyMin = counter + xKey = j + yKey = -1 + yKeyMin = 1000 + for j in range(len(ansList[0])): + counter = 0 + flag = 0 + for k in range(len(ansList)): + counter += len(ansList[k][j]) + if(len(ansList[k][j]) > 5): + flag = 1 + break + if(counter < yKeyMin and flag == 0): + yKeyMin = counter + yKey = j + + #print(xKey, yKey) + wb = Workbook() + ws = wb.active + ws.append(["NUMBER", "CONTENT"]) + for j in range(len(ansList)): + if(j == xKey): + continue + for k in range(len(ansList[j])): + if(k == yKey): + continue + ws.append([ansList[j][yKey]+ansList[xKey][k], ansList[j][k]]) + wb.save(storeName+'.xlsx') \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/train.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/train.py" new file mode 100644 index 0000000..e24e511 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/train.py" @@ -0,0 +1,307 @@ +import os +import sys +import time +import random +import string +import argparse + +import torch +import torch.backends.cudnn as cudnn +import torch.nn.init as init +import torch.optim as optim +import torch.utils.data +import numpy as np + +from utils import CTCLabelConverter, AttnLabelConverter, Averager +from dataset import hierarchical_dataset, AlignCollate, Batch_Balanced_Dataset +from model import Model +from test import validation +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + +def train(opt): + """ dataset preparation """ + if not opt.data_filtering_off: + print('Filtering the images containing characters which are not in opt.character') + print('Filtering the images whose label is longer than opt.batch_max_length') + # see https://github.com/clovaai/deep-text-recognition-benchmark/blob/master/dataset.py#L130 + + opt.select_data = opt.select_data.split('-') + opt.batch_ratio = opt.batch_ratio.split('-') + train_dataset = Batch_Balanced_Dataset(opt) + + AlignCollate_valid = AlignCollate(imgH=opt.imgH, imgW=opt.imgW, keep_ratio_with_pad=opt.PAD) + valid_dataset = hierarchical_dataset(root=opt.valid_data, opt=opt) + valid_loader = torch.utils.data.DataLoader( + valid_dataset, batch_size=opt.batch_size, + shuffle=True, # 'True' to check training progress with validation function. + num_workers=int(opt.workers), + collate_fn=AlignCollate_valid, pin_memory=True) + print('-' * 80) + + """ model configuration """ + if 'CTC' in opt.Prediction: + converter = CTCLabelConverter(opt.character) + else: + converter = AttnLabelConverter(opt.character) + opt.num_class = len(converter.character) + + if opt.rgb: + opt.input_channel = 3 + model = Model(opt) + print('model input parameters', opt.imgH, opt.imgW, opt.num_fiducial, opt.input_channel, opt.output_channel, + opt.hidden_size, opt.num_class, opt.batch_max_length, opt.Transformation, opt.FeatureExtraction, + opt.SequenceModeling, opt.Prediction) + + # weight initialization + for name, param in model.named_parameters(): + if 'localization_fc2' in name: + print(f'Skip {name} as it is already initialized') + continue + try: + if 'bias' in name: + init.constant_(param, 0.0) + elif 'weight' in name: + init.kaiming_normal_(param) + except Exception as e: # for batchnorm. + if 'weight' in name: + param.data.fill_(1) + continue + + # data parallel for multi-GPU + model = torch.nn.DataParallel(model).to(device) + model.train() + if opt.saved_model != '': + print(f'loading pretrained model from {opt.saved_model}') + if opt.FT: + model.load_state_dict(torch.load(opt.saved_model), strict=False) + else: + model.load_state_dict(torch.load(opt.saved_model)) + print("Model:") + print(model) + + """ setup loss """ + if 'CTC' in opt.Prediction: + criterion = torch.nn.CTCLoss(zero_infinity=True).to(device) + else: + criterion = torch.nn.CrossEntropyLoss(ignore_index=0).to(device) # ignore [GO] token = ignore index 0 + # loss averager + loss_avg = Averager() + + # filter that only require gradient decent + filtered_parameters = [] + params_num = [] + for p in filter(lambda p: p.requires_grad, model.parameters()): + filtered_parameters.append(p) + params_num.append(np.prod(p.size())) + print('Trainable params num : ', sum(params_num)) + # [print(name, p.numel()) for name, p in filter(lambda p: p[1].requires_grad, model.named_parameters())] + + # setup optimizer + if opt.adam: + optimizer = optim.Adam(filtered_parameters, lr=opt.lr, betas=(opt.beta1, 0.999)) + else: + optimizer = optim.Adadelta(filtered_parameters, lr=opt.lr, rho=opt.rho, eps=opt.eps) + print("Optimizer:") + print(optimizer) + + """ final options """ + # print(opt) + with open(f'./saved_models/{opt.experiment_name}/opt.txt', 'a') as opt_file: + opt_log = '------------ Options -------------\n' + args = vars(opt) + for k, v in args.items(): + opt_log += f'{str(k)}: {str(v)}\n' + opt_log += '---------------------------------------\n' + print(opt_log) + opt_file.write(opt_log) + + """ start training """ + start_iter = 0 + if opt.saved_model != '': + start_iter = int(opt.saved_model.split('_')[-1].split('.')[0]) + print(f'continue to train, start_iter: {start_iter}') + + start_time = time.time() + best_accuracy = -1 + best_norm_ED = 1e+6 + i = start_iter + + while(True): + # train part + image_tensors, labels = train_dataset.get_batch() + image = image_tensors.to(device) + text, length = converter.encode(labels, batch_max_length=opt.batch_max_length) + batch_size = image.size(0) + + if 'CTC' in opt.Prediction: + preds = model(image, text).log_softmax(2) + preds_size = torch.IntTensor([preds.size(1)] * batch_size) + preds = preds.permute(1, 0, 2) + + # (ctc_a) For PyTorch 1.2.0 and 1.3.0. To avoid ctc_loss issue, disabled cudnn for the computation of the ctc_loss + # https://github.com/jpuigcerver/PyLaia/issues/16 + torch.backends.cudnn.enabled = False + cost = criterion(preds, text.to(device), preds_size.to(device), length.to(device)) + torch.backends.cudnn.enabled = True + + # # (ctc_b) To reproduce our pretrained model / paper, use our previous code (below code) instead of (ctc_a). + # # With PyTorch 1.2.0, the below code occurs NAN, so you may use PyTorch 1.1.0. + # # Thus, the result of CTCLoss is different in PyTorch 1.1.0 and PyTorch 1.2.0. + # # See https://github.com/clovaai/deep-text-recognition-benchmark/issues/56#issuecomment-526490707 + # cost = criterion(preds, text, preds_size, length) + + else: + preds = model(image, text[:, :-1]) # align with Attention.forward + target = text[:, 1:] # without [GO] Symbol + cost = criterion(preds.view(-1, preds.shape[-1]), target.contiguous().view(-1)) + + model.zero_grad() + cost.backward() + torch.nn.utils.clip_grad_norm_(model.parameters(), opt.grad_clip) # gradient clipping with 5 (Default) + optimizer.step() + + loss_avg.add(cost) + + # validation part + if i % opt.valInterval == 0: + elapsed_time = time.time() - start_time + # for log + with open(f'./saved_models/{opt.experiment_name}/log_train.txt', 'a') as log: + model.eval() + with torch.no_grad(): + valid_loss, current_accuracy, current_norm_ED, preds, confidence_score, labels, infer_time, length_of_data = validation( + model, criterion, valid_loader, converter, opt) + model.train() + + # training loss and validation loss + loss_log = f'[{i}/{opt.num_iter}] Train loss: {loss_avg.val():0.5f}, Valid loss: {valid_loss:0.5f}, Elapsed_time: {elapsed_time:0.5f}' + print(loss_log) + log.write(loss_log + '\n') + loss_avg.reset() + + current_model_log = f'{"Current_accuracy":17s}: {current_accuracy:0.3f}, {"Current_norm_ED":17s}: {current_norm_ED:0.2f}' + print(current_model_log) + log.write(current_model_log + '\n') + + # keep best accuracy model (on valid dataset) + if current_accuracy > best_accuracy: + best_accuracy = current_accuracy + torch.save(model.state_dict(), f'./saved_models/{opt.experiment_name}/best_accuracy.pth') + if current_norm_ED < best_norm_ED: + best_norm_ED = current_norm_ED + torch.save(model.state_dict(), f'./saved_models/{opt.experiment_name}/best_norm_ED.pth') + best_model_log = f'{"Best_accuracy":17s}: {best_accuracy:0.3f}, {"Best_norm_ED":17s}: {best_norm_ED:0.2f}' + print(best_model_log) + log.write(best_model_log + '\n') + + # show some predicted results + print('-' * 80) + print(f'{"Ground Truth":25s} | {"Prediction":25s} | Confidence Score & T/F') + log.write(f'{"Ground Truth":25s} | {"Prediction":25s} | {"Confidence Score"}\n') + print('-' * 80) + for gt, pred, confidence in zip(labels[:5], preds[:5], confidence_score[:5]): + if 'Attn' in opt.Prediction: + gt = gt[:gt.find('[s]')] + pred = pred[:pred.find('[s]')] + + print(f'{gt:25s} | {pred:25s} | {confidence:0.4f}\t{str(pred == gt)}') + log.write(f'{gt:25s} | {pred:25s} | {confidence:0.4f}\t{str(pred == gt)}\n') + print('-' * 80) + + # save model per 1e+5 iter. + if (i + 1) % 1e+5 == 0: + torch.save( + model.state_dict(), f'./saved_models/{opt.experiment_name}/iter_{i+1}.pth') + + if i == opt.num_iter: + print('end the training') + sys.exit() + i += 1 + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--experiment_name', help='Where to store logs and models') + parser.add_argument('--train_data', required=True, help='path to training dataset') + parser.add_argument('--valid_data', required=True, help='path to validation dataset') + parser.add_argument('--manualSeed', type=int, default=1111, help='for random seed setting') + parser.add_argument('--workers', type=int, help='number of data loading workers', default=4) + parser.add_argument('--batch_size', type=int, default=192, help='input batch size') + parser.add_argument('--num_iter', type=int, default=300000, help='number of iterations to train for') + parser.add_argument('--valInterval', type=int, default=2000, help='Interval between each validation') + parser.add_argument('--saved_model', default='', help="path to model to continue training") + parser.add_argument('--FT', action='store_true', help='whether to do fine-tuning') + parser.add_argument('--adam', action='store_true', help='Whether to use adam (default is Adadelta)') + parser.add_argument('--lr', type=float, default=1, help='learning rate, default=1.0 for Adadelta') + parser.add_argument('--beta1', type=float, default=0.9, help='beta1 for adam. default=0.9') + parser.add_argument('--rho', type=float, default=0.95, help='decay rate rho for Adadelta. default=0.95') + parser.add_argument('--eps', type=float, default=1e-8, help='eps for Adadelta. default=1e-8') + parser.add_argument('--grad_clip', type=float, default=5, help='gradient clipping value. default=5') + """ Data processing """ + parser.add_argument('--select_data', type=str, default='MJ-ST', + help='select training data (default is MJ-ST, which means MJ and ST used as training data)') + parser.add_argument('--batch_ratio', type=str, default='0.5-0.5', + help='assign ratio for each selected data in the batch') + parser.add_argument('--total_data_usage_ratio', type=str, default='1.0', + help='total data usage ratio, this ratio is multiplied to total number of data.') + parser.add_argument('--batch_max_length', type=int, default=25, help='maximum-label-length') + parser.add_argument('--imgH', type=int, default=32, help='the height of the input image') + parser.add_argument('--imgW', type=int, default=100, help='the width of the input image') + parser.add_argument('--rgb', action='store_true', help='use rgb input') + parser.add_argument('--character', type=str, default='0123456789abcdefghijklmnopqrstuvwxyz', help='character label') + parser.add_argument('--sensitive', action='store_true', help='for sensitive character mode') + parser.add_argument('--PAD', action='store_true', help='whether to keep ratio then pad for image resize') + parser.add_argument('--data_filtering_off', action='store_true', help='for data_filtering_off mode') + """ Model Architecture """ + parser.add_argument('--Transformation', type=str, required=True, help='Transformation stage. None|TPS') + parser.add_argument('--FeatureExtraction', type=str, required=True, help='FeatureExtraction stage. VGG|RCNN|ResNet') + parser.add_argument('--SequenceModeling', type=str, required=True, help='SequenceModeling stage. None|BiLSTM') + parser.add_argument('--Prediction', type=str, required=True, help='Prediction stage. CTC|Attn') + parser.add_argument('--num_fiducial', type=int, default=20, help='number of fiducial points of TPS-STN') + parser.add_argument('--input_channel', type=int, default=1, help='the number of input channel of Feature extractor') + parser.add_argument('--output_channel', type=int, default=512, + help='the number of output channel of Feature extractor') + parser.add_argument('--hidden_size', type=int, default=256, help='the size of the LSTM hidden state') + + opt = parser.parse_args() + + if not opt.experiment_name: + opt.experiment_name = f'{opt.Transformation}-{opt.FeatureExtraction}-{opt.SequenceModeling}-{opt.Prediction}' + opt.experiment_name += f'-Seed{opt.manualSeed}' + # print(opt.experiment_name) + + os.makedirs(f'./saved_models/{opt.experiment_name}', exist_ok=True) + + """ vocab / character number configuration """ + if opt.sensitive: + # opt.character += 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + opt.character = string.printable[:-6] # same with ASTER setting (use 94 char). + + """ Seed and GPU setting """ + # print("Random Seed: ", opt.manualSeed) + random.seed(opt.manualSeed) + np.random.seed(opt.manualSeed) + torch.manual_seed(opt.manualSeed) + torch.cuda.manual_seed(opt.manualSeed) + + cudnn.benchmark = True + cudnn.deterministic = True + opt.num_gpu = torch.cuda.device_count() + # print('device count', opt.num_gpu) + if opt.num_gpu > 1: + print('------ Use multi-GPU setting ------') + print('if you stuck too long time with multi-GPU setting, try to set --workers 0') + # check multi-GPU issue https://github.com/clovaai/deep-text-recognition-benchmark/issues/1 + opt.workers = opt.workers * opt.num_gpu + opt.batch_size = opt.batch_size * opt.num_gpu + + """ previous version + print('To equlize batch stats to 1-GPU setting, the batch_size is multiplied with num_gpu and multiplied batch_size is ', opt.batch_size) + opt.batch_size = opt.batch_size * opt.num_gpu + print('To equalize the number of epochs to 1-GPU setting, num_iter is divided with num_gpu by default.') + If you dont care about it, just commnet out these line.) + opt.num_iter = int(opt.num_iter / opt.num_gpu) + """ + + train(opt) diff --git "a/\346\225\264\347\220\206/OCR/recognitionVersion1/utils.py" "b/\346\225\264\347\220\206/OCR/recognitionVersion1/utils.py" new file mode 100644 index 0000000..3932fb8 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/recognitionVersion1/utils.py" @@ -0,0 +1,121 @@ +import torch +device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') + + +class CTCLabelConverter(object): + """ Convert between text-label and text-index """ + + def __init__(self, character): + # character (str): set of the possible characters. + dict_character = list(character) + + self.dict = {} + for i, char in enumerate(dict_character): + # NOTE: 0 is reserved for 'blank' token required by CTCLoss + self.dict[char] = i + 1 + + self.character = ['[blank]'] + dict_character # dummy '[blank]' token for CTCLoss (index 0) + + def encode(self, text, batch_max_length=25): + """convert text-label into text-index. + input: + text: text labels of each image. [batch_size] + + output: + text: concatenated text index for CTCLoss. + [sum(text_lengths)] = [text_index_0 + text_index_1 + ... + text_index_(n - 1)] + length: length of each text. [batch_size] + """ + length = [len(s) for s in text] + text = ''.join(text) + text = [self.dict[char] for char in text] + + return (torch.IntTensor(text), torch.IntTensor(length)) + + def decode(self, text_index, length): + """ convert text-index into text-label. """ + texts = [] + index = 0 + for l in length: + t = text_index[index:index + l] + + char_list = [] + for i in range(l): + # print(t, t[i], i, t[i-1]) + if t[i] != 0 and (not (i > 0 and t[i - 1] == t[i])): # removing repeated characters and blank. + char_list.append(self.character[t[i]]) + text = ''.join(char_list) + + texts.append(text) + index += l + return texts + + +class AttnLabelConverter(object): + """ Convert between text-label and text-index """ + + def __init__(self, character): + # character (str): set of the possible characters. + # [GO] for the start token of the attention decoder. [s] for end-of-sentence token. + list_token = ['[GO]', '[s]'] # ['[s]','[UNK]','[PAD]','[GO]'] + list_character = list(character) + self.character = list_token + list_character + + self.dict = {} + for i, char in enumerate(self.character): + # print(i, char) + self.dict[char] = i + + def encode(self, text, batch_max_length=25): + """ convert text-label into text-index. + input: + text: text labels of each image. [batch_size] + batch_max_length: max length of text label in the batch. 25 by default + + output: + text : the input of attention decoder. [batch_size x (max_length+2)] +1 for [GO] token and +1 for [s] token. + text[:, 0] is [GO] token and text is padded with [GO] token after [s] token. + length : the length of output of attention decoder, which count [s] token also. [3, 7, ....] [batch_size] + """ + length = [len(s) + 1 for s in text] # +1 for [s] at end of sentence. + # batch_max_length = max(length) # this is not allowed for multi-gpu setting + batch_max_length += 1 + # additional +1 for [GO] at first step. batch_text is padded with [GO] token after [s] token. + batch_text = torch.LongTensor(len(text), batch_max_length + 1).fill_(0) + for i, t in enumerate(text): + text = list(t) + text.append('[s]') + text = [self.dict[char] for char in text] + batch_text[i][1:1 + len(text)] = torch.LongTensor(text) # batch_text[:, 0] = [GO] token + return (batch_text.to(device), torch.IntTensor(length).to(device)) + + def decode(self, text_index, length): + """ convert text-index into text-label. """ + texts = [] + for index, l in enumerate(length): + text = ''.join([self.character[i] for i in text_index[index, :]]) + texts.append(text) + return texts + + +class Averager(object): + """Compute average for torch.Tensor, used for loss average.""" + + def __init__(self): + self.reset() + + def add(self, v): + count = v.data.numel() + v = v.data.sum() + self.n_count += count + self.sum += v + + def reset(self): + self.n_count = 0 + self.sum = 0 + + def val(self): + res = 0 + if self.n_count != 0: + res = self.sum / float(self.n_count) + return res diff --git "a/\346\225\264\347\220\206/OCR/saved_models/dataColor/needModel.txt" "b/\346\225\264\347\220\206/OCR/saved_models/dataColor/needModel.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/OCR/testmarge.bat" "b/\346\225\264\347\220\206/OCR/testmarge.bat" new file mode 100644 index 0000000..a30b436 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/testmarge.bat" @@ -0,0 +1,72 @@ +rem python testmarge.py --modelName dataColor.STARNet --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.CRNN --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.RARE --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.Rosetta --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.NoneResNetBiLSTMCTC --typedetect unet-Result-best-rulebase --typedata RGB + +rem python testmarge.py --modelName dataColor.STARNet --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.CRNN --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.RARE --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.Rosetta --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName dataColor.NoneResNetBiLSTMCTC --typedetect yolo-Result-best-rulebase --typedata RGB + +rem python testmarge.py --modelName dataColor.STARNet --typedetect marge --typedata RGB +rem python testmarge.py --modelName dataColor.CRNN --typedetect marge --typedata RGB +python testmarge.py --modelName dataColor.RARE --typedetect marge --typedata RGB +rem python testmarge.py --modelName dataColor.Rosetta --typedetect marge --typedata RGB +python testmarge.py --modelName dataColor.NoneResNetBiLSTMCTC --typedetect marge --typedata RGB + +rem python testmarge.py --modelName STARNet --typedetect marge --typedata RGB +rem python testmarge.py --modelName STARNet --typedetect marge --typedata GRAY +rem python testmarge.py --modelName STARNet --typedetect marge --typedata BINARY +rem python testmarge.py --modelName CRNN --typedetect marge --typedata RGB +rem python testmarge.py --modelName CRNN --typedetect marge --typedata GRAY +rem python testmarge.py --modelName CRNN --typedetect marge --typedata BINARY +rem python testmarge.py --modelName RARE --typedetect marge --typedata RGB +rem python testmarge.py --modelName RARE --typedetect marge --typedata GRAY +rem python testmarge.py --modelName RARE --typedetect marge --typedata BINARY +rem python testmarge.py --modelName Rosetta --typedetect marge --typedata RGB +rem python testmarge.py --modelName Rosetta --typedetect marge --typedata GRAY +rem python testmarge.py --modelName Rosetta --typedetect marge --typedata BINARY + +rem python testmarge.py --modelName STARNet --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName STARNet --typedetect yolo-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName STARNet --typedetect yolo-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName CRNN --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName CRNN --typedetect yolo-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName CRNN --typedetect yolo-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName RARE --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName RARE --typedetect yolo-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName RARE --typedetect yolo-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName Rosetta --typedetect yolo-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName Rosetta --typedetect yolo-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName Rosetta --typedetect yolo-Result-best-rulebase --typedata BINARY + +rem python testmarge.py --modelName STARNet --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName STARNet --typedetect unet-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName STARNet --typedetect unet-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName CRNN --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName CRNN --typedetect unet-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName CRNN --typedetect unet-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName RARE --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName RARE --typedetect unet-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName RARE --typedetect unet-Result-best-rulebase --typedata BINARY +rem python testmarge.py --modelName Rosetta --typedetect unet-Result-best-rulebase --typedata RGB +rem python testmarge.py --modelName Rosetta --typedetect unet-Result-best-rulebase --typedata GRAY +rem python testmarge.py --modelName Rosetta --typedetect unet-Result-best-rulebase --typedata BINARY + +rem python testmarge.py --modelName STARNet --typedetect marge --typedata TYPE1 +rem python testmarge.py --modelName CRNN --typedetect marge --typedata TYPE1 +rem python testmarge.py --modelName RARE --typedetect marge --typedata TYPE1 +rem python testmarge.py --modelName Rosetta --typedetect marge --typedata TYPE1 + +rem python testmarge.py --modelName STARNet --typedetect yolo-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName CRNN --typedetect yolo-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName RARE --typedetect yolo-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName Rosetta --typedetect yolo-Result-best-rulebase --typedata TYPE1 + +rem python testmarge.py --modelName STARNet --typedetect unet-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName CRNN --typedetect unet-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName RARE --typedetect unet-Result-best-rulebase --typedata TYPE1 +rem python testmarge.py --modelName Rosetta --typedetect unet-Result-best-rulebase --typedata TYPE1 +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/OCR/testmarge.py" "b/\346\225\264\347\220\206/OCR/testmarge.py" new file mode 100644 index 0000000..f553d63 --- /dev/null +++ "b/\346\225\264\347\220\206/OCR/testmarge.py" @@ -0,0 +1,73 @@ +import json +import os +import csv +import cv2 +import numpy as np +import argparse +import sys +from PIL import Image +import importlib + +import drawer +from recognitionVersion1 import recognitionModel11 as recognitionModel1 +def grayToBinary(grayImg): + ret, binaryImg = cv2.threshold(grayImg, 0, 255, cv2.THRESH_BINARY+cv2.THRESH_OTSU) + whiteCount = np.sum(binaryImg[:,:] > 128) + blackCount = np.sum(binaryImg[:,:] < 128) + if(blackCount < whiteCount): + ret, binaryImg = cv2.threshold(binaryImg, 128, 255, cv2.THRESH_BINARY_INV) + return binaryImg + +import shutil +def testImgFlooders(model, opt): + imgDirs = os.path.join("../cutImage/", opt.typedetect, opt.typedata) + resultDir = os.path.join("../CrossTest-Result/", "{}_{}_{}".format(opt.typedetect, opt.modelName, opt.typedata)) + if not os.path.exists(resultDir): + os.makedirs(resultDir) + + print("imgFlooder", imgDirs) + + for dirname in os.listdir(imgDirs): + dirpath = os.path.join(imgDirs, dirname) + if not os.path.isdir(dirpath): + continue + print(dirpath) + + jsonPath = dirpath + ".json" + with open(jsonPath, 'r') as f: + rects = json.load(f) + # print(jsonPath, len(rects), len(list(os.listdir(dirpath)))) + imagePath = os.path.join("../../groundtruth/image/", dirname+".jpg") + image = cv2.imread(imagePath) + + model.initDataLoader(dirpath) + texts = model.predict() + + for i, text in enumerate(texts): + text=text.upper() + rects[i].append(texts[i]) + + #清除預測為空字串的區塊 + clearRects = [] + for rect in rects: + if len(rect[7]) > 0: clearRects.append(rect) + + with open(os.path.join(resultDir, dirname+".json"), 'w') as f: + json.dump(clearRects, f) + + + image = drawer.drawCounters(clearRects, image.copy(), color=(0, 0, 255), predList=True) + cv2.imwrite(os.path.join(resultDir, dirname+".jpg"), image) +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--modelName', default="dataColor.NoneResNetBiLSTMCTC", help='what model want test') + parser.add_argument('--typedetect', default="unet-Result-best", help='what data want test') + parser.add_argument('--typedata', default="RGB", help='what data want test') + opt = parser.parse_args() + cfg = importlib.import_module('cfg.'+opt.modelName) + optClass = cfg.optClass + recognition = recognitionModel1.recognitionModel1(optClass()) + + testImgFlooders(recognition, opt) + + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/csv/add.py" "b/\346\225\264\347\220\206/csv/add.py" new file mode 100644 index 0000000..a869522 --- /dev/null +++ "b/\346\225\264\347\220\206/csv/add.py" @@ -0,0 +1,6 @@ +import os +for filename in os.listdir(): + size = os.path.splitext(filename)[0] + print(filename) + if(size != "sidewindow" and size != "ori"): + os.rename(filename, size.zfill(4)) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/csv/draw.py" "b/\346\225\264\347\220\206/csv/draw.py" new file mode 100644 index 0000000..58267f3 --- /dev/null +++ "b/\346\225\264\347\220\206/csv/draw.py" @@ -0,0 +1,81 @@ +import os +import csv +import numpy as np +import matplotlib as mpl +import matplotlib.pyplot as plt +plt.rcParams['font.sans-serif'] = ['Taipei Sans TC Beta'] + +path = "./yolo-Result/" +datas = [[] for i in range(18)] +yLabel = [] +for filename in os.listdir(path): + print(filename) + size = os.path.splitext(filename)[0] + if(size != "sidewindow" and size != "ori"): + yLabel.append(int(size)) + with open(os.path.join(path, filename), newline='') as csvfile: + rows = csv.reader(csvfile) + for i, row in enumerate(rows): + datas[i].append(float(row[-1])) + +# sidewindow = [] +# with open("./yolo-Result/sidewindow.csv", newline='') as csvfile: +# rows = csv.reader(csvfile) +# for i, row in enumerate(rows): +# sidewindow.append(float(row[-1])) +# print("np.mean(sidewindow)", np.mean(sidewindow)) +# sidewindow = [np.mean(sidewindow)]*44 + +# ori = [] +# with open("./yolo-Result/ori.csv", newline='') as csvfile: +# rows = csv.reader(csvfile) +# for i, row in enumerate(rows): +# ori.append(float(row[-1])) +# print("np.mean(ori)", np.mean(ori)) +# ori = [np.mean(ori)]*44 +# print(datas) +# plt.title('') +# for i in range(len(datas)): +# r, g, b = i/9/3, i%9/9, i%3/3 +# # plt.plot(yLabel, datas[i], color=(r, g, b), label=str(i)) +# print(np.max(datas[12])) +# print(np.max(datas, 1), "max") +# print(np.argmax(datas, 1)*100+608, "maxarg") + +# print(np.max(np.mean(datas, 0))) +# plt.plot(yLabel, ori, color=(1, 0, 0), label="第一種模式",linewidth=5.0) +# plt.plot(yLabel, sidewindow, color=(0, 0, 1), label="第二種模式",linewidth=5.0) + +# plt.plot(yLabel, np.mean(datas, 0), color=(0, 1, 0), label="第三種模式",linewidth=5.0) +# print(np.mean(datas, 0)) +# print(yLabel) +# plt.legend() # 显示图例 +# plt.xlabel('m') +# plt.ylabel('F1-Score') +# plt.show() + +sidewindow = [] +with open("./yolo-Result/sidewindow.csv", newline='') as csvfile: + rows = csv.reader(csvfile) + for i, row in enumerate(rows): + sidewindow.append(float(row[-1])) +print("np.mean(sidewindow)", np.mean(sidewindow)) +sidewindow = [sidewindow[12]]*44 + +ori = [] +with open("./yolo-Result/ori.csv", newline='') as csvfile: + rows = csv.reader(csvfile) + for i, row in enumerate(rows): + ori.append(float(row[-1])) +print("np.mean(ori)", np.mean(ori)) +ori = [ori[12]]*44 + +plt.plot(yLabel, ori, color=(1, 0, 0), label="第一種模式",linewidth=5.0) +plt.plot(yLabel, sidewindow, color=(0, 0, 1), label="第二種模式",linewidth=5.0) + +plt.plot(yLabel, datas[12], color=(0, 1, 0), label="第三種模式",linewidth=5.0) + +plt.legend() # 显示图例 +plt.xlabel('m') +plt.ylabel('F1-Score') +plt.show() \ No newline at end of file diff --git "a/\346\225\264\347\220\206/csv/drawunet.py" "b/\346\225\264\347\220\206/csv/drawunet.py" new file mode 100644 index 0000000..a67e522 --- /dev/null +++ "b/\346\225\264\347\220\206/csv/drawunet.py" @@ -0,0 +1,65 @@ +import os +import csv +import numpy as np +import matplotlib as mpl +import matplotlib.pyplot as plt +from mpl_toolkits.mplot3d import Axes3D + +path = "./unet-Result/" + +x0 = list(range(500, 5001, 100)) +x1 = list(range(200, 2001, 100)) +X, Y = np.meshgrid(x0, x1) + +sumList = [[[0 for k in range(18)] for j in range(200, 2001, 100)] for i in range(500, 5001, 100)] +Z = [[0 for j in range(len(x0))] for i in range(len(x1))] +for filename in os.listdir(path): + # print(filename) + name = os.path.splitext(filename)[0] + x, y = name.split("-") + x, y = int(x), int(y) + x, y = (x-500)//100, (y-200)//100 + + + if(name != "sidewindow" and name != "ori"): + sumValue = 0 + with open(os.path.join(path, filename), newline='') as csvfile: + rows = csv.reader(csvfile) + + for i, row in enumerate(rows): + sumValue += float(row[-1]) + sumList[x][y][i] += float(row[-1]) + Z[y][x] = sumValue/18 + if(sumValue/18<0.3): + print(filename) +Z = np.array(Z) +a, b = np.unravel_index(np.argmax(Z, axis=None), Z.shape) +print(a*100+500, b*100+200, np.max(Z)) +print(np.array(sumList).shape) +sumList = np.array(sumList).reshape((-1, 18)) + +print(np.max(sumList, axis=0)) +print(np.sum(np.max(sumList, axis=0))/18) + +temp = np.argmax(sumList, axis=0) +print(temp//19*100+500, temp%19*100+200) + +fig = plt.figure() +axis = fig.gca(projection='3d') + +print(np.array(X).shape, np.array(Y).shape, np.array(Z).shape) +#畫圖 +surface = axis.plot_surface(np.array(X), np.array(Y), np.array(Z), rstride=1, cstride=1, cmap='coolwarm_r') +fig.colorbar(surface, shrink=1.0, aspect=20) + +# 設置圖表訊息 +plt.title("F1-Score", fontsize=16) +plt.ylabel("n", fontsize=16) +plt.xlabel("m", fontsize=16) +# plt.zlabel("F1-Score", fontsize=16) +# plt.set_zlabel('F1-Score', fontsize=16) + +plt.show() + +# best 2300 1500 + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/cutImage.bat" "b/\346\225\264\347\220\206/cutImage.bat" new file mode 100644 index 0000000..cf98b1d --- /dev/null +++ "b/\346\225\264\347\220\206/cutImage.bat" @@ -0,0 +1,4 @@ +python cutImage.py --flooder unet-Result-best-rulebase +python cutImage.py --flooder yolo-Result-best-rulebase +python cutImage.py --flooder marge +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/cutImage.py" "b/\346\225\264\347\220\206/cutImage.py" new file mode 100644 index 0000000..d17d837 --- /dev/null +++ "b/\346\225\264\347\220\206/cutImage.py" @@ -0,0 +1,119 @@ +import numpy as np +import json +import cv2 +import shapely +import os +import argparse +import csv +from tools import rotateImg +from tools import splitLine +class NpEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, np.integer): + return int(obj) + elif isinstance(obj, np.floating): + return float(obj) + elif isinstance(obj, np.ndarray): + return obj.tolist() + else: + return super(NpEncoder, self).default(obj) +def readTxt(path): + with open(path,'r') as f: #讀取真實結果 + fStrs = f.readlines() + fStrs = [fStr.replace("\n", "") for fStr in fStrs] + polys = [[float(i) for i in fStr.split(" ")] for fStr in fStrs] + rects = polysTorects(polys) + return rects +def drawPolys(image, Polys): + for poly in Polys: + points = np.array(poly) + points = points.reshape(4, 2) + cv2.polylines(img=image, pts=np.int32([points]), isClosed=True, color=(0,0,255), thickness=3) +def polysTorects(polys): + # print(polys) + return [[poly[0], poly[1], poly[4], poly[5]] for poly in polys] +def rectsTopolys(rects): + return [[rect[0], rect[1], rect[2], rect[1], + rect[2], rect[3], rect[0], rect[3]] for rect in rects] +def drawRects(image, Rects, color=(0, 0, 255), score=False): + for rect in Rects: + # print(rect) + cv2.rectangle(image, (int(rect[0]), int(rect[1])), (int(rect[2]), int(rect[3])), color, 3) + if(score): + + cv2.putText(image, str(int(rect[4]*100)), (int(rect[0]), int(rect[1])), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1, cv2.LINE_AA) + +def cutImage(PreFlooders): + for filename in os.listdir(PreFlooders): + name, ext = os.path.splitext(filename) + if(ext != ".json"): + continue + print(filename, end="\r") + + ImgPath = os.path.join("../groundtruth/image/", name + ".jpg") + + predictPath = os.path.join(PreFlooders, name + ".json") + saveRGBDir = os.path.join("./cutImage/", PreFlooders, "RGB", name) + saveGRAYDir = os.path.join("./cutImage/", PreFlooders, "GRAY", name) + saveBINARYDir = os.path.join("./cutImage/", PreFlooders, "BINARY", name) + if not os.path.exists(saveRGBDir): + os.makedirs(saveRGBDir) + if not os.path.exists(saveGRAYDir): + os.makedirs(saveGRAYDir) + if not os.path.exists(saveBINARYDir): + os.makedirs(saveBINARYDir) + + image = cv2.imread(ImgPath) + with open(predictPath, 'r') as f: + rects = json.load(f) + imgRGBs, imgGRAYs, imgBINARYs, rotateRects = rotateImg.rotateImgs(image, rects) + strRGBs, strGRAYs, strBINARYs, strRects = splitLine.splitLineImgs(imgRGBs, imgGRAYs, imgBINARYs, rotateRects) + + for i in range(len(strRGBs)): + savePath = os.path.join(saveRGBDir, str(i).zfill(5)+".png") + cv2.imwrite(savePath, strRGBs[i]) + savePath = os.path.join(saveGRAYDir, str(i).zfill(5)+".png") + cv2.imwrite(savePath, strGRAYs[i]) + savePath = os.path.join(saveBINARYDir, str(i).zfill(5)+".png") + cv2.imwrite(savePath, strBINARYs[i]) + + with open(saveRGBDir + ".json", 'w') as f: + json.dump(strRects, f, cls=NpEncoder) + with open(saveGRAYDir + ".json", 'w') as f: + json.dump(strRects, f, cls=NpEncoder) + with open(saveBINARYDir + ".json", 'w') as f: + json.dump(strRects, f, cls=NpEncoder) +def onlyCutImage(PreFlooders): + for filename in os.listdir(PreFlooders): + name, ext = os.path.splitext(filename) + if(ext != ".json"): + continue + print(filename, end="\r") + + ImgPath = os.path.join("../groundtruth/image/", name + ".jpg") + + predictPath = os.path.join(PreFlooders, name + ".json") + saveTYPE1Dir = os.path.join("./cutImage/", PreFlooders, "TYPE1", name) + if not os.path.exists(saveTYPE1Dir): + os.makedirs(saveTYPE1Dir) + + image = cv2.imread(ImgPath) + with open(predictPath, 'r') as f: + rects = json.load(f) + imgRGBs, imgGRAYs, imgBINARYs, rotateRects = rotateImg.rotateImgs(image, rects, onlyCut=True) + strRGBs, strGRAYs, strBINARYs, strRects = splitLine.splitLineImgs(imgRGBs, imgGRAYs, imgBINARYs, rotateRects) + + # print(len(strRects), len(strRGBs), " ") + for i in range(len(strRGBs)): + savePath = os.path.join(saveTYPE1Dir, str(i).zfill(5)+".png") + cv2.imwrite(savePath, strRGBs[i]) + + with open(saveTYPE1Dir + ".json", 'w') as f: + json.dump(strRects, f, cls=NpEncoder) +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--flooder', default='marge', help='what model want test') + opt = parser.parse_args() + + PreFlooders = opt.flooder + onlyCutImage(PreFlooders) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/cutImage/resulthere.txt" "b/\346\225\264\347\220\206/cutImage/resulthere.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/data/__pycache__/dashed.cpython-36.pyc" "b/\346\225\264\347\220\206/data/__pycache__/dashed.cpython-36.pyc" new file mode 100644 index 0000000..4edfc57 Binary files /dev/null and "b/\346\225\264\347\220\206/data/__pycache__/dashed.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/__pycache__/dashed.cpython-36.pyc" "b/\346\225\264\347\220\206/data/maskGt/__pycache__/dashed.cpython-36.pyc" new file mode 100644 index 0000000..a7c3e24 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/__pycache__/dashed.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/createData20210104.py" "b/\346\225\264\347\220\206/data/maskGt/createData20210104.py" new file mode 100644 index 0000000..7c10b88 --- /dev/null +++ "b/\346\225\264\347\220\206/data/maskGt/createData20210104.py" @@ -0,0 +1,423 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image, ImageColor +import random +import os +import json +import math + +import dashed +strLibs = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] + +gridBorderStyle = ["line", "dashed", "null", "bold"] +def loadFonts(fontPath = "./fonts/"): + fonts = [] + for i in os.listdir(fontPath): + for j in range(10, 80): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + return fonts + +gridSameple = {} +def getGridSameple(): + for dirPath, dirNames, fileNames in os.walk("sampleBlock"): + if(len(dirNames) == 0): + gridSameple[os.path.basename(dirPath)] = [] + for fileName in fileNames: + filePath = os.path.join(dirPath, fileName) + gridSameple[os.path.basename(dirPath)].append(cv2.imread(filePath)) +getGridSameple() + +def copyGridSameple(img, position, opt): + starth, startw, endh, endw = position + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + + copyImg = random.choice(gridSameple[opt["blockType"]]) + + ch, cw, cc = copyImg.shape + if h > w: + copyImg = cv2.resize(copyImg, (w, ch*w//cw)) + else: + copyImg = cv2.resize(copyImg, (cw*h//ch, h)) + + ch, cw, cc = copyImg.shape + if(opt["backgroundColor"][0] != 255): + copyImg[copyImg <= 200] = 0 #這裡未來有問題 + copyImg[copyImg > 200] = opt["backgroundColor"][0] #這裡未來有問題 + startch = max(centerh-ch//2, 0) + startcw = max(centerw-cw//2, 0) + endch, endcw = startch+ch, startcw+cw + outh, outw = 0, 0 + if(endch > img.shape[0]): + outh = endch - img.shape[0] + endch = endch + if(endcw > img.shape[1]): + outw = endcw - img.shape[1] + endcw = endcw + # print(ch, outh, cw, outw) + img[startch:endch, startcw: endcw] = copyImg[0:ch-outh, 0:cw-outw] + + +def drawGrid(img, opt): + for h_key in range(len(opt["gridhw"][0])-1): + for w_key in range(len(opt["gridhw"][1])-1): + starth, startw = opt["gridhw"][0][h_key] , opt["gridhw"][1][w_key] + endh , endw = opt["gridhw"][0][h_key+1], opt["gridhw"][1][w_key+1] + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + radius = h / 2.3 if w > h else w / 2.3 + radius = int(radius) + + if(opt["blockType"] == "bigCircle"): + cv2.circle(img, (centerw, centerh), radius, random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + if(opt["blockborderType"] == "line"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//20) + if(opt["blockborderType"] == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius, (0,0,0), radius//20) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//20) + elif(style == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius, (0,0,0), radius//20) + elif(style == "bold"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//5) + + + elif(opt["blockType"] == "smallCircle"): + cv2.circle(img, (centerw, centerh), radius//2, random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + if(opt["blockborderType"] == "line"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + if(opt["blockborderType"] == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + elif(style == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + elif(style == "bold"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//10) + elif(opt["blockType"] == "rect"): + cv2.rectangle(img, (startw, starth), (endw, endh), random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//20) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//20) + elif(style == "dashed"): + dashed.drawrect(img, (startw, starth), (endw, endh), (0,0,0), radius//20, style="line") + elif(style == "bold"): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//5) + + if(random.randint(0, 100) < 8): + for i in range(startw, endw, w//20): + for j in range(starth, endh, h//20): + cv2.circle(img, (i, j), radius//50+1, (0,0,0), -1) + else: + copyGridSameple(img, (starth, startw, endh, endw), opt) +def getTextColor(opt, backgroundColor): + while(1): + color = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)) + if(color[0] != backgroundColor[0] or color[1] != backgroundColor[1] or color[2] != backgroundColor[2]): + break + return color +def image_resize(image, width = None, height = None, inter = cv2.INTER_LANCZOS4): + dim = None + (h, w) = image.shape[:2] + + if width is None and height is None: + return image + + if width is None: + r = height / float(h) + dim = (int(w * r), height) + else: + r = width / float(w) + dim = (width, int(h * r)) + resized = cv2.resize(image, dim) + return resized +def drawText(img, target, opt, fonts): + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + angle = 0 + if(opt["rotate"] and (not opt["mutiLine"])): + angle = random.randint(-45, 45) + + + for h_key in range(len(opt["gridhw"][0])-1): + for w_key in range(len(opt["gridhw"][1])-1): + starth, startw = opt["gridhw"][0][h_key], opt["gridhw"][1][w_key] + endh , endw = opt["gridhw"][0][h_key+1], opt["gridhw"][1][w_key+1] + h, w = endh - starth, endw - startw + + starth += h * opt["blockMargin"] + startw += w * opt["blockMargin"] + endh -= h * opt["blockMargin"] + endw -= w * opt["blockMargin"] + + radius = h / 2.3 if w > h else w / 2.3 + radius = int(radius) + if(opt["textPositionType"] == "under"): + starth = (endh + starth)//2 + radius//2 + opt["mutiLine"] = False + endh, starth, endw, startw = int(endh), int(starth), int(endw), int(startw) + + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + + font = fonts[random.randint(0, len(fonts) - 1)] + textColor = getTextColor(opt, img_pil.getpixel((centerw, centerh))) + hasNoStr = random.randint(0, 10) > 9 + if(hasNoStr): + # print("no str") + continue + + linesCount = 1 + if(opt["mutiLine"]): + linesCount = random.randint(1, 5) + text = "" + maxWidth = 0 + for i in range(linesCount): + lineLen = random.randint(1, opt["maxTextLen"]) + if(linesCount == 1): + temp = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=lineLen)]) + else: + temp = ''.join([strLibs[x] for x in np.random.randint(len(strLibs), size=lineLen)]) + text += temp+"\n" + (width, baseline), (offset_x, offset_y) = font.font.getsize(temp) + if(maxWidth < width): + maxWidth = width + + ascent, descent = font.getmetrics() + textswidth, textsheight = maxWidth, (ascent+descent)*linesCount + + # inverseTextColor = ((textColor[0]+128)%256, (textColor[1]+128)%256, (textColor[2]+128)%256) + inverseTextColor = img_pil.getpixel((centerw, centerh)) + inverseTextColor = (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0]) + tempImg = Image.new("RGB", (textswidth, textsheight), color=inverseTextColor) + + draw = ImageDraw.Draw(tempImg) + draw.multiline_text((0, 0), text, font=font, fill=textColor, align="center", anchor="lt") + # tempImg.show() + # print(text+"\n"+"-"*50) + strImg = np.array(tempImg) + strImg = cv2.cvtColor(strImg,cv2.COLOR_RGB2BGR) + + if(opt["rotate"]): + strImg = rotate(strImg, angle, (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0])) + elif(random.randint(0, 1000) < 5 and (not opt["mutiLine"])): + angle = random.randint(-90, 90) + strImg = rotate(strImg, angle, (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0])) + + if(h>w): + strImg = image_resize(strImg, height=h) + else: + strImg = image_resize(strImg, width=w) + if(strImg.shape[0]>h): + strImg = image_resize(strImg, height=h) + if(strImg.shape[1]>w): + strImg = image_resize(strImg, width=w) + + mask = (strImg[:,:,0] != inverseTextColor[0]) & (strImg[:,:,1] != inverseTextColor[1]) & (strImg[:,:,2] != inverseTextColor[2]) + maskh, maskw = mask.shape + startMaskh = centerh-maskh//2 + startMaskw = centerw-maskw//2 + + # p10, p11 = get_point(startMaskh, startMaskw, centerh, centerw, angle) + # p20, p21 = get_point(startMaskh+maskh, startMaskw, centerh, centerw, angle) + # p30, p31 = get_point(startMaskh+maskh, startMaskw+maskw, centerh, centerw, angle) + # p40, p41 = get_point(startMaskh, startMaskw+maskw, centerh, centerw, angle) + # points = np.array([[p11, p10], [p21, p20], [p31, p30], [p41, p40]], np.int32) + # points = points.reshape((-1, 1, 2)) + # cv2.fillPoly(img, [points], (0, 0, 255)) + # cv2.rectangle(img, (startMaskw, startMaskh), (startMaskw+maskw, startMaskh+maskh), (0, 255, 0), 2) + + + # cv2.putText(img, text, (startMaskw, startMaskh), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1) + if(len(strImg[mask]) == 0): + print("error") + continue + img[startMaskh:startMaskh+maskh, startMaskw:startMaskw+maskw][mask] = strImg[mask] + target[startMaskh:startMaskh+maskh, startMaskw:startMaskw+maskw] = 255 + return +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) +def getGrid(opt): + h, w = opt["imgSizeHW"] + if(opt["differentBlockSize"]): + gridH, gridW = [], [] + + count = 0 + while(count < h): + gridH.append(count) + count += random.randint(100, 400) + # gridH.append(h) + + count = 0 + while(count < w): + gridW.append(count) + count += random.randint(100, 400) + # gridW.append(w) + + else: + gridSizeH, gridSizeW = random.randint(100, 400), random.randint(100, 400) + gridSizeW = gridSizeH + random.randint(-gridSizeH//10, gridSizeH//10) + gridH, gridW = [i for i in range(0, h, gridSizeH)], [i for i in range(0, w, gridSizeW)] + # gridH.append(h) + # gridW.append(w) + opt["imgSizeHW"] = (gridH[-1], gridW[-1]) #隨機的圖片高與寬度 + return (tuple(gridH), tuple(gridW)) +def getBlockColors(): + colorList = [] + if random.randint(0, 100) < 56: + colorList.append((255, 255, 255)) + else: + for i in range(random.randint(1, 17)): + colorList.append((random.randint(0, 255), + random.randint(0, 255), + random.randint(0, 255))) + return tuple(colorList) +def createImg(fonts): + opt = {} + opt["imgSizeHW"] = (random.randint(800, 1500), random.randint(800, 1500)) #隨機的圖片高與寬度 + opt["backgroundColor"] = (255, 255, 255) if random.randint(0, 100) < 89 else (88, 88, 88) #決定背景色 + + temp = random.randint(0, 100) #表格邊框樣式 + if(temp < 23): + opt["borderType"] = "round" + elif(temp < 67): + opt["borderType"] = "rect" + else: + opt["borderType"] = "null" + + opt["blockColors"] = getBlockColors() #決定區塊顏色類型 + opt["sameBlockBorder"] = random.randint(0, 100) < 84 #是否統一區塊邊框 + opt["blockAngle"] = random.randint(0, 100) < 23 #區塊是否有角度 + opt["blockMargin"] = random.randint(5, 20)/100 #內縮比例 + + temp = random.randint(0, 100) #區塊樣式 + if(temp < 27): + opt["blockType"] = "bigCircle" + elif(temp < 49): + opt["blockType"] = "smallCircle" + elif(temp < 90): + opt["blockType"] = "rect" + elif(temp < 95): + opt["blockType"] = "octagon" + else: + opt["blockType"] = "irregular" + temp = random.randint(0, 100) #區塊邊框樣式 + if(temp < 87): + opt["blockborderType"] = "line" + else: + opt["blockborderType"] = "dashed" + + opt["ellipse"] = random.randint(0, 100) < 5 #是否有橢圓干擾 + opt["line"] = random.randint(0, 100) < 5 #是否有虛線干擾 + opt["watermark"] = random.randint(0, 100) < 5#是否有浮水印干擾 + opt["differentBlockSize"] = random.randint(0, 100) < 5 #是否表格大小不一 + opt["mutiLine"] = random.randint(0, 100) < 38 #是否有多行字 + opt["differentTextColor"] = random.randint(0, 100) < 33 #是否有多行字 + opt["maxTextLen"] = random.randint(4, 15) + opt["rotate"] = random.randint(0, 100) < 11 #是否統一角度 + if(opt["rotate"]): + opt["mutiLine"] = False + + opt["textPositionType"] = "mid" + if(opt["blockType"] == "smallCircle"): + opt["textPositionType"] = textPositionType = "under" if random.randint(0, 100) < 22 else "mid" + + opt["gridhw"] = getGrid(opt) #取得表格框線 + + opt["keyhw"] = (random.randint(0, len(opt["gridhw"][0])), random.randint(0, len(opt["gridhw"][1]))) #決定主軸 + # print(opt["keyhw"]) + + img = np.zeros((opt["imgSizeHW"][0], opt["imgSizeHW"][1], 3), np.uint8) + img[:,:] = opt["backgroundColor"][:] #圖片背景顏色 + + target = np.zeros((opt["imgSizeHW"][0], opt["imgSizeHW"][1]), np.uint8) + + drawGrid(img, opt) + # if(opt["line"]): + # drawLine(img) + # if(opt["ellipse"]): + # drawEllipse(img) + # if(opt["watermark"]): + # drawWatermark(img) + drawText(img, target, opt, fonts) + + return img, target +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + p00, p01 = get_point(h, w, center[1], center[0], angle) + p10, p11 = get_point(h, 0, center[1], center[0], angle) + p20, p21 = get_point(0, w, center[1], center[0], angle) + p30, p31 = get_point(0, 0, center[1], center[0], angle) + startw = min(p00, p10, p20, p30) + starth = min(p01, p11, p21, p31) + endw = max(p00, p10, p20, p30) + endh = max(p01, p11, p21, p31) + temph, tempw = endh - starth, endw - startw + temph = max(temph, h) + tempw = max(tempw, w) + centerh, centerw = temph //2, tempw //2 + + tempImg = np.zeros((temph, tempw, 3), dtype="uint8") + tempImg[:,:,0] = borderValue[0] + tempImg[:,:,1] = borderValue[1] + tempImg[:,:,2] = borderValue[2] + # print(centerh-h//2,centerh-h//2+h, centerw-w//2,centerw-w//2+w,temph, tempw, h, w) + tempImg[centerh-h//2:centerh-h//2+h, centerw-w//2:centerw-w//2+w] = image + + # tempImg = np.zeros((h*2, w*2, 3), dtype="uint8") + # tempImg[:,:,0] = borderValue[0] + # tempImg[:,:,1] = borderValue[1] + # tempImg[:,:,2] = borderValue[2] + # tempImg[int(h*0.5):int(h*0.5)+h, int(w*0.5):int(w*0.5)+w] = image + + # 执行旋转 + M = cv2.getRotationMatrix2D((centerw, centerh), angle, scale) + rotated = cv2.warpAffine(tempImg, M, (tempImg.shape[1], tempImg.shape[0]), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + # angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./test/img/" + pathTargetStore = "./test/target/" + maxImgCount = 100 + pathImgStore = "./train/img/" + pathTargetStore = "./train/target/" + # maxImgCount = 100000 + fonts = loadFonts() + for i in range(maxImgCount): + print(i, "/", maxImgCount) + img, target = createImg(fonts) + cv2.imwrite(pathImgStore + str(i) + ".png", img) + cv2.imwrite(pathTargetStore + str(i) + ".png", target) + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/maskGt/dashed.py" "b/\346\225\264\347\220\206/data/maskGt/dashed.py" new file mode 100644 index 0000000..f2ac525 --- /dev/null +++ "b/\346\225\264\347\220\206/data/maskGt/dashed.py" @@ -0,0 +1,62 @@ +import cv2 +import numpy as np +import math +def drawline(img,pt1,pt2,color,thickness=1,style='dotted',gap=20): + dist =((pt1[0]-pt2[0])**2+(pt1[1]-pt2[1])**2)**.5 + pts= [] + for i in np.arange(0,dist,gap): + r=i/dist + x=int((pt1[0]*(1-r)+pt2[0]*r)+.5) + y=int((pt1[1]*(1-r)+pt2[1]*r)+.5) + p = (x,y) + pts.append(p) + + if style=='dotted': + for p in pts: + cv2.circle(img,p,thickness,color,-1) + else: + s=pts[0] + e=pts[0] + i=0 + for p in pts: + s=e + e=p + if i%2==1: + cv2.line(img,s,e,color,thickness) + i+=1 + +def drawpoly(img,pts,color,thickness=1,style='dotted',): + s=pts[0] + e=pts[0] + pts.append(pts.pop(0)) + for p in pts: + s=e + e=p + drawline(img,s,e,color,thickness,style) + +def drawrect(img,pt1,pt2,color,thickness=1,style='dotted'): + pts = [pt1,(pt2[0],pt1[1]),pt2,(pt1[0],pt2[1])] + drawpoly(img,pts,color,thickness,style) + +def drawcircle(img, center, radius, color, thickness=1, style='line'): + poly = [] + if style == 'line': + for angle in range(0, 360, 15): + for i in range(angle*1000, (angle+7)*1000): + h = int(center[1] + math.sin(math.pi/180*i/1000)*radius) + w = int(center[0] + math.cos(math.pi/180*i/1000)*radius) + if(len(poly) == 0): + poly.append([[w, h]]) + continue + if(poly[-1][0][0] == w and poly[-1][0][1] == h): + continue + poly.append([[w, h]]) + cv2.drawContours(img, np.array(poly), -1, color, thickness) +if __name__ == '__main__': + img = np.zeros((1000, 1000, 3), np.uint8) + img[:,:,:] = 255 + drawcircle(img, (500, 400), 100, None) + + cv2.imshow('My Image', img) + cv2.waitKey(0) + cv2.destroyAllWindows() diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/01.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/01.png" new file mode 100644 index 0000000..9ec409b Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/01.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/02.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/02.png" new file mode 100644 index 0000000..d3b13f4 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/02.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/03.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/03.png" new file mode 100644 index 0000000..6d80c7e Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/03.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/04.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/04.png" new file mode 100644 index 0000000..e6a22f4 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/04.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/05.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/05.png" new file mode 100644 index 0000000..aa89aed Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/irregular/05.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt/sampleBlock/octagon/01.png" "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/octagon/01.png" new file mode 100644 index 0000000..d7c9e58 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt/sampleBlock/octagon/01.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/__pycache__/dashed.cpython-36.pyc" "b/\346\225\264\347\220\206/data/maskGt2/__pycache__/dashed.cpython-36.pyc" new file mode 100644 index 0000000..a7c3e24 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/__pycache__/dashed.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/createData20210106.py" "b/\346\225\264\347\220\206/data/maskGt2/createData20210106.py" new file mode 100644 index 0000000..1969c28 --- /dev/null +++ "b/\346\225\264\347\220\206/data/maskGt2/createData20210106.py" @@ -0,0 +1,425 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image, ImageColor +import random +import os +import json +import math + +import dashed +strLibs = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] + +gridBorderStyle = ["line", "dashed", "null", "bold"] +def loadFonts(fontPath = "./fonts/"): + fonts = [] + for i in os.listdir(fontPath): + for j in range(10, 80): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + return fonts + +gridSameple = {} +def getGridSameple(): + for dirPath, dirNames, fileNames in os.walk("sampleBlock"): + if(len(dirNames) == 0): + gridSameple[os.path.basename(dirPath)] = [] + for fileName in fileNames: + filePath = os.path.join(dirPath, fileName) + gridSameple[os.path.basename(dirPath)].append(cv2.imread(filePath)) +getGridSameple() + +def copyGridSameple(img, position, opt): + starth, startw, endh, endw = position + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + + copyImg = random.choice(gridSameple[opt["blockType"]]) + + ch, cw, cc = copyImg.shape + if h > w: + copyImg = cv2.resize(copyImg, (w, ch*w//cw)) + else: + copyImg = cv2.resize(copyImg, (cw*h//ch, h)) + + ch, cw, cc = copyImg.shape + if(opt["backgroundColor"][0] != 255): + copyImg[copyImg <= 200] = 0 #這裡未來有問題 + copyImg[copyImg > 200] = opt["backgroundColor"][0] #這裡未來有問題 + startch = max(centerh-ch//2, 0) + startcw = max(centerw-cw//2, 0) + endch, endcw = startch+ch, startcw+cw + outh, outw = 0, 0 + if(endch > img.shape[0]): + outh = endch - img.shape[0] + endch = endch + if(endcw > img.shape[1]): + outw = endcw - img.shape[1] + endcw = endcw + # print(ch, outh, cw, outw) + img[startch:endch, startcw: endcw] = copyImg[0:ch-outh, 0:cw-outw] + + +def drawGrid(img, opt): + for h_key in range(len(opt["gridhw"][0])-1): + for w_key in range(len(opt["gridhw"][1])-1): + starth, startw = opt["gridhw"][0][h_key] , opt["gridhw"][1][w_key] + endh , endw = opt["gridhw"][0][h_key+1], opt["gridhw"][1][w_key+1] + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + radius = h / 2.3 if w > h else w / 2.3 + radius = int(radius) + + if(opt["blockType"] == "bigCircle"): + cv2.circle(img, (centerw, centerh), radius, random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + if(opt["blockborderType"] == "line"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//20) + if(opt["blockborderType"] == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius, (0,0,0), radius//20) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//20) + elif(style == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius, (0,0,0), radius//20) + elif(style == "bold"): + cv2.circle(img, (centerw, centerh), radius, (0,0,0), radius//5) + + + elif(opt["blockType"] == "smallCircle"): + cv2.circle(img, (centerw, centerh), radius//2, random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + if(opt["blockborderType"] == "line"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + if(opt["blockborderType"] == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + elif(style == "dashed"): + dashed.drawcircle(img, (centerw, centerh), radius//2, (0,0,0), radius//40) + elif(style == "bold"): + cv2.circle(img, (centerw, centerh), radius//2, (0,0,0), radius//10) + elif(opt["blockType"] == "rect"): + cv2.rectangle(img, (startw, starth), (endw, endh), random.choice(opt["blockColors"]), -1) + if(opt["sameBlockBorder"]): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//20) + else: + style = random.choice(gridBorderStyle) + if(style == "line"): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//20) + elif(style == "dashed"): + dashed.drawrect(img, (startw, starth), (endw, endh), (0,0,0), radius//20, style="line") + elif(style == "bold"): + cv2.rectangle(img, (startw, starth), (endw, endh), (0,0,0), radius//5) + + if(random.randint(0, 100) < 8): + for i in range(startw, endw, w//20): + for j in range(starth, endh, h//20): + cv2.circle(img, (i, j), radius//50+1, (0,0,0), -1) + else: + copyGridSameple(img, (starth, startw, endh, endw), opt) +def getTextColor(opt, backgroundColor): + if(opt["differentTextColor"]): + return (0, 0, 0) + while(1): + color = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)) + if(color[0] != backgroundColor[0] or color[1] != backgroundColor[1] or color[2] != backgroundColor[2]): + break + return color +def image_resize(image, width = None, height = None, inter = cv2.INTER_LANCZOS4): + dim = None + (h, w) = image.shape[:2] + + if width is None and height is None: + return image + + if width is None: + r = height / float(h) + dim = (int(w * r), height) + else: + r = width / float(w) + dim = (width, int(h * r)) + resized = cv2.resize(image, dim) + return resized +def drawText(img, target, opt, fonts): + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + angle = 0 + if(opt["rotate"] and (not opt["mutiLine"])): + angle = random.randint(-45, 45) + + + for h_key in range(len(opt["gridhw"][0])-1): + for w_key in range(len(opt["gridhw"][1])-1): + starth, startw = opt["gridhw"][0][h_key], opt["gridhw"][1][w_key] + endh , endw = opt["gridhw"][0][h_key+1], opt["gridhw"][1][w_key+1] + h, w = endh - starth, endw - startw + + starth += h * opt["blockMargin"] + startw += w * opt["blockMargin"] + endh -= h * opt["blockMargin"] + endw -= w * opt["blockMargin"] + + radius = h / 2.3 if w > h else w / 2.3 + radius = int(radius) + if(opt["textPositionType"] == "under"): + starth = (endh + starth)//2 + radius//2 + opt["mutiLine"] = False + endh, starth, endw, startw = int(endh), int(starth), int(endw), int(startw) + + centerh, centerw = (starth + endh) //2, (startw + endw) //2 + h, w = endh - starth, endw - startw + + font = fonts[random.randint(0, len(fonts) - 1)] + textColor = getTextColor(opt, img_pil.getpixel((centerw, centerh))) + hasNoStr = random.randint(0, 10) > 9 + if(hasNoStr): + # print("no str") + continue + + linesCount = 1 + if(opt["mutiLine"]): + linesCount = random.randint(1, 5) + text = "" + maxWidth = 0 + for i in range(linesCount): + lineLen = random.randint(1, opt["maxTextLen"]) + if(linesCount == 1): + temp = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=lineLen)]) + else: + temp = ''.join([strLibs[x] for x in np.random.randint(len(strLibs), size=lineLen)]) + text += temp+"\n" + (width, baseline), (offset_x, offset_y) = font.font.getsize(temp) + if(maxWidth < width): + maxWidth = width + + ascent, descent = font.getmetrics() + textswidth, textsheight = maxWidth, (ascent+descent)*linesCount + + # inverseTextColor = ((textColor[0]+128)%256, (textColor[1]+128)%256, (textColor[2]+128)%256) + inverseTextColor = img_pil.getpixel((centerw, centerh)) + inverseTextColor = (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0]) + tempImg = Image.new("RGB", (textswidth, textsheight), color=inverseTextColor) + + draw = ImageDraw.Draw(tempImg) + draw.multiline_text((0, 0), text, font=font, fill=textColor, align="center", anchor="lt") + # tempImg.show() + # print(text+"\n"+"-"*50) + strImg = np.array(tempImg) + strImg = cv2.cvtColor(strImg,cv2.COLOR_RGB2BGR) + + if(opt["rotate"]): + strImg = rotate(strImg, angle, (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0])) + elif(random.randint(0, 1000) < 5 and (not opt["mutiLine"])): + angle = random.randint(-90, 90) + strImg = rotate(strImg, angle, (inverseTextColor[2], inverseTextColor[1], inverseTextColor[0])) + + if(h>w): + strImg = image_resize(strImg, height=h) + else: + strImg = image_resize(strImg, width=w) + if(strImg.shape[0]>h): + strImg = image_resize(strImg, height=h) + if(strImg.shape[1]>w): + strImg = image_resize(strImg, width=w) + + mask = (strImg[:,:,0] != inverseTextColor[0]) & (strImg[:,:,1] != inverseTextColor[1]) & (strImg[:,:,2] != inverseTextColor[2]) + maskh, maskw = mask.shape + startMaskh = centerh-maskh//2 + startMaskw = centerw-maskw//2 + + # p10, p11 = get_point(startMaskh, startMaskw, centerh, centerw, angle) + # p20, p21 = get_point(startMaskh+maskh, startMaskw, centerh, centerw, angle) + # p30, p31 = get_point(startMaskh+maskh, startMaskw+maskw, centerh, centerw, angle) + # p40, p41 = get_point(startMaskh, startMaskw+maskw, centerh, centerw, angle) + # points = np.array([[p11, p10], [p21, p20], [p31, p30], [p41, p40]], np.int32) + # points = points.reshape((-1, 1, 2)) + # cv2.fillPoly(img, [points], (0, 0, 255)) + # cv2.rectangle(img, (startMaskw, startMaskh), (startMaskw+maskw, startMaskh+maskh), (0, 255, 0), 2) + + + # cv2.putText(img, text, (startMaskw, startMaskh), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1) + if(len(strImg[mask]) == 0): + print("error") + continue + img[startMaskh:startMaskh+maskh, startMaskw:startMaskw+maskw][mask] = strImg[mask] + target[startMaskh:startMaskh+maskh, startMaskw:startMaskw+maskw] = 255 + return +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) +def getGrid(opt): + h, w = opt["imgSizeHW"] + if(opt["differentBlockSize"]): + gridH, gridW = [], [] + + count = 0 + while(count < h): + gridH.append(count) + count += random.randint(100, 400) + # gridH.append(h) + + count = 0 + while(count < w): + gridW.append(count) + count += random.randint(100, 400) + # gridW.append(w) + + else: + gridSizeH, gridSizeW = random.randint(100, 400), random.randint(100, 400) + gridSizeW = gridSizeH + random.randint(-gridSizeH//10, gridSizeH//10) + gridH, gridW = [i for i in range(0, h, gridSizeH)], [i for i in range(0, w, gridSizeW)] + # gridH.append(h) + # gridW.append(w) + opt["imgSizeHW"] = (gridH[-1], gridW[-1]) #隨機的圖片高與寬度 + return (tuple(gridH), tuple(gridW)) +def getBlockColors(): + colorList = [] + if random.randint(0, 100) < 56: + colorList.append((255, 255, 255)) + else: + for i in range(random.randint(1, 17)): + colorList.append((random.randint(0, 255), + random.randint(0, 255), + random.randint(0, 255))) + return tuple(colorList) +def createImg(fonts): + opt = {} + opt["imgSizeHW"] = (random.randint(800, 1500), random.randint(800, 1500)) #隨機的圖片高與寬度 + opt["backgroundColor"] = (255, 255, 255) if random.randint(0, 100) < 89 else (88, 88, 88) #決定背景色 + + temp = random.randint(0, 100) #表格邊框樣式 + if(temp < 23): + opt["borderType"] = "round" + elif(temp < 67): + opt["borderType"] = "rect" + else: + opt["borderType"] = "null" + + opt["blockColors"] = getBlockColors() #決定區塊顏色類型 + opt["sameBlockBorder"] = random.randint(0, 100) < 84 #是否統一區塊邊框 + opt["blockAngle"] = random.randint(0, 100) < 23 #區塊是否有角度 + opt["blockMargin"] = random.randint(5, 20)/100 #內縮比例 + + temp = random.randint(0, 100) #區塊樣式 + if(temp < 27): + opt["blockType"] = "bigCircle" + elif(temp < 49): + opt["blockType"] = "smallCircle" + elif(temp < 90): + opt["blockType"] = "rect" + elif(temp < 95): + opt["blockType"] = "octagon" + else: + opt["blockType"] = "irregular" + temp = random.randint(0, 100) #區塊邊框樣式 + if(temp < 87): + opt["blockborderType"] = "line" + else: + opt["blockborderType"] = "dashed" + + opt["ellipse"] = random.randint(0, 100) < 5 #是否有橢圓干擾 + opt["line"] = random.randint(0, 100) < 5 #是否有虛線干擾 + opt["watermark"] = random.randint(0, 100) < 5#是否有浮水印干擾 + opt["differentBlockSize"] = random.randint(0, 100) < 5 #是否表格大小不一 + opt["mutiLine"] = random.randint(0, 100) < 38 #是否有多行字 + opt["differentTextColor"] = random.randint(0, 100) < 33 #是否有色字 + opt["maxTextLen"] = random.randint(4, 15) + opt["rotate"] = random.randint(0, 100) < 11 #是否統一角度 + if(opt["rotate"]): + opt["mutiLine"] = False + + opt["textPositionType"] = "mid" + if(opt["blockType"] == "smallCircle"): + opt["textPositionType"] = textPositionType = "under" if random.randint(0, 100) < 22 else "mid" + + opt["gridhw"] = getGrid(opt) #取得表格框線 + + opt["keyhw"] = (random.randint(0, len(opt["gridhw"][0])), random.randint(0, len(opt["gridhw"][1]))) #決定主軸 + # print(opt["keyhw"]) + + img = np.zeros((opt["imgSizeHW"][0], opt["imgSizeHW"][1], 3), np.uint8) + img[:,:] = opt["backgroundColor"][:] #圖片背景顏色 + + target = np.zeros((opt["imgSizeHW"][0], opt["imgSizeHW"][1]), np.uint8) + + drawGrid(img, opt) + # if(opt["line"]): + # drawLine(img) + # if(opt["ellipse"]): + # drawEllipse(img) + # if(opt["watermark"]): + # drawWatermark(img) + drawText(img, target, opt, fonts) + + return img, target +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + p00, p01 = get_point(h, w, center[1], center[0], angle) + p10, p11 = get_point(h, 0, center[1], center[0], angle) + p20, p21 = get_point(0, w, center[1], center[0], angle) + p30, p31 = get_point(0, 0, center[1], center[0], angle) + startw = min(p00, p10, p20, p30) + starth = min(p01, p11, p21, p31) + endw = max(p00, p10, p20, p30) + endh = max(p01, p11, p21, p31) + temph, tempw = endh - starth, endw - startw + temph = max(temph, h) + tempw = max(tempw, w) + centerh, centerw = temph //2, tempw //2 + + tempImg = np.zeros((temph, tempw, 3), dtype="uint8") + tempImg[:,:,0] = borderValue[0] + tempImg[:,:,1] = borderValue[1] + tempImg[:,:,2] = borderValue[2] + # print(centerh-h//2,centerh-h//2+h, centerw-w//2,centerw-w//2+w,temph, tempw, h, w) + tempImg[centerh-h//2:centerh-h//2+h, centerw-w//2:centerw-w//2+w] = image + + # tempImg = np.zeros((h*2, w*2, 3), dtype="uint8") + # tempImg[:,:,0] = borderValue[0] + # tempImg[:,:,1] = borderValue[1] + # tempImg[:,:,2] = borderValue[2] + # tempImg[int(h*0.5):int(h*0.5)+h, int(w*0.5):int(w*0.5)+w] = image + + # 执行旋转 + M = cv2.getRotationMatrix2D((centerw, centerh), angle, scale) + rotated = cv2.warpAffine(tempImg, M, (tempImg.shape[1], tempImg.shape[0]), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + # angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./test/img/" + pathTargetStore = "./test/target/" + maxImgCount = 100 + pathImgStore = "./train/img/" + pathTargetStore = "./train/target/" + # maxImgCount = 100000 + fonts = loadFonts() + for i in range(maxImgCount): + print(i, "/", maxImgCount) + img, target = createImg(fonts) + cv2.imwrite(pathImgStore + str(i) + ".png", img) + cv2.imwrite(pathTargetStore + str(i) + ".png", target) + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/maskGt2/dashed.py" "b/\346\225\264\347\220\206/data/maskGt2/dashed.py" new file mode 100644 index 0000000..f2ac525 --- /dev/null +++ "b/\346\225\264\347\220\206/data/maskGt2/dashed.py" @@ -0,0 +1,62 @@ +import cv2 +import numpy as np +import math +def drawline(img,pt1,pt2,color,thickness=1,style='dotted',gap=20): + dist =((pt1[0]-pt2[0])**2+(pt1[1]-pt2[1])**2)**.5 + pts= [] + for i in np.arange(0,dist,gap): + r=i/dist + x=int((pt1[0]*(1-r)+pt2[0]*r)+.5) + y=int((pt1[1]*(1-r)+pt2[1]*r)+.5) + p = (x,y) + pts.append(p) + + if style=='dotted': + for p in pts: + cv2.circle(img,p,thickness,color,-1) + else: + s=pts[0] + e=pts[0] + i=0 + for p in pts: + s=e + e=p + if i%2==1: + cv2.line(img,s,e,color,thickness) + i+=1 + +def drawpoly(img,pts,color,thickness=1,style='dotted',): + s=pts[0] + e=pts[0] + pts.append(pts.pop(0)) + for p in pts: + s=e + e=p + drawline(img,s,e,color,thickness,style) + +def drawrect(img,pt1,pt2,color,thickness=1,style='dotted'): + pts = [pt1,(pt2[0],pt1[1]),pt2,(pt1[0],pt2[1])] + drawpoly(img,pts,color,thickness,style) + +def drawcircle(img, center, radius, color, thickness=1, style='line'): + poly = [] + if style == 'line': + for angle in range(0, 360, 15): + for i in range(angle*1000, (angle+7)*1000): + h = int(center[1] + math.sin(math.pi/180*i/1000)*radius) + w = int(center[0] + math.cos(math.pi/180*i/1000)*radius) + if(len(poly) == 0): + poly.append([[w, h]]) + continue + if(poly[-1][0][0] == w and poly[-1][0][1] == h): + continue + poly.append([[w, h]]) + cv2.drawContours(img, np.array(poly), -1, color, thickness) +if __name__ == '__main__': + img = np.zeros((1000, 1000, 3), np.uint8) + img[:,:,:] = 255 + drawcircle(img, (500, 400), 100, None) + + cv2.imshow('My Image', img) + cv2.waitKey(0) + cv2.destroyAllWindows() diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/01.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/01.png" new file mode 100644 index 0000000..9ec409b Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/01.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/02.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/02.png" new file mode 100644 index 0000000..d3b13f4 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/02.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/03.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/03.png" new file mode 100644 index 0000000..6d80c7e Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/03.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/04.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/04.png" new file mode 100644 index 0000000..e6a22f4 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/04.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/05.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/05.png" new file mode 100644 index 0000000..aa89aed Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/irregular/05.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGt2/sampleBlock/octagon/01.png" "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/octagon/01.png" new file mode 100644 index 0000000..d7c9e58 Binary files /dev/null and "b/\346\225\264\347\220\206/data/maskGt2/sampleBlock/octagon/01.png" differ diff --git "a/\346\225\264\347\220\206/data/maskGtold1/createData.py" "b/\346\225\264\347\220\206/data/maskGtold1/createData.py" new file mode 100644 index 0000000..fcbcf46 --- /dev/null +++ "b/\346\225\264\347\220\206/data/maskGtold1/createData.py" @@ -0,0 +1,247 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] + +def loadFonts(fontPath = "../fonts/"): + fonts = [] + print("../fonts/", len(os.listdir(fontPath))) + for i in os.listdir(fontPath): + for j in range(10, 80): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor + +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + # textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + hasNoStr = random.randint(0, 10) > 8 + if(hasNoStr): + return img, target + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + + for char in text: + twidth, theight = draw.textsize(char, font=font) + flag = False + + if(nextX + twidth > endX): + nextX = baseX + nextY += textheight + if(nextY + textheight >= endY): + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + if (drawUnderLine): + if flag: + draw.line((nextX, nextY + textheight - theight/3, nextX + twidth, nextY + textheight - theight/3), fill=textColor) + else: + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + if flag: + draw.line((nextX, nextY - theight/3, nextX + twidth, nextY - theight/3), fill=textColor) + else: + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + ttwidth, ttheight = draw.textsize(char, font=font) + + + + target[nextY if nextY > baseY else baseY + 1 + : nextY + textheight if nextY + textheight < endY else endY - 1 + , nextX if nextX > baseX else baseX + 1 + : nextX + ttwidth if nextX + ttwidth < endX else endX - 1 + , :] = 255 + + if flag: + nextY -= theight//3 + nextX += ttwidth + else: + nextX += twidth + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + target[baseY:endY, baseX:endX] = rotate(target[baseY:endY ,baseX:endX], angle, 0) + return img, target +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(50, 600) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + targetJson = [] + img[:,:] = backgroundColor[:] #圖片背景顏色 + + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target = drawText(img, target, (x, y), fonts, gridSize, gridColor) + drawLine(img) + return img, target +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated + +if __name__ == '__main__' : + # pathImgStore = "./test/img/" + # pathTargetStore = "./test/target/" + # maxImgCount = 1000 + pathImgStore = "./train/img/" + pathTargetStore = "./train/target/" + maxImgCount = 100000 + fonts = loadFonts() + print(len(fonts)) + #for i in range(maxImgCount): + # print(i, "/", maxImgCount) + # img, target = createImg(fonts) + # cv2.imwrite(pathImgStore + str(i) + ".png", img) + # cv2.imwrite(pathTargetStore + str(i)+ ".png", target) + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/polyGtold1/createData.py" "b/\346\225\264\347\220\206/data/polyGtold1/createData.py" new file mode 100644 index 0000000..012363b --- /dev/null +++ "b/\346\225\264\347\220\206/data/polyGtold1/createData.py" @@ -0,0 +1,290 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import math +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] +def loadFonts(fontPath = "../fonts/"): + fonts = [] + count = 0 + count2 = 0 + for i in os.listdir(fontPath): + count2+=1 + for j in range(10, 60): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + count+=1 + print(count, count2) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + # textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + # hasNoStr = random.randint(0, 10) > 8 + # if(hasNoStr): + # return img, target, None + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + startX = nextX + startY = nextY + maxX = 0 + + txtHeap = "" + for char in text: + twidth, theight = draw.textsize(char, font=font) + + if(nextX + twidth > endX): + maxX = nextX + nextX = baseX + nextY += textheight + + if(nextY + textheight > endY): + # print("break") + nextY -= textheight + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + txtHeap += char + if (drawUnderLine): + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + # ttwidth, ttheight = draw.textsize(char, font=font) + if(nextY + textheight > endY): + print("break nextY") + break + if(nextX + twidth > endX): + print("break nextX") + nextX += twidth + break + target[nextY : nextY + textheight, nextX : nextX + twidth, :] = 255 + nextX += twidth + + + img = np.array(img_pil) + + img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + + targetTemp = rotate(target[baseY:endY ,baseX:endX], angle, (0,0,0)) + # ret, targetTemp = cv2.threshold(targetTemp,254,255,cv2.THRESH_BINARY) + target[baseY:endY, baseX:endX] = np.expand_dims(targetTemp, axis = 2) + + # print(targetTemp.shape) + contours, hierarchy = cv2.findContours(targetTemp,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) + if(len(contours) > 1): + print(error) + exit() + + for contour in contours: + x, y, w, h = cv2.boundingRect(contour) + cv2.rectangle(targetTemp, (baseX+x, baseY+y), (baseX+x + w, baseY+y + h), (0, 0, 255), 2) + maxX = nextX if nextX>maxX else maxX + returnBox = [startX, startY + ,startX, nextY+textheight + ,maxX, nextY+textheight + ,maxX, startY, txtHeap] + returnBox[0], returnBox[1] = get_point(returnBox[0], returnBox[1], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[2], returnBox[3] = get_point(returnBox[2], returnBox[3], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[4], returnBox[5] = get_point(returnBox[4], returnBox[5], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[6], returnBox[7] = get_point(returnBox[6], returnBox[7], (baseX+endX)//2, (baseY+endY)//2, angle) + + x1 = min(returnBox[0], returnBox[2], returnBox[4], returnBox[6]) + x2 = max(returnBox[0], returnBox[2], returnBox[4], returnBox[6]) + y1 = min(returnBox[1], returnBox[3], returnBox[5], returnBox[7]) + y2 = max(returnBox[1], returnBox[3], returnBox[5], returnBox[7]) + + returnBox = [x1, y1, x1, y2, x2, y2, x2, y1] + + return img, target, returnBox +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = 512#random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = 512#random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(50, 511) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 1), np.uint8) + img[:,:] = backgroundColor[:] #圖片背景顏色 + boxs = [] + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target, boxsXY = drawText(img, target, (x, y), fonts, gridSize, gridColor) + if(boxsXY): + boxs.append(boxsXY) + drawLine(img) + return img, target, boxs +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./test/img/" + pathTargetStore = "./test/mask/" + pathTargetStoreTxt = "./test/gt/" + maxImgCount = 100 + # athImgStore = "./train/img/" + # pathTargetStore = "./train/mask/" + # pathTargetStoreTxt = "./train/gt/" + # maxImgCount = 100000 + fonts = loadFonts() + for i in range(1, maxImgCount+1): + print(i, "/", maxImgCount) + img, target, boxs = createImg(fonts) + cv2.imwrite(pathImgStore + "img_" + str(i) + ".png", img) + cv2.imwrite(pathTargetStore + "gt_img_" + str(i)+ ".png", target) + + data = [] + for box in boxs: + data.append(",".join([str(num) for num in box]) + "\n") + # print(data) + with open(pathTargetStoreTxt + "gt_img_" + str(i)+ ".txt", "w", encoding='UTF-8') as f: + f.writelines(data) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/sample/createData.py" "b/\346\225\264\347\220\206/data/sample/createData.py" new file mode 100644 index 0000000..03eca9b --- /dev/null +++ "b/\346\225\264\347\220\206/data/sample/createData.py" @@ -0,0 +1,245 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] + +def loadFonts(fontPath = "../fonts/"): + fonts = [] + for i in os.listdir(fontPath): + for j in range(10, 80): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor + +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + # textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + hasNoStr = random.randint(0, 10) > 8 + if(hasNoStr): + return img, target + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + + for char in text: + twidth, theight = draw.textsize(char, font=font) + flag = False + + if(nextX + twidth > endX): + nextX = baseX + nextY += textheight + if(nextY + textheight >= endY): + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + if (drawUnderLine): + if flag: + draw.line((nextX, nextY + textheight - theight/3, nextX + twidth, nextY + textheight - theight/3), fill=textColor) + else: + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + if flag: + draw.line((nextX, nextY - theight/3, nextX + twidth, nextY - theight/3), fill=textColor) + else: + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + ttwidth, ttheight = draw.textsize(char, font=font) + + + + target[nextY if nextY > baseY else baseY + 1 + : nextY + textheight if nextY + textheight < endY else endY - 1 + , nextX if nextX > baseX else baseX + 1 + : nextX + ttwidth if nextX + ttwidth < endX else endX - 1 + , :] = 255 + + if flag: + nextY -= theight//3 + nextX += ttwidth + else: + nextX += twidth + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + target[baseY:endY, baseX:endX] = rotate(target[baseY:endY ,baseX:endX], angle, 0) + return img, target +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(50, 600) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + targetJson = [] + img[:,:] = backgroundColor[:] #圖片背景顏色 + + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target = drawText(img, target, (x, y), fonts, gridSize, gridColor) + drawLine(img) + return img, target +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated + +if __name__ == '__main__' : + # pathImgStore = "./test/img/" + # pathTargetStore = "./test/target/" + # maxImgCount = 1000 + pathImgStore = "./train/img/" + pathTargetStore = "./train/target/" + maxImgCount = 100000 + fonts = loadFonts() + for i in range(maxImgCount): + print(i, "/", maxImgCount) + img, target = createImg(fonts) + cv2.imwrite(pathImgStore + str(i) + ".png", img) + cv2.imwrite(pathTargetStore + str(i)+ ".png", target) + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/yoloGtold1/createData.py" "b/\346\225\264\347\220\206/data/yoloGtold1/createData.py" new file mode 100644 index 0000000..2b402e8 --- /dev/null +++ "b/\346\225\264\347\220\206/data/yoloGtold1/createData.py" @@ -0,0 +1,290 @@ +import numpy as np +import cv2 +from PIL import ImageFont, ImageDraw, Image +import random +import os +import math +import json +strLib = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','_','(',')','/','#'] +def loadFonts(fontPath = "../fonts/"): + fonts = [] + count = 0 + count2 = 0 + for i in os.listdir(fontPath): + count2+=1 + for j in range(10, 60): + try: + + temp = ImageFont.truetype(fontPath+i, j) + except Exception as e: + # print(i, j) + pass + else: + fonts.append(temp) + count+=1 + print(count, count2) + return fonts +def drawGrid(gridSize, colorful, backgroundColor): + #style + #0 空的 + #1 邊框 + #2 邊框有缺 + #3 中心圓圈 + #4 中心圓圈小的 + #5 上方圓圈小的 + #6 下方圓圈小的 + img = np.zeros((gridSize, gridSize, 3), np.uint8) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + style = random.randint(0, 6) + + if(colorful): + gridBackgroundColor = (random.randint(1,254),random.randint(1,254),random.randint(1,254),255) #隨機顏色 + + else: + # print("backgroundColor", backgroundColor) + gridBackgroundColor = backgroundColor[:] + draw.rectangle([0, 0, gridSize, gridSize], fill = gridBackgroundColor) + + + if(style == 1): + draw.rectangle([0, 0, gridSize,gridSize], fill = None, outline=0, width=2) + if(style == 2): + if(random.randint(0, 1)): + draw.rectangle([0, 0, gridSize, gridSize], fill = None, outline=0, width=2) + if(style == 3): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(0, 0), (gridSize, gridSize)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 4): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.25), (gridSize*0.75, gridSize*0.75)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 5): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, gridSize*0.5), (gridSize*0.75, gridSize*1)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + if(style == 6): + if(random.randint(0, 1)): #是否填色 + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline ="black", width=2) + else: + draw.ellipse([(gridSize*0.25, 0), (gridSize*0.75, gridSize*0.5)] , + fill = (random.randint(0,255),random.randint(0,255),random.randint(0,255)), + outline =None, width=2) + + img = np.array(img_pil) + # img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + gridBackgroundColor = (gridBackgroundColor[0], gridBackgroundColor[1], gridBackgroundColor[2]) + return img, gridBackgroundColor +def drawText(img, target, yx, fonts, gridSize, gridColor, maxStrLen=13, textOrientation=random.randint(0, 2)): + # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) + img_pil = Image.fromarray(img) + draw = ImageDraw.Draw(img_pil) + font = fonts[random.randint(0, len(fonts) - 1)] + + #字方位編碼 + #0:靠左 1:靠中 2:靠右 + #textOrientation = (random.randint(0, 3), random.randint(0, 3)) + textOrientation = 1 + # textColor = (random.randint(0,255),random.randint(0,255),random.randint(0,255),255) #隨機的字顏色 + textColor = (0,0,0,0) if random.randint(0, 1) else (255,255,255,255) + # hasNoStr = random.randint(0, 10) > 8 + # if(hasNoStr): + # return img, target, None + + + strlen = random.randint(1, maxStrLen) + drawUnderLine = random.randint(0, 10) > 8 + drawTopLine = random.randint(0, 10) > 8 + text = ''.join([strLib[x] for x in np.random.randint(len(strLib), size=strlen)]) + baseY = yx[0] * gridSize + 3 + baseX = yx[1] * gridSize + 3 + endY = (yx[0] + 1) * gridSize - 3 + endX = (yx[1] + 1) * gridSize - 3 + + textwidth, textheight = draw.textsize(text, font=font) + if textOrientation == 0: + nextY = baseY + nextX = baseX + elif textOrientation == 1: + nextY = (baseY + endY) // 2 - textheight//2 + nextX = baseX + elif textOrientation == 2: + nextY = endY - textheight * 2 + nextX = baseX + startX = nextX + startY = nextY + maxX = 0 + + txtHeap = "" + for char in text: + twidth, theight = draw.textsize(char, font=font) + + if(nextX + twidth > endX): + maxX = nextX + nextX = baseX + nextY += textheight + + if(nextY + textheight > endY): + # print("break") + nextY -= textheight + break + draw.text((nextX, nextY), char, font=font, fill=textColor) + txtHeap += char + if (drawUnderLine): + draw.line((nextX, nextY + textheight, nextX + twidth, nextY + textheight), fill=textColor) + if (drawTopLine): + draw.line((nextX, nextY, nextX + twidth, nextY), fill=textColor) + + # ttwidth, ttheight = draw.textsize(char, font=font) + if(nextY + textheight > endY): + print("break nextY") + break + if(nextX + twidth > endX): + nextX += twidth + print("break nextX") + break + target[nextY : nextY + textheight, nextX : nextX + twidth, :] = 255 + nextX += twidth + + + img = np.array(img_pil) + + img = cv2.cvtColor(img,cv2.COLOR_RGB2BGR) + + angle = random.randint(0, 359) + + baseY = yx[0] * gridSize + baseX = yx[1] * gridSize + endY = (yx[0] + 1) * gridSize + endX = (yx[1] + 1) * gridSize + img[baseY:endY, baseX:endX] = rotate(img[baseY:endY ,baseX:endX], angle, gridColor) + + targetTemp = rotate(target[baseY:endY ,baseX:endX], angle, (0,0,0)) + # ret, targetTemp = cv2.threshold(targetTemp,254,255,cv2.THRESH_BINARY) + target[baseY:endY, baseX:endX] = np.expand_dims(targetTemp, axis = 2) + + # print(targetTemp.shape) + contours, hierarchy = cv2.findContours(targetTemp,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) + if(len(contours) > 1): + print(error) + exit() + + for contour in contours: + x, y, w, h = cv2.boundingRect(contour) + cv2.rectangle(targetTemp, (baseX+x, baseY+y), (baseX+x + w, baseY+y + h), (0, 0, 255), 2) + maxX = nextX if nextX>maxX else maxX + returnBox = [startX, startY + ,startX, nextY+textheight + ,maxX, nextY+textheight + ,maxX, startY, txtHeap] + returnBox[0], returnBox[1] = get_point(returnBox[0], returnBox[1], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[2], returnBox[3] = get_point(returnBox[2], returnBox[3], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[4], returnBox[5] = get_point(returnBox[4], returnBox[5], (baseX+endX)//2, (baseY+endY)//2, angle) + returnBox[6], returnBox[7] = get_point(returnBox[6], returnBox[7], (baseX+endX)//2, (baseY+endY)//2, angle) + + x1 = max(min(returnBox[0], returnBox[2], returnBox[4], returnBox[6]), baseX) + x2 = min(max(returnBox[0], returnBox[2], returnBox[4], returnBox[6]), endX) + y1 = max(min(returnBox[1], returnBox[3], returnBox[5], returnBox[7]), baseY) + y2 = min(max(returnBox[1], returnBox[3], returnBox[5], returnBox[7]), endY) + + returnBox = [x1, y1, x1, y2, x2, y2, x2, y1] + + return img, target, returnBox +def drawLine(img, maxCount = 15): + lineCount = random.randint(0, maxCount) + imgShape = img.shape + for i in range(lineCount): + cv2.line(img, (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, imgShape[1]), random.randint(0, imgShape[0])), + (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), + (random.randint(1, 3))) + +def createImg(fonts): + imgSizeHeight = 608#random.randint(800, 1500) #隨機的圖片高度 + imgSizeWidth = 608#random.randint(800, 1500) #隨機的圖片寬度 + gridSize = random.randint(50, 600) #網格大小 + + backgroundColor = (random.randint(0,255), random.randint(0,255), random.randint(0,255)) #背景顏色 + img = np.zeros((imgSizeHeight, imgSizeWidth, 3), np.uint8) + target = np.zeros((imgSizeHeight, imgSizeWidth, 1), np.uint8) + img[:,:] = backgroundColor[:] #圖片背景顏色 + boxs = [] + + + colorful = random.randint(0, 1) #是否彩色 + for x in range((imgSizeHeight // gridSize)): + for y in range((imgSizeWidth // gridSize)): + cv2Grid, gridColor = drawGrid(gridSize, colorful, backgroundColor) + + starty = y*gridSize + endy = (y+1)*gridSize + if(endy >= imgSizeWidth): + endy = imgSizeWidth + + startx = x*gridSize + endx = (x+1)*gridSize + if(endx >= imgSizeHeight): + endx = imgSizeHeight + img[startx:endx, starty:endy] = cv2Grid[ : endx-startx, : endy-starty] + + img, target, boxsXY = drawText(img, target, (x, y), fonts, gridSize, gridColor) + if(boxsXY): + boxs.append(boxsXY) + drawLine(img) + return img, target, boxs +def rotate(image, angle, borderValue, center=None, scale=1.0): + # 获取图像尺寸 + (h, w) = image.shape[:2] + # 若未指定旋转中心,则将图像中心设为旋转中心 + if center is None: + center = (w / 2, h / 2) + # 执行旋转 + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(image, M, (w, h), borderValue=borderValue) + # 返回旋转后的图像 + return rotated +def get_point(x,y,cX,cY,angle): + angle=360-angle + new_x = (x - cX) * math.cos(math.pi / 180.0 * angle) - (y - cY) * math.sin(math.pi / 180.0 * angle) + cX + new_y = (x - cX) * math.sin(math.pi / 180.0 * angle) + (y - cY) * math.cos(math.pi / 180.0 * angle) + cY + return round(new_x), round(new_y) #四捨五入取整 +if __name__ == '__main__' : + pathImgStore = "./train/" + # maxImgCount = 101000 + maxImgCount = 10 + fonts = loadFonts("../../../fonts/") + for i in range(1, maxImgCount+1): + print(i, "/", maxImgCount) + img, target, boxs = createImg(fonts) + cv2.imwrite(pathImgStore + str(i) + ".png", img) + + h, w, c = img.shape + data = [] + for box in boxs: + starth, startw = max(min(box[1::2]), 0), max(min(box[::2]), 0) + endh, endw = min(max(box[1::2]), h), min(max(box[::2]), w) + centerh, centerw = (endh + starth)/2/h, (endw + startw)/2/w + boxh, boxw = (endh - starth)/2/h, (endw - startw)/2/w + box = [0, centerw, centerh, boxw, boxh] + data.append(" ".join([str(num) for num in box]) + "\n") + # print(data) + with open(pathImgStore + str(i)+ ".txt", "w", encoding='UTF-8') as f: + f.writelines(data) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/data/yoloGtold1/show.py" "b/\346\225\264\347\220\206/data/yoloGtold1/show.py" new file mode 100644 index 0000000..d97639c --- /dev/null +++ "b/\346\225\264\347\220\206/data/yoloGtold1/show.py" @@ -0,0 +1,35 @@ +import os +import torch +import cv2 +import numpy as np +from PIL import Image, ImageDraw + +path = './train/' +for img_filename in os.listdir(path): + name, ext = os.path.splitext(img_filename) + print(img_filename, ext) + if(ext != ".png"): + continue + img_path = os.path.join(path, img_filename) + txt_path = os.path.join(path, name+".txt") + + + img = cv2.imread(img_path) + + with open(txt_path, 'r', encoding='UTF-8') as f: + lines = f.readlines() + lines = [line.split(" ") for line in lines] + + h, w, c = img.shape + for line in lines: + _, centerw, centerh, boxw, boxh = line + centerh, centerw, boxh, boxw = float(centerh)*h, float(centerw)*w, float(boxh)*h, float(boxw)*w + centerh, centerw, boxh, boxw = int(centerh), int(centerw), int(boxh), int(boxw) + + starth, startw = centerh - boxh, centerw - boxw + boxh, boxw = centerh + boxh, centerw + boxw + + cv2.rectangle(img, (startw, starth), (boxw, boxh), (0, 0, 255), 2) + cv2.imwrite("./show/" + name + ".png", img) + + diff --git "a/\346\225\264\347\220\206/marge.py" "b/\346\225\264\347\220\206/marge.py" new file mode 100644 index 0000000..ad03b8b --- /dev/null +++ "b/\346\225\264\347\220\206/marge.py" @@ -0,0 +1,248 @@ +import os +import cv2 +import numpy as np +import json +from PIL import Image +from tools import findGrid +from tools import drawer + +def drawCounters(counters, img, color=(0, 0, 255)): + for counter in counters: + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), color, 4) + return img +def drawFillCounters(counters, img): + for counter in counters: + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), (255, 255, 255), -1) + return img +def NMS(dets, thresh=0.5): + x1, y1, x2, y2, scores = [], [], [], [], [] + for i in dets: + x1.append(i[0]) + y1.append(i[1]) + x2.append(i[2]) + y2.append(i[3]) + scores.append(i[4]) + x1, y1, x2, y2, scores = np.array(x1), np.array(y1), np.array(x2), np.array(y2), np.array(scores) + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + + #打分从大到小排列,取index + order = scores.argsort()[::-1] + #keep为最后保留的边框 + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + + return [dets[i] for i in keep] +def delInclude(rects, includeThreshold=0.9): + rectSum = [] + + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + if(aArea <= intersect and aArea / intersect > includeThreshold): + j = -1 + break + elif(bArea <= intersect and bArea / intersect > includeThreshold): + rects[j][0] = -1 + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def delNoInCenterLine(rects, xCenters, yCenters): + rectSum = [] + for rect in rects: + flag = False + for i, xCenter in enumerate(xCenters): + if(rect[0]xCenter): + flag=True + break + for i, yCenter in enumerate(yCenters): + if(rect[1]yCenter): + flag=True + break + + if(flag): + rectSum.append(rect[:]) + return rectSum +def delNoInCenter(rects, xCenters, yCenters, xKey=0, yKey=0): + rectSum = [] + for rect in rects: + flag = False + for i, xCenter in enumerate(xCenters): + if(rect[0]xCenter): + flag+=1 + break + for j, yCenter in enumerate(yCenters): + if(rect[1]yCenter): + flag+=1 + break + + if(flag == 2 or (i==xKey) or (j==yKey)): + rectSum.append(rect[:]) + return rectSum +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0, -1, S_rec1, S_rec2 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0, intersect, S_rec1, S_rec2 +def delUnreasonableRects(rects, ratio=5.1): + # print(type(rects)) + hList = [] + wList = [] + for rect in rects: + h = (rect[2]-rect[0])//2 + w = (rect[3]-rect[1])//2 + + hList.append(h) + wList.append(w) + + # hList = np.array(hList) + # wList = np.array(wList) + hStd = np.std(hList, ddof=0) + wStd = np.std(wList, ddof=0) + hMean = np.mean(hList) + wMean = np.mean(wList) + # print("hStd: {:.4f} wStd: {:.4f}".format(hStd, wStd)) + # print("hMean:{:.4f} wMean:{:.4f}".format(hMean, wMean)) + returnRects = [] + for i, (h, w) in enumerate(zip(hList, wList)): + if(h < hMean + hStd*ratio and h > hMean - hStd*ratio and w < wMean + wStd*ratio and w > wMean - wStd*ratio): + returnRects.append(rects[i]) + if(len(returnRects) < len(rects)): + return delUnreasonableRects(returnRects) + return returnRects +def margeRect(rects, IOUThreshold=0.1): + rectSum = [] + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + aIOU = intersect / aArea + bIOU = intersect / bArea + if(aIOU > IOUThreshold or bIOU > IOUThreshold): + rects[j][0] = min(rects[i][0], rects[j][0]) + rects[j][1] = min(rects[i][1], rects[j][1]) + rects[j][2] = max(rects[i][2], rects[j][2]) + rects[j][3] = max(rects[i][3], rects[j][3]) + rects[j][4] = max(rects[i][4], rects[j][4]) + j = -1 + break + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def readTxt(path): + with open(path,'r') as f: #讀取真實結果 + fStrs = f.readlines() + fStrs = [fStr.replace("\n", "") for fStr in fStrs] + polys = [[float(i) for i in fStr.split(" ")] for fStr in fStrs] + rects = polysTorects(polys) + return rects +def polysTorects(polys): + # print(polys) + return [[poly[0], poly[1], poly[4], poly[5]] for poly in polys] +def gridRule(rects): + xCenter, yCenter = findGrid.findGrid(rects, image.shape) + rectsTemp = delNoInCenter(rects, xCenter, yCenter) + print("gridRule", len(rects), len(rectsTemp)) + if(len(rects) == len(rectsTemp)): + return rectsTemp, xCenter, yCenter + else: + rectsTemp, xCenter, yCenter = gridRule(rectsTemp) + return rectsTemp, xCenter, yCenter + +targets = ["./unet-Result-best-rulebase/", "./yolo-Result-best-rulebase/"] +GTFlooders = "../groundtruth/margeBlock/" +rects = [] + +for GTFlooderName in os.listdir(GTFlooders): + print(GTFlooderName, end="\r") + GTPath = os.path.join(GTFlooders, GTFlooderName) + ImgPath = os.path.join(GTPath, GTFlooderName + ".jpg") + GTTxtPath = os.path.join(GTPath, GTFlooderName + ".txt") + classNamePath = os.path.join(GTPath, "classes.txt") + image = cv2.imread(ImgPath) + image2 = image.copy() + image3 = image.copy() + image4 = image.copy() + + rects = [] + flag = 1 + for target in targets: + predictPath = os.path.join(target, GTFlooderName + ".json") + savePath = os.path.join(target, GTFlooderName + ".png") + + with open(predictPath, 'r') as f: + predictRects = json.load(f) + # print(len(predictRects)) + + rects += predictRects + if flag: + print(flag) + flag = 0 + + for rect in predictRects: + cv2.rectangle(image2, (rect[0], rect[1]), (rect[2], rect[3]), (255, 0, 0), 3) + else: + print(flag) + for rect in predictRects: + cv2.rectangle(image3, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 3) + + for rect in rects: + cv2.rectangle(image4, (rect[0], rect[1]), (rect[2], rect[3]), (0, 125, 125), 3) + + rects = delUnreasonableRects(rects) + rects = delInclude(rects) + rects = margeRect(rects) + + for rect in rects: + cv2.rectangle(image, (rect[0], rect[1]), (rect[2], rect[3]), (0, 255, 0), 3) + # rects, xCenter, yCenter = gridRule(rects) + + # image = drawer.drawGrid(xCenter, yCenter, image, color=(255, 0, 0)) + # for rect in rects: + # cv2.rectangle(image, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 3) + + + SavePath = "./marge/" + with open(os.path.join(SavePath, GTFlooderName + ".json"), 'w') as f: + json.dump(rects, f) + + # for rect in rects: + # cv2.rectangle(image, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 2) + cv2.imwrite(os.path.join(SavePath, GTFlooderName + "0.png"), image) + cv2.imwrite(os.path.join(SavePath, GTFlooderName + "2.png"), image2) + cv2.imwrite(os.path.join(SavePath, GTFlooderName + "3.png"), image3) + cv2.imwrite(os.path.join(SavePath, GTFlooderName + "4.png"), image4) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/mergeOCRresult.py" "b/\346\225\264\347\220\206/mergeOCRresult.py" new file mode 100644 index 0000000..3498ab4 --- /dev/null +++ "b/\346\225\264\347\220\206/mergeOCRresult.py" @@ -0,0 +1,152 @@ +import os +import cv2 +import json + +def drawRects(image, Rects, color=(0, 0, 255)): + for rect in Rects: + # print(rect) + cv2.rectangle(image, (int(rect[0]), int(rect[1])), (int(rect[2]), int(rect[3])), color, 3) + cv2.putText(image, rect[-1], (int(rect[0]), int(rect[1])), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1, cv2.LINE_AA) + +def rectFind(rect, rects): + for key, value in enumerate(rects): + if(value[0] == rect[0] and value[1] == rect[1] and value[2] == rect[2] and value[3] == rect[3]): + return key + return None +def vote(results, saveDir): + if not os.path.exists(saveDir): + os.makedirs(saveDir) + imageRects = [[] for i in range(18)] + for result in results: + for filename in os.listdir(result): + name, ext = os.path.splitext(filename) + num = int(name.split("_")[1])-1 + if(ext != ".json"): + continue + filepath = os.path.join(result, filename) + with open(filepath, 'r') as f: + rects = json.load(f) + imageRects[num].append(rects) + + for imageNumber, rects18 in enumerate(imageRects): + margeRects = [] + for i in range(len(results)): + for rect in rects18[i]: + margeRects.append(rect[:]) + margeRects[-1][-1] = [margeRects[-1][-1].upper()] + for j in range(i+1, len(results)): + # print(len(rects18), j,) + key = rectFind(rect, rects18[j]) + if(key != None): + margeRects[-1][-1].append(rects18[j][key][-1].upper()) + del rects18[j][key] + else: + # margeRects[-1][-1].append("") + # print(key) + del margeRects[-1] + break + + for rect in margeRects: + strVote = {} + for strA in rect[-1]: + if(strA not in strVote): + strVote[strA] = 0 + strVote[strA] += 1 + rect[-1] = max(strVote, key=strVote.get) + + imageName = "FPK_"+str(imageNumber+1).zfill(2) + image = cv2.imread(os.path.join("../groundtruth/image/", imageName+".jpg")) + imgSavePath = os.path.join(saveDir, imageName+".jpg") + drawRects(image, margeRects, color=(255, 0, 0)) + print(imageName) + cv2.imwrite(imgSavePath, image) + with open(os.path.join(saveDir, imageName+".json"), 'w') as f: + json.dump(margeRects, f) +# results = [ +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.RARE_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.CRNN_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.STARNet_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.Rosetta_RGB", +# ] +# results = vote(results, "./CrossTest-Result/yolo-Result-best-rulebase_vote_RGB/") + +# results = [ +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.RARE_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.CRNN_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.STARNet_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.Rosetta_RGB", +# ] +# results = vote(results, "./CrossTest-Result/unet-Result-best-rulebase_vote_RGB/") + +# results = [ +# "./CrossTest-Result/marge_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/marge_dataColor.RARE_RGB", +# "./CrossTest-Result/marge_dataColor.CRNN_RGB", +# "./CrossTest-Result/marge_dataColor.STARNet_RGB", +# "./CrossTest-Result/marge_dataColor.Rosetta_RGB", +# ] +# results = vote(results, "./CrossTest-Result/marge_vote_RGB/") +# results = [ +# "./CrossTest-Result/marge_CRNN_BINARY", +# "./CrossTest-Result/marge_CRNN_RGB", +# "./CrossTest-Result/marge_CRNN_TYPE1", +# "./CrossTest-Result/marge_dataColor.CRNN_RGB", +# "./CrossTest-Result/marge_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/marge_dataColor.RARE_RGB", +# "./CrossTest-Result/marge_dataColor.Rosetta_RGB", +# "./CrossTest-Result/marge_dataColor.STARNet_RGB", +# "./CrossTest-Result/marge_RARE_BINARY", +# "./CrossTest-Result/marge_RARE_RGB", +# "./CrossTest-Result/marge_RARE_TYPE1", +# "./CrossTest-Result/marge_Rosetta_BINARY", +# "./CrossTest-Result/marge_Rosetta_RGB", +# "./CrossTest-Result/marge_Rosetta_TYPE1", +# "./CrossTest-Result/marge_STARNet_BINARY", +# "./CrossTest-Result/marge_STARNet_RGB", +# "./CrossTest-Result/marge_STARNet_TYPE1", +# ] +# vote(results, "./CrossTest-Result/marge_vote2_RGB/") + +# results = [ +# "./CrossTest-Result/unet-Result-best-rulebase_CRNN_BINARY", +# "./CrossTest-Result/unet-Result-best-rulebase_CRNN_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_CRNN_TYPE1", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.CRNN_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.RARE_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.Rosetta_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_dataColor.STARNet_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_RARE_BINARY", +# "./CrossTest-Result/unet-Result-best-rulebase_RARE_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_RARE_TYPE1", +# "./CrossTest-Result/unet-Result-best-rulebase_Rosetta_BINARY", +# "./CrossTest-Result/unet-Result-best-rulebase_Rosetta_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_Rosetta_TYPE1", +# "./CrossTest-Result/unet-Result-best-rulebase_STARNet_BINARY", +# "./CrossTest-Result/unet-Result-best-rulebase_STARNet_RGB", +# "./CrossTest-Result/unet-Result-best-rulebase_STARNet_TYPE1", +# ] +# vote(results, "./CrossTest-Result/unet-Result-best-rulebase_vote2_RGB/") + +# results = [ +# "./CrossTest-Result/yolo-Result-best-rulebase_CRNN_BINARY", +# "./CrossTest-Result/yolo-Result-best-rulebase_CRNN_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_CRNN_TYPE1", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.CRNN_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.RARE_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.Rosetta_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_dataColor.STARNet_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_RARE_BINARY", +# "./CrossTest-Result/yolo-Result-best-rulebase_RARE_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_RARE_TYPE1", +# "./CrossTest-Result/yolo-Result-best-rulebase_Rosetta_BINARY", +# "./CrossTest-Result/yolo-Result-best-rulebase_Rosetta_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_Rosetta_TYPE1", +# "./CrossTest-Result/yolo-Result-best-rulebase_STARNet_BINARY", +# "./CrossTest-Result/yolo-Result-best-rulebase_STARNet_RGB", +# "./CrossTest-Result/yolo-Result-best-rulebase_STARNet_TYPE1", +# ] +# vote(results, "./CrossTest-Result/yolo-Result-best-rulebase_vote2_RGB/") \ No newline at end of file diff --git "a/\346\225\264\347\220\206/test.bat" "b/\346\225\264\347\220\206/test.bat" new file mode 100644 index 0000000..23de274 --- /dev/null +++ "b/\346\225\264\347\220\206/test.bat" @@ -0,0 +1,10 @@ +rem python test.py --flooder unet-Result +rem python test.py --flooder unet-Result-del8x8 +rem python test.py --flooder unet-Result-delstd +rem python test.py --flooder unet-Result-nms +rem python test.py --flooder unet-Result-delLowScores +rem python test.py --flooder unet-Result-delInclude +rem python test.py --flooder unet-Result-Rulebase + +python test.py --flooder unet-Result +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/test.py" "b/\346\225\264\347\220\206/test.py" new file mode 100644 index 0000000..8e08d06 --- /dev/null +++ "b/\346\225\264\347\220\206/test.py" @@ -0,0 +1,135 @@ +import numpy as np +import json +import cv2 +import shapely +import os +import argparse +import csv +from shapely.geometry import Polygon,MultiPoint #多边形 +def countIOU(a, b, debug=False):#[x,y,x,y....], [x,y,x,y....] + a=np.array(a).reshape(4, 2) #四边形二维坐标表示 + poly1 = Polygon(a).convex_hull #python四边形对象,会自动计算四个点,最后四个点顺序为:左上 左下 右下 右上 左上 + + b=np.array(b).reshape(4, 2) #四边形二维坐标表示 + poly2 = Polygon(b).convex_hull #python四边形对象,会自动计算四个点,最后四个点顺序为:左上 左下 右下 右上 左上 + intersection = poly1.intersection(poly2).area + union = poly1.union(poly2).area + + if intersection != 0 or union != 0: + iou=float(intersection) / union + else: + iou=0 + if debug: print("poly1.area:{} poly2.area:{} union:{} intersection:{} iou:{}".format(poly1.area, poly2.area, union, intersection, iou)) + return iou +def countIOURect(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0 +def readTxt(path): + with open(path,'r') as f: #讀取真實結果 + fStrs = f.readlines() + fStrs = [fStr.replace("\n", "") for fStr in fStrs] + polys = [[float(i) for i in fStr.split(" ")] for fStr in fStrs] + rects = polysTorects(polys) + return rects +def drawPolys(image, Polys): + for poly in Polys: + points = np.array(poly) + points = points.reshape(4, 2) + cv2.polylines(img=image, pts=np.int32([points]), isClosed=True, color=(0,0,255), thickness=3) +def polysTorects(polys): + # print(polys) + return [[poly[0], poly[1], poly[4], poly[5]] for poly in polys] +def rectsTopolys(rects): + return [[rect[0], rect[1], rect[2], rect[1], + rect[2], rect[3], rect[0], rect[3]] for rect in rects] +def drawRects(image, Rects, color=(0, 0, 255), score=False): + for rect in Rects: + # print(rect) + cv2.rectangle(image, (int(rect[0]), int(rect[1])), (int(rect[2]), int(rect[3])), color, 3) + if(score): + + cv2.putText(image, str(int(rect[4]*100)), (int(rect[0]), int(rect[1])), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1, cv2.LINE_AA) + +def countAcc(PreFlooders, GTFlooders, iouThreshold=0.5): + for GTFlooderName in os.listdir(GTFlooders): + print(GTFlooderName, end="\r") + GTPath = os.path.join(GTFlooders, GTFlooderName) + + ImgPath = os.path.join(GTPath, GTFlooderName + ".jpg") + GTTxtPath = os.path.join(GTPath, GTFlooderName + ".txt") + classNamePath = os.path.join(GTPath, "classes.txt") + + predictPath = os.path.join(PreFlooders, GTFlooderName + ".json") + savePath = os.path.join(PreFlooders, GTFlooderName + ".png") + + image = cv2.imread(ImgPath) + image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) + image = cv2.cvtColor(image, cv2.COLOR_GRAY2BGR) + + # print(imagePreMask) + # predictPolys = readTxt(predictPath) + with open(predictPath, 'r') as f: + predictRects = json.load(f) + gtRects = readTxt(GTTxtPath) + + # print(predictPolys, gtPolys) + TP, FP, FN = 0, 0, 0 + pairs = [] + + pres = predictRects.copy() + gts = gtRects.copy() + for i, gt in enumerate(gts): + # print("{}/{}".format(i, len(gts)), end="\r") + maxIOU = [0, -1] + for j, pre in enumerate(pres): + if(pre == -1): + continue + iou = countIOURect(gt, pre) + # print(gt,pre) + if(iou > maxIOU[0]): + maxIOU[0] = iou + maxIOU[1] = j + if(maxIOU[0] > iouThreshold): + # print(maxIOU) + pairs.append([i, maxIOU[1]]) + pres[maxIOU[1]] = -1 + TP += 1 + else: + FN += 1 + FP = len(predictRects)-len(pairs) + + precision = TP/(TP + FP) if TP + FP else 0 + recall = TP/(TP + FN) if TP + FN else 0 + print("TP:{} FP:{} FN:{} precision:{} recall:{}".format(TP, FP, FN, precision, recall)) + if(precision + recall == 0): + F1 = 0 + else: + F1 = 2 * precision * recall / (precision + recall) + # drawPolys(image, gtPolys) + # drawPolys(image, predictPolys) + # drawRects(image, gtRects , color=(0, 0, 255)) + # drawRects(image, predictRects, color=(255, 0, 0), score=True) + + writer.writerow([TP, FP, FN, precision, recall, F1]) + # cv2.imwrite(savePath, image) +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--flooder', default='EAST-Result-rulebase', help='what model want test') + opt = parser.parse_args() + + PreFlooders = opt.flooder + GTFlooders = "../groundtruth/margeBlock/" + with open('./csv/'+PreFlooders+'.csv', 'w', newline='') as csvfile: + writer = csv.writer(csvfile) + countAcc(PreFlooders, GTFlooders) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/testCrossTest.bat" "b/\346\225\264\347\220\206/testCrossTest.bat" new file mode 100644 index 0000000..fe4bf51 --- /dev/null +++ "b/\346\225\264\347\220\206/testCrossTest.bat" @@ -0,0 +1,62 @@ +rem python testCrossTest.py --flooder marge_CRNN_BINARY +rem python testCrossTest.py --flooder marge_CRNN_TYPE1 +rem python testCrossTest.py --flooder marge_CRNN_RGB +rem python testCrossTest.py --flooder marge_dataColor.CRNN_RGB +rem python testCrossTest.py --flooder marge_RARE_BINARY +rem python testCrossTest.py --flooder marge_RARE_TYPE1 +rem python testCrossTest.py --flooder marge_RARE_RGB +rem python testCrossTest.py --flooder marge_dataColor.RARE_RGB +rem python testCrossTest.py --flooder marge_Rosetta_BINARY +rem python testCrossTest.py --flooder marge_RosettaTYPE1 +rem python testCrossTest.py --flooder marge_Rosetta_RGB +rem python testCrossTest.py --flooder marge_dataColor.Rosetta_RGB +rem python testCrossTest.py --flooder marge_STARNet_BINARY +rem python testCrossTest.py --flooder marge_STARNet_TYPE1 +rem python testCrossTest.py --flooder marge_STARNet_RGB +rem python testCrossTest.py --flooder marge_dataColor.STARNet_RGB +rem python testCrossTest.py --flooder marge_dataColor.NoneResNetBiLSTMCTC_RGB +rem python testCrossTest.py --flooder marge_vote_RGB + +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_CRNN_BINARY +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_CRNN_TYPE1 +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_CRNN_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_dataColor.CRNN_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_RARE_BINARY +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_RARE_TYPE1 +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_RARE_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_dataColor.RARE_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_Rosetta_BINARY +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_RosettaTYPE1 +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_Rosetta_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_dataColor.Rosetta_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_STARNet_BINARY +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_STARNet_TYPE1 +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_STARNet_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_dataColor.STARNet_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_vote_RGB + +rem python testCrossTest.py --flooder unet-Result-best-rulebase_CRNN_BINARY +rem python testCrossTest.py --flooder unet-Result-best-rulebase_CRNN_TYPE1 +rem python testCrossTest.py --flooder unet-Result-best-rulebase_CRNN_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_dataColor.CRNN_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_RARE_BINARY +rem python testCrossTest.py --flooder unet-Result-best-rulebase_RARE_TYPE1 +rem python testCrossTest.py --flooder unet-Result-best-rulebase_RARE_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_dataColor.RARE_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_Rosetta_BINARY +rem python testCrossTest.py --flooder unet-Result-best-rulebase_RosettaTYPE1 +rem python testCrossTest.py --flooder unet-Result-best-rulebase_Rosetta_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_dataColor.Rosetta_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_STARNet_BINARY +rem python testCrossTest.py --flooder unet-Result-best-rulebase_STARNet_TYPE1 +rem python testCrossTest.py --flooder unet-Result-best-rulebase_STARNet_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_dataColor.STARNet_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_dataColor.NoneResNetBiLSTMCTC_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_vote_RGB + +rem python testCrossTest.py --flooder marge_vote2_RGB +rem python testCrossTest.py --flooder yolo-Result-best-rulebase_vote2_RGB +rem python testCrossTest.py --flooder unet-Result-best-rulebase_vote2_RGB + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/testCrossTest.py" "b/\346\225\264\347\220\206/testCrossTest.py" new file mode 100644 index 0000000..1e89e69 --- /dev/null +++ "b/\346\225\264\347\220\206/testCrossTest.py" @@ -0,0 +1,176 @@ +import numpy as np +import json +import cv2 +import shapely +import os +import argparse +import csv +from shapely.geometry import Polygon,MultiPoint #多边形 +def minDistance(word1, word2): + if not word1: + return len(word2 or '') or 0 + + if not word2: + return len(word1 or '') or 0 + + size1 = len(word1) + size2 = len(word2) + + last = 0 + tmp = list(range(size2 + 1)) + value = None + + for i in range(size1): + tmp[0] = i + 1 + last = i + # print word1[i], last, tmp + for j in range(size2): + if word1[i] == word2[j]: + value = last + else: + value = 1 + min(last, tmp[j], tmp[j + 1]) + # print(last, tmp[j], tmp[j + 1], value) + last = tmp[j+1] + tmp[j+1] = value + # print tmp + strLen = len(word2) + acc2Temp = (strLen-value)/strLen + if(acc2Temp < 0): + acc2Temp = 0 + return acc2Temp +def yoloBoxToCv2(detection, shape): + height = shape[0] + width = shape[1] + center_x = int(detection[1] * width) + center_y = int(detection[2] * height) + w = int(detection[3] * width) + h = int(detection[4] * height) + x = int(center_x - w / 2) + y = int(center_y - h / 2) + cls = int(detection[0]) + return [y, x, y+h, x+w, cls] +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0 +def readTxt(path): + with open(path,'r') as f: #讀取真實結果 + fStrs = f.readlines() + fStrs = [fStr.replace("\n", "") for fStr in fStrs] + polys = [[float(i) for i in fStr.split(" ")] for fStr in fStrs] + rects = polysTorects(polys) + return rects +def drawPolys(image, Polys): + for poly in Polys: + points = np.array(poly) + points = points.reshape(4, 2) + cv2.polylines(img=image, pts=np.int32([points]), isClosed=True, color=(0,0,255), thickness=3) +def polysTorects(polys): + # print(polys) + return [[poly[0], poly[1], poly[4], poly[5]] for poly in polys] +def rectsTopolys(rects): + return [[rect[0], rect[1], rect[2], rect[1], + rect[2], rect[3], rect[0], rect[3]] for rect in rects] +def drawRects(image, Rects, color=(0, 0, 255), score=False): + for rect in Rects: + # print(rect) + cv2.rectangle(image, (int(rect[0]), int(rect[1])), (int(rect[2]), int(rect[3])), color, 3) + if(score): + + cv2.putText(image, str(int(rect[4]*100)), (int(rect[0]), int(rect[1])), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 1, cv2.LINE_AA) + +def countAcc(PreFlooders, GTFlooders, iouThreshold=0.1): + for GTFlooderName in os.listdir(GTFlooders): + print(GTFlooderName, end="\r") + GTPath = os.path.join(GTFlooders, GTFlooderName) + + ImgPath = os.path.join(GTPath, GTFlooderName + ".jpg") + GTTxtPath = os.path.join(GTPath, GTFlooderName + ".txt") + classNamePath = os.path.join(GTPath, "classes.txt") + + predictPath = os.path.join(PreFlooders, GTFlooderName + ".json") + savePath = os.path.join(PreFlooders, GTFlooderName + ".png") + + image = cv2.imread(ImgPath) + + with open(GTTxtPath,'r') as f: #讀取真實結果 + fStrs = f.readlines() + fStrs = [fStr.replace("\n", "") for fStr in fStrs] + yoloRects = [[float(i) for i in fStr.split(" ")] for fStr in fStrs] + GTRects = [yoloBoxToCv2(i, image.shape) for i in yoloRects] + GTRects = [[rect[1], rect[0], rect[3], rect[2], rect[4]] for rect in GTRects] + + with open(predictPath, 'r') as f: + predictRects = json.load(f) + + with open(classNamePath,'r') as f: #讀取真實字串 + fStrs = f.readlines() + GTClassName = [fStr.replace("\n", "") for fStr in fStrs] + # print(GTRects[0:3]) + # print(GTClassName) + # print(predictRects[0:3]) + + # print(predictPolys, gtPolys) + TP, FP, FN = 0, 0, 0 + pairs = [] + + pres = predictRects.copy() + gts = GTRects.copy() + ious = np.zeros((len(pres), len(gts))) + for i, gt in enumerate(gts): + for j, pre in enumerate(pres): + iou = countIOU(gt, pre) + ious[j, i] = iou + + presUse = np.zeros((len(pres)))+1 + gtsUse = np.zeros((len(gts)))+1 + while(np.sum(ious) > 0 and np.sum(presUse) > 0 and np.sum(gtsUse) > 0): + i, j = np.unravel_index(np.argmax(ious), ious.shape) + # print(i, j, pres[i][7], GTClassName[gts[j][4]]) + if(minDistance(pres[i][7].upper(), GTClassName[gts[j][4]]) > 0.8): + pairs.append([i, ious[i, j]]) + TP += 1 + + presUse[i] = 0 + gtsUse[j] = 0 + ious[i,:] = 0 + ious[:,j] = 0 + else: + ious[i,:] = 0 + # print(np.sum(ious), np.sum(presUse), np.sum(gtsUse)) + # print(np.sum(presUse), np.sum(gtsUse)) + FP = np.sum(presUse) + FN = np.sum(gtsUse) + + precision = TP/(TP + FP) + recall = TP/(TP + FN) + # print("TP:{} FP:{} FN:{} precision:{} recall:{}".format(TP, FP, FN, precision, recall)) + if(precision + recall == 0): + F1 = 0 + else: + F1 = 2 * precision * recall / (precision + recall) + # drawRects(image, GTRects , color=(0, 0, 255)) + # drawRects(image, predictRects, color=(255, 0, 0)) + + writer.writerow([TP, FP, FN, precision, recall, F1]) + # cv2.imwrite(savePath, image) +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('--flooder', default='marge_CRNN_BINARY', help='what model want test') + opt = parser.parse_args() + + PreFlooders = os.path.join("./CrossTest-Result/", opt.flooder) + GTFlooders = "../groundtruth/marge/" + with open(os.path.join("./CrossTest/", opt.flooder+'.csv'), 'w', newline='') as csvfile: + writer = csv.writer(csvfile) + countAcc(PreFlooders, GTFlooders) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/tools/__pycache__/detectionRulebase.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/detectionRulebase.cpython-36.pyc" new file mode 100644 index 0000000..34e73a8 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/detectionRulebase.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/drawer.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/drawer.cpython-36.pyc" new file mode 100644 index 0000000..30353e5 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/drawer.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/findGrid.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/findGrid.cpython-36.pyc" new file mode 100644 index 0000000..477a66f Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/findGrid.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/rotateImg.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/rotateImg.cpython-36.pyc" new file mode 100644 index 0000000..8f77601 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/rotateImg.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/splitLine.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/splitLine.cpython-36.pyc" new file mode 100644 index 0000000..1109890 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/splitLine.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/toArray.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/toArray.cpython-36.pyc" new file mode 100644 index 0000000..f303083 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/toArray.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/__pycache__/toExcel.cpython-36.pyc" "b/\346\225\264\347\220\206/tools/__pycache__/toExcel.cpython-36.pyc" new file mode 100644 index 0000000..16c6a82 Binary files /dev/null and "b/\346\225\264\347\220\206/tools/__pycache__/toExcel.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/tools/detectionRulebase.py" "b/\346\225\264\347\220\206/tools/detectionRulebase.py" new file mode 100644 index 0000000..c10457f --- /dev/null +++ "b/\346\225\264\347\220\206/tools/detectionRulebase.py" @@ -0,0 +1,133 @@ +import numpy as np + +def NMS(dets, thresh=0.5): + x1, y1, x2, y2, scores = [], [], [], [], [] + for i in dets: + x1.append(i[0]) + y1.append(i[1]) + x2.append(i[2]) + y2.append(i[3]) + scores.append(i[4]) + x1, y1, x2, y2, scores = np.array(x1), np.array(y1), np.array(x2), np.array(y2), np.array(scores) + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + + #打分从大到小排列,取index + order = scores.argsort()[::-1] + #keep为最后保留的边框 + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + + return [dets[i] for i in keep] +def delLowScores(rects, thresh=0.4): + returnRects = [] + for rect in rects: + if(rect[4] > thresh): + returnRects.append(rect) + return returnRects +def margeRect(rects, IOUThreshold=0.1): + rectSum = [] + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + aIOU = intersect / aArea + bIOU = intersect / bArea + if(aIOU > IOUThreshold or bIOU > IOUThreshold): + rects[j][0] = min(rects[i][0], rects[j][0]) + rects[j][1] = min(rects[i][1], rects[j][1]) + rects[j][2] = max(rects[i][2], rects[j][2]) + rects[j][3] = max(rects[i][3], rects[j][3]) + rects[j][4] = max(rects[i][4], rects[j][4]) + j = -1 + break + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def delInclude(rects, includeThreshold=0.9): + rectSum = [] + + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + if(aArea <= intersect and aArea / intersect > includeThreshold): + j = -1 + break + elif(bArea <= intersect and bArea / intersect > includeThreshold): + rects[j][0] = -1 + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0, -1, S_rec1, S_rec2 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0, intersect, S_rec1, S_rec2 +def delSmallerThan8X8(rects): + returnRects = [] + for rect in rects: + h = (rect[2]-rect[0]) + w = (rect[3]-rect[1]) + if(h >= 8 and w >= 8): + returnRects.append(rect) + return returnRects +def delUnreasonableRects(rects, ratio=4): + # print(type(rects)) + hList = [] + wList = [] + for rect in rects: + h = (rect[2]-rect[0])//2 + w = (rect[3]-rect[1])//2 + + hList.append(h) + wList.append(w) + + # hList = np.array(hList) + # wList = np.array(wList) + hStd = np.std(hList, ddof=0) + wStd = np.std(wList, ddof=0) + hMean = np.mean(hList) + wMean = np.mean(wList) + # print("hStd: {:.4f} wStd: {:.4f}".format(hStd, wStd)) + # print("hMean:{:.4f} wMean:{:.4f}".format(hMean, wMean)) + returnRects = [] + for i, (h, w) in enumerate(zip(hList, wList)): + if(h < hMean + hStd*ratio and h > hMean - hStd*ratio and w < wMean + wStd*ratio and w > wMean - wStd*ratio): + returnRects.append(rects[i]) + if(len(returnRects) < len(rects)): + return delUnreasonableRects(returnRects) + return returnRects diff --git "a/\346\225\264\347\220\206/tools/drawer.py" "b/\346\225\264\347\220\206/tools/drawer.py" new file mode 100644 index 0000000..7dc6f31 --- /dev/null +++ "b/\346\225\264\347\220\206/tools/drawer.py" @@ -0,0 +1,24 @@ +import cv2 +def drawCounters(counters, img, color=(0, 0, 255), width=4, predList=False, savePath=None): + for i, counter in enumerate(counters): + # print((counter[2]-counter[0])//100+1) + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), color, width) + if(predList): + cv2.putText(img, counter[7].upper(), (counter[0], counter[1]) + , cv2.FONT_HERSHEY_SIMPLEX, (counter[3]-counter[1])//100+1, (255, 0, 0), 2, cv2.LINE_AA) + if(savePath): + print("store " + savePath) + cv2.imwrite(savePath, img) + return img +def drawGrid(centerY, centerX, img, width=3, color=(0, 0, 255), colorKey=(0, 255, 255)): + for i in range(len(centerY)): + cv2.line(img, (centerY[i], 0), (centerY[i], img.shape[0]), color, width) + for i in range(len(centerX)): + cv2.line(img, (0, centerX[i]), (img.shape[1], centerX[i]), color, width) + return img +def drawReferece(img, rects, yGrid, xGrid, color=(0, 255, 0)): + for rect in rects: + centerY = (rect[0]+rect[2])//2 + centerX = (rect[1]+rect[3])//2 + cv2.line(img, (centerY, centerX), (yGrid[rect[9]], xGrid[rect[8]]), color, 2) + return img diff --git "a/\346\225\264\347\220\206/tools/findGrid.py" "b/\346\225\264\347\220\206/tools/findGrid.py" new file mode 100644 index 0000000..4421374 --- /dev/null +++ "b/\346\225\264\347\220\206/tools/findGrid.py" @@ -0,0 +1,82 @@ +import numpy as np +import cv2 +import os +import json +import collections +from tqdm import tqdm +def delCenter(center, imgShape, minStr=8): + centerF = np.flip(np.copy(center))[:] + tempF = centerF[1:]-centerF[0:-1] < -minStr + tempF = np.append(tempF, [True]) + + tempNum = 0 + for i in range(len(tempF)-1, -1, -1): + if(tempF[i] == True): + tempNum = centerF[i] + else: + centerF[i] = tempNum + + centerN = np.copy(center) + temp = centerN[1:]-centerN[0:-1] > minStr + temp = np.append(temp, [True]) + tempNum = 0 + for i in range(len(temp)-1, -1, -1): + if(temp[i] == True): + tempNum = centerN[i] + else: + centerN[i] = tempNum + centerM = (centerN*2//3 + np.flip(centerF)//3) + + + return centerM +def getCenterList(rects, imgShape): + centerX = [] + centerY = [] + + sumX, sumY = 0, 0 + for rect in rects: + centerX.append((rect[2]+rect[0])//2) + centerY.append((rect[3]+rect[1])//2) + + sumX += rect[2]-rect[0] + sumY += rect[3]-rect[1] + averageX = sumX/len(centerX) + averageY = sumY/len(centerY) + # print(centerX, centerY) + centerX = np.array(centerX) + centerY = np.array(centerY) + centerX.sort() + centerY.sort() + # print(averageX, averageY) + centerX = delCenter(centerX, imgShape, minStr=averageX/5) + centerY = delCenter(centerY, imgShape, minStr=averageY/5) + # print("after", centerX, centerY) + + # temp = np.bincount(centerX) + # mask = temp>3 + # temp = temp[mask] + # centerX = np.where(mask == True)[0] + # mean, std = np.mean(temp), np.std(temp) + # print(temp, np.mean(temp), np.std(temp)) + # mask = temp > mean/2 + # temp = temp[mask] + # centerX = centerX[mask] + # print(temp) + # print(centerX) + + + + temp = np.bincount(centerX) > 2 + # print(np.bincount(centerX)[temp]) + centerX = np.where(temp == True)[0] + + temp = np.bincount(centerY) > 2 + # print(np.bincount(centerY)[temp]) + centerY = np.where(temp == True)[0] + + # print("cut", centerX, centerY) + return centerX, centerY +def findGrid(rects, imgShape): + centerX, centerY = getCenterList(rects, imgShape) + # print(centerX, centerY) + return centerX, centerY \ No newline at end of file diff --git "a/\346\225\264\347\220\206/tools/rotateImg.py" "b/\346\225\264\347\220\206/tools/rotateImg.py" new file mode 100644 index 0000000..4679d04 --- /dev/null +++ "b/\346\225\264\347\220\206/tools/rotateImg.py" @@ -0,0 +1,160 @@ +import numpy as np +import cv2 +import colorsys +import PIL.Image as Image +import os +import json +from shutil import copyfile + +def get_dominant_color(image): + + image = Image.fromarray(cv2.cvtColor(image,cv2.COLOR_BGR2RGB)) + max_score = 0.0001 + dominant_color = None + for count,(r,g,b) in image.getcolors(image.size[0]*image.size[1]): + # 转为HSV标准 + saturation = colorsys.rgb_to_hsv(r/255.0, g/255.0, b/255.0)[1] + y = min(abs(r*2104+g*4130+b*802+4096+131072)>>13,235) + y = (y-16.0)/(235-16) + + #忽略高亮色 + # if y > 0.9: + # continue + score = (saturation+0.1)*count + if score > max_score: + max_score = score + dominant_color = (r,g,b) + return dominant_color +def findAngle(imgTemp, savePath=None): + img = imgTemp.copy() + if(savePath): + imgMinBox = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR) + + contours, hierarchy = cv2.findContours(img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) + angle = 0 + if(len(contours) > 1): + h, w = img.shape + kernel = np.ones((h//10, w//10), np.uint8) + img = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel) + contours, hierarchy = cv2.findContours(img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) + maxArea = 0 + maxRect = None + for contour in contours: + rect = cv2.minAreaRect(contour) + box = cv2.boxPoints(rect) + box = np.int0(box) + area = cv2.contourArea(box) + if(area > maxArea): + maxArea = area + maxRect = [box, rect[-1]] + if(maxRect): + angle = maxRect[1] + if(angle < -45): + angle = 90 + angle + if(savePath): + cv2.drawContours(img, [maxRect[0]], -1, (0, 0, 255), 3) + if(savePath): + cv2.imwrite(savePath, img) + return angle +def rotateAngle(img, angle, savePath=None, scale=1.0): + # print(len(img.shape)) + dominant_color = (0,0,0) + dominant_color = get_dominant_color(img) + dominant_color = [dominant_color[2], dominant_color[1], dominant_color[0]] + # print(img.shape) + h, w = img.shape[0], img.shape[1] + center = (w//2, h//2) + M = cv2.getRotationMatrix2D(center, angle, scale) + rotated = cv2.warpAffine(img, M, (w, h), borderValue=dominant_color) + if(savePath): + cv2.imwrite(savePath, rotated) + return rotated +def grayToBinary(grayImg): + ret, binaryImg = cv2.threshold(grayImg, 0, 255, cv2.THRESH_BINARY+cv2.THRESH_OTSU) + whiteCount = np.sum(binaryImg[:,:] > 128) + blackCount = np.sum(binaryImg[:,:] < 128) + if(blackCount < whiteCount): + ret, binaryImg = cv2.threshold(binaryImg, 128, 255, cv2.THRESH_BINARY_INV) + return binaryImg +def cutImg(img, rects): + returnImgs = [] + for rect in rects: + imgCut = img[rect[1] : rect[3], rect[0] : rect[2]] + returnImgs.append(imgCut) + return returnImgs +def rotateImgs(image, rects, savePath=None, onlyCut=False): + imgRGBs = [] + imgGRAYs = [] + imgBINARYs = [] + imgsCut = cutImg(image, rects) + if(savePath): + if not os.path.exists(savePath): + os.makedirs(savePath) + returnRects = [] + for i, img in enumerate(imgsCut): + h, w, c = img.shape + if(h == 0 or w == 0): + continue + imgGray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + imgBinary = grayToBinary(imgGray) + angle = 0 + returnRects.append(rects[i]+[angle]) + if(onlyCut): + imgRGBs.append(img) + imgGRAYs.append(imgGray) + imgBINARYs.append(imgBinary) + continue + if(savePath): + saveImgPath = os.path.join(savePath, str(i)+"binary.jpg") + cv2.imwrite(saveImgPath, imgBinary) + saveImgPath = os.path.join(savePath, str(i)+"ori.jpg") + cv2.imwrite(saveImgPath, img) + angle = findAngle(imgBinary, savePath=os.path.join(savePath, str(i)+"MinBox.jpg")) + imgRGBs.append(rotateAngle(img, angle, savePath=os.path.join(savePath, str(i)+"imgRotateRGB.jpg"))) + # imgGRAYs.append(rotateAngle(imgGray, angle, savePath=os.path.join(savePath, str(i)+"imgRotateGRAY.jpg"))) + # imgBINARYs.append(rotateAngle(imgBinary, angle, savePath=os.path.join(savePath, str(i)+"imgRotateBINARY.jpg"))) + imgGRAYs.append(rotateAngle(imgGray, angle)) + imgBINARYs.append(rotateAngle(imgBinary, angle)) + else: + angle = findAngle(imgBinary) + imgRGBs.append(rotateAngle(img, angle)) + imgGRAYs.append(rotateAngle(imgGray, angle)) + imgBINARYs.append(rotateAngle(imgBinary, angle)) + # print(rects[i]+[angle]) + + + return imgRGBs, imgGRAYs, imgBINARYs, returnRects +if __name__ == '__main__': + imgsDir = "../groundtruth/marge/" + preDir = "./unet-Result-Rulebase/" + saveDir = "./result/" + for flooder in os.listdir(imgsDir): + + imgPath = os.path.join(imgsDir, flooder, flooder+".jpg") + image = cv2.imread(imgPath) + print(imgPath) + + prePath = os.path.join(preDir, flooder+".json") + with open(prePath, 'r') as f: + rects = json.load(f) + + saveFlooder = os.path.join(saveDir, flooder) + if not os.path.exists(saveFlooder): + os.makedirs(saveFlooder) + + imgRGBs, imgGRAYs, imgBINARYs = rotateImgs(image, rects) + for i in range(len(imgRGBs)): + cv2.imwrite(os.path.join(saveFlooder, str(i)+"imgRGBs.jpg"), imgRGBs[i]) + cv2.imwrite(os.path.join(saveFlooder, str(i)+"imgGRAYs.jpg"), imgGRAYs[i]) + cv2.imwrite(os.path.join(saveFlooder, str(i)+"imgBINARYs.jpg"), imgBINARYs[i]) + + + + + + + + + + + diff --git "a/\346\225\264\347\220\206/tools/splitLine.py" "b/\346\225\264\347\220\206/tools/splitLine.py" new file mode 100644 index 0000000..8d2f2da --- /dev/null +++ "b/\346\225\264\347\220\206/tools/splitLine.py" @@ -0,0 +1,146 @@ +import os +import cv2 +import numpy as np +def correctionImg(cutRGB, cutGRAY, cutBINARY, rect=None, boarder = 5): + h, w, c = cutRGB.shape + imgBinary = cutBINARY.copy() + imgBinary = killLine(imgBinary) + imgBinary = killboarder(imgBinary) + sumX = np.sum(imgBinary, axis=0)/255 + sumY = np.sum(imgBinary, axis=1)/255 + startX = (sumX>0).argmax(axis=0) #找到第一個出現字的寬度位置 + startY = (sumY>0).argmax(axis=0) #找到第一個出現字的起始位置 + + sumXFlip = sumX[::-1] + sumYFlip = sumY[::-1] + endX = len(sumXFlip) - (sumXFlip>1).argmax(axis=0) - 1 #找到最後一個出現字的寬度位置 + endY = len(sumYFlip) - (sumYFlip>1).argmax(axis=0) - 1 #找到最後一個出現字的起始位置 + + startX = 0 if startX - boarder < 0 else startX - boarder + startY = 0 if startY - boarder < 0 else startY - boarder + endX = w if endX + boarder > w else endX + boarder + endY = h if endY + boarder > h else endY + boarder + # print(startX, startY, endX, endY) + RGB, GRAY, BINARY = cutRGB[startY:endY, startX:endX], cutGRAY[startY:endY, startX:endX], cutBINARY[startY:endY, startX:endX] + if (rect != None): + return RGB, GRAY, BINARY, [rect[0]+startX, rect[1]+startY, rect[0]+endX, rect[1]+endY, rect[4], rect[5]] + # return RGB, GRAY, BINARY, [rect[0], rect[1], rect[2], rect[3], rect[4]] + else: + return RGB, GRAY, BINARY +def killLine(img, door=240): + sumX = np.sum(img, axis=0) / img.shape[0] + sumY = np.sum(img, axis=1) / img.shape[1] + img[:, np.where(sumX > door)] = 0 + img[np.where(sumY > door), :] = 0 + return img +def killboarder(img): + img[0,:] = 0 + img[-1,:] = 0 + img[:,0] = 0 + img[:,-1] = 0 + return img +def killVerticalLine(img, door=240): + sumX = np.sum(img, axis=0) / img.shape[0] + img[:, np.where(sumX > door)] = 0 + return img +def splitLine(imgRGB, imgGRAY, imgBINARY, savePath=None, rect=None): + img = imgBINARY.copy() + h, w = img.shape + + kernel = np.ones((1, w//5),np.uint8) + img = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel) + img = killVerticalLine(img) + kernel = np.ones((h//10, 1),np.uint8) + img = cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel) + kernel = np.ones((1, w),np.uint8) + img = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel) + img = killboarder(img) + (thresh, img) = cv2.threshold(img, 128, 255, cv2.THRESH_BINARY) + + contours, hierarchy = cv2.findContours(img ,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE) + if(savePath): + imgOut = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) + cv2.drawContours(imgOut, contours, -1, (0, 0, 255), 1) + cv2.imwrite(os.path.join(savePath+"CLOSE.png"), imgOut) + cv2.imwrite(os.path.join(savePath+"Ori.png"), imgRGB) + + + xCenter = []#找行輪廓中心 + for k in range(len(contours)): + temp = np.array(contours[k]) + x, y = temp[:,:,0], temp[:,:,1] + xMax, xMin, yMax, yMin = x.max(), x.min(), y.max(), y.min() + height, width = yMax-yMin, xMax-xMin + if(height > h / 10): + xCenter.append((yMax+yMin)//2) + xCenter.sort() + + xEdge = [0] #找行切割中線 + if(len(xCenter)) : tempEdge = xCenter[0] + for i in range(1, len(xCenter)): + xEdge.append((tempEdge + xCenter[i])//2) + tempEdge = xCenter[i] + xEdge.append(h) + + returnRGBs, returnGRAYs, returnBINARYs = [], [], [] + if(rect != None): returnRects = [] + if(len(xEdge)) : tempX = xEdge[0]#行切割 + for i in range(1, len(xEdge)): + cutRGB, cutGRAY, cutBINARY = imgRGB[tempX:xEdge[i],:], imgGRAY[tempX:xEdge[i],:], imgBINARY[tempX:xEdge[i],:] + if(rect != None): tempRect = [rect[0], rect[1]+tempX, rect[2], rect[1]+xEdge[i], rect[4], rect[5]] + RGB, GRAY, BINARY, tempRect = correctionImg(cutRGB, cutGRAY, cutBINARY, rect=tempRect)#刪除多於空白 + if(savePath): + cv2.imwrite(os.path.join(savePath+str(i)+"lingCut.png"), cutBINARY) + cv2.imwrite(os.path.join(savePath+str(i)+"correction.png"), BINARY) + returnRGBs.append(RGB) + returnGRAYs.append(GRAY) + returnBINARYs.append(BINARY) + if(rect != None): returnRects.append(tempRect) + tempX = xEdge[i] + if(rect != None): + return returnRGBs, returnGRAYs, returnBINARYs, returnRects + else: + return returnRGBs, returnGRAYs, returnBINARYs +def splitLineImgs(imgRGBs, imgGRAYs, imgBINARYs, rects, savePath=None): + if(savePath): + print(savePath) + if not os.path.exists(savePath): + os.makedirs(savePath) + returnImgRGBs, returnImgGRAYs, returnImgBINARYs, returnRects = [], [], [], [] + for i, img in enumerate(imgRGBs): + if(savePath): + imgRGB, imgGRAY, imgBINARY, cutRects = splitLine(imgRGBs[i], imgGRAYs[i], imgBINARYs[i], rect=rects[i] + , savePath=os.path.join(savePath, str(i)+"_")) + else: + imgRGB, imgGRAY, imgBINARY, cutRects = splitLine(imgRGBs[i], imgGRAYs[i], imgBINARYs[i], rect=rects[i]) + for j, _ in enumerate(cutRects): + cutRects[j].append(i) + returnImgRGBs += imgRGB + returnImgGRAYs += imgGRAY + returnImgBINARYs += imgBINARY + returnRects += cutRects + return returnImgRGBs, returnImgGRAYs, returnImgBINARYs, returnRects +if __name__ == '__main__': + imgsFlooders = "angleresult" + saveFlooders = "result" + for path, childDir, childFile in os.walk(imgsFlooders): + if(len(childDir) > 0): + continue + saveFlooder = path.replace(imgsFlooders, saveFlooders) + if not os.path.exists(saveFlooder): + os.makedirs(saveFlooder) + for fileName in childFile: + filePath = os.path.join(path, fileName) + fileType = fileName.split(".")[0].split("img")[1] + if(fileType == "BINARYs"): + print(filePath) + imageBinary = cv2.imread(filePath, cv2.IMREAD_GRAYSCALE) + imgRGB = cv2.imread(filePath.replace("BINARYs", "RGBs")) + imgGRAY = cv2.imread(filePath.replace("BINARYs", "GRAYs")) + + cv2.imwrite(os.path.join(saveFlooder, fileName), imageBinary) + imgs = splitLine(imgRGBs, imgGRAYs, imgBINARYs, savePath=os.path.join(saveFlooder, fileName)) + for i, img in enumerate(imgs): + savePath=os.path.join(saveFlooder, fileName+str(i)+".png") + cv2.imwrite(savePath, img) + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/tools/toArray.py" "b/\346\225\264\347\220\206/tools/toArray.py" new file mode 100644 index 0000000..d382025 --- /dev/null +++ "b/\346\225\264\347\220\206/tools/toArray.py" @@ -0,0 +1,35 @@ +import numpy as np +def Sort(sub_li): + sub_li.sort(key = lambda x: x[0]) + return sub_li +def toArray(rects):#[[y1, x1, y2, x2, score, angle, block, txt, xtarget, ytarget]] + maxx, maxy = 0, 0 + for rect in rects: + if(rect[8] > maxx): maxx = rect[8] + if(rect[9] > maxy): maxy = rect[9] + maxx += 1 + maxy += 1 + returnArray = [] #初始化 + for i in range(maxx): + returnArray.append([]) + for j in range(maxy): + returnArray[i].append([]) + + for rect in rects: + returnArray[rect[8]][rect[9]].append([rect[1], rect[7]]) + + returnStrs = [] #初始化 + for i in range(maxx): + returnStrs.append([]) + for j in range(maxy): + returnStrs[i].append(None) + + for xkey, xvalue in enumerate(returnArray): + for ykey, yvalue in enumerate(xvalue): + for i in Sort(yvalue):#根據高度做排序 + if(returnStrs[xkey][ykey] == None): + returnStrs[xkey][ykey] = i[1] + else: + returnStrs[xkey][ykey] += "\n"+i[1] + # print(returnStrs) + return returnStrs \ No newline at end of file diff --git "a/\346\225\264\347\220\206/tools/toExcel.py" "b/\346\225\264\347\220\206/tools/toExcel.py" new file mode 100644 index 0000000..2ae8588 --- /dev/null +++ "b/\346\225\264\347\220\206/tools/toExcel.py" @@ -0,0 +1,30 @@ +import numpy as np +from openpyxl import Workbook +def toExcel(arrayStr, yKey, xKey, excelStore): + wb = Workbook() + ws = wb.active + ws.append(["NUMBER", "CONTENT"]) + for i in range(len(arrayStr)): + if(i == xKey): + continue + for j in range(len(arrayStr[0])): + if(j == yKey or len(arrayStr[i][j]) == 0): + continue + + if(len(arrayStr[xKey][j]) == 0 and len(arrayStr[i][yKey]) == 0): + ws.append(["--", arrayStr[i][j]]) + elif(len(arrayStr[xKey][j]) == 0): + ws.append(["-"+arrayStr[i][yKey], arrayStr[i][j]]) + elif(len(arrayStr[i][yKey]) == 0): + ws.append([arrayStr[xKey][j]+arrayStr[i][yKey], arrayStr[i][j]]) + else: + ws.append([arrayStr[xKey][j]+arrayStr[i][yKey], arrayStr[i][j]]) + wb.save(excelStore) +def toExcel2(arrayStr, excelStore): + wb = Workbook() + ws = wb.active + for i, line in enumerate(arrayStr): + for j, value in enumerate(line): + ws.cell(row=i+1, column=j+1).value = value + # print("./"+excelStore) + wb.save(excelStore) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl" "b/\346\225\264\347\220\206/unet/checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl" new file mode 100644 index 0000000..26e17df Binary files /dev/null and "b/\346\225\264\347\220\206/unet/checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl" differ diff --git "a/\346\225\264\347\220\206/unet/detectionUnet.py" "b/\346\225\264\347\220\206/unet/detectionUnet.py" new file mode 100644 index 0000000..d65ba43 --- /dev/null +++ "b/\346\225\264\347\220\206/unet/detectionUnet.py" @@ -0,0 +1,386 @@ +import torch +from torchvision.utils import save_image +import numpy as np +import cv2 +import json +import os +from model.Unet import UNet +def saveTorchImg(img, fileName): + saveImg = img.numpy().astype(np.uint8).transpose((1, 2, 0)) + saveImg = cv2.cvtColor(saveImg, cv2.COLOR_RGB2BGR) + cv2.imwrite(fileName, saveImg) +class UnetModel(): + def __init__(self, modelStore): + self.model = UNet(3, 1).cuda() + self.model.load_state_dict(torch.load(modelStore)) + self.model.eval() + def predict_cutresize(self, img, re_size, side_size): + with torch.no_grad(): + h, w, c = img.shape + imgResize = self.img_resize(img, re_size) + imgTorch = torch.from_numpy(imgResize.transpose((2, 0, 1))) + + imgTorchs = self.cutImage(imgTorch, side_size) + outputImgs = [] + for i in imgTorchs: + output = self.model(i.cuda().float().div(255).unsqueeze(0)) + output = output.mul(255).byte().squeeze(0).cpu().numpy().transpose((1, 2, 0)) + outputImgs.append(output) + predictImg = self.margeImage(outputImgs, [imgTorch.shape[1], imgTorch.shape[2]], side_size) + predictImg = cv2.resize(predictImg, (w, h)) + imgs, rects = self.findContour(predictImg, img) + + rectsTemp = [] + for rect in rects: + scoreAll = np.sum(predictImg[rect[0]:rect[2], rect[1]:rect[3]]) / 255. + temp = (rect[2]-rect[0]) * (rect[3]-rect[1]) + score = scoreAll/temp + rectsTemp.append([rect[1].item(), rect[0].item(), + rect[3].item(), rect[2].item(), score]) + del imgTorch, imgTorchs, rects + return imgs, rectsTemp, predictImg + def findContour(self, predictImg, img): + _, predictImg = cv2.threshold(predictImg, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) + imgs = [] + rects = [] + contours, hierarchy = cv2.findContours(predictImg, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE) + for k in contours: + temp = np.array(k) + x = temp[:,:,0] + y = temp[:,:,1] + xMax = x.max() + xMin = x.min() + yMax = y.max() + yMin = y.min() + length = xMax-xMin + width = yMax-yMin + area = length*width + imgs.append(img[yMin:yMax, xMin:xMax]) + rects.append([yMin, xMin, yMax, xMax]) + return imgs, rects + def cutImage(self, image, sliceSize=1000): + # print(image.shape) + c, h, w = image.shape + + imgs = [] + for i in range(h//sliceSize*2+1): + for j in range(w//sliceSize*2+1): + img = torch.zeros((3, sliceSize, sliceSize)) + img[:] = 255 + temp = image[:,sliceSize//2*i: sliceSize//2*(i+2) if sliceSize//2*(i+2)255] = 255 + return returnImg.astype(np.uint8) + def img_resize(self, image, size): + height, width = image.shape[0], image.shape[1] + # 判断图片的长宽比率 + scale = width / height + if width > height: + img_new = cv2.resize(image, (size, int(size*scale))) + else: + img_new = cv2.resize(image, (int(size*scale), size)) + return img_new +def NMS(dets, thresh=0.5): + x1, y1, x2, y2, scores = [], [], [], [], [] + for i in dets: + x1.append(i[0]) + y1.append(i[1]) + x2.append(i[2]) + y2.append(i[3]) + scores.append(i[4]) + x1, y1, x2, y2, scores = np.array(x1), np.array(y1), np.array(x2), np.array(y2), np.array(scores) + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + + #打分从大到小排列,取index + order = scores.argsort()[::-1] + #keep为最后保留的边框 + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + + return [dets[i] for i in keep] +def delLowScores(rects, thresh=0.4): + returnRects = [] + for rect in rects: + if(rect[4] > thresh): + returnRects.append(rect) + return returnRects +def margeRect(rects, IOUThreshold=0.1): + rectSum = [] + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + aIOU = intersect / aArea + bIOU = intersect / bArea + if(aIOU > IOUThreshold or bIOU > IOUThreshold): + rects[j][0] = min(rects[i][0], rects[j][0]) + rects[j][1] = min(rects[i][1], rects[j][1]) + rects[j][2] = max(rects[i][2], rects[j][2]) + rects[j][3] = max(rects[i][3], rects[j][3]) + rects[j][4] = max(rects[i][4], rects[j][4]) + j = -1 + break + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def delInclude(rects, includeThreshold=0.9): + rectSum = [] + + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + if(aArea <= intersect and aArea / intersect > includeThreshold): + j = -1 + break + elif(bArea <= intersect and bArea / intersect > includeThreshold): + rects[j][0] = -1 + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0, -1, S_rec1, S_rec2 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0, intersect, S_rec1, S_rec2 +def delSmallerThan8X8(rects): + returnRects = [] + for rect in rects: + h = (rect[2]-rect[0]) + w = (rect[3]-rect[1]) + if(h >= 8 and w >= 8): + returnRects.append(rect) + return returnRects +def delUnreasonableRects(rects, ratio=4): + # print(type(rects)) + hList = [] + wList = [] + for rect in rects: + h = (rect[2]-rect[0])//2 + w = (rect[3]-rect[1])//2 + + hList.append(h) + wList.append(w) + + # hList = np.array(hList) + # wList = np.array(wList) + hStd = np.std(hList, ddof=0) + wStd = np.std(wList, ddof=0) + hMean = np.mean(hList) + wMean = np.mean(wList) + # print("hStd: {:.4f} wStd: {:.4f}".format(hStd, wStd)) + # print("hMean:{:.4f} wMean:{:.4f}".format(hMean, wMean)) + returnRects = [] + for i, (h, w) in enumerate(zip(hList, wList)): + if(h < hMean + hStd*ratio and h > hMean - hStd*ratio and w < wMean + wStd*ratio and w > wMean - wStd*ratio): + returnRects.append(rects[i]) + if(len(returnRects) < len(rects)): + return delUnreasonableRects(returnRects) + return returnRects + +def testResize(): + model = UnetModel(modelStore="./checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl") + path = r"E:\mainproject\科技部計畫OCR 20200722\groundtruth\image" + saveDirs = r"../unet-Result/" + + for re_size in range(500, 5001, 100): + for side_size in range(200, 2001, 100): #2401 max size + print(str(re_size)+"-"+str(side_size)) + saveDir = os.path.join(saveDirs, str(re_size)+"-"+str(side_size)) + if not os.path.exists(saveDir): + os.makedirs(saveDir) + else: + continue + for fileName in os.listdir(path): + name, ext = os.path.splitext(fileName) + filePath = os.path.join(path, fileName) + savePath = os.path.join(saveDir, name+'.json') + print(filePath) + img = cv2.imdecode(np.fromfile(filePath, dtype=np.uint8), cv2.IMREAD_UNCHANGED) + img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) + gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + grayOut = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR) + imgsUnet, rectUnet, predictImg = model.predict_cutresize(img, re_size, side_size) + + with open(savePath, 'w') as f: + json.dump(rectUnet, f) + + for rect in rectUnet: + cv2.rectangle(grayOut, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 2) + saveImgPath = os.path.join(saveDir, fileName) + saveImgPathMask = os.path.join(saveDir, fileName+"mask.png") + cv2.imwrite(saveImgPath, grayOut) + cv2.imwrite(saveImgPathMask, predictImg) +def testbest(): + model = UnetModel(modelStore="./checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl") + path = r"C:\Users\endman100\Desktop\科技部計畫OCR 20200722\groundtruth\image" + saveDir = r"../unet-Result-best/" + + if not os.path.exists(saveDir): + os.makedirs(saveDir) + for fileName in os.listdir(path): + name, ext = os.path.splitext(fileName) + filePath = os.path.join(path, fileName) + savePath = os.path.join(saveDir, name+'.json') + print(filePath) + img = cv2.imdecode(np.fromfile(filePath, dtype=np.uint8), cv2.IMREAD_UNCHANGED) + img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) + gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + grayOut = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR) + imgsUnet, rectUnet, predictImg = model.predict_cutresize(img, 2300, 1500) + + with open(savePath, 'w') as f: + json.dump(rectUnet, f) + + for rect in rectUnet: + cv2.rectangle(grayOut, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 2) + saveImgPath = os.path.join(saveDir, fileName) + saveImgPathMask = os.path.join(saveDir, fileName+"mask.png") + cv2.imwrite(saveImgPath, grayOut) + cv2.imwrite(saveImgPathMask, predictImg) +def testbest(): + model = UnetModel(modelStore="./checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl") + path = r"C:\Users\endman100\Desktop\科技部計畫OCR 20200722\groundtruth\image" + saveDir = r"../unet-Result-best/" + + if not os.path.exists(saveDir): + os.makedirs(saveDir) + for fileName in os.listdir(path): + name, ext = os.path.splitext(fileName) + filePath = os.path.join(path, fileName) + savePath = os.path.join(saveDir, name+'.json') + print(filePath) + img = cv2.imdecode(np.fromfile(filePath, dtype=np.uint8), cv2.IMREAD_UNCHANGED) + # img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) + # gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + # grayOut = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR) + imgsUnet, rectUnet, predictImg = model.predict_cutresize(img, 2300, 1500) + + with open(savePath, 'w') as f: + json.dump(rectUnet, f) + + for rect in rectUnet: + cv2.rectangle(img, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 2) + saveImgPath = os.path.join(saveDir, fileName) + saveImgPathMask = os.path.join(saveDir, fileName+"mask.png") + cv2.imwrite(saveImgPath, img) + cv2.imwrite(saveImgPathMask, predictImg) +def testbestRulebase(): + model = UnetModel(modelStore="./checkpoint/epoch-0_step-32000_Acc 0.99, TP 22527028, TN 236084788, FP 1405728, FN 1713583, Recall 0.93, Precision 0.94, F1 0.94,.pkl") + path = r"C:\Users\endman100\Desktop\科技部計畫OCR 20200722\groundtruth\image" + # saveDir = r"../unet-Result-best-rulebase/" + saveDir = r"../unet-path/" + + if not os.path.exists(saveDir): + os.makedirs(saveDir) + for fileName in os.listdir(path): + name, ext = os.path.splitext(fileName) + filePath = os.path.join(path, fileName) + savePath = os.path.join(saveDir, name+'.json') + print(filePath) + img = cv2.imdecode(np.fromfile(filePath, dtype=np.uint8), cv2.IMREAD_UNCHANGED) + # img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) + # gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + # grayOut = cv2.cvtColor(gray, cv2.COLOR_GRAY2BGR) + imgsUnet, rectUnet, predictImg = model.predict_cutresize(img, 2300, 1500) + + + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"00"+".png")) + rectUnet = delSmallerThan8X8(rectUnet) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"01"+"delSmallerThan8X8.png")) + rectUnet = delUnreasonableRects(rectUnet, ratio=6) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"02"+"delUnreasonableRects.png")) + rectUnet = NMS(rectUnet) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"03"+"NMS.png"), drawScore=True) + rectUnet = delLowScores(rectUnet) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"04"+"delLowScores.png"), drawScore=False) + rectUnet = delInclude(rectUnet) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"05"+"delInclude.png")) + rectUnet = margeRect(rectUnet) + save_rects(img, rectUnet, os.path.join(saveDir, fileName+"06"+"margeRect.png")) + + # with open(savePath, 'w') as f: + # json.dump(rectUnet, f) + + # for rect in rectUnet: + # cv2.rectangle(img, (rect[0], rect[1]), (rect[2], rect[3]), (0, 0, 255), 10) + # saveImgPath = os.path.join(saveDir, fileName) + # saveImgPathMask = os.path.join(saveDir, fileName+"mask.png") + # cv2.imwrite(saveImgPath, img) + # cv2.imwrite(saveImgPathMask, predictImg) +def save_rects(image, rects, savePath, drawScore=False): + imageT = drawCounters(rects, image.copy(), drawScore=drawScore) + cv2.imwrite(savePath, imageT) +def drawCounters(counters, img, color=(0, 0, 255), drawScore=False): + for counter in counters: + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), color, 4) + if(drawScore): + # print(counter[-1]) + cv2.putText(img, "{:.2f}".format(counter[-1]), (counter[0], counter[1]), cv2.FONT_HERSHEY_SIMPLEX, 1, + (255, 0, 0), 2) + return img +if __name__ == '__main__': + testbestRulebase() + + + + \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/model/Unet.py" "b/\346\225\264\347\220\206/unet/model/Unet.py" new file mode 100644 index 0000000..cb68467 --- /dev/null +++ "b/\346\225\264\347\220\206/unet/model/Unet.py" @@ -0,0 +1,57 @@ +import torch.nn.functional as F + +from .unet_parts import * + + +class UNet(nn.Module): + def __init__(self, n_channels, n_classes, bilinear=True): + super(UNet, self).__init__() + self.n_channels = n_channels + self.n_classes = n_classes + self.bilinear = bilinear + + self.inc = DoubleConv(n_channels, 4*8) + self.down1 = Down(4*8, 4*16) + self.down2 = Down(4*16, 4*32) + self.down3 = Down(4*32, 4*64) + self.down4 = Down(4*64, 4*64) + self.up1 = Up(4*128, 4*32, bilinear) + self.up2 = Up(4*64, 4*16, bilinear) + self.up3 = Up(4*32, 4*8, bilinear) + self.up4 = Up(4*16, 4*8, bilinear) + self.outc = OutConv(4*8, n_classes) + + def forward(self, x): + x1 = self.inc(x) + x2 = self.down1(x1) + x3 = self.down2(x2) + x4 = self.down3(x3) + x5 = self.down4(x4) + x = self.up1(x5, x4) + x = self.up2(x, x3) + x = self.up3(x, x2) + x = self.up4(x, x1) + logits = self.outc(x) + # x = self.admp(x5).view(-1) + # x = F.relu(self.full1(x)) + # x = self.full2(x) + return logits#, x +if __name__ == '__main__': + import sys + sys.path.append("..") + model = UNet(3, 1).cuda() + lossFunctionBCE = torch.nn.BCELoss() + lossFunctionMSE = torch.nn.MSELoss() + for i in range(300): + print(i) + img = torch.rand((1,3,1000,1000)).cuda() + target = torch.rand((1,1,1000,1000)).cuda() + angleAnswer = torch.rand((1)).cuda() + output, angle = model(img) + print(output.shape) + print(target.shape) + print(angle.shape) + output = output.view(-1).unsqueeze(1).unsqueeze(1) + target = target.view(-1).unsqueeze(1).unsqueeze(1).float() + loss = lossFunctionMSE(angle, angleAnswer)/2 + lossFunctionBCE(output, target)/2 + loss.backward() diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/Unet.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/Unet.cpython-36.pyc" new file mode 100644 index 0000000..21fa2d9 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/Unet.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-35.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-35.pyc" new file mode 100644 index 0000000..dc3696c Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-35.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-36.pyc" new file mode 100644 index 0000000..7f0ca88 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/model.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-35.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-35.pyc" new file mode 100644 index 0000000..f4df0fa Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-35.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-36.pyc" new file mode 100644 index 0000000..468e24c Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/modelInception.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/__pycache__/unet_parts.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/model/__pycache__/unet_parts.cpython-36.pyc" new file mode 100644 index 0000000..7e50f51 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/model/__pycache__/unet_parts.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/model/unet_parts.py" "b/\346\225\264\347\220\206/unet/model/unet_parts.py" new file mode 100644 index 0000000..1e1177a --- /dev/null +++ "b/\346\225\264\347\220\206/unet/model/unet_parts.py" @@ -0,0 +1,75 @@ + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +class DoubleConv(nn.Module): + """(convolution => [BN] => ReLU) * 2""" + + def __init__(self, in_channels, out_channels): + super().__init__() + self.double_conv = nn.Sequential( + nn.Conv2d(in_channels, out_channels, kernel_size=3, padding=1), + nn.BatchNorm2d(out_channels), + nn.ReLU(inplace=True), + nn.Conv2d(out_channels, out_channels, kernel_size=3, padding=1), + nn.BatchNorm2d(out_channels), + nn.ReLU(inplace=True) + ) + + def forward(self, x): + return self.double_conv(x) + + +class Down(nn.Module): + """Downscaling with maxpool then double conv""" + + def __init__(self, in_channels, out_channels): + super().__init__() + self.maxpool_conv = nn.Sequential( + nn.MaxPool2d(2), + DoubleConv(in_channels, out_channels) + ) + + def forward(self, x): + return self.maxpool_conv(x) + + +class Up(nn.Module): + """Upscaling then double conv""" + + def __init__(self, in_channels, out_channels, bilinear=True): + super().__init__() + + # if bilinear, use the normal convolutions to reduce the number of channels + if bilinear: + self.up = nn.Upsample(scale_factor=2, mode='bilinear', align_corners=True) + else: + self.up = nn.ConvTranspose2d(in_channels // 2, in_channels // 2, kernel_size=2, stride=2) + + self.conv = DoubleConv(in_channels, out_channels) + + def forward(self, x1, x2): + x1 = self.up(x1) + # input is CHW + diffY = x2.size()[2] - x1.size()[2] + diffX = x2.size()[3] - x1.size()[3] + + x1 = F.pad(x1, [diffX // 2, diffX - diffX // 2, + diffY // 2, diffY - diffY // 2]) + # if you have padding issues, see + # https://github.com/HaiyongJiang/U-Net-Pytorch-Unstructured-Buggy/commit/0e854509c2cea854e247a9c615f175f76fbb2e3a + # https://github.com/xiaopeng-liao/Pytorch-UNet/commit/8ebac70e633bac59fc22bb5195e513d5832fb3bd + x = torch.cat([x2, x1], dim=1) + return self.conv(x) + + +class OutConv(nn.Module): + def __init__(self, in_channels, out_channels): + super(OutConv, self).__init__() + self.conv = nn.Conv2d(in_channels, out_channels, kernel_size=1) + self.sigmoid = nn.Sigmoid() + + def forward(self, x): + return self.sigmoid(self.conv(x)) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/tools/FocalLoss.py" "b/\346\225\264\347\220\206/unet/tools/FocalLoss.py" new file mode 100644 index 0000000..d2be951 --- /dev/null +++ "b/\346\225\264\347\220\206/unet/tools/FocalLoss.py" @@ -0,0 +1,21 @@ +import torch +class BCEFocalLoss(torch.nn.Module): + """ + 二分类的Focalloss alpha 固定 + """ + def __init__(self, gamma=2, alpha=0.25, reduction='elementwise_mean'): + super().__init__() + self.gamma = gamma + self.alpha = alpha + self.reduction = reduction + + def forward(self, _input, target): + pt = _input + alpha = self.alpha + loss = - alpha * (1 - pt) ** self.gamma * target * torch.log(pt) - \ + (1 - alpha) * pt ** self.gamma * (1 - target) * torch.log(1 - pt) + if self.reduction == 'elementwise_mean': + loss = torch.mean(loss) + elif self.reduction == 'sum': + loss = torch.sum(loss) + return loss \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-35.pyc" "b/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-35.pyc" new file mode 100644 index 0000000..cfc97e0 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-35.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-36.pyc" new file mode 100644 index 0000000..de19328 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/tools/__pycache__/FocalLoss.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-35.pyc" "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-35.pyc" new file mode 100644 index 0000000..0d69be1 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-35.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-36.pyc" new file mode 100644 index 0000000..8a6c305 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolder.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolderCrop.cpython-36.pyc" "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolderCrop.cpython-36.pyc" new file mode 100644 index 0000000..44d6207 Binary files /dev/null and "b/\346\225\264\347\220\206/unet/tools/__pycache__/imgFolderCrop.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/unet/tools/imgFolder.py" "b/\346\225\264\347\220\206/unet/tools/imgFolder.py" new file mode 100644 index 0000000..0cab67e --- /dev/null +++ "b/\346\225\264\347\220\206/unet/tools/imgFolder.py" @@ -0,0 +1,52 @@ +from PIL import Image +import torch +import os +from torch.utils.data import Dataset, DataLoader +import cv2 +import numpy as np +import json +from tqdm import tqdm +import time +import random + +from torchvision import transforms as T +class imgFlooder(Dataset): + def __init__(self, imgPath="", jsonPath="", transform=None, balance=False): + self.imgPath = imgPath + self.jsonPath = jsonPath + self.balance = balance + self.imgs = self.loadImgName(imgPath, jsonPath) + + def loadImgName(self, imgPath, jsonPath): + returnList = [] + for i in os.listdir(imgPath): + returnList.append([imgPath+i, jsonPath+i]) + return returnList + def __len__(self): + return len(self.imgs) + def __getitem__(self, index): + + img = cv2.imread(self.imgs[index][0]) + img = torch.from_numpy(img.transpose((2, 0, 1))).float().div(255) + + target = cv2.imread(self.imgs[index][1], cv2.IMREAD_GRAYSCALE)//128 + target = torch.from_numpy(target).unsqueeze(0) + + + # angle = int(os.path.basename(self.imgs[index][0]).split(".")[0].split("_")[-1]) + + return img, target + +# pathImgStore = "../data/test/storeImg/" +# pathTargetStore = "../data/test/storeTarget/" +# dataset = imgFlooder(imgPath=pathImgStore, jsonPath=pathTargetStore) +# trainloader = DataLoader(dataset, batch_size=1,shuffle=True) +# # for step, (image, target) in tqdm(enumerate(trainloader)): +# # # print("image", image.shape) +# # # print("target", target.shape) +# # pass +# for step, (image, target, angle) in enumerate(trainloader): +# print("image", image.shape) +# print("target", target.shape) +# print(angle) +# pass \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/tools/imgFolderCrop.py" "b/\346\225\264\347\220\206/unet/tools/imgFolderCrop.py" new file mode 100644 index 0000000..3635071 --- /dev/null +++ "b/\346\225\264\347\220\206/unet/tools/imgFolderCrop.py" @@ -0,0 +1,50 @@ +from PIL import Image +import torch +import os +from torch.utils.data import Dataset, DataLoader +import cv2 +import numpy as np +import json +from tqdm import tqdm +import time +import random + +from torchvision import transforms as T +class imgFlooder(Dataset): + def __init__(self, imgPath="", jsonPath="", transform=None, balance=False): + self.imgPath = imgPath + self.jsonPath = jsonPath + self.balance = balance + self.imgs = self.loadImgName(imgPath, jsonPath) + + def loadImgName(self, imgPath, jsonPath): + returnList = [] + for i in os.listdir(imgPath): + returnList.append([imgPath+i, jsonPath+i]) + return returnList + def __len__(self): + return len(self.imgs) + def __getitem__(self, index): + try: + img = cv2.imread(self.imgs[index][0]) + img = torch.from_numpy(img.transpose((2, 0, 1))).float().div(255) + + target = cv2.imread(self.imgs[index][1], cv2.IMREAD_GRAYSCALE)//128 + target = torch.from_numpy(target).unsqueeze(0) + + startx = random.randint(0, img.shape[1]-250) + starty = random.randint(0, img.shape[2]-250) + img = img[:, startx : startx+250, starty : starty+250] + target = target[:, startx : startx+250, starty : starty+250] + + return img, target + except: + print(imgs[index]) + +# pathImgStore = "../data/train/storeImg/" +# pathTargetStore = "../data/test/storeTarget/" +# dataset = imgFlooder(imgPath=pathImgStore, jsonPath=pathTargetStore) +# trainloader = DataLoader(dataset, batch_size=5,shuffle=True) +# for step, (image, target) in enumerate(trainloader): +# print("image", image.shape) +# print("target", target.shape) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/unet/train.py" "b/\346\225\264\347\220\206/unet/train.py" new file mode 100644 index 0000000..05a1867 --- /dev/null +++ "b/\346\225\264\347\220\206/unet/train.py" @@ -0,0 +1,103 @@ +import torch +import torch.nn.functional as F +from torch.autograd import Variable +import numpy as np +import cv2 +import os +import json +from torchvision import models +import torch.nn as nn +import argparse + +from torchvision import transforms as T +import matplotlib.pyplot as plt +from torchvision.datasets import ImageFolder +from torch.utils.data import Dataset, DataLoader + +from torchcontrib.optim import SWA + +import tqdm + +import shutil + +# from model.modelInception import myModel +from model.Unet import * +from tools.imgFolder import imgFlooder +# from tools.imgFolderCrop import imgFlooder +# from tools.FocalLoss import BCEFocalLoss + +def test(model): + count = 0 + loss = 0 + model.eval() + with torch.no_grad(): + for step, (img, target) in enumerate(testloader): + img, target= img.cuda(), target.cuda() + output = model(img) + loss = lossFunctionBCE(output, target.float()) + ans = (output+0.5).int() + target = target.int() + count += (ans == target).float().sum()/target.shape[0]/target.shape[1]/target.shape[2]/target.shape[3] + print(step, end="\r") + if step % 200 == 0 and step: + break + print("") + return count.item()/len(testloader), loss.item() +def train(model, optimizer, EPOCH, trainloader): + for epoch in range(EPOCH): + print('Epoch: ', epoch) + model.train() + for step, (img, target) in enumerate(trainloader): + # print(target.shape) + img, target = img.cuda(), target.cuda() + + optimizer.zero_grad() + output = model(img) + # print(output.squeeze(0).shape, target.shape) + loss = lossFunctionBCE(output, target.float()) + loss.backward() + optimizer.step() + # print(step) + if step % 10 == 0 and step: + ans = (output+0.5).int() + target = target.int() + accuracy = (ans == target).float().sum()/target.shape[0]/target.shape[1]/target.shape[2]/target.shape[3] + print('Train Epoch: {}/{} Loss:{:.6f} Accuracy:{:.6f}'.format(epoch, step, loss.item(), accuracy)) + if step % 1000 == 0 and step: + temp = test(model) + print("[acc, loss]=", temp) + # torch.save(model, './result/version2_newdata_param/epoch-{}_step-{}_acc-{:.6f}.pkl'.format(epoch, step, temp[0])) + torch.save(model.state_dict(), './result/version2_newdata_param/epoch-{}_step-{}_acc-{:.6f}.pkl'.format(epoch, step, temp[0])) + model.train() + + imgPath = "./data/train/storeImg/" + targetPath = "./data/train/storeTarget/" + dataset = imgFlooder(imgPath=imgPath, jsonPath=targetPath) + trainloader = DataLoader(dataset, batch_size=1, shuffle=True) + print("reload DataLoader len = ", len(trainloader)) + + +imgPath = "../data/maskGt/train/img/" +targetPath = "../data/maskGt/train/target/" + +imgPathTest = "../data/maskGt/test/img/" +targetPathTest = "../data/maskGt/test/target/" + +dataset = imgFlooder(imgPath=imgPath, jsonPath=targetPath) +trainloader = DataLoader(dataset, batch_size=1, shuffle=True) +print(len(trainloader)) + +testdataset = imgFlooder(imgPath=imgPathTest, jsonPath=targetPathTest) +testloader = DataLoader(testdataset, batch_size=1, shuffle=True) +print(len(testloader)) +model = UNet(3, 1).cuda() +# model = torch.load("./result/version2_newdata/step-30000_acc-0.995762.pkl").cuda() + + + +lossFunctionBCE = torch.nn.BCELoss() +# base_opt = torch.optim.Adam(model.parameters(), lr=0.001) +# opt_Adam = SWA(base_opt, swa_start=10, swa_freq=5, swa_lr=0.001) +# lossFunctionMSE = torch.nn.MSELoss() +opt_Adam = torch.optim.Adam(model.parameters(), lr=0.0001) +train(model, opt_Adam, 4, trainloader) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/__pycache__/darknet.cpython-36.pyc" "b/\346\225\264\347\220\206/yolo/my/__pycache__/darknet.cpython-36.pyc" new file mode 100644 index 0000000..d3ced85 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/__pycache__/darknet.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/yolo/my/__pycache__/detectionYolo.cpython-36.pyc" "b/\346\225\264\347\220\206/yolo/my/__pycache__/detectionYolo.cpython-36.pyc" new file mode 100644 index 0000000..263981a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/__pycache__/detectionYolo.cpython-36.pyc" differ diff --git "a/\346\225\264\347\220\206/yolo/my/darknet.py" "b/\346\225\264\347\220\206/yolo/my/darknet.py" new file mode 100644 index 0000000..ad526f9 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/darknet.py" @@ -0,0 +1,318 @@ +#!python3 +""" +Python 3 wrapper for identifying objects in images + +Requires DLL compilation + +Both the GPU and no-GPU version should be compiled; the no-GPU version should be renamed "yolo_cpp_dll_nogpu.dll". + +On a GPU system, you can force CPU evaluation by any of: + +- Set global variable DARKNET_FORCE_CPU to True +- Set environment variable CUDA_VISIBLE_DEVICES to -1 +- Set environment variable "FORCE_CPU" to "true" +- Set environment variable "DARKNET_PATH" to path darknet lib .so (for Linux) + +Directly viewing or returning bounding-boxed images requires scikit-image to be installed (`pip install scikit-image`) + +Original *nix 2.7: https://github.com/pjreddie/darknet/blob/0f110834f4e18b30d5f101bf8f1724c34b7b83db/python/darknet.py +Windows Python 2.7 version: https://github.com/AlexeyAB/darknet/blob/fc496d52bf22a0bb257300d3c79be9cd80e722cb/build/darknet/x64/darknet.py + +@author: Philip Kahn +@date: 20180503 +""" +from ctypes import * +import math +import random +import os + + +class BOX(Structure): + _fields_ = [("x", c_float), + ("y", c_float), + ("w", c_float), + ("h", c_float)] + + +class DETECTION(Structure): + _fields_ = [("bbox", BOX), + ("classes", c_int), + ("prob", POINTER(c_float)), + ("mask", POINTER(c_float)), + ("objectness", c_float), + ("sort_class", c_int), + ("uc", POINTER(c_float)), + ("points", c_int), + ("embeddings", POINTER(c_float)), + ("embedding_size", c_int), + ("sim", c_float), + ("track_id", c_int)] + +class DETNUMPAIR(Structure): + _fields_ = [("num", c_int), + ("dets", POINTER(DETECTION))] + + +class IMAGE(Structure): + _fields_ = [("w", c_int), + ("h", c_int), + ("c", c_int), + ("data", POINTER(c_float))] + + +class METADATA(Structure): + _fields_ = [("classes", c_int), + ("names", POINTER(c_char_p))] + + +def network_width(net): + return lib.network_width(net) + + +def network_height(net): + return lib.network_height(net) + + +def bbox2points(bbox): + """ + From bounding box yolo format + to corner points cv2 rectangle + """ + x, y, w, h = bbox + xmin = int(round(x - (w / 2))) + xmax = int(round(x + (w / 2))) + ymin = int(round(y - (h / 2))) + ymax = int(round(y + (h / 2))) + return xmin, ymin, xmax, ymax + + +def class_colors(names): + """ + Create a dict with one random BGR color for each + class name + """ + return {name: ( + random.randint(0, 255), + random.randint(0, 255), + random.randint(0, 255)) for name in names} + + +def load_network(config_file, data_file, weights, batch_size=1): + """ + load model description and weights from config files + args: + config_file (str): path to .cfg model file + data_file (str): path to .data model file + weights (str): path to weights + returns: + network: trained model + class_names + class_colors + """ + network = load_net_custom( + config_file.encode("ascii"), + weights.encode("ascii"), 0, batch_size) + metadata = load_meta(data_file.encode("ascii")) + class_names = [metadata.names[i].decode("ascii") for i in range(metadata.classes)] + colors = class_colors(class_names) + return network, class_names, colors + + +def print_detections(detections, coordinates=False): + print("\nObjects:") + for label, confidence, bbox in detections: + x, y, w, h = bbox + if coordinates: + print("{}: {}% (left_x: {:.0f} top_y: {:.0f} width: {:.0f} height: {:.0f})".format(label, confidence, x, y, w, h)) + else: + print("{}: {}%".format(label, confidence)) + + +def draw_boxes(detections, image, colors): + import cv2 + for label, confidence, bbox in detections: + left, top, right, bottom = bbox2points(bbox) + cv2.rectangle(image, (left, top), (right, bottom), colors[label], 1) + cv2.putText(image, "{} [{:.2f}]".format(label, float(confidence)), + (left, top - 5), cv2.FONT_HERSHEY_SIMPLEX, 0.5, + colors[label], 2) + return image + + +def decode_detection(detections): + decoded = [] + for label, confidence, bbox in detections: + confidence = str(round(confidence * 100, 2)) + decoded.append((str(label), confidence, bbox)) + return decoded + + +def remove_negatives(detections, class_names, num): + """ + Remove all classes with 0% confidence within the detection + """ + predictions = [] + for j in range(num): + for idx, name in enumerate(class_names): + if detections[j].prob[idx] > 0: + bbox = detections[j].bbox + bbox = (bbox.x, bbox.y, bbox.w, bbox.h) + predictions.append((name, detections[j].prob[idx], (bbox))) + return predictions + + +def detect_image(network, class_names, image, thresh=.5, hier_thresh=.5, nms=.45): + """ + Returns a list with highest confidence class and their bbox + """ + pnum = pointer(c_int(0)) + predict_image(network, image) + detections = get_network_boxes(network, image.w, image.h, + thresh, hier_thresh, None, 0, pnum, 0) + num = pnum[0] + if nms: + do_nms_sort(detections, num, len(class_names), nms) + predictions = remove_negatives(detections, class_names, num) + predictions = decode_detection(predictions) + free_detections(detections, num) + return sorted(predictions, key=lambda x: x[1]) + + +# lib = CDLL("/home/pjreddie/documents/darknet/libdarknet.so", RTLD_GLOBAL) +# lib = CDLL("libdarknet.so", RTLD_GLOBAL) +hasGPU = True +if os.name == "nt": + cwd = os.path.dirname(__file__) + os.environ['PATH'] = cwd + ';' + os.environ['PATH'] + winGPUdll = os.path.join(cwd, "yolo_cpp_dll.dll") + winNoGPUdll = os.path.join(cwd, "yolo_cpp_dll_nogpu.dll") + envKeys = list() + for k, v in os.environ.items(): + envKeys.append(k) + try: + try: + tmp = os.environ["FORCE_CPU"].lower() + if tmp in ["1", "true", "yes", "on"]: + raise ValueError("ForceCPU") + else: + print("Flag value {} not forcing CPU mode".format(tmp)) + except KeyError: + # We never set the flag + if 'CUDA_VISIBLE_DEVICES' in envKeys: + if int(os.environ['CUDA_VISIBLE_DEVICES']) < 0: + raise ValueError("ForceCPU") + try: + global DARKNET_FORCE_CPU + if DARKNET_FORCE_CPU: + raise ValueError("ForceCPU") + except NameError as cpu_error: + print(cpu_error) + if not os.path.exists(winGPUdll): + raise ValueError("NoDLL") + lib = CDLL(winGPUdll, RTLD_GLOBAL) + except (KeyError, ValueError): + hasGPU = False + if os.path.exists(winNoGPUdll): + lib = CDLL(winNoGPUdll, RTLD_GLOBAL) + print("Notice: CPU-only mode") + else: + # Try the other way, in case no_gpu was compile but not renamed + lib = CDLL(winGPUdll, RTLD_GLOBAL) + print("Environment variables indicated a CPU run, but we didn't find {}. Trying a GPU run anyway.".format(winNoGPUdll)) +else: + lib = CDLL(os.path.join( + os.environ.get('DARKNET_PATH', './'), + "libdarknet.so"), RTLD_GLOBAL) +lib.network_width.argtypes = [c_void_p] +lib.network_width.restype = c_int +lib.network_height.argtypes = [c_void_p] +lib.network_height.restype = c_int + +copy_image_from_bytes = lib.copy_image_from_bytes +copy_image_from_bytes.argtypes = [IMAGE,c_char_p] + +predict = lib.network_predict_ptr +predict.argtypes = [c_void_p, POINTER(c_float)] +predict.restype = POINTER(c_float) + +if hasGPU: + set_gpu = lib.cuda_set_device + set_gpu.argtypes = [c_int] + +init_cpu = lib.init_cpu + +make_image = lib.make_image +make_image.argtypes = [c_int, c_int, c_int] +make_image.restype = IMAGE + +get_network_boxes = lib.get_network_boxes +get_network_boxes.argtypes = [c_void_p, c_int, c_int, c_float, c_float, POINTER(c_int), c_int, POINTER(c_int), c_int] +get_network_boxes.restype = POINTER(DETECTION) + +make_network_boxes = lib.make_network_boxes +make_network_boxes.argtypes = [c_void_p] +make_network_boxes.restype = POINTER(DETECTION) + +free_detections = lib.free_detections +free_detections.argtypes = [POINTER(DETECTION), c_int] + +free_batch_detections = lib.free_batch_detections +free_batch_detections.argtypes = [POINTER(DETNUMPAIR), c_int] + +free_ptrs = lib.free_ptrs +free_ptrs.argtypes = [POINTER(c_void_p), c_int] + +network_predict = lib.network_predict_ptr +network_predict.argtypes = [c_void_p, POINTER(c_float)] + +reset_rnn = lib.reset_rnn +reset_rnn.argtypes = [c_void_p] + +load_net = lib.load_network +load_net.argtypes = [c_char_p, c_char_p, c_int] +load_net.restype = c_void_p + +load_net_custom = lib.load_network_custom +load_net_custom.argtypes = [c_char_p, c_char_p, c_int, c_int] +load_net_custom.restype = c_void_p + +free_network_ptr = lib.free_network_ptr +free_network_ptr.argtypes = [c_void_p] +free_network_ptr.restype = c_void_p + +do_nms_obj = lib.do_nms_obj +do_nms_obj.argtypes = [POINTER(DETECTION), c_int, c_int, c_float] + +do_nms_sort = lib.do_nms_sort +do_nms_sort.argtypes = [POINTER(DETECTION), c_int, c_int, c_float] + +free_image = lib.free_image +free_image.argtypes = [IMAGE] + +letterbox_image = lib.letterbox_image +letterbox_image.argtypes = [IMAGE, c_int, c_int] +letterbox_image.restype = IMAGE + +load_meta = lib.get_metadata +lib.get_metadata.argtypes = [c_char_p] +lib.get_metadata.restype = METADATA + +load_image = lib.load_image_color +load_image.argtypes = [c_char_p, c_int, c_int] +load_image.restype = IMAGE + +rgbgr_image = lib.rgbgr_image +rgbgr_image.argtypes = [IMAGE] + +predict_image = lib.network_predict_image +predict_image.argtypes = [c_void_p, IMAGE] +predict_image.restype = POINTER(c_float) + +predict_image_letterbox = lib.network_predict_image_letterbox +predict_image_letterbox.argtypes = [c_void_p, IMAGE] +predict_image_letterbox.restype = POINTER(c_float) + +network_predict_batch = lib.network_predict_batch +network_predict_batch.argtypes = [c_void_p, IMAGE, c_int, c_int, c_int, + c_float, c_float, POINTER(c_int), c_int, c_int] +network_predict_batch.restype = POINTER(DETNUMPAIR) diff --git "a/\346\225\264\347\220\206/yolo/my/darknet_images.py" "b/\346\225\264\347\220\206/yolo/my/darknet_images.py" new file mode 100644 index 0000000..5536d61 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/darknet_images.py" @@ -0,0 +1,220 @@ +import argparse +import os +import glob +import random +import darknet +import time +import cv2 +import numpy as np +import darknet + + +def parser(): + parser = argparse.ArgumentParser(description="YOLO Object Detection") + parser.add_argument("--input", type=str, default="../../data/yoloGtold1/train/1.png", + help="image source. It can be a single image, a" + "txt with paths to them, or a folder. Image valid" + " formats are jpg, jpeg or png." + "If no input is given, ") + parser.add_argument("--batch_size", default=1, type=int, + help="number of images to be processed at the same time") + parser.add_argument("--weights", default="./weights/yolov3_3000.weights", + help="yolo weights path") + parser.add_argument("--dont_show", action='store_true', + help="windown inference display. For headless systems") + parser.add_argument("--ext_output", action='store_true', + help="display bbox coordinates of detected objects") + parser.add_argument("--save_labels", action='store_true', + help="save detections bbox for each image in yolo format") + parser.add_argument("--config_file", default="./yolov3.cfg", + help="path to config file") + parser.add_argument("--data_file", default="./obj.data", + help="path to data file") + parser.add_argument("--thresh", type=float, default=.25, + help="remove detections with lower confidence") + return parser.parse_args() + + +def check_arguments_errors(args): + assert 0 < args.thresh < 1, "Threshold should be a float between zero and one (non-inclusive)" + if not os.path.exists(args.config_file): + raise(ValueError("Invalid config path {}".format(os.path.abspath(args.config_file)))) + if not os.path.exists(args.weights): + raise(ValueError("Invalid weight path {}".format(os.path.abspath(args.weights)))) + if not os.path.exists(args.data_file): + raise(ValueError("Invalid data file path {}".format(os.path.abspath(args.data_file)))) + if args.input and not os.path.exists(args.input): + raise(ValueError("Invalid image path {}".format(os.path.abspath(args.input)))) + + +def check_batch_shape(images, batch_size): + """ + Image sizes should be the same width and height + """ + shapes = [image.shape for image in images] + if len(set(shapes)) > 1: + raise ValueError("Images don't have same shape") + if len(shapes) > batch_size: + raise ValueError("Batch size higher than number of images") + return shapes[0] + + +def load_images(images_path): + """ + If image path is given, return it directly + For txt file, read it and return each line as image path + In other case, it's a folder, return a list with names of each + jpg, jpeg and png file + """ + input_path_extension = images_path.split('.')[-1] + if input_path_extension in ['jpg', 'jpeg', 'png']: + return [images_path] + elif input_path_extension == "txt": + with open(images_path, "r") as f: + return f.read().splitlines() + else: + return glob.glob( + os.path.join(images_path, "*.jpg")) + \ + glob.glob(os.path.join(images_path, "*.png")) + \ + glob.glob(os.path.join(images_path, "*.jpeg")) + + +def prepare_batch(images, network, channels=3): + width = darknet.network_width(network) + height = darknet.network_height(network) + + darknet_images = [] + for image in images: + image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + image_resized = cv2.resize(image_rgb, (width, height), + interpolation=cv2.INTER_LINEAR) + custom_image = image_resized.transpose(2, 0, 1) + darknet_images.append(custom_image) + + batch_array = np.concatenate(darknet_images, axis=0) + batch_array = np.ascontiguousarray(batch_array.flat, dtype=np.float32)/255.0 + darknet_images = batch_array.ctypes.data_as(darknet.POINTER(darknet.c_float)) + return darknet.IMAGE(width, height, channels, darknet_images) + + +def image_detection(image_path, network, class_names, class_colors, thresh): + # Darknet doesn't accept numpy images. + # Create one with image we reuse for each detect + width = darknet.network_width(network) + height = darknet.network_height(network) + darknet_image = darknet.make_image(width, height, 3) + + image = cv2.imread(image_path) + image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + image_resized = cv2.resize(image_rgb, (width, height), + interpolation=cv2.INTER_LINEAR) + + darknet.copy_image_from_bytes(darknet_image, image_resized.tobytes()) + detections = darknet.detect_image(network, class_names, darknet_image, thresh=thresh) + image = darknet.draw_boxes(detections, image_resized, class_colors) + return cv2.cvtColor(image, cv2.COLOR_BGR2RGB), detections + + +def batch_detection(network, images, class_names, class_colors, + thresh=0.25, hier_thresh=.5, nms=.45, batch_size=4): + image_height, image_width, _ = check_batch_shape(images, batch_size) + darknet_images = prepare_batch(images, network) + batch_detections = darknet.network_predict_batch(network, darknet_images, batch_size, image_width, + image_height, thresh, hier_thresh, None, 0, 0) + batch_predictions = [] + for idx in range(batch_size): + num = batch_detections[idx].num + detections = batch_detections[idx].dets + if nms: + darknet.do_nms_obj(detections, num, len(class_names), nms) + predictions = darknet.remove_negatives(detections, class_names, num) + images[idx] = darknet.draw_boxes(predictions, images[idx], class_colors) + batch_predictions.append(predictions) + darknet.free_batch_detections(batch_detections, batch_size) + return images, batch_predictions + + +def convert2relative(image, bbox): + """ + YOLO format use relative coordinates for annotation + """ + x, y, w, h = bbox + width, height, _ = image.shape + return x/width, y/height, w/width, h/height + + +def save_annotations(name, image, detections, class_names): + """ + Files saved with image_name.txt and relative coordinates + """ + file_name = name.split(".")[:-1][0] + ".txt" + with open(file_name, "w") as f: + for label, confidence, bbox in detections: + x, y, w, h = convert2relative(image, bbox) + label = class_names.index(label) + f.write("{} {:.4f} {:.4f} {:.4f} {:.4f} {:.4f}\n".format(label, x, y, w, h, float(confidence))) + + +def batch_detection_example(): + args = parser() + check_arguments_errors(args) + batch_size = 3 + random.seed(3) # deterministic bbox colors + network, class_names, class_colors = darknet.load_network( + args.config_file, + args.data_file, + args.weights, + batch_size=batch_size + ) + image_names = ['data/horses.jpg', 'data/horses.jpg', 'data/eagle.jpg'] + images = [cv2.imread(image) for image in image_names] + images, detections, = batch_detection(network, images, class_names, + class_colors, batch_size=batch_size) + for name, image in zip(image_names, images): + cv2.imwrite(name.replace("data/", ""), image) + print(detections) + + +def main(): + args = parser() + check_arguments_errors(args) + + random.seed(3) # deterministic bbox colors + network, class_names, class_colors = darknet.load_network( + args.config_file, + args.data_file, + args.weights, + batch_size=args.batch_size + ) + + images = load_images(args.input) + + index = 0 + while True: + # loop asking for new image paths if no list is given + if args.input: + if index >= len(images): + break + image_name = images[index] + else: + image_name = input("Enter Image Path: ") + prev_time = time.time() + image, detections = image_detection( + image_name, network, class_names, class_colors, args.thresh + ) + if args.save_labels: + save_annotations(image_name, image, detections, class_names) + darknet.print_detections(detections, args.ext_output) + fps = int(1/(time.time() - prev_time)) + print("FPS: {}".format(fps)) + if not args.dont_show: + cv2.imshow('Inference', image) + if cv2.waitKey() & 0xFF == ord('q'): + break + index += 1 + + +if __name__ == "__main__": + # unconmment next line for an example of batch processing + # batch_detection_example() + main() diff --git "a/\346\225\264\347\220\206/yolo/my/detectionYolo.py" "b/\346\225\264\347\220\206/yolo/my/detectionYolo.py" new file mode 100644 index 0000000..ced6bb5 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/detectionYolo.py" @@ -0,0 +1,209 @@ +import argparse +import os +import glob +import random +import time +import cv2 +import numpy as np +from . import darknet +# import darknet + +class YoloPredict(object): + """docstring for YoloPredict""" + def __init__(self, batch_size=1, weights="./weights/20210121yolov4/yolov4_3000.weights", config_file="./yolov4.cfg", data_file="./obj.data", thresh=0.25): + super(YoloPredict, self).__init__() + self.input = input + self.batch_size = batch_size + self.weights = weights + self.config_file = config_file + self.data_file = data_file + self.thresh = thresh + self.check_arguments_errors() + self.network, self.class_names, self.class_colors = darknet.load_network( + self.config_file, + self.data_file, + self.weights, + batch_size=self.batch_size + ) + def check_arguments_errors(self): + assert 0 < self.thresh < 1, "Threshold should be a float between zero and one (non-inclusive)" + if not os.path.exists(self.config_file): + raise(ValueError("Invalid config path {}".format(os.path.abspath(self.config_file)))) + if not os.path.exists(self.weights): + raise(ValueError("Invalid weight path {}".format(os.path.abspath(self.weights)))) + if not os.path.exists(self.data_file): + raise(ValueError("Invalid data file path {}".format(os.path.abspath(self.data_file)))) + def load_images(self, images_path): + """ + If image path is given, return it directly + For txt file, read it and return each line as image path + In other case, it's a folder, return a list with names of each + jpg, jpeg and png file + """ + input_path_extension = images_path.split('.')[-1] + if input_path_extension in ['jpg', 'jpeg', 'png']: + return [images_path] + elif input_path_extension == "txt": + with open(images_path, "r") as f: + return f.read().splitlines() + else: + return glob.glob( + os.path.join(images_path, "*.jpg")) + \ + glob.glob(os.path.join(images_path, "*.png")) + \ + glob.glob(os.path.join(images_path, "*.jpeg")) + def image_detection_cut(self, image_path): + # Darknet doesn't accept numpy images. + # Create one with image we reuse for each detect + width = darknet.network_width(self.network) + height = darknet.network_height(self.network) + darknet_image = darknet.make_image(width, height, 3) + + image = cv2.imread(image_path) + image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + images_rgb = self.cutImage(image_rgb, sliceSize=width) + + detections = [] + for i, image_rgb in enumerate(images_rgb): + image_resized = cv2.resize(image_rgb[0], (width, height), + interpolation=cv2.INTER_LINEAR) + darknet.copy_image_from_bytes(darknet_image, image_resized.tobytes()) + detectionsT = darknet.detect_image(self.network, self.class_names, darknet_image, thresh=self.thresh) + detectionsT = [(detection[0], float(detection[1]), (detection[2][0], detection[2][1], detection[2][2], detection[2][3])) for detection in detectionsT] + # imageT = self.draw_boxes(detectionsT, image_resized, (255, 0, 0)) + # cv2.imwrite(str(i)+'output.jpg', image_resized) + + detectionsT = [(detection[0], detection[1], (detection[2][0]+image_rgb[2], detection[2][1]+image_rgb[1], detection[2][2], detection[2][3])) for detection in detectionsT] + detections+=detectionsT + detections = self.NMS(detections) + image = self.draw_boxes(detections, image, (255, 0, 0)) + return cv2.cvtColor(image, cv2.COLOR_BGR2RGB), detections + def image_detection(self, image_path): + width = darknet.network_width(self.network) + height = darknet.network_height(self.network) + darknet_image = darknet.make_image(width, height, 3) + + image = cv2.imread(image_path) + image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + + image_resized = cv2.resize(image_rgb, (width, height), + interpolation=cv2.INTER_LINEAR) + darknet.copy_image_from_bytes(darknet_image, image_resized.tobytes()) + detections = darknet.detect_image(self.network, self.class_names, darknet_image, thresh=self.thresh) + + ori_image_height, ori_image_width, _ = image.shape + scale_height, scale_width = ori_image_height/height, ori_image_width/width + detections = [(detection[0], detection[1] + , (detection[2][0]*scale_width, detection[2][1]*scale_height + , detection[2][2]*scale_width, detection[2][3]*scale_height)) for detection in detections] + image = self.draw_boxes(detections, image, (255, 0, 0)) + return cv2.cvtColor(image, cv2.COLOR_BGR2RGB), detections + def image_detection_cutresize(self, image_path, size=608): + # Darknet doesn't accept numpy images. + # Create one with image we reuse for each detect + width = darknet.network_width(self.network) + height = darknet.network_height(self.network) + darknet_image = darknet.make_image(width, height, 3) + + image = cv2.imread(image_path) + image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) + image_resized = self.img_resize(image_rgb, size) + # cv2.imwrite('output_resize.jpg', image_resized) + images_rgb = self.cutImage(image_resized, sliceSize=width) + + detections = [] + for i, image_rgb in enumerate(images_rgb): + darknet.copy_image_from_bytes(darknet_image, image_rgb[0].tobytes()) + detectionsT = darknet.detect_image(self.network, self.class_names, darknet_image, thresh=self.thresh) + detectionsT = [(detection[0], float(detection[1]), (detection[2][0], detection[2][1], detection[2][2], detection[2][3])) for detection in detectionsT] + # imageT = self.draw_boxes(detectionsT, image_rgb[0], (255, 0, 0)) + # cv2.imwrite(str(i)+'output.jpg', imageT) + + detectionsT = [(detection[0], detection[1], (detection[2][0]+image_rgb[2], detection[2][1]+image_rgb[1], detection[2][2], detection[2][3])) for detection in detectionsT] + detections += detectionsT + + ori_image_height, ori_image_width, _ = image.shape + resize_height, resize_width, _ = image_resized.shape + scale_height, scale_width = ori_image_height/resize_height, ori_image_width/resize_width + detections = [(detection[0], detection[1] + ,(detection[2][0]*scale_width, detection[2][1]*scale_height + , detection[2][2]*scale_width, detection[2][3]*scale_height)) for detection in detections] + detections = self.NMS(detections) + image = self.draw_boxes(detections, image, (255, 0, 0)) + return cv2.cvtColor(image, cv2.COLOR_BGR2RGB), detections + def cutImage(self, image, sliceSize=800): + h, w, c = image.shape + + imgs = [] + for i in range(h//sliceSize*2+1): + for j in range(w//sliceSize*2+1): + img = np.zeros((sliceSize, sliceSize, 3), dtype=np.uint8) + img[:] = 255 + temp = image[sliceSize//2*i: sliceSize//2*(i+2) if sliceSize//2*(i+2) height: + img_new = cv2.resize(image, (size, int(size*scale))) + else: + img_new = cv2.resize(image, (int(size*scale), size)) + return img_new + def NMS(self, dets, thresh=0.45): + x1, y1, x2, y2, scores = [], [], [], [], [] + for i in dets: + cw, ch, w, h = i[2] + x1.append(cw-w//2) + y1.append(ch-h//2) + x2.append(cw+w//2) + y2.append(ch+h//2) + scores.append(i[1]) + x1, y1, x2, y2, scores = np.array(x1), np.array(y1), np.array(x2), np.array(y2), np.array(scores) + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + + #打分从大到小排列,取index + order = scores.argsort()[::-1] + #keep为最后保留的边框 + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + return [dets[i] for i in keep] + +if __name__ == "__main__": + filename ="../../../groundtruth/image/FPK_02.jpg" + yolov4 = YoloPredict(weights="./weights/20210122yolov4/yolov4_final.weights") + + # img, detect = yolov4.image_detection_cutresize(filename) + # img, detect = yolov4.image_detection_cut(filename) + img, detect = yolov4.image_detection_cutresize(filename, size=1208) + # print(detect) + cv2.imwrite('output.jpg', img) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/detectionYolo_.py" "b/\346\225\264\347\220\206/yolo/my/detectionYolo_.py" new file mode 100644 index 0000000..a82af91 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/detectionYolo_.py" @@ -0,0 +1,222 @@ +import sys, os, tempfile +from PIL import Image, ImageFont, ImageDraw +#Consider activate CPU detection if out of VRAM. +#os.environ['FORCE_CPU'] = 'true' +# from darknet import performDetect +import darknet + +#Methods that tries to make the console cleaner. +def blockPrint(): + sys.stdout = open(os.devnull, 'w') + +def enablePrint(): + sys.stdout = sys.__stdout__ + + +def detectText(image, cfg='./yolov4.cfg', weight='./weights/20210118/yolov4_1000.weights', metadata='./obj.data', windowSizeW=608, windowSizeH=608, strideR=360, strideD=360, produceImage=False, SaveImage=False, DoOCR=True, delUntrustable=True, delRedundant=True, delOverlay=True, confThresh=0.25, consolePrint=False): + ''' + argument: + image {Image|str}: PIL的Image或同等的RGB圖片,也可以傳遞檔案路徑。 + cfg {str}: 模型的cfg設定檔路徑。 + weight {str}: 模型的權重路徑。 + metadata {str}: 模型的附加資料。 + windowSizeW {int}: 滑動窗格的窗格寬度。 + default : 608 + windowSizeH {int}: 滑動窗格的窗格高度。 + default : 608 + strideR {int}: 窗格每次向右偏移的像素量。 + default : 360 + strideD {int}: 窗格每次向下偏移的像素量。 + default : 360 + produceImage {bool}: 決定是否為框選結果或OCR結果繪製圖片。 + default : False + SaveImage {bool}: 決定是否儲存繪製的圖片。當啟用時,必須也啟用produceImage。 + default : False + DoOCR {bool}: 決定是否對框選結果做OCR。 + default : True + delUntrustable {bool}: 框選框有超出滑動窗格的範圍時予以刪除。 + default : True + delRedundant {bool} : 窗格由左至右、由上至下滑動。如果框選框的左上角的點位於被後續滑動窗格覆蓋到的區域,則刪除。 + default : True + delOverlay {bool} : 如果框選框重疊,擇信心分數較低的刪除。 + default : True + confThresh {int}: 設定信心分數的閥值。 + default : 0.25 + consolePrint {bool}: 是否印出偵測信息。 + default : False + return: + { + 'info' : [偵測到了幾個框, 淘汰過後剩幾個框, 有多少個框有被OCR偵測到文字], + 'confidence' : [a, b, c, .....], + 'boxes' : [[左上角的x, 左上角的y, 右下角的x, 右下角的y], [], [], .......], + 'strings' : [texta, textb, textc, .....], #如果DoOCR=False就不會有 + 'PIL_RGB_BOX' : imgBox, #如果produceImage=False就不會有 + 'PIL_RGB_OCR' : imgOCR #如果produceImage=False或DoOCR=False就不會有 + } + ''' + #File input. + if isinstance(image, str): + img = Image.open(image).convert(mode = 'RGB') + + filenameBox = os.path.basename(image).split('.')[0] + '_BOX.png' + filenameOCR = os.path.basename(image).split('.')[0] + '_OCR.png' + else: + img = image.copy().convert(mode = 'RGB') + filenameBox = 'result_BOX.png' + filenameOCR = 'result_OCR.png' + + if SaveImage: + produceImage = True + + #Initial value for every cycle. + scale = 1 + scaled = False + wordsDetected = 0 + wordsSelected = 0 + boxes = [] + confidence = [] + + #Resize if any side of img smaller than windowSize. + if img.width < windowSizeW or img.height < windowSizeH: + scaleW, scaleH = windowSizeW / img.width, windowSizeH / img.height + scale = scaleW if scaleW > scaleH else scaleH + scaled = True + original_img = img.copy() + img = img.resize((round(img.width * scale), round(img.height * scale))) + + #Determine the position of every sliding window. + lastStrideW = img.width - windowSizeW + lastStrideH = img.height - windowSizeH + + stepsRow = [x for x in range(0, img.height - windowSizeH, strideD)] + stepsRow.append(lastStrideH) + stepsRow.append(img.height) + stepsColumn = [x for x in range(0, img.width - windowSizeW, strideR)] + stepsColumn.append(lastStrideW) + stepsColumn.append(img.width) + + #Sliding window. + #blockPrint() + for row, y in enumerate(stepsRow): + if y == stepsRow[-1]: + break + for column, x in enumerate(stepsColumn): + if x == stepsColumn[-1]: + break + trash = [] + tmp = img.crop((x, y, x + windowSizeW, y + windowSizeH)) + tmp.save(tempfile.gettempdir() + '\\tmp.png') + result = performDetect(imagePath = tempfile.gettempdir() + '\\tmp.png', + thresh = confThresh, + configPath = cfg, + weightPath = weight, + metaPath = metadata, + showImage = False, + makeImageOnly = True) + #print(result) + box = [list(x[2]) for x in result] + + conf = [x[1] for x in result] + wordsDetected += len(box) + for ind in range(len(box)): + box[ind][0] = box[ind][0] + x - box[ind][2] / 2 + box[ind][1] = box[ind][1] + y - box[ind][3] / 2 + box[ind][2] = box[ind][0] + box[ind][2] + box[ind][3] = box[ind][1] + box[ind][3] + #1 + if delUntrustable and\ + (box[ind][0] < x or\ + box[ind][1] < y or\ + box[ind][2] > x + windowSizeW or\ + box[ind][3] > y + windowSizeH): + trash.append(ind) + continue + #2 + if delRedundant and\ + (box[ind][0] >= stepsColumn[column + 1] or\ + box[ind][1] >= stepsRow[row + 1]): + trash.append(ind) + continue + box[ind] = [int(x / scale) for x in box[ind]] + for ind in range(len(trash)-1, -1, -1): + del box[trash[ind]], conf[trash[ind]] + boxes += box + confidence += conf + wordsSelected += len(box) + #enablePrint() + #3 + if delOverlay: + trash.clear() + for ind1, box1 in enumerate(boxes[:-1]): + for ind2, box2 in enumerate(boxes[ind1 + 1:], start = ind1 + 1): + if (box1[2] > box2[0]) and\ + (box2[2] > box1[0]) and\ + (box1[3] > box2[1]) and\ + (box2[3] > box1[1]): + ind = ind1 if confidence[ind1] < confidence[ind2] else ind2 + if ind not in trash: + trash.append(ind) + trash.sort() + for ind in range(len(trash)-1, -1, -1): + del boxes[trash[ind]], confidence[trash[ind]] + wordsSelected -= len(trash) + + info = [wordsDetected, wordsSelected] + + if consolePrint: + print(wordsDetected, 'strings Detected.') + print(wordsSelected, 'strings Selected.') + + if scaled: + img = original_img + + #Open new file and draw result. + if produceImage and DoOCR: + resultImg = Image.new('RGB', img.size, (255, 255, 255)) + draw = ImageDraw.Draw(resultImg) + font = ImageFont.truetype('./font/calibri.ttf', 20) + #os.environ['path'] = r'tessreact.exe path' + os.environ['path'] + OCRNumber = 0 + strings = [] + if DoOCR: + for rect in boxes: + tmp = img.crop(tuple(rect)).convert(mode = 'L') + text = pytesseract.image_to_string(tmp, lang = 'eng') + strings.append(text) + if produceImage: + draw.text((rect[0], rect[1]), text, align='center', font = font, fill = (0, 0, 0, 255)) + OCRNumber += 1 if len(text) > 0 else 0 + if consolePrint: + print(OCRNumber, "strings identified.") + info.append(OCRNumber) + if produceImage: + draw = ImageDraw.Draw(img) + for rect in boxes: + draw.rectangle(tuple(rect), fill = None, outline = (0, 0, 0), width = 2) + if SaveImage: + resultImg.save(filenameOCR) + if consolePrint: + print(filenameOCR, 'saved.') + img.save(filenameBox) + if consolePrint: + print(filenameBox, 'saved.') + + returnDict = {'info' : info, 'confidence' : confidence, 'boxes' : boxes, 'strings' : strings} + if produceImage: + returnDict['PIL_RGB_BOX'] = img + if DoOCR: + returnDict['PIL_RGB_OCR'] = resultImg + return returnDict + +if __name__ == "__main__": + #while True: + #filename = input('>>> ').replace('\"', '') + filename =b"../../data/yoloGtold1/train/1.png" + # print(filename) + # result = detectText(image=filename, produceImage=True, SaveImage=False, consolePrint=False, DoOCR=False) + # print(result) + # result['PIL_RGB_BOX'].save("result2.jpg") + net = darknet.load_net(b'./yolov4.cfg', b'./weights/20210118/yolov4_1000.weights', 0) + meta = darknet.load_meta(b'./obj.data') + r = darknet.detect(net, meta, filename) + print(r) \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/needPretrainModeldarknet53conv.txt" "b/\346\225\264\347\220\206/yolo/my/needPretrainModeldarknet53conv.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/yolo/my/obj.data" "b/\346\225\264\347\220\206/yolo/my/obj.data" new file mode 100644 index 0000000..4f9750e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/obj.data" @@ -0,0 +1,5 @@ +classes= 1 +train = ../my/train.txt +valid = ../my/test.txt +names = ./obj.names +backup = ../my/weights/ \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/obj.names" "b/\346\225\264\347\220\206/yolo/my/obj.names" new file mode 100644 index 0000000..387155e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/obj.names" @@ -0,0 +1 @@ +word \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/output.jpg" "b/\346\225\264\347\220\206/yolo/my/output.jpg" new file mode 100644 index 0000000..07eac6a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/output.jpg" differ diff --git "a/\346\225\264\347\220\206/yolo/my/outputnms.jpg" "b/\346\225\264\347\220\206/yolo/my/outputnms.jpg" new file mode 100644 index 0000000..1f47f5d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/outputnms.jpg" differ diff --git "a/\346\225\264\347\220\206/yolo/my/pthreadGC2.dll" "b/\346\225\264\347\220\206/yolo/my/pthreadGC2.dll" new file mode 100644 index 0000000..841d4a2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/pthreadGC2.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/my/pthreadVC2.dll" "b/\346\225\264\347\220\206/yolo/my/pthreadVC2.dll" new file mode 100644 index 0000000..165b4d2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/pthreadVC2.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/my/test.txt" "b/\346\225\264\347\220\206/yolo/my/test.txt" new file mode 100644 index 0000000..bcddaba --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/test.txt" @@ -0,0 +1,1001 @@ +../../data/yoloGtold1/test/100000.png +../../data/yoloGtold1/test/100001.png +../../data/yoloGtold1/test/100002.png +../../data/yoloGtold1/test/100003.png +../../data/yoloGtold1/test/100004.png +../../data/yoloGtold1/test/100005.png +../../data/yoloGtold1/test/100006.png +../../data/yoloGtold1/test/100007.png +../../data/yoloGtold1/test/100008.png +../../data/yoloGtold1/test/100009.png +../../data/yoloGtold1/test/100010.png +../../data/yoloGtold1/test/100011.png +../../data/yoloGtold1/test/100012.png +../../data/yoloGtold1/test/100013.png +../../data/yoloGtold1/test/100014.png +../../data/yoloGtold1/test/100015.png +../../data/yoloGtold1/test/100016.png +../../data/yoloGtold1/test/100017.png +../../data/yoloGtold1/test/100018.png +../../data/yoloGtold1/test/100019.png +../../data/yoloGtold1/test/100020.png +../../data/yoloGtold1/test/100021.png +../../data/yoloGtold1/test/100022.png +../../data/yoloGtold1/test/100023.png +../../data/yoloGtold1/test/100024.png +../../data/yoloGtold1/test/100025.png +../../data/yoloGtold1/test/100026.png +../../data/yoloGtold1/test/100027.png +../../data/yoloGtold1/test/100028.png +../../data/yoloGtold1/test/100029.png +../../data/yoloGtold1/test/100030.png +../../data/yoloGtold1/test/100031.png +../../data/yoloGtold1/test/100032.png +../../data/yoloGtold1/test/100033.png +../../data/yoloGtold1/test/100034.png +../../data/yoloGtold1/test/100035.png +../../data/yoloGtold1/test/100036.png +../../data/yoloGtold1/test/100037.png +../../data/yoloGtold1/test/100038.png +../../data/yoloGtold1/test/100039.png +../../data/yoloGtold1/test/100040.png +../../data/yoloGtold1/test/100041.png +../../data/yoloGtold1/test/100042.png +../../data/yoloGtold1/test/100043.png +../../data/yoloGtold1/test/100044.png +../../data/yoloGtold1/test/100045.png +../../data/yoloGtold1/test/100046.png +../../data/yoloGtold1/test/100047.png +../../data/yoloGtold1/test/100048.png +../../data/yoloGtold1/test/100049.png +../../data/yoloGtold1/test/100050.png +../../data/yoloGtold1/test/100051.png +../../data/yoloGtold1/test/100052.png +../../data/yoloGtold1/test/100053.png +../../data/yoloGtold1/test/100054.png +../../data/yoloGtold1/test/100055.png +../../data/yoloGtold1/test/100056.png +../../data/yoloGtold1/test/100057.png +../../data/yoloGtold1/test/100058.png +../../data/yoloGtold1/test/100059.png +../../data/yoloGtold1/test/100060.png +../../data/yoloGtold1/test/100061.png +../../data/yoloGtold1/test/100062.png +../../data/yoloGtold1/test/100063.png +../../data/yoloGtold1/test/100064.png +../../data/yoloGtold1/test/100065.png +../../data/yoloGtold1/test/100066.png +../../data/yoloGtold1/test/100067.png +../../data/yoloGtold1/test/100068.png +../../data/yoloGtold1/test/100069.png +../../data/yoloGtold1/test/100070.png +../../data/yoloGtold1/test/100071.png +../../data/yoloGtold1/test/100072.png +../../data/yoloGtold1/test/100073.png +../../data/yoloGtold1/test/100074.png +../../data/yoloGtold1/test/100075.png +../../data/yoloGtold1/test/100076.png +../../data/yoloGtold1/test/100077.png +../../data/yoloGtold1/test/100078.png +../../data/yoloGtold1/test/100079.png +../../data/yoloGtold1/test/100080.png +../../data/yoloGtold1/test/100081.png +../../data/yoloGtold1/test/100082.png +../../data/yoloGtold1/test/100083.png +../../data/yoloGtold1/test/100084.png +../../data/yoloGtold1/test/100085.png +../../data/yoloGtold1/test/100086.png +../../data/yoloGtold1/test/100087.png +../../data/yoloGtold1/test/100088.png +../../data/yoloGtold1/test/100089.png +../../data/yoloGtold1/test/100090.png +../../data/yoloGtold1/test/100091.png +../../data/yoloGtold1/test/100092.png +../../data/yoloGtold1/test/100093.png +../../data/yoloGtold1/test/100094.png +../../data/yoloGtold1/test/100095.png +../../data/yoloGtold1/test/100096.png +../../data/yoloGtold1/test/100097.png +../../data/yoloGtold1/test/100098.png +../../data/yoloGtold1/test/100099.png +../../data/yoloGtold1/test/100100.png +../../data/yoloGtold1/test/100101.png +../../data/yoloGtold1/test/100102.png +../../data/yoloGtold1/test/100103.png +../../data/yoloGtold1/test/100104.png +../../data/yoloGtold1/test/100105.png +../../data/yoloGtold1/test/100106.png +../../data/yoloGtold1/test/100107.png +../../data/yoloGtold1/test/100108.png +../../data/yoloGtold1/test/100109.png +../../data/yoloGtold1/test/100110.png +../../data/yoloGtold1/test/100111.png +../../data/yoloGtold1/test/100112.png +../../data/yoloGtold1/test/100113.png +../../data/yoloGtold1/test/100114.png +../../data/yoloGtold1/test/100115.png +../../data/yoloGtold1/test/100116.png +../../data/yoloGtold1/test/100117.png +../../data/yoloGtold1/test/100118.png +../../data/yoloGtold1/test/100119.png +../../data/yoloGtold1/test/100120.png +../../data/yoloGtold1/test/100121.png +../../data/yoloGtold1/test/100122.png +../../data/yoloGtold1/test/100123.png +../../data/yoloGtold1/test/100124.png +../../data/yoloGtold1/test/100125.png +../../data/yoloGtold1/test/100126.png +../../data/yoloGtold1/test/100127.png +../../data/yoloGtold1/test/100128.png +../../data/yoloGtold1/test/100129.png +../../data/yoloGtold1/test/100130.png +../../data/yoloGtold1/test/100131.png +../../data/yoloGtold1/test/100132.png +../../data/yoloGtold1/test/100133.png +../../data/yoloGtold1/test/100134.png +../../data/yoloGtold1/test/100135.png +../../data/yoloGtold1/test/100136.png +../../data/yoloGtold1/test/100137.png +../../data/yoloGtold1/test/100138.png +../../data/yoloGtold1/test/100139.png +../../data/yoloGtold1/test/100140.png +../../data/yoloGtold1/test/100141.png +../../data/yoloGtold1/test/100142.png +../../data/yoloGtold1/test/100143.png +../../data/yoloGtold1/test/100144.png +../../data/yoloGtold1/test/100145.png +../../data/yoloGtold1/test/100146.png +../../data/yoloGtold1/test/100147.png +../../data/yoloGtold1/test/100148.png +../../data/yoloGtold1/test/100149.png +../../data/yoloGtold1/test/100150.png +../../data/yoloGtold1/test/100151.png +../../data/yoloGtold1/test/100152.png +../../data/yoloGtold1/test/100153.png +../../data/yoloGtold1/test/100154.png +../../data/yoloGtold1/test/100155.png +../../data/yoloGtold1/test/100156.png +../../data/yoloGtold1/test/100157.png +../../data/yoloGtold1/test/100158.png +../../data/yoloGtold1/test/100159.png +../../data/yoloGtold1/test/100160.png +../../data/yoloGtold1/test/100161.png +../../data/yoloGtold1/test/100162.png +../../data/yoloGtold1/test/100163.png +../../data/yoloGtold1/test/100164.png +../../data/yoloGtold1/test/100165.png +../../data/yoloGtold1/test/100166.png +../../data/yoloGtold1/test/100167.png +../../data/yoloGtold1/test/100168.png +../../data/yoloGtold1/test/100169.png +../../data/yoloGtold1/test/100170.png +../../data/yoloGtold1/test/100171.png +../../data/yoloGtold1/test/100172.png +../../data/yoloGtold1/test/100173.png +../../data/yoloGtold1/test/100174.png +../../data/yoloGtold1/test/100175.png +../../data/yoloGtold1/test/100176.png +../../data/yoloGtold1/test/100177.png +../../data/yoloGtold1/test/100178.png +../../data/yoloGtold1/test/100179.png +../../data/yoloGtold1/test/100180.png +../../data/yoloGtold1/test/100181.png +../../data/yoloGtold1/test/100182.png +../../data/yoloGtold1/test/100183.png +../../data/yoloGtold1/test/100184.png +../../data/yoloGtold1/test/100185.png +../../data/yoloGtold1/test/100186.png +../../data/yoloGtold1/test/100187.png +../../data/yoloGtold1/test/100188.png +../../data/yoloGtold1/test/100189.png +../../data/yoloGtold1/test/100190.png +../../data/yoloGtold1/test/100191.png +../../data/yoloGtold1/test/100192.png +../../data/yoloGtold1/test/100193.png +../../data/yoloGtold1/test/100194.png +../../data/yoloGtold1/test/100195.png +../../data/yoloGtold1/test/100196.png +../../data/yoloGtold1/test/100197.png +../../data/yoloGtold1/test/100198.png +../../data/yoloGtold1/test/100199.png +../../data/yoloGtold1/test/100200.png +../../data/yoloGtold1/test/100201.png +../../data/yoloGtold1/test/100202.png +../../data/yoloGtold1/test/100203.png +../../data/yoloGtold1/test/100204.png +../../data/yoloGtold1/test/100205.png +../../data/yoloGtold1/test/100206.png +../../data/yoloGtold1/test/100207.png +../../data/yoloGtold1/test/100208.png +../../data/yoloGtold1/test/100209.png +../../data/yoloGtold1/test/100210.png +../../data/yoloGtold1/test/100211.png +../../data/yoloGtold1/test/100212.png +../../data/yoloGtold1/test/100213.png +../../data/yoloGtold1/test/100214.png +../../data/yoloGtold1/test/100215.png +../../data/yoloGtold1/test/100216.png +../../data/yoloGtold1/test/100217.png +../../data/yoloGtold1/test/100218.png +../../data/yoloGtold1/test/100219.png +../../data/yoloGtold1/test/100220.png +../../data/yoloGtold1/test/100221.png +../../data/yoloGtold1/test/100222.png +../../data/yoloGtold1/test/100223.png +../../data/yoloGtold1/test/100224.png +../../data/yoloGtold1/test/100225.png +../../data/yoloGtold1/test/100226.png +../../data/yoloGtold1/test/100227.png +../../data/yoloGtold1/test/100228.png +../../data/yoloGtold1/test/100229.png +../../data/yoloGtold1/test/100230.png +../../data/yoloGtold1/test/100231.png +../../data/yoloGtold1/test/100232.png +../../data/yoloGtold1/test/100233.png +../../data/yoloGtold1/test/100234.png +../../data/yoloGtold1/test/100235.png +../../data/yoloGtold1/test/100236.png +../../data/yoloGtold1/test/100237.png +../../data/yoloGtold1/test/100238.png +../../data/yoloGtold1/test/100239.png +../../data/yoloGtold1/test/100240.png +../../data/yoloGtold1/test/100241.png +../../data/yoloGtold1/test/100242.png +../../data/yoloGtold1/test/100243.png +../../data/yoloGtold1/test/100244.png +../../data/yoloGtold1/test/100245.png +../../data/yoloGtold1/test/100246.png +../../data/yoloGtold1/test/100247.png +../../data/yoloGtold1/test/100248.png +../../data/yoloGtold1/test/100249.png +../../data/yoloGtold1/test/100250.png +../../data/yoloGtold1/test/100251.png +../../data/yoloGtold1/test/100252.png +../../data/yoloGtold1/test/100253.png +../../data/yoloGtold1/test/100254.png +../../data/yoloGtold1/test/100255.png +../../data/yoloGtold1/test/100256.png +../../data/yoloGtold1/test/100257.png +../../data/yoloGtold1/test/100258.png +../../data/yoloGtold1/test/100259.png +../../data/yoloGtold1/test/100260.png +../../data/yoloGtold1/test/100261.png +../../data/yoloGtold1/test/100262.png +../../data/yoloGtold1/test/100263.png +../../data/yoloGtold1/test/100264.png +../../data/yoloGtold1/test/100265.png +../../data/yoloGtold1/test/100266.png +../../data/yoloGtold1/test/100267.png +../../data/yoloGtold1/test/100268.png +../../data/yoloGtold1/test/100269.png +../../data/yoloGtold1/test/100270.png +../../data/yoloGtold1/test/100271.png +../../data/yoloGtold1/test/100272.png +../../data/yoloGtold1/test/100273.png +../../data/yoloGtold1/test/100274.png +../../data/yoloGtold1/test/100275.png +../../data/yoloGtold1/test/100276.png +../../data/yoloGtold1/test/100277.png +../../data/yoloGtold1/test/100278.png +../../data/yoloGtold1/test/100279.png +../../data/yoloGtold1/test/100280.png +../../data/yoloGtold1/test/100281.png +../../data/yoloGtold1/test/100282.png +../../data/yoloGtold1/test/100283.png +../../data/yoloGtold1/test/100284.png +../../data/yoloGtold1/test/100285.png +../../data/yoloGtold1/test/100286.png +../../data/yoloGtold1/test/100287.png +../../data/yoloGtold1/test/100288.png +../../data/yoloGtold1/test/100289.png +../../data/yoloGtold1/test/100290.png +../../data/yoloGtold1/test/100291.png +../../data/yoloGtold1/test/100292.png +../../data/yoloGtold1/test/100293.png +../../data/yoloGtold1/test/100294.png +../../data/yoloGtold1/test/100295.png +../../data/yoloGtold1/test/100296.png +../../data/yoloGtold1/test/100297.png +../../data/yoloGtold1/test/100298.png +../../data/yoloGtold1/test/100299.png +../../data/yoloGtold1/test/100300.png +../../data/yoloGtold1/test/100301.png +../../data/yoloGtold1/test/100302.png +../../data/yoloGtold1/test/100303.png +../../data/yoloGtold1/test/100304.png +../../data/yoloGtold1/test/100305.png +../../data/yoloGtold1/test/100306.png +../../data/yoloGtold1/test/100307.png +../../data/yoloGtold1/test/100308.png +../../data/yoloGtold1/test/100309.png +../../data/yoloGtold1/test/100310.png +../../data/yoloGtold1/test/100311.png +../../data/yoloGtold1/test/100312.png +../../data/yoloGtold1/test/100313.png +../../data/yoloGtold1/test/100314.png +../../data/yoloGtold1/test/100315.png +../../data/yoloGtold1/test/100316.png +../../data/yoloGtold1/test/100317.png +../../data/yoloGtold1/test/100318.png +../../data/yoloGtold1/test/100319.png +../../data/yoloGtold1/test/100320.png +../../data/yoloGtold1/test/100321.png +../../data/yoloGtold1/test/100322.png +../../data/yoloGtold1/test/100323.png +../../data/yoloGtold1/test/100324.png +../../data/yoloGtold1/test/100325.png +../../data/yoloGtold1/test/100326.png +../../data/yoloGtold1/test/100327.png +../../data/yoloGtold1/test/100328.png +../../data/yoloGtold1/test/100329.png +../../data/yoloGtold1/test/100330.png +../../data/yoloGtold1/test/100331.png +../../data/yoloGtold1/test/100332.png +../../data/yoloGtold1/test/100333.png +../../data/yoloGtold1/test/100334.png +../../data/yoloGtold1/test/100335.png +../../data/yoloGtold1/test/100336.png +../../data/yoloGtold1/test/100337.png +../../data/yoloGtold1/test/100338.png +../../data/yoloGtold1/test/100339.png +../../data/yoloGtold1/test/100340.png +../../data/yoloGtold1/test/100341.png +../../data/yoloGtold1/test/100342.png +../../data/yoloGtold1/test/100343.png +../../data/yoloGtold1/test/100344.png +../../data/yoloGtold1/test/100345.png +../../data/yoloGtold1/test/100346.png +../../data/yoloGtold1/test/100347.png +../../data/yoloGtold1/test/100348.png +../../data/yoloGtold1/test/100349.png +../../data/yoloGtold1/test/100350.png +../../data/yoloGtold1/test/100351.png +../../data/yoloGtold1/test/100352.png +../../data/yoloGtold1/test/100353.png +../../data/yoloGtold1/test/100354.png +../../data/yoloGtold1/test/100355.png +../../data/yoloGtold1/test/100356.png +../../data/yoloGtold1/test/100357.png +../../data/yoloGtold1/test/100358.png +../../data/yoloGtold1/test/100359.png +../../data/yoloGtold1/test/100360.png +../../data/yoloGtold1/test/100361.png +../../data/yoloGtold1/test/100362.png +../../data/yoloGtold1/test/100363.png +../../data/yoloGtold1/test/100364.png +../../data/yoloGtold1/test/100365.png +../../data/yoloGtold1/test/100366.png +../../data/yoloGtold1/test/100367.png +../../data/yoloGtold1/test/100368.png +../../data/yoloGtold1/test/100369.png +../../data/yoloGtold1/test/100370.png +../../data/yoloGtold1/test/100371.png +../../data/yoloGtold1/test/100372.png +../../data/yoloGtold1/test/100373.png +../../data/yoloGtold1/test/100374.png +../../data/yoloGtold1/test/100375.png +../../data/yoloGtold1/test/100376.png +../../data/yoloGtold1/test/100377.png +../../data/yoloGtold1/test/100378.png +../../data/yoloGtold1/test/100379.png +../../data/yoloGtold1/test/100380.png +../../data/yoloGtold1/test/100381.png +../../data/yoloGtold1/test/100382.png +../../data/yoloGtold1/test/100383.png +../../data/yoloGtold1/test/100384.png +../../data/yoloGtold1/test/100385.png +../../data/yoloGtold1/test/100386.png +../../data/yoloGtold1/test/100387.png +../../data/yoloGtold1/test/100388.png +../../data/yoloGtold1/test/100389.png +../../data/yoloGtold1/test/100390.png +../../data/yoloGtold1/test/100391.png +../../data/yoloGtold1/test/100392.png +../../data/yoloGtold1/test/100393.png +../../data/yoloGtold1/test/100394.png +../../data/yoloGtold1/test/100395.png +../../data/yoloGtold1/test/100396.png +../../data/yoloGtold1/test/100397.png +../../data/yoloGtold1/test/100398.png +../../data/yoloGtold1/test/100399.png +../../data/yoloGtold1/test/100400.png +../../data/yoloGtold1/test/100401.png +../../data/yoloGtold1/test/100402.png +../../data/yoloGtold1/test/100403.png +../../data/yoloGtold1/test/100404.png +../../data/yoloGtold1/test/100405.png +../../data/yoloGtold1/test/100406.png +../../data/yoloGtold1/test/100407.png +../../data/yoloGtold1/test/100408.png +../../data/yoloGtold1/test/100409.png +../../data/yoloGtold1/test/100410.png +../../data/yoloGtold1/test/100411.png +../../data/yoloGtold1/test/100412.png +../../data/yoloGtold1/test/100413.png +../../data/yoloGtold1/test/100414.png +../../data/yoloGtold1/test/100415.png +../../data/yoloGtold1/test/100416.png +../../data/yoloGtold1/test/100417.png +../../data/yoloGtold1/test/100418.png +../../data/yoloGtold1/test/100419.png +../../data/yoloGtold1/test/100420.png +../../data/yoloGtold1/test/100421.png +../../data/yoloGtold1/test/100422.png +../../data/yoloGtold1/test/100423.png +../../data/yoloGtold1/test/100424.png +../../data/yoloGtold1/test/100425.png +../../data/yoloGtold1/test/100426.png +../../data/yoloGtold1/test/100427.png +../../data/yoloGtold1/test/100428.png +../../data/yoloGtold1/test/100429.png +../../data/yoloGtold1/test/100430.png +../../data/yoloGtold1/test/100431.png +../../data/yoloGtold1/test/100432.png +../../data/yoloGtold1/test/100433.png +../../data/yoloGtold1/test/100434.png +../../data/yoloGtold1/test/100435.png +../../data/yoloGtold1/test/100436.png +../../data/yoloGtold1/test/100437.png +../../data/yoloGtold1/test/100438.png +../../data/yoloGtold1/test/100439.png +../../data/yoloGtold1/test/100440.png +../../data/yoloGtold1/test/100441.png +../../data/yoloGtold1/test/100442.png +../../data/yoloGtold1/test/100443.png +../../data/yoloGtold1/test/100444.png +../../data/yoloGtold1/test/100445.png +../../data/yoloGtold1/test/100446.png +../../data/yoloGtold1/test/100447.png +../../data/yoloGtold1/test/100448.png +../../data/yoloGtold1/test/100449.png +../../data/yoloGtold1/test/100450.png +../../data/yoloGtold1/test/100451.png +../../data/yoloGtold1/test/100452.png +../../data/yoloGtold1/test/100453.png +../../data/yoloGtold1/test/100454.png +../../data/yoloGtold1/test/100455.png +../../data/yoloGtold1/test/100456.png +../../data/yoloGtold1/test/100457.png +../../data/yoloGtold1/test/100458.png +../../data/yoloGtold1/test/100459.png +../../data/yoloGtold1/test/100460.png +../../data/yoloGtold1/test/100461.png +../../data/yoloGtold1/test/100462.png +../../data/yoloGtold1/test/100463.png +../../data/yoloGtold1/test/100464.png +../../data/yoloGtold1/test/100465.png +../../data/yoloGtold1/test/100466.png +../../data/yoloGtold1/test/100467.png +../../data/yoloGtold1/test/100468.png +../../data/yoloGtold1/test/100469.png +../../data/yoloGtold1/test/100470.png +../../data/yoloGtold1/test/100471.png +../../data/yoloGtold1/test/100472.png +../../data/yoloGtold1/test/100473.png +../../data/yoloGtold1/test/100474.png +../../data/yoloGtold1/test/100475.png +../../data/yoloGtold1/test/100476.png +../../data/yoloGtold1/test/100477.png +../../data/yoloGtold1/test/100478.png +../../data/yoloGtold1/test/100479.png +../../data/yoloGtold1/test/100480.png +../../data/yoloGtold1/test/100481.png +../../data/yoloGtold1/test/100482.png +../../data/yoloGtold1/test/100483.png +../../data/yoloGtold1/test/100484.png +../../data/yoloGtold1/test/100485.png +../../data/yoloGtold1/test/100486.png +../../data/yoloGtold1/test/100487.png +../../data/yoloGtold1/test/100488.png +../../data/yoloGtold1/test/100489.png +../../data/yoloGtold1/test/100490.png +../../data/yoloGtold1/test/100491.png +../../data/yoloGtold1/test/100492.png +../../data/yoloGtold1/test/100493.png +../../data/yoloGtold1/test/100494.png +../../data/yoloGtold1/test/100495.png +../../data/yoloGtold1/test/100496.png +../../data/yoloGtold1/test/100497.png +../../data/yoloGtold1/test/100498.png +../../data/yoloGtold1/test/100499.png +../../data/yoloGtold1/test/100500.png +../../data/yoloGtold1/test/100501.png +../../data/yoloGtold1/test/100502.png +../../data/yoloGtold1/test/100503.png +../../data/yoloGtold1/test/100504.png +../../data/yoloGtold1/test/100505.png +../../data/yoloGtold1/test/100506.png +../../data/yoloGtold1/test/100507.png +../../data/yoloGtold1/test/100508.png +../../data/yoloGtold1/test/100509.png +../../data/yoloGtold1/test/100510.png +../../data/yoloGtold1/test/100511.png +../../data/yoloGtold1/test/100512.png +../../data/yoloGtold1/test/100513.png +../../data/yoloGtold1/test/100514.png +../../data/yoloGtold1/test/100515.png +../../data/yoloGtold1/test/100516.png +../../data/yoloGtold1/test/100517.png +../../data/yoloGtold1/test/100518.png +../../data/yoloGtold1/test/100519.png +../../data/yoloGtold1/test/100520.png +../../data/yoloGtold1/test/100521.png +../../data/yoloGtold1/test/100522.png +../../data/yoloGtold1/test/100523.png +../../data/yoloGtold1/test/100524.png +../../data/yoloGtold1/test/100525.png +../../data/yoloGtold1/test/100526.png +../../data/yoloGtold1/test/100527.png +../../data/yoloGtold1/test/100528.png +../../data/yoloGtold1/test/100529.png +../../data/yoloGtold1/test/100530.png +../../data/yoloGtold1/test/100531.png +../../data/yoloGtold1/test/100532.png +../../data/yoloGtold1/test/100533.png +../../data/yoloGtold1/test/100534.png +../../data/yoloGtold1/test/100535.png +../../data/yoloGtold1/test/100536.png +../../data/yoloGtold1/test/100537.png +../../data/yoloGtold1/test/100538.png +../../data/yoloGtold1/test/100539.png +../../data/yoloGtold1/test/100540.png +../../data/yoloGtold1/test/100541.png +../../data/yoloGtold1/test/100542.png +../../data/yoloGtold1/test/100543.png +../../data/yoloGtold1/test/100544.png +../../data/yoloGtold1/test/100545.png +../../data/yoloGtold1/test/100546.png +../../data/yoloGtold1/test/100547.png +../../data/yoloGtold1/test/100548.png +../../data/yoloGtold1/test/100549.png +../../data/yoloGtold1/test/100550.png +../../data/yoloGtold1/test/100551.png +../../data/yoloGtold1/test/100552.png +../../data/yoloGtold1/test/100553.png +../../data/yoloGtold1/test/100554.png +../../data/yoloGtold1/test/100555.png +../../data/yoloGtold1/test/100556.png +../../data/yoloGtold1/test/100557.png +../../data/yoloGtold1/test/100558.png +../../data/yoloGtold1/test/100559.png +../../data/yoloGtold1/test/100560.png +../../data/yoloGtold1/test/100561.png +../../data/yoloGtold1/test/100562.png +../../data/yoloGtold1/test/100563.png +../../data/yoloGtold1/test/100564.png +../../data/yoloGtold1/test/100565.png +../../data/yoloGtold1/test/100566.png +../../data/yoloGtold1/test/100567.png +../../data/yoloGtold1/test/100568.png +../../data/yoloGtold1/test/100569.png +../../data/yoloGtold1/test/100570.png +../../data/yoloGtold1/test/100571.png +../../data/yoloGtold1/test/100572.png +../../data/yoloGtold1/test/100573.png +../../data/yoloGtold1/test/100574.png +../../data/yoloGtold1/test/100575.png +../../data/yoloGtold1/test/100576.png +../../data/yoloGtold1/test/100577.png +../../data/yoloGtold1/test/100578.png +../../data/yoloGtold1/test/100579.png +../../data/yoloGtold1/test/100580.png +../../data/yoloGtold1/test/100581.png +../../data/yoloGtold1/test/100582.png +../../data/yoloGtold1/test/100583.png +../../data/yoloGtold1/test/100584.png +../../data/yoloGtold1/test/100585.png +../../data/yoloGtold1/test/100586.png +../../data/yoloGtold1/test/100587.png +../../data/yoloGtold1/test/100588.png +../../data/yoloGtold1/test/100589.png +../../data/yoloGtold1/test/100590.png +../../data/yoloGtold1/test/100591.png +../../data/yoloGtold1/test/100592.png +../../data/yoloGtold1/test/100593.png +../../data/yoloGtold1/test/100594.png +../../data/yoloGtold1/test/100595.png +../../data/yoloGtold1/test/100596.png +../../data/yoloGtold1/test/100597.png +../../data/yoloGtold1/test/100598.png +../../data/yoloGtold1/test/100599.png +../../data/yoloGtold1/test/100600.png +../../data/yoloGtold1/test/100601.png +../../data/yoloGtold1/test/100602.png +../../data/yoloGtold1/test/100603.png +../../data/yoloGtold1/test/100604.png +../../data/yoloGtold1/test/100605.png +../../data/yoloGtold1/test/100606.png +../../data/yoloGtold1/test/100607.png +../../data/yoloGtold1/test/100608.png +../../data/yoloGtold1/test/100609.png +../../data/yoloGtold1/test/100610.png +../../data/yoloGtold1/test/100611.png +../../data/yoloGtold1/test/100612.png +../../data/yoloGtold1/test/100613.png +../../data/yoloGtold1/test/100614.png +../../data/yoloGtold1/test/100615.png +../../data/yoloGtold1/test/100616.png +../../data/yoloGtold1/test/100617.png +../../data/yoloGtold1/test/100618.png +../../data/yoloGtold1/test/100619.png +../../data/yoloGtold1/test/100620.png +../../data/yoloGtold1/test/100621.png +../../data/yoloGtold1/test/100622.png +../../data/yoloGtold1/test/100623.png +../../data/yoloGtold1/test/100624.png +../../data/yoloGtold1/test/100625.png +../../data/yoloGtold1/test/100626.png +../../data/yoloGtold1/test/100627.png +../../data/yoloGtold1/test/100628.png +../../data/yoloGtold1/test/100629.png +../../data/yoloGtold1/test/100630.png +../../data/yoloGtold1/test/100631.png +../../data/yoloGtold1/test/100632.png +../../data/yoloGtold1/test/100633.png +../../data/yoloGtold1/test/100634.png +../../data/yoloGtold1/test/100635.png +../../data/yoloGtold1/test/100636.png +../../data/yoloGtold1/test/100637.png +../../data/yoloGtold1/test/100638.png +../../data/yoloGtold1/test/100639.png +../../data/yoloGtold1/test/100640.png +../../data/yoloGtold1/test/100641.png +../../data/yoloGtold1/test/100642.png +../../data/yoloGtold1/test/100643.png +../../data/yoloGtold1/test/100644.png +../../data/yoloGtold1/test/100645.png +../../data/yoloGtold1/test/100646.png +../../data/yoloGtold1/test/100647.png +../../data/yoloGtold1/test/100648.png +../../data/yoloGtold1/test/100649.png +../../data/yoloGtold1/test/100650.png +../../data/yoloGtold1/test/100651.png +../../data/yoloGtold1/test/100652.png +../../data/yoloGtold1/test/100653.png +../../data/yoloGtold1/test/100654.png +../../data/yoloGtold1/test/100655.png +../../data/yoloGtold1/test/100656.png +../../data/yoloGtold1/test/100657.png +../../data/yoloGtold1/test/100658.png +../../data/yoloGtold1/test/100659.png +../../data/yoloGtold1/test/100660.png +../../data/yoloGtold1/test/100661.png +../../data/yoloGtold1/test/100662.png +../../data/yoloGtold1/test/100663.png +../../data/yoloGtold1/test/100664.png +../../data/yoloGtold1/test/100665.png +../../data/yoloGtold1/test/100666.png +../../data/yoloGtold1/test/100667.png +../../data/yoloGtold1/test/100668.png +../../data/yoloGtold1/test/100669.png +../../data/yoloGtold1/test/100670.png +../../data/yoloGtold1/test/100671.png +../../data/yoloGtold1/test/100672.png +../../data/yoloGtold1/test/100673.png +../../data/yoloGtold1/test/100674.png +../../data/yoloGtold1/test/100675.png +../../data/yoloGtold1/test/100676.png +../../data/yoloGtold1/test/100677.png +../../data/yoloGtold1/test/100678.png +../../data/yoloGtold1/test/100679.png +../../data/yoloGtold1/test/100680.png +../../data/yoloGtold1/test/100681.png +../../data/yoloGtold1/test/100682.png +../../data/yoloGtold1/test/100683.png +../../data/yoloGtold1/test/100684.png +../../data/yoloGtold1/test/100685.png +../../data/yoloGtold1/test/100686.png +../../data/yoloGtold1/test/100687.png +../../data/yoloGtold1/test/100688.png +../../data/yoloGtold1/test/100689.png +../../data/yoloGtold1/test/100690.png +../../data/yoloGtold1/test/100691.png +../../data/yoloGtold1/test/100692.png +../../data/yoloGtold1/test/100693.png +../../data/yoloGtold1/test/100694.png +../../data/yoloGtold1/test/100695.png +../../data/yoloGtold1/test/100696.png +../../data/yoloGtold1/test/100697.png +../../data/yoloGtold1/test/100698.png +../../data/yoloGtold1/test/100699.png +../../data/yoloGtold1/test/100700.png +../../data/yoloGtold1/test/100701.png +../../data/yoloGtold1/test/100702.png +../../data/yoloGtold1/test/100703.png +../../data/yoloGtold1/test/100704.png +../../data/yoloGtold1/test/100705.png +../../data/yoloGtold1/test/100706.png +../../data/yoloGtold1/test/100707.png +../../data/yoloGtold1/test/100708.png +../../data/yoloGtold1/test/100709.png +../../data/yoloGtold1/test/100710.png +../../data/yoloGtold1/test/100711.png +../../data/yoloGtold1/test/100712.png +../../data/yoloGtold1/test/100713.png +../../data/yoloGtold1/test/100714.png +../../data/yoloGtold1/test/100715.png +../../data/yoloGtold1/test/100716.png +../../data/yoloGtold1/test/100717.png +../../data/yoloGtold1/test/100718.png +../../data/yoloGtold1/test/100719.png +../../data/yoloGtold1/test/100720.png +../../data/yoloGtold1/test/100721.png +../../data/yoloGtold1/test/100722.png +../../data/yoloGtold1/test/100723.png +../../data/yoloGtold1/test/100724.png +../../data/yoloGtold1/test/100725.png +../../data/yoloGtold1/test/100726.png +../../data/yoloGtold1/test/100727.png +../../data/yoloGtold1/test/100728.png +../../data/yoloGtold1/test/100729.png +../../data/yoloGtold1/test/100730.png +../../data/yoloGtold1/test/100731.png +../../data/yoloGtold1/test/100732.png +../../data/yoloGtold1/test/100733.png +../../data/yoloGtold1/test/100734.png +../../data/yoloGtold1/test/100735.png +../../data/yoloGtold1/test/100736.png +../../data/yoloGtold1/test/100737.png +../../data/yoloGtold1/test/100738.png +../../data/yoloGtold1/test/100739.png +../../data/yoloGtold1/test/100740.png +../../data/yoloGtold1/test/100741.png +../../data/yoloGtold1/test/100742.png +../../data/yoloGtold1/test/100743.png +../../data/yoloGtold1/test/100744.png +../../data/yoloGtold1/test/100745.png +../../data/yoloGtold1/test/100746.png +../../data/yoloGtold1/test/100747.png +../../data/yoloGtold1/test/100748.png +../../data/yoloGtold1/test/100749.png +../../data/yoloGtold1/test/100750.png +../../data/yoloGtold1/test/100751.png +../../data/yoloGtold1/test/100752.png +../../data/yoloGtold1/test/100753.png +../../data/yoloGtold1/test/100754.png +../../data/yoloGtold1/test/100755.png +../../data/yoloGtold1/test/100756.png +../../data/yoloGtold1/test/100757.png +../../data/yoloGtold1/test/100758.png +../../data/yoloGtold1/test/100759.png +../../data/yoloGtold1/test/100760.png +../../data/yoloGtold1/test/100761.png +../../data/yoloGtold1/test/100762.png +../../data/yoloGtold1/test/100763.png +../../data/yoloGtold1/test/100764.png +../../data/yoloGtold1/test/100765.png +../../data/yoloGtold1/test/100766.png +../../data/yoloGtold1/test/100767.png +../../data/yoloGtold1/test/100768.png +../../data/yoloGtold1/test/100769.png +../../data/yoloGtold1/test/100770.png +../../data/yoloGtold1/test/100771.png +../../data/yoloGtold1/test/100772.png +../../data/yoloGtold1/test/100773.png +../../data/yoloGtold1/test/100774.png +../../data/yoloGtold1/test/100775.png +../../data/yoloGtold1/test/100776.png +../../data/yoloGtold1/test/100777.png +../../data/yoloGtold1/test/100778.png +../../data/yoloGtold1/test/100779.png +../../data/yoloGtold1/test/100780.png +../../data/yoloGtold1/test/100781.png +../../data/yoloGtold1/test/100782.png +../../data/yoloGtold1/test/100783.png +../../data/yoloGtold1/test/100784.png +../../data/yoloGtold1/test/100785.png +../../data/yoloGtold1/test/100786.png +../../data/yoloGtold1/test/100787.png +../../data/yoloGtold1/test/100788.png +../../data/yoloGtold1/test/100789.png +../../data/yoloGtold1/test/100790.png +../../data/yoloGtold1/test/100791.png +../../data/yoloGtold1/test/100792.png +../../data/yoloGtold1/test/100793.png +../../data/yoloGtold1/test/100794.png +../../data/yoloGtold1/test/100795.png +../../data/yoloGtold1/test/100796.png +../../data/yoloGtold1/test/100797.png +../../data/yoloGtold1/test/100798.png +../../data/yoloGtold1/test/100799.png +../../data/yoloGtold1/test/100800.png +../../data/yoloGtold1/test/100801.png +../../data/yoloGtold1/test/100802.png +../../data/yoloGtold1/test/100803.png +../../data/yoloGtold1/test/100804.png +../../data/yoloGtold1/test/100805.png +../../data/yoloGtold1/test/100806.png +../../data/yoloGtold1/test/100807.png +../../data/yoloGtold1/test/100808.png +../../data/yoloGtold1/test/100809.png +../../data/yoloGtold1/test/100810.png +../../data/yoloGtold1/test/100811.png +../../data/yoloGtold1/test/100812.png +../../data/yoloGtold1/test/100813.png +../../data/yoloGtold1/test/100814.png +../../data/yoloGtold1/test/100815.png +../../data/yoloGtold1/test/100816.png +../../data/yoloGtold1/test/100817.png +../../data/yoloGtold1/test/100818.png +../../data/yoloGtold1/test/100819.png +../../data/yoloGtold1/test/100820.png +../../data/yoloGtold1/test/100821.png +../../data/yoloGtold1/test/100822.png +../../data/yoloGtold1/test/100823.png +../../data/yoloGtold1/test/100824.png +../../data/yoloGtold1/test/100825.png +../../data/yoloGtold1/test/100826.png +../../data/yoloGtold1/test/100827.png +../../data/yoloGtold1/test/100828.png +../../data/yoloGtold1/test/100829.png +../../data/yoloGtold1/test/100830.png +../../data/yoloGtold1/test/100831.png +../../data/yoloGtold1/test/100832.png +../../data/yoloGtold1/test/100833.png +../../data/yoloGtold1/test/100834.png +../../data/yoloGtold1/test/100835.png +../../data/yoloGtold1/test/100836.png +../../data/yoloGtold1/test/100837.png +../../data/yoloGtold1/test/100838.png +../../data/yoloGtold1/test/100839.png +../../data/yoloGtold1/test/100840.png +../../data/yoloGtold1/test/100841.png +../../data/yoloGtold1/test/100842.png +../../data/yoloGtold1/test/100843.png +../../data/yoloGtold1/test/100844.png +../../data/yoloGtold1/test/100845.png +../../data/yoloGtold1/test/100846.png +../../data/yoloGtold1/test/100847.png +../../data/yoloGtold1/test/100848.png +../../data/yoloGtold1/test/100849.png +../../data/yoloGtold1/test/100850.png +../../data/yoloGtold1/test/100851.png +../../data/yoloGtold1/test/100852.png +../../data/yoloGtold1/test/100853.png +../../data/yoloGtold1/test/100854.png +../../data/yoloGtold1/test/100855.png +../../data/yoloGtold1/test/100856.png +../../data/yoloGtold1/test/100857.png +../../data/yoloGtold1/test/100858.png +../../data/yoloGtold1/test/100859.png +../../data/yoloGtold1/test/100860.png +../../data/yoloGtold1/test/100861.png +../../data/yoloGtold1/test/100862.png +../../data/yoloGtold1/test/100863.png +../../data/yoloGtold1/test/100864.png +../../data/yoloGtold1/test/100865.png +../../data/yoloGtold1/test/100866.png +../../data/yoloGtold1/test/100867.png +../../data/yoloGtold1/test/100868.png +../../data/yoloGtold1/test/100869.png +../../data/yoloGtold1/test/100870.png +../../data/yoloGtold1/test/100871.png +../../data/yoloGtold1/test/100872.png +../../data/yoloGtold1/test/100873.png +../../data/yoloGtold1/test/100874.png +../../data/yoloGtold1/test/100875.png +../../data/yoloGtold1/test/100876.png +../../data/yoloGtold1/test/100877.png +../../data/yoloGtold1/test/100878.png +../../data/yoloGtold1/test/100879.png +../../data/yoloGtold1/test/100880.png +../../data/yoloGtold1/test/100881.png +../../data/yoloGtold1/test/100882.png +../../data/yoloGtold1/test/100883.png +../../data/yoloGtold1/test/100884.png +../../data/yoloGtold1/test/100885.png +../../data/yoloGtold1/test/100886.png +../../data/yoloGtold1/test/100887.png +../../data/yoloGtold1/test/100888.png +../../data/yoloGtold1/test/100889.png +../../data/yoloGtold1/test/100890.png +../../data/yoloGtold1/test/100891.png +../../data/yoloGtold1/test/100892.png +../../data/yoloGtold1/test/100893.png +../../data/yoloGtold1/test/100894.png +../../data/yoloGtold1/test/100895.png +../../data/yoloGtold1/test/100896.png +../../data/yoloGtold1/test/100897.png +../../data/yoloGtold1/test/100898.png +../../data/yoloGtold1/test/100899.png +../../data/yoloGtold1/test/100900.png +../../data/yoloGtold1/test/100901.png +../../data/yoloGtold1/test/100902.png +../../data/yoloGtold1/test/100903.png +../../data/yoloGtold1/test/100904.png +../../data/yoloGtold1/test/100905.png +../../data/yoloGtold1/test/100906.png +../../data/yoloGtold1/test/100907.png +../../data/yoloGtold1/test/100908.png +../../data/yoloGtold1/test/100909.png +../../data/yoloGtold1/test/100910.png +../../data/yoloGtold1/test/100911.png +../../data/yoloGtold1/test/100912.png +../../data/yoloGtold1/test/100913.png +../../data/yoloGtold1/test/100914.png +../../data/yoloGtold1/test/100915.png +../../data/yoloGtold1/test/100916.png +../../data/yoloGtold1/test/100917.png +../../data/yoloGtold1/test/100918.png +../../data/yoloGtold1/test/100919.png +../../data/yoloGtold1/test/100920.png +../../data/yoloGtold1/test/100921.png +../../data/yoloGtold1/test/100922.png +../../data/yoloGtold1/test/100923.png +../../data/yoloGtold1/test/100924.png +../../data/yoloGtold1/test/100925.png +../../data/yoloGtold1/test/100926.png +../../data/yoloGtold1/test/100927.png +../../data/yoloGtold1/test/100928.png +../../data/yoloGtold1/test/100929.png +../../data/yoloGtold1/test/100930.png +../../data/yoloGtold1/test/100931.png +../../data/yoloGtold1/test/100932.png +../../data/yoloGtold1/test/100933.png +../../data/yoloGtold1/test/100934.png +../../data/yoloGtold1/test/100935.png +../../data/yoloGtold1/test/100936.png +../../data/yoloGtold1/test/100937.png +../../data/yoloGtold1/test/100938.png +../../data/yoloGtold1/test/100939.png +../../data/yoloGtold1/test/100940.png +../../data/yoloGtold1/test/100941.png +../../data/yoloGtold1/test/100942.png +../../data/yoloGtold1/test/100943.png +../../data/yoloGtold1/test/100944.png +../../data/yoloGtold1/test/100945.png +../../data/yoloGtold1/test/100946.png +../../data/yoloGtold1/test/100947.png +../../data/yoloGtold1/test/100948.png +../../data/yoloGtold1/test/100949.png +../../data/yoloGtold1/test/100950.png +../../data/yoloGtold1/test/100951.png +../../data/yoloGtold1/test/100952.png +../../data/yoloGtold1/test/100953.png +../../data/yoloGtold1/test/100954.png +../../data/yoloGtold1/test/100955.png +../../data/yoloGtold1/test/100956.png +../../data/yoloGtold1/test/100957.png +../../data/yoloGtold1/test/100958.png +../../data/yoloGtold1/test/100959.png +../../data/yoloGtold1/test/100960.png +../../data/yoloGtold1/test/100961.png +../../data/yoloGtold1/test/100962.png +../../data/yoloGtold1/test/100963.png +../../data/yoloGtold1/test/100964.png +../../data/yoloGtold1/test/100965.png +../../data/yoloGtold1/test/100966.png +../../data/yoloGtold1/test/100967.png +../../data/yoloGtold1/test/100968.png +../../data/yoloGtold1/test/100969.png +../../data/yoloGtold1/test/100970.png +../../data/yoloGtold1/test/100971.png +../../data/yoloGtold1/test/100972.png +../../data/yoloGtold1/test/100973.png +../../data/yoloGtold1/test/100974.png +../../data/yoloGtold1/test/100975.png +../../data/yoloGtold1/test/100976.png +../../data/yoloGtold1/test/100977.png +../../data/yoloGtold1/test/100978.png +../../data/yoloGtold1/test/100979.png +../../data/yoloGtold1/test/100980.png +../../data/yoloGtold1/test/100981.png +../../data/yoloGtold1/test/100982.png +../../data/yoloGtold1/test/100983.png +../../data/yoloGtold1/test/100984.png +../../data/yoloGtold1/test/100985.png +../../data/yoloGtold1/test/100986.png +../../data/yoloGtold1/test/100987.png +../../data/yoloGtold1/test/100988.png +../../data/yoloGtold1/test/100989.png +../../data/yoloGtold1/test/100990.png +../../data/yoloGtold1/test/100991.png +../../data/yoloGtold1/test/100992.png +../../data/yoloGtold1/test/100993.png +../../data/yoloGtold1/test/100994.png +../../data/yoloGtold1/test/100995.png +../../data/yoloGtold1/test/100996.png +../../data/yoloGtold1/test/100997.png +../../data/yoloGtold1/test/100998.png +../../data/yoloGtold1/test/100999.png +../../data/yoloGtold1/test/101000.png diff --git "a/\346\225\264\347\220\206/yolo/my/train.bat" "b/\346\225\264\347\220\206/yolo/my/train.bat" new file mode 100644 index 0000000..c3a5e3c --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/train.bat" @@ -0,0 +1,5 @@ +cd.. +cd train +darknet.exe detector train ../my/obj.data ../my/yolov3.cfg ../my/darknet53.conv.74 +rem darknet detector train ../my/obj.data ../my/yolov3.cfg ../my/weights/yolov3_last.weights +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/train.txt" "b/\346\225\264\347\220\206/yolo/my/train.txt" new file mode 100644 index 0000000..cb13581 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/train.txt" @@ -0,0 +1,99999 @@ +../../data/yoloGtold1/train/1.png +../../data/yoloGtold1/train/2.png +../../data/yoloGtold1/train/3.png +../../data/yoloGtold1/train/4.png +../../data/yoloGtold1/train/5.png +../../data/yoloGtold1/train/6.png +../../data/yoloGtold1/train/7.png +../../data/yoloGtold1/train/8.png +../../data/yoloGtold1/train/9.png +../../data/yoloGtold1/train/10.png +../../data/yoloGtold1/train/11.png +../../data/yoloGtold1/train/12.png +../../data/yoloGtold1/train/13.png +../../data/yoloGtold1/train/14.png +../../data/yoloGtold1/train/15.png +../../data/yoloGtold1/train/16.png +../../data/yoloGtold1/train/17.png +../../data/yoloGtold1/train/18.png +../../data/yoloGtold1/train/19.png +../../data/yoloGtold1/train/20.png +../../data/yoloGtold1/train/21.png +../../data/yoloGtold1/train/22.png +../../data/yoloGtold1/train/23.png +../../data/yoloGtold1/train/24.png +../../data/yoloGtold1/train/25.png +../../data/yoloGtold1/train/26.png +../../data/yoloGtold1/train/27.png +../../data/yoloGtold1/train/28.png +../../data/yoloGtold1/train/29.png +../../data/yoloGtold1/train/30.png +../../data/yoloGtold1/train/31.png +../../data/yoloGtold1/train/32.png +../../data/yoloGtold1/train/33.png +../../data/yoloGtold1/train/34.png +../../data/yoloGtold1/train/35.png +../../data/yoloGtold1/train/36.png +../../data/yoloGtold1/train/37.png +../../data/yoloGtold1/train/38.png +../../data/yoloGtold1/train/39.png +../../data/yoloGtold1/train/40.png +../../data/yoloGtold1/train/41.png +../../data/yoloGtold1/train/42.png +../../data/yoloGtold1/train/43.png +../../data/yoloGtold1/train/44.png +../../data/yoloGtold1/train/45.png +../../data/yoloGtold1/train/46.png +../../data/yoloGtold1/train/47.png +../../data/yoloGtold1/train/48.png +../../data/yoloGtold1/train/49.png +../../data/yoloGtold1/train/50.png +../../data/yoloGtold1/train/51.png +../../data/yoloGtold1/train/52.png +../../data/yoloGtold1/train/53.png +../../data/yoloGtold1/train/54.png +../../data/yoloGtold1/train/55.png +../../data/yoloGtold1/train/56.png +../../data/yoloGtold1/train/57.png +../../data/yoloGtold1/train/58.png +../../data/yoloGtold1/train/59.png +../../data/yoloGtold1/train/60.png +../../data/yoloGtold1/train/61.png +../../data/yoloGtold1/train/62.png +../../data/yoloGtold1/train/63.png +../../data/yoloGtold1/train/64.png +../../data/yoloGtold1/train/65.png +../../data/yoloGtold1/train/66.png +../../data/yoloGtold1/train/67.png +../../data/yoloGtold1/train/68.png +../../data/yoloGtold1/train/69.png +../../data/yoloGtold1/train/70.png +../../data/yoloGtold1/train/71.png +../../data/yoloGtold1/train/72.png +../../data/yoloGtold1/train/73.png +../../data/yoloGtold1/train/74.png +../../data/yoloGtold1/train/75.png +../../data/yoloGtold1/train/76.png +../../data/yoloGtold1/train/77.png +../../data/yoloGtold1/train/78.png +../../data/yoloGtold1/train/79.png +../../data/yoloGtold1/train/80.png +../../data/yoloGtold1/train/81.png +../../data/yoloGtold1/train/82.png +../../data/yoloGtold1/train/83.png +../../data/yoloGtold1/train/84.png +../../data/yoloGtold1/train/85.png +../../data/yoloGtold1/train/86.png +../../data/yoloGtold1/train/87.png +../../data/yoloGtold1/train/88.png +../../data/yoloGtold1/train/89.png +../../data/yoloGtold1/train/90.png +../../data/yoloGtold1/train/91.png +../../data/yoloGtold1/train/92.png +../../data/yoloGtold1/train/93.png +../../data/yoloGtold1/train/94.png +../../data/yoloGtold1/train/95.png +../../data/yoloGtold1/train/96.png +../../data/yoloGtold1/train/97.png +../../data/yoloGtold1/train/98.png +../../data/yoloGtold1/train/99.png +../../data/yoloGtold1/train/100.png +../../data/yoloGtold1/train/101.png +../../data/yoloGtold1/train/102.png +../../data/yoloGtold1/train/103.png +../../data/yoloGtold1/train/104.png +../../data/yoloGtold1/train/105.png +../../data/yoloGtold1/train/106.png +../../data/yoloGtold1/train/107.png +../../data/yoloGtold1/train/108.png +../../data/yoloGtold1/train/109.png +../../data/yoloGtold1/train/110.png +../../data/yoloGtold1/train/111.png +../../data/yoloGtold1/train/112.png +../../data/yoloGtold1/train/113.png +../../data/yoloGtold1/train/114.png +../../data/yoloGtold1/train/115.png +../../data/yoloGtold1/train/116.png +../../data/yoloGtold1/train/117.png +../../data/yoloGtold1/train/118.png +../../data/yoloGtold1/train/119.png +../../data/yoloGtold1/train/120.png +../../data/yoloGtold1/train/121.png +../../data/yoloGtold1/train/122.png +../../data/yoloGtold1/train/123.png +../../data/yoloGtold1/train/124.png +../../data/yoloGtold1/train/125.png +../../data/yoloGtold1/train/126.png +../../data/yoloGtold1/train/127.png +../../data/yoloGtold1/train/128.png +../../data/yoloGtold1/train/129.png +../../data/yoloGtold1/train/130.png +../../data/yoloGtold1/train/131.png +../../data/yoloGtold1/train/132.png +../../data/yoloGtold1/train/133.png +../../data/yoloGtold1/train/134.png +../../data/yoloGtold1/train/135.png +../../data/yoloGtold1/train/136.png +../../data/yoloGtold1/train/137.png +../../data/yoloGtold1/train/138.png +../../data/yoloGtold1/train/139.png +../../data/yoloGtold1/train/140.png +../../data/yoloGtold1/train/141.png +../../data/yoloGtold1/train/142.png +../../data/yoloGtold1/train/143.png +../../data/yoloGtold1/train/144.png +../../data/yoloGtold1/train/145.png +../../data/yoloGtold1/train/146.png +../../data/yoloGtold1/train/147.png +../../data/yoloGtold1/train/148.png +../../data/yoloGtold1/train/149.png +../../data/yoloGtold1/train/150.png +../../data/yoloGtold1/train/151.png +../../data/yoloGtold1/train/152.png +../../data/yoloGtold1/train/153.png +../../data/yoloGtold1/train/154.png +../../data/yoloGtold1/train/155.png +../../data/yoloGtold1/train/156.png +../../data/yoloGtold1/train/157.png +../../data/yoloGtold1/train/158.png +../../data/yoloGtold1/train/159.png +../../data/yoloGtold1/train/160.png +../../data/yoloGtold1/train/161.png +../../data/yoloGtold1/train/162.png +../../data/yoloGtold1/train/163.png +../../data/yoloGtold1/train/164.png +../../data/yoloGtold1/train/165.png +../../data/yoloGtold1/train/166.png +../../data/yoloGtold1/train/167.png +../../data/yoloGtold1/train/168.png +../../data/yoloGtold1/train/169.png +../../data/yoloGtold1/train/170.png +../../data/yoloGtold1/train/171.png +../../data/yoloGtold1/train/172.png +../../data/yoloGtold1/train/173.png +../../data/yoloGtold1/train/174.png +../../data/yoloGtold1/train/175.png +../../data/yoloGtold1/train/176.png +../../data/yoloGtold1/train/177.png +../../data/yoloGtold1/train/178.png +../../data/yoloGtold1/train/179.png +../../data/yoloGtold1/train/180.png +../../data/yoloGtold1/train/181.png +../../data/yoloGtold1/train/182.png +../../data/yoloGtold1/train/183.png +../../data/yoloGtold1/train/184.png +../../data/yoloGtold1/train/185.png +../../data/yoloGtold1/train/186.png +../../data/yoloGtold1/train/187.png +../../data/yoloGtold1/train/188.png +../../data/yoloGtold1/train/189.png +../../data/yoloGtold1/train/190.png +../../data/yoloGtold1/train/191.png +../../data/yoloGtold1/train/192.png +../../data/yoloGtold1/train/193.png +../../data/yoloGtold1/train/194.png +../../data/yoloGtold1/train/195.png +../../data/yoloGtold1/train/196.png +../../data/yoloGtold1/train/197.png +../../data/yoloGtold1/train/198.png +../../data/yoloGtold1/train/199.png +../../data/yoloGtold1/train/200.png +../../data/yoloGtold1/train/201.png +../../data/yoloGtold1/train/202.png +../../data/yoloGtold1/train/203.png +../../data/yoloGtold1/train/204.png +../../data/yoloGtold1/train/205.png +../../data/yoloGtold1/train/206.png +../../data/yoloGtold1/train/207.png +../../data/yoloGtold1/train/208.png +../../data/yoloGtold1/train/209.png +../../data/yoloGtold1/train/210.png +../../data/yoloGtold1/train/211.png +../../data/yoloGtold1/train/212.png +../../data/yoloGtold1/train/213.png +../../data/yoloGtold1/train/214.png +../../data/yoloGtold1/train/215.png +../../data/yoloGtold1/train/216.png +../../data/yoloGtold1/train/217.png +../../data/yoloGtold1/train/218.png +../../data/yoloGtold1/train/219.png +../../data/yoloGtold1/train/220.png +../../data/yoloGtold1/train/221.png +../../data/yoloGtold1/train/222.png +../../data/yoloGtold1/train/223.png +../../data/yoloGtold1/train/224.png +../../data/yoloGtold1/train/225.png +../../data/yoloGtold1/train/226.png +../../data/yoloGtold1/train/227.png +../../data/yoloGtold1/train/228.png +../../data/yoloGtold1/train/229.png +../../data/yoloGtold1/train/230.png +../../data/yoloGtold1/train/231.png +../../data/yoloGtold1/train/232.png +../../data/yoloGtold1/train/233.png +../../data/yoloGtold1/train/234.png +../../data/yoloGtold1/train/235.png +../../data/yoloGtold1/train/236.png +../../data/yoloGtold1/train/237.png +../../data/yoloGtold1/train/238.png +../../data/yoloGtold1/train/239.png +../../data/yoloGtold1/train/240.png +../../data/yoloGtold1/train/241.png +../../data/yoloGtold1/train/242.png +../../data/yoloGtold1/train/243.png +../../data/yoloGtold1/train/244.png +../../data/yoloGtold1/train/245.png +../../data/yoloGtold1/train/246.png +../../data/yoloGtold1/train/247.png +../../data/yoloGtold1/train/248.png +../../data/yoloGtold1/train/249.png +../../data/yoloGtold1/train/250.png +../../data/yoloGtold1/train/251.png +../../data/yoloGtold1/train/252.png +../../data/yoloGtold1/train/253.png +../../data/yoloGtold1/train/254.png +../../data/yoloGtold1/train/255.png +../../data/yoloGtold1/train/256.png +../../data/yoloGtold1/train/257.png +../../data/yoloGtold1/train/258.png +../../data/yoloGtold1/train/259.png +../../data/yoloGtold1/train/260.png +../../data/yoloGtold1/train/261.png +../../data/yoloGtold1/train/262.png +../../data/yoloGtold1/train/263.png +../../data/yoloGtold1/train/264.png +../../data/yoloGtold1/train/265.png +../../data/yoloGtold1/train/266.png +../../data/yoloGtold1/train/267.png +../../data/yoloGtold1/train/268.png +../../data/yoloGtold1/train/269.png +../../data/yoloGtold1/train/270.png +../../data/yoloGtold1/train/271.png +../../data/yoloGtold1/train/272.png +../../data/yoloGtold1/train/273.png +../../data/yoloGtold1/train/274.png +../../data/yoloGtold1/train/275.png +../../data/yoloGtold1/train/276.png +../../data/yoloGtold1/train/277.png +../../data/yoloGtold1/train/278.png +../../data/yoloGtold1/train/279.png +../../data/yoloGtold1/train/280.png +../../data/yoloGtold1/train/281.png +../../data/yoloGtold1/train/282.png +../../data/yoloGtold1/train/283.png +../../data/yoloGtold1/train/284.png +../../data/yoloGtold1/train/285.png +../../data/yoloGtold1/train/286.png +../../data/yoloGtold1/train/287.png +../../data/yoloGtold1/train/288.png +../../data/yoloGtold1/train/289.png +../../data/yoloGtold1/train/290.png +../../data/yoloGtold1/train/291.png +../../data/yoloGtold1/train/292.png +../../data/yoloGtold1/train/293.png +../../data/yoloGtold1/train/294.png +../../data/yoloGtold1/train/295.png +../../data/yoloGtold1/train/296.png +../../data/yoloGtold1/train/297.png +../../data/yoloGtold1/train/298.png +../../data/yoloGtold1/train/299.png +../../data/yoloGtold1/train/300.png +../../data/yoloGtold1/train/301.png +../../data/yoloGtold1/train/302.png +../../data/yoloGtold1/train/303.png +../../data/yoloGtold1/train/304.png +../../data/yoloGtold1/train/305.png +../../data/yoloGtold1/train/306.png +../../data/yoloGtold1/train/307.png +../../data/yoloGtold1/train/308.png +../../data/yoloGtold1/train/309.png +../../data/yoloGtold1/train/310.png +../../data/yoloGtold1/train/311.png +../../data/yoloGtold1/train/312.png +../../data/yoloGtold1/train/313.png +../../data/yoloGtold1/train/314.png +../../data/yoloGtold1/train/315.png +../../data/yoloGtold1/train/316.png +../../data/yoloGtold1/train/317.png +../../data/yoloGtold1/train/318.png +../../data/yoloGtold1/train/319.png +../../data/yoloGtold1/train/320.png +../../data/yoloGtold1/train/321.png +../../data/yoloGtold1/train/322.png +../../data/yoloGtold1/train/323.png +../../data/yoloGtold1/train/324.png +../../data/yoloGtold1/train/325.png +../../data/yoloGtold1/train/326.png +../../data/yoloGtold1/train/327.png +../../data/yoloGtold1/train/328.png +../../data/yoloGtold1/train/329.png +../../data/yoloGtold1/train/330.png +../../data/yoloGtold1/train/331.png +../../data/yoloGtold1/train/332.png +../../data/yoloGtold1/train/333.png +../../data/yoloGtold1/train/334.png +../../data/yoloGtold1/train/335.png +../../data/yoloGtold1/train/336.png +../../data/yoloGtold1/train/337.png +../../data/yoloGtold1/train/338.png +../../data/yoloGtold1/train/339.png +../../data/yoloGtold1/train/340.png +../../data/yoloGtold1/train/341.png +../../data/yoloGtold1/train/342.png +../../data/yoloGtold1/train/343.png +../../data/yoloGtold1/train/344.png +../../data/yoloGtold1/train/345.png +../../data/yoloGtold1/train/346.png +../../data/yoloGtold1/train/347.png +../../data/yoloGtold1/train/348.png +../../data/yoloGtold1/train/349.png +../../data/yoloGtold1/train/350.png +../../data/yoloGtold1/train/351.png +../../data/yoloGtold1/train/352.png +../../data/yoloGtold1/train/353.png +../../data/yoloGtold1/train/354.png +../../data/yoloGtold1/train/355.png +../../data/yoloGtold1/train/356.png +../../data/yoloGtold1/train/357.png +../../data/yoloGtold1/train/358.png +../../data/yoloGtold1/train/359.png +../../data/yoloGtold1/train/360.png +../../data/yoloGtold1/train/361.png +../../data/yoloGtold1/train/362.png +../../data/yoloGtold1/train/363.png +../../data/yoloGtold1/train/364.png +../../data/yoloGtold1/train/365.png +../../data/yoloGtold1/train/366.png +../../data/yoloGtold1/train/367.png +../../data/yoloGtold1/train/368.png +../../data/yoloGtold1/train/369.png +../../data/yoloGtold1/train/370.png +../../data/yoloGtold1/train/371.png +../../data/yoloGtold1/train/372.png +../../data/yoloGtold1/train/373.png +../../data/yoloGtold1/train/374.png +../../data/yoloGtold1/train/375.png +../../data/yoloGtold1/train/376.png +../../data/yoloGtold1/train/377.png +../../data/yoloGtold1/train/378.png +../../data/yoloGtold1/train/379.png +../../data/yoloGtold1/train/380.png +../../data/yoloGtold1/train/381.png +../../data/yoloGtold1/train/382.png +../../data/yoloGtold1/train/383.png +../../data/yoloGtold1/train/384.png +../../data/yoloGtold1/train/385.png +../../data/yoloGtold1/train/386.png +../../data/yoloGtold1/train/387.png +../../data/yoloGtold1/train/388.png +../../data/yoloGtold1/train/389.png +../../data/yoloGtold1/train/390.png +../../data/yoloGtold1/train/391.png +../../data/yoloGtold1/train/392.png +../../data/yoloGtold1/train/393.png +../../data/yoloGtold1/train/394.png +../../data/yoloGtold1/train/395.png +../../data/yoloGtold1/train/396.png +../../data/yoloGtold1/train/397.png +../../data/yoloGtold1/train/398.png +../../data/yoloGtold1/train/399.png +../../data/yoloGtold1/train/400.png +../../data/yoloGtold1/train/401.png +../../data/yoloGtold1/train/402.png +../../data/yoloGtold1/train/403.png +../../data/yoloGtold1/train/404.png +../../data/yoloGtold1/train/405.png +../../data/yoloGtold1/train/406.png +../../data/yoloGtold1/train/407.png +../../data/yoloGtold1/train/408.png +../../data/yoloGtold1/train/409.png +../../data/yoloGtold1/train/410.png +../../data/yoloGtold1/train/411.png +../../data/yoloGtold1/train/412.png +../../data/yoloGtold1/train/413.png +../../data/yoloGtold1/train/414.png +../../data/yoloGtold1/train/415.png +../../data/yoloGtold1/train/416.png +../../data/yoloGtold1/train/417.png +../../data/yoloGtold1/train/418.png +../../data/yoloGtold1/train/419.png +../../data/yoloGtold1/train/420.png +../../data/yoloGtold1/train/421.png +../../data/yoloGtold1/train/422.png +../../data/yoloGtold1/train/423.png +../../data/yoloGtold1/train/424.png +../../data/yoloGtold1/train/425.png +../../data/yoloGtold1/train/426.png +../../data/yoloGtold1/train/427.png +../../data/yoloGtold1/train/428.png +../../data/yoloGtold1/train/429.png +../../data/yoloGtold1/train/430.png +../../data/yoloGtold1/train/431.png +../../data/yoloGtold1/train/432.png +../../data/yoloGtold1/train/433.png +../../data/yoloGtold1/train/434.png +../../data/yoloGtold1/train/435.png +../../data/yoloGtold1/train/436.png +../../data/yoloGtold1/train/437.png +../../data/yoloGtold1/train/438.png +../../data/yoloGtold1/train/439.png +../../data/yoloGtold1/train/440.png +../../data/yoloGtold1/train/441.png +../../data/yoloGtold1/train/442.png +../../data/yoloGtold1/train/443.png +../../data/yoloGtold1/train/444.png +../../data/yoloGtold1/train/445.png +../../data/yoloGtold1/train/446.png +../../data/yoloGtold1/train/447.png +../../data/yoloGtold1/train/448.png +../../data/yoloGtold1/train/449.png +../../data/yoloGtold1/train/450.png +../../data/yoloGtold1/train/451.png +../../data/yoloGtold1/train/452.png +../../data/yoloGtold1/train/453.png +../../data/yoloGtold1/train/454.png +../../data/yoloGtold1/train/455.png +../../data/yoloGtold1/train/456.png +../../data/yoloGtold1/train/457.png +../../data/yoloGtold1/train/458.png +../../data/yoloGtold1/train/459.png +../../data/yoloGtold1/train/460.png +../../data/yoloGtold1/train/461.png +../../data/yoloGtold1/train/462.png +../../data/yoloGtold1/train/463.png +../../data/yoloGtold1/train/464.png +../../data/yoloGtold1/train/465.png +../../data/yoloGtold1/train/466.png +../../data/yoloGtold1/train/467.png +../../data/yoloGtold1/train/468.png +../../data/yoloGtold1/train/469.png +../../data/yoloGtold1/train/470.png +../../data/yoloGtold1/train/471.png +../../data/yoloGtold1/train/472.png +../../data/yoloGtold1/train/473.png +../../data/yoloGtold1/train/474.png +../../data/yoloGtold1/train/475.png +../../data/yoloGtold1/train/476.png +../../data/yoloGtold1/train/477.png +../../data/yoloGtold1/train/478.png +../../data/yoloGtold1/train/479.png +../../data/yoloGtold1/train/480.png +../../data/yoloGtold1/train/481.png +../../data/yoloGtold1/train/482.png +../../data/yoloGtold1/train/483.png +../../data/yoloGtold1/train/484.png +../../data/yoloGtold1/train/485.png +../../data/yoloGtold1/train/486.png +../../data/yoloGtold1/train/487.png +../../data/yoloGtold1/train/488.png +../../data/yoloGtold1/train/489.png +../../data/yoloGtold1/train/490.png +../../data/yoloGtold1/train/491.png +../../data/yoloGtold1/train/492.png +../../data/yoloGtold1/train/493.png +../../data/yoloGtold1/train/494.png +../../data/yoloGtold1/train/495.png +../../data/yoloGtold1/train/496.png +../../data/yoloGtold1/train/497.png +../../data/yoloGtold1/train/498.png +../../data/yoloGtold1/train/499.png +../../data/yoloGtold1/train/500.png +../../data/yoloGtold1/train/501.png +../../data/yoloGtold1/train/502.png +../../data/yoloGtold1/train/503.png +../../data/yoloGtold1/train/504.png +../../data/yoloGtold1/train/505.png +../../data/yoloGtold1/train/506.png +../../data/yoloGtold1/train/507.png +../../data/yoloGtold1/train/508.png +../../data/yoloGtold1/train/509.png +../../data/yoloGtold1/train/510.png +../../data/yoloGtold1/train/511.png +../../data/yoloGtold1/train/512.png +../../data/yoloGtold1/train/513.png +../../data/yoloGtold1/train/514.png +../../data/yoloGtold1/train/515.png +../../data/yoloGtold1/train/516.png +../../data/yoloGtold1/train/517.png +../../data/yoloGtold1/train/518.png +../../data/yoloGtold1/train/519.png +../../data/yoloGtold1/train/520.png +../../data/yoloGtold1/train/521.png +../../data/yoloGtold1/train/522.png +../../data/yoloGtold1/train/523.png +../../data/yoloGtold1/train/524.png +../../data/yoloGtold1/train/525.png +../../data/yoloGtold1/train/526.png +../../data/yoloGtold1/train/527.png +../../data/yoloGtold1/train/528.png +../../data/yoloGtold1/train/529.png +../../data/yoloGtold1/train/530.png +../../data/yoloGtold1/train/531.png +../../data/yoloGtold1/train/532.png +../../data/yoloGtold1/train/533.png +../../data/yoloGtold1/train/534.png +../../data/yoloGtold1/train/535.png +../../data/yoloGtold1/train/536.png +../../data/yoloGtold1/train/537.png +../../data/yoloGtold1/train/538.png +../../data/yoloGtold1/train/539.png +../../data/yoloGtold1/train/540.png +../../data/yoloGtold1/train/541.png +../../data/yoloGtold1/train/542.png +../../data/yoloGtold1/train/543.png +../../data/yoloGtold1/train/544.png +../../data/yoloGtold1/train/545.png +../../data/yoloGtold1/train/546.png +../../data/yoloGtold1/train/547.png +../../data/yoloGtold1/train/548.png +../../data/yoloGtold1/train/549.png +../../data/yoloGtold1/train/550.png +../../data/yoloGtold1/train/551.png +../../data/yoloGtold1/train/552.png +../../data/yoloGtold1/train/553.png +../../data/yoloGtold1/train/554.png +../../data/yoloGtold1/train/555.png +../../data/yoloGtold1/train/556.png +../../data/yoloGtold1/train/557.png +../../data/yoloGtold1/train/558.png +../../data/yoloGtold1/train/559.png +../../data/yoloGtold1/train/560.png +../../data/yoloGtold1/train/561.png +../../data/yoloGtold1/train/562.png +../../data/yoloGtold1/train/563.png +../../data/yoloGtold1/train/564.png +../../data/yoloGtold1/train/565.png +../../data/yoloGtold1/train/566.png +../../data/yoloGtold1/train/567.png +../../data/yoloGtold1/train/568.png +../../data/yoloGtold1/train/569.png +../../data/yoloGtold1/train/570.png +../../data/yoloGtold1/train/571.png +../../data/yoloGtold1/train/572.png +../../data/yoloGtold1/train/573.png +../../data/yoloGtold1/train/574.png +../../data/yoloGtold1/train/575.png +../../data/yoloGtold1/train/576.png +../../data/yoloGtold1/train/577.png +../../data/yoloGtold1/train/578.png +../../data/yoloGtold1/train/579.png +../../data/yoloGtold1/train/580.png +../../data/yoloGtold1/train/581.png +../../data/yoloGtold1/train/582.png +../../data/yoloGtold1/train/583.png +../../data/yoloGtold1/train/584.png +../../data/yoloGtold1/train/585.png +../../data/yoloGtold1/train/586.png +../../data/yoloGtold1/train/587.png +../../data/yoloGtold1/train/588.png +../../data/yoloGtold1/train/589.png +../../data/yoloGtold1/train/590.png +../../data/yoloGtold1/train/591.png +../../data/yoloGtold1/train/592.png +../../data/yoloGtold1/train/593.png +../../data/yoloGtold1/train/594.png +../../data/yoloGtold1/train/595.png +../../data/yoloGtold1/train/596.png +../../data/yoloGtold1/train/597.png +../../data/yoloGtold1/train/598.png +../../data/yoloGtold1/train/599.png +../../data/yoloGtold1/train/600.png +../../data/yoloGtold1/train/601.png +../../data/yoloGtold1/train/602.png +../../data/yoloGtold1/train/603.png +../../data/yoloGtold1/train/604.png +../../data/yoloGtold1/train/605.png +../../data/yoloGtold1/train/606.png +../../data/yoloGtold1/train/607.png +../../data/yoloGtold1/train/608.png +../../data/yoloGtold1/train/609.png +../../data/yoloGtold1/train/610.png +../../data/yoloGtold1/train/611.png +../../data/yoloGtold1/train/612.png +../../data/yoloGtold1/train/613.png +../../data/yoloGtold1/train/614.png +../../data/yoloGtold1/train/615.png +../../data/yoloGtold1/train/616.png +../../data/yoloGtold1/train/617.png +../../data/yoloGtold1/train/618.png +../../data/yoloGtold1/train/619.png +../../data/yoloGtold1/train/620.png +../../data/yoloGtold1/train/621.png +../../data/yoloGtold1/train/622.png +../../data/yoloGtold1/train/623.png +../../data/yoloGtold1/train/624.png +../../data/yoloGtold1/train/625.png +../../data/yoloGtold1/train/626.png +../../data/yoloGtold1/train/627.png +../../data/yoloGtold1/train/628.png +../../data/yoloGtold1/train/629.png +../../data/yoloGtold1/train/630.png +../../data/yoloGtold1/train/631.png +../../data/yoloGtold1/train/632.png +../../data/yoloGtold1/train/633.png +../../data/yoloGtold1/train/634.png +../../data/yoloGtold1/train/635.png +../../data/yoloGtold1/train/636.png +../../data/yoloGtold1/train/637.png +../../data/yoloGtold1/train/638.png +../../data/yoloGtold1/train/639.png +../../data/yoloGtold1/train/640.png +../../data/yoloGtold1/train/641.png +../../data/yoloGtold1/train/642.png +../../data/yoloGtold1/train/643.png +../../data/yoloGtold1/train/644.png +../../data/yoloGtold1/train/645.png +../../data/yoloGtold1/train/646.png +../../data/yoloGtold1/train/647.png +../../data/yoloGtold1/train/648.png +../../data/yoloGtold1/train/649.png +../../data/yoloGtold1/train/650.png +../../data/yoloGtold1/train/651.png +../../data/yoloGtold1/train/652.png +../../data/yoloGtold1/train/653.png +../../data/yoloGtold1/train/654.png +../../data/yoloGtold1/train/655.png +../../data/yoloGtold1/train/656.png +../../data/yoloGtold1/train/657.png +../../data/yoloGtold1/train/658.png +../../data/yoloGtold1/train/659.png +../../data/yoloGtold1/train/660.png +../../data/yoloGtold1/train/661.png +../../data/yoloGtold1/train/662.png +../../data/yoloGtold1/train/663.png +../../data/yoloGtold1/train/664.png +../../data/yoloGtold1/train/665.png +../../data/yoloGtold1/train/666.png +../../data/yoloGtold1/train/667.png +../../data/yoloGtold1/train/668.png +../../data/yoloGtold1/train/669.png +../../data/yoloGtold1/train/670.png +../../data/yoloGtold1/train/671.png +../../data/yoloGtold1/train/672.png +../../data/yoloGtold1/train/673.png +../../data/yoloGtold1/train/674.png +../../data/yoloGtold1/train/675.png +../../data/yoloGtold1/train/676.png +../../data/yoloGtold1/train/677.png +../../data/yoloGtold1/train/678.png +../../data/yoloGtold1/train/679.png +../../data/yoloGtold1/train/680.png +../../data/yoloGtold1/train/681.png +../../data/yoloGtold1/train/682.png +../../data/yoloGtold1/train/683.png +../../data/yoloGtold1/train/684.png +../../data/yoloGtold1/train/685.png +../../data/yoloGtold1/train/686.png +../../data/yoloGtold1/train/687.png +../../data/yoloGtold1/train/688.png +../../data/yoloGtold1/train/689.png +../../data/yoloGtold1/train/690.png +../../data/yoloGtold1/train/691.png +../../data/yoloGtold1/train/692.png +../../data/yoloGtold1/train/693.png +../../data/yoloGtold1/train/694.png +../../data/yoloGtold1/train/695.png +../../data/yoloGtold1/train/696.png +../../data/yoloGtold1/train/697.png +../../data/yoloGtold1/train/698.png +../../data/yoloGtold1/train/699.png +../../data/yoloGtold1/train/700.png +../../data/yoloGtold1/train/701.png +../../data/yoloGtold1/train/702.png +../../data/yoloGtold1/train/703.png +../../data/yoloGtold1/train/704.png +../../data/yoloGtold1/train/705.png +../../data/yoloGtold1/train/706.png +../../data/yoloGtold1/train/707.png +../../data/yoloGtold1/train/708.png +../../data/yoloGtold1/train/709.png +../../data/yoloGtold1/train/710.png +../../data/yoloGtold1/train/711.png +../../data/yoloGtold1/train/712.png +../../data/yoloGtold1/train/713.png +../../data/yoloGtold1/train/714.png +../../data/yoloGtold1/train/715.png +../../data/yoloGtold1/train/716.png +../../data/yoloGtold1/train/717.png +../../data/yoloGtold1/train/718.png +../../data/yoloGtold1/train/719.png +../../data/yoloGtold1/train/720.png +../../data/yoloGtold1/train/721.png +../../data/yoloGtold1/train/722.png +../../data/yoloGtold1/train/723.png +../../data/yoloGtold1/train/724.png +../../data/yoloGtold1/train/725.png +../../data/yoloGtold1/train/726.png +../../data/yoloGtold1/train/727.png +../../data/yoloGtold1/train/728.png +../../data/yoloGtold1/train/729.png +../../data/yoloGtold1/train/730.png +../../data/yoloGtold1/train/731.png +../../data/yoloGtold1/train/732.png +../../data/yoloGtold1/train/733.png +../../data/yoloGtold1/train/734.png +../../data/yoloGtold1/train/735.png +../../data/yoloGtold1/train/736.png +../../data/yoloGtold1/train/737.png +../../data/yoloGtold1/train/738.png +../../data/yoloGtold1/train/739.png +../../data/yoloGtold1/train/740.png +../../data/yoloGtold1/train/741.png +../../data/yoloGtold1/train/742.png +../../data/yoloGtold1/train/743.png +../../data/yoloGtold1/train/744.png +../../data/yoloGtold1/train/745.png +../../data/yoloGtold1/train/746.png +../../data/yoloGtold1/train/747.png +../../data/yoloGtold1/train/748.png +../../data/yoloGtold1/train/749.png +../../data/yoloGtold1/train/750.png +../../data/yoloGtold1/train/751.png +../../data/yoloGtold1/train/752.png +../../data/yoloGtold1/train/753.png +../../data/yoloGtold1/train/754.png +../../data/yoloGtold1/train/755.png +../../data/yoloGtold1/train/756.png +../../data/yoloGtold1/train/757.png +../../data/yoloGtold1/train/758.png +../../data/yoloGtold1/train/759.png +../../data/yoloGtold1/train/760.png +../../data/yoloGtold1/train/761.png +../../data/yoloGtold1/train/762.png +../../data/yoloGtold1/train/763.png +../../data/yoloGtold1/train/764.png +../../data/yoloGtold1/train/765.png +../../data/yoloGtold1/train/766.png +../../data/yoloGtold1/train/767.png +../../data/yoloGtold1/train/768.png +../../data/yoloGtold1/train/769.png +../../data/yoloGtold1/train/770.png +../../data/yoloGtold1/train/771.png +../../data/yoloGtold1/train/772.png +../../data/yoloGtold1/train/773.png +../../data/yoloGtold1/train/774.png +../../data/yoloGtold1/train/775.png +../../data/yoloGtold1/train/776.png +../../data/yoloGtold1/train/777.png +../../data/yoloGtold1/train/778.png +../../data/yoloGtold1/train/779.png +../../data/yoloGtold1/train/780.png +../../data/yoloGtold1/train/781.png +../../data/yoloGtold1/train/782.png +../../data/yoloGtold1/train/783.png +../../data/yoloGtold1/train/784.png +../../data/yoloGtold1/train/785.png +../../data/yoloGtold1/train/786.png +../../data/yoloGtold1/train/787.png +../../data/yoloGtold1/train/788.png +../../data/yoloGtold1/train/789.png +../../data/yoloGtold1/train/790.png +../../data/yoloGtold1/train/791.png +../../data/yoloGtold1/train/792.png +../../data/yoloGtold1/train/793.png +../../data/yoloGtold1/train/794.png +../../data/yoloGtold1/train/795.png +../../data/yoloGtold1/train/796.png +../../data/yoloGtold1/train/797.png +../../data/yoloGtold1/train/798.png +../../data/yoloGtold1/train/799.png +../../data/yoloGtold1/train/800.png +../../data/yoloGtold1/train/801.png +../../data/yoloGtold1/train/802.png +../../data/yoloGtold1/train/803.png +../../data/yoloGtold1/train/804.png +../../data/yoloGtold1/train/805.png +../../data/yoloGtold1/train/806.png +../../data/yoloGtold1/train/807.png +../../data/yoloGtold1/train/808.png +../../data/yoloGtold1/train/809.png +../../data/yoloGtold1/train/810.png +../../data/yoloGtold1/train/811.png +../../data/yoloGtold1/train/812.png +../../data/yoloGtold1/train/813.png +../../data/yoloGtold1/train/814.png +../../data/yoloGtold1/train/815.png +../../data/yoloGtold1/train/816.png +../../data/yoloGtold1/train/817.png +../../data/yoloGtold1/train/818.png +../../data/yoloGtold1/train/819.png +../../data/yoloGtold1/train/820.png +../../data/yoloGtold1/train/821.png +../../data/yoloGtold1/train/822.png +../../data/yoloGtold1/train/823.png +../../data/yoloGtold1/train/824.png +../../data/yoloGtold1/train/825.png +../../data/yoloGtold1/train/826.png +../../data/yoloGtold1/train/827.png +../../data/yoloGtold1/train/828.png +../../data/yoloGtold1/train/829.png +../../data/yoloGtold1/train/830.png +../../data/yoloGtold1/train/831.png +../../data/yoloGtold1/train/832.png +../../data/yoloGtold1/train/833.png +../../data/yoloGtold1/train/834.png +../../data/yoloGtold1/train/835.png +../../data/yoloGtold1/train/836.png +../../data/yoloGtold1/train/837.png +../../data/yoloGtold1/train/838.png +../../data/yoloGtold1/train/839.png +../../data/yoloGtold1/train/840.png +../../data/yoloGtold1/train/841.png +../../data/yoloGtold1/train/842.png +../../data/yoloGtold1/train/843.png +../../data/yoloGtold1/train/844.png +../../data/yoloGtold1/train/845.png +../../data/yoloGtold1/train/846.png +../../data/yoloGtold1/train/847.png +../../data/yoloGtold1/train/848.png +../../data/yoloGtold1/train/849.png +../../data/yoloGtold1/train/850.png +../../data/yoloGtold1/train/851.png +../../data/yoloGtold1/train/852.png +../../data/yoloGtold1/train/853.png +../../data/yoloGtold1/train/854.png +../../data/yoloGtold1/train/855.png +../../data/yoloGtold1/train/856.png +../../data/yoloGtold1/train/857.png +../../data/yoloGtold1/train/858.png +../../data/yoloGtold1/train/859.png +../../data/yoloGtold1/train/860.png +../../data/yoloGtold1/train/861.png +../../data/yoloGtold1/train/862.png +../../data/yoloGtold1/train/863.png +../../data/yoloGtold1/train/864.png +../../data/yoloGtold1/train/865.png +../../data/yoloGtold1/train/866.png +../../data/yoloGtold1/train/867.png +../../data/yoloGtold1/train/868.png +../../data/yoloGtold1/train/869.png +../../data/yoloGtold1/train/870.png +../../data/yoloGtold1/train/871.png +../../data/yoloGtold1/train/872.png +../../data/yoloGtold1/train/873.png +../../data/yoloGtold1/train/874.png +../../data/yoloGtold1/train/875.png +../../data/yoloGtold1/train/876.png +../../data/yoloGtold1/train/877.png +../../data/yoloGtold1/train/878.png +../../data/yoloGtold1/train/879.png +../../data/yoloGtold1/train/880.png +../../data/yoloGtold1/train/881.png +../../data/yoloGtold1/train/882.png +../../data/yoloGtold1/train/883.png +../../data/yoloGtold1/train/884.png +../../data/yoloGtold1/train/885.png +../../data/yoloGtold1/train/886.png +../../data/yoloGtold1/train/887.png +../../data/yoloGtold1/train/888.png +../../data/yoloGtold1/train/889.png +../../data/yoloGtold1/train/890.png +../../data/yoloGtold1/train/891.png +../../data/yoloGtold1/train/892.png +../../data/yoloGtold1/train/893.png +../../data/yoloGtold1/train/894.png +../../data/yoloGtold1/train/895.png +../../data/yoloGtold1/train/896.png +../../data/yoloGtold1/train/897.png +../../data/yoloGtold1/train/898.png +../../data/yoloGtold1/train/899.png +../../data/yoloGtold1/train/900.png +../../data/yoloGtold1/train/901.png +../../data/yoloGtold1/train/902.png +../../data/yoloGtold1/train/903.png +../../data/yoloGtold1/train/904.png +../../data/yoloGtold1/train/905.png +../../data/yoloGtold1/train/906.png +../../data/yoloGtold1/train/907.png +../../data/yoloGtold1/train/908.png +../../data/yoloGtold1/train/909.png +../../data/yoloGtold1/train/910.png +../../data/yoloGtold1/train/911.png +../../data/yoloGtold1/train/912.png +../../data/yoloGtold1/train/913.png +../../data/yoloGtold1/train/914.png +../../data/yoloGtold1/train/915.png +../../data/yoloGtold1/train/916.png +../../data/yoloGtold1/train/917.png +../../data/yoloGtold1/train/918.png +../../data/yoloGtold1/train/919.png +../../data/yoloGtold1/train/920.png +../../data/yoloGtold1/train/921.png +../../data/yoloGtold1/train/922.png +../../data/yoloGtold1/train/923.png +../../data/yoloGtold1/train/924.png +../../data/yoloGtold1/train/925.png +../../data/yoloGtold1/train/926.png +../../data/yoloGtold1/train/927.png +../../data/yoloGtold1/train/928.png +../../data/yoloGtold1/train/929.png +../../data/yoloGtold1/train/930.png +../../data/yoloGtold1/train/931.png +../../data/yoloGtold1/train/932.png +../../data/yoloGtold1/train/933.png +../../data/yoloGtold1/train/934.png +../../data/yoloGtold1/train/935.png +../../data/yoloGtold1/train/936.png +../../data/yoloGtold1/train/937.png +../../data/yoloGtold1/train/938.png +../../data/yoloGtold1/train/939.png +../../data/yoloGtold1/train/940.png +../../data/yoloGtold1/train/941.png +../../data/yoloGtold1/train/942.png +../../data/yoloGtold1/train/943.png +../../data/yoloGtold1/train/944.png +../../data/yoloGtold1/train/945.png +../../data/yoloGtold1/train/946.png +../../data/yoloGtold1/train/947.png +../../data/yoloGtold1/train/948.png +../../data/yoloGtold1/train/949.png +../../data/yoloGtold1/train/950.png +../../data/yoloGtold1/train/951.png +../../data/yoloGtold1/train/952.png +../../data/yoloGtold1/train/953.png +../../data/yoloGtold1/train/954.png +../../data/yoloGtold1/train/955.png +../../data/yoloGtold1/train/956.png +../../data/yoloGtold1/train/957.png +../../data/yoloGtold1/train/958.png +../../data/yoloGtold1/train/959.png +../../data/yoloGtold1/train/960.png +../../data/yoloGtold1/train/961.png +../../data/yoloGtold1/train/962.png +../../data/yoloGtold1/train/963.png +../../data/yoloGtold1/train/964.png +../../data/yoloGtold1/train/965.png +../../data/yoloGtold1/train/966.png +../../data/yoloGtold1/train/967.png +../../data/yoloGtold1/train/968.png +../../data/yoloGtold1/train/969.png +../../data/yoloGtold1/train/970.png +../../data/yoloGtold1/train/971.png +../../data/yoloGtold1/train/972.png +../../data/yoloGtold1/train/973.png +../../data/yoloGtold1/train/974.png +../../data/yoloGtold1/train/975.png +../../data/yoloGtold1/train/976.png +../../data/yoloGtold1/train/977.png +../../data/yoloGtold1/train/978.png +../../data/yoloGtold1/train/979.png +../../data/yoloGtold1/train/980.png +../../data/yoloGtold1/train/981.png +../../data/yoloGtold1/train/982.png +../../data/yoloGtold1/train/983.png +../../data/yoloGtold1/train/984.png +../../data/yoloGtold1/train/985.png +../../data/yoloGtold1/train/986.png +../../data/yoloGtold1/train/987.png +../../data/yoloGtold1/train/988.png +../../data/yoloGtold1/train/989.png +../../data/yoloGtold1/train/990.png +../../data/yoloGtold1/train/991.png +../../data/yoloGtold1/train/992.png +../../data/yoloGtold1/train/993.png +../../data/yoloGtold1/train/994.png +../../data/yoloGtold1/train/995.png +../../data/yoloGtold1/train/996.png +../../data/yoloGtold1/train/997.png +../../data/yoloGtold1/train/998.png +../../data/yoloGtold1/train/999.png +../../data/yoloGtold1/train/1000.png +../../data/yoloGtold1/train/1001.png +../../data/yoloGtold1/train/1002.png +../../data/yoloGtold1/train/1003.png +../../data/yoloGtold1/train/1004.png +../../data/yoloGtold1/train/1005.png +../../data/yoloGtold1/train/1006.png +../../data/yoloGtold1/train/1007.png +../../data/yoloGtold1/train/1008.png +../../data/yoloGtold1/train/1009.png +../../data/yoloGtold1/train/1010.png +../../data/yoloGtold1/train/1011.png +../../data/yoloGtold1/train/1012.png +../../data/yoloGtold1/train/1013.png +../../data/yoloGtold1/train/1014.png +../../data/yoloGtold1/train/1015.png +../../data/yoloGtold1/train/1016.png +../../data/yoloGtold1/train/1017.png +../../data/yoloGtold1/train/1018.png +../../data/yoloGtold1/train/1019.png +../../data/yoloGtold1/train/1020.png +../../data/yoloGtold1/train/1021.png +../../data/yoloGtold1/train/1022.png +../../data/yoloGtold1/train/1023.png +../../data/yoloGtold1/train/1024.png +../../data/yoloGtold1/train/1025.png +../../data/yoloGtold1/train/1026.png +../../data/yoloGtold1/train/1027.png +../../data/yoloGtold1/train/1028.png +../../data/yoloGtold1/train/1029.png +../../data/yoloGtold1/train/1030.png +../../data/yoloGtold1/train/1031.png +../../data/yoloGtold1/train/1032.png +../../data/yoloGtold1/train/1033.png +../../data/yoloGtold1/train/1034.png +../../data/yoloGtold1/train/1035.png +../../data/yoloGtold1/train/1036.png +../../data/yoloGtold1/train/1037.png +../../data/yoloGtold1/train/1038.png +../../data/yoloGtold1/train/1039.png +../../data/yoloGtold1/train/1040.png +../../data/yoloGtold1/train/1041.png +../../data/yoloGtold1/train/1042.png +../../data/yoloGtold1/train/1043.png +../../data/yoloGtold1/train/1044.png +../../data/yoloGtold1/train/1045.png +../../data/yoloGtold1/train/1046.png +../../data/yoloGtold1/train/1047.png +../../data/yoloGtold1/train/1048.png +../../data/yoloGtold1/train/1049.png +../../data/yoloGtold1/train/1050.png +../../data/yoloGtold1/train/1051.png +../../data/yoloGtold1/train/1052.png +../../data/yoloGtold1/train/1053.png +../../data/yoloGtold1/train/1054.png +../../data/yoloGtold1/train/1055.png +../../data/yoloGtold1/train/1056.png +../../data/yoloGtold1/train/1057.png +../../data/yoloGtold1/train/1058.png +../../data/yoloGtold1/train/1059.png +../../data/yoloGtold1/train/1060.png +../../data/yoloGtold1/train/1061.png +../../data/yoloGtold1/train/1062.png +../../data/yoloGtold1/train/1063.png +../../data/yoloGtold1/train/1064.png +../../data/yoloGtold1/train/1065.png +../../data/yoloGtold1/train/1066.png +../../data/yoloGtold1/train/1067.png +../../data/yoloGtold1/train/1068.png +../../data/yoloGtold1/train/1069.png +../../data/yoloGtold1/train/1070.png +../../data/yoloGtold1/train/1071.png +../../data/yoloGtold1/train/1072.png +../../data/yoloGtold1/train/1073.png +../../data/yoloGtold1/train/1074.png +../../data/yoloGtold1/train/1075.png +../../data/yoloGtold1/train/1076.png +../../data/yoloGtold1/train/1077.png +../../data/yoloGtold1/train/1078.png +../../data/yoloGtold1/train/1079.png +../../data/yoloGtold1/train/1080.png +../../data/yoloGtold1/train/1081.png +../../data/yoloGtold1/train/1082.png +../../data/yoloGtold1/train/1083.png +../../data/yoloGtold1/train/1084.png +../../data/yoloGtold1/train/1085.png +../../data/yoloGtold1/train/1086.png +../../data/yoloGtold1/train/1087.png +../../data/yoloGtold1/train/1088.png +../../data/yoloGtold1/train/1089.png +../../data/yoloGtold1/train/1090.png +../../data/yoloGtold1/train/1091.png +../../data/yoloGtold1/train/1092.png +../../data/yoloGtold1/train/1093.png +../../data/yoloGtold1/train/1094.png +../../data/yoloGtold1/train/1095.png +../../data/yoloGtold1/train/1096.png +../../data/yoloGtold1/train/1097.png +../../data/yoloGtold1/train/1098.png +../../data/yoloGtold1/train/1099.png +../../data/yoloGtold1/train/1100.png +../../data/yoloGtold1/train/1101.png +../../data/yoloGtold1/train/1102.png +../../data/yoloGtold1/train/1103.png +../../data/yoloGtold1/train/1104.png +../../data/yoloGtold1/train/1105.png +../../data/yoloGtold1/train/1106.png +../../data/yoloGtold1/train/1107.png +../../data/yoloGtold1/train/1108.png +../../data/yoloGtold1/train/1109.png +../../data/yoloGtold1/train/1110.png +../../data/yoloGtold1/train/1111.png +../../data/yoloGtold1/train/1112.png +../../data/yoloGtold1/train/1113.png +../../data/yoloGtold1/train/1114.png +../../data/yoloGtold1/train/1115.png +../../data/yoloGtold1/train/1116.png +../../data/yoloGtold1/train/1117.png +../../data/yoloGtold1/train/1118.png +../../data/yoloGtold1/train/1119.png +../../data/yoloGtold1/train/1120.png +../../data/yoloGtold1/train/1121.png +../../data/yoloGtold1/train/1122.png +../../data/yoloGtold1/train/1123.png +../../data/yoloGtold1/train/1124.png +../../data/yoloGtold1/train/1125.png +../../data/yoloGtold1/train/1126.png +../../data/yoloGtold1/train/1127.png +../../data/yoloGtold1/train/1128.png +../../data/yoloGtold1/train/1129.png +../../data/yoloGtold1/train/1130.png +../../data/yoloGtold1/train/1131.png +../../data/yoloGtold1/train/1132.png +../../data/yoloGtold1/train/1133.png +../../data/yoloGtold1/train/1134.png +../../data/yoloGtold1/train/1135.png +../../data/yoloGtold1/train/1136.png +../../data/yoloGtold1/train/1137.png +../../data/yoloGtold1/train/1138.png +../../data/yoloGtold1/train/1139.png +../../data/yoloGtold1/train/1140.png +../../data/yoloGtold1/train/1141.png +../../data/yoloGtold1/train/1142.png +../../data/yoloGtold1/train/1143.png +../../data/yoloGtold1/train/1144.png +../../data/yoloGtold1/train/1145.png +../../data/yoloGtold1/train/1146.png +../../data/yoloGtold1/train/1147.png +../../data/yoloGtold1/train/1148.png +../../data/yoloGtold1/train/1149.png +../../data/yoloGtold1/train/1150.png +../../data/yoloGtold1/train/1151.png +../../data/yoloGtold1/train/1152.png +../../data/yoloGtold1/train/1153.png +../../data/yoloGtold1/train/1154.png +../../data/yoloGtold1/train/1155.png +../../data/yoloGtold1/train/1156.png +../../data/yoloGtold1/train/1157.png +../../data/yoloGtold1/train/1158.png +../../data/yoloGtold1/train/1159.png +../../data/yoloGtold1/train/1160.png +../../data/yoloGtold1/train/1161.png +../../data/yoloGtold1/train/1162.png +../../data/yoloGtold1/train/1163.png +../../data/yoloGtold1/train/1164.png +../../data/yoloGtold1/train/1165.png +../../data/yoloGtold1/train/1166.png +../../data/yoloGtold1/train/1167.png +../../data/yoloGtold1/train/1168.png +../../data/yoloGtold1/train/1169.png +../../data/yoloGtold1/train/1170.png +../../data/yoloGtold1/train/1171.png +../../data/yoloGtold1/train/1172.png +../../data/yoloGtold1/train/1173.png +../../data/yoloGtold1/train/1174.png +../../data/yoloGtold1/train/1175.png +../../data/yoloGtold1/train/1176.png +../../data/yoloGtold1/train/1177.png +../../data/yoloGtold1/train/1178.png +../../data/yoloGtold1/train/1179.png +../../data/yoloGtold1/train/1180.png +../../data/yoloGtold1/train/1181.png +../../data/yoloGtold1/train/1182.png +../../data/yoloGtold1/train/1183.png +../../data/yoloGtold1/train/1184.png +../../data/yoloGtold1/train/1185.png +../../data/yoloGtold1/train/1186.png +../../data/yoloGtold1/train/1187.png +../../data/yoloGtold1/train/1188.png +../../data/yoloGtold1/train/1189.png +../../data/yoloGtold1/train/1190.png +../../data/yoloGtold1/train/1191.png +../../data/yoloGtold1/train/1192.png +../../data/yoloGtold1/train/1193.png +../../data/yoloGtold1/train/1194.png +../../data/yoloGtold1/train/1195.png +../../data/yoloGtold1/train/1196.png +../../data/yoloGtold1/train/1197.png +../../data/yoloGtold1/train/1198.png +../../data/yoloGtold1/train/1199.png +../../data/yoloGtold1/train/1200.png +../../data/yoloGtold1/train/1201.png +../../data/yoloGtold1/train/1202.png +../../data/yoloGtold1/train/1203.png +../../data/yoloGtold1/train/1204.png +../../data/yoloGtold1/train/1205.png +../../data/yoloGtold1/train/1206.png +../../data/yoloGtold1/train/1207.png +../../data/yoloGtold1/train/1208.png +../../data/yoloGtold1/train/1209.png +../../data/yoloGtold1/train/1210.png +../../data/yoloGtold1/train/1211.png +../../data/yoloGtold1/train/1212.png +../../data/yoloGtold1/train/1213.png +../../data/yoloGtold1/train/1214.png +../../data/yoloGtold1/train/1215.png +../../data/yoloGtold1/train/1216.png +../../data/yoloGtold1/train/1217.png +../../data/yoloGtold1/train/1218.png +../../data/yoloGtold1/train/1219.png +../../data/yoloGtold1/train/1220.png +../../data/yoloGtold1/train/1221.png +../../data/yoloGtold1/train/1222.png +../../data/yoloGtold1/train/1223.png +../../data/yoloGtold1/train/1224.png +../../data/yoloGtold1/train/1225.png +../../data/yoloGtold1/train/1226.png +../../data/yoloGtold1/train/1227.png +../../data/yoloGtold1/train/1228.png +../../data/yoloGtold1/train/1229.png +../../data/yoloGtold1/train/1230.png +../../data/yoloGtold1/train/1231.png +../../data/yoloGtold1/train/1232.png +../../data/yoloGtold1/train/1233.png +../../data/yoloGtold1/train/1234.png +../../data/yoloGtold1/train/1235.png +../../data/yoloGtold1/train/1236.png +../../data/yoloGtold1/train/1237.png +../../data/yoloGtold1/train/1238.png +../../data/yoloGtold1/train/1239.png +../../data/yoloGtold1/train/1240.png +../../data/yoloGtold1/train/1241.png +../../data/yoloGtold1/train/1242.png +../../data/yoloGtold1/train/1243.png +../../data/yoloGtold1/train/1244.png +../../data/yoloGtold1/train/1245.png +../../data/yoloGtold1/train/1246.png +../../data/yoloGtold1/train/1247.png +../../data/yoloGtold1/train/1248.png +../../data/yoloGtold1/train/1249.png +../../data/yoloGtold1/train/1250.png +../../data/yoloGtold1/train/1251.png +../../data/yoloGtold1/train/1252.png +../../data/yoloGtold1/train/1253.png +../../data/yoloGtold1/train/1254.png +../../data/yoloGtold1/train/1255.png +../../data/yoloGtold1/train/1256.png +../../data/yoloGtold1/train/1257.png +../../data/yoloGtold1/train/1258.png +../../data/yoloGtold1/train/1259.png +../../data/yoloGtold1/train/1260.png +../../data/yoloGtold1/train/1261.png +../../data/yoloGtold1/train/1262.png +../../data/yoloGtold1/train/1263.png +../../data/yoloGtold1/train/1264.png +../../data/yoloGtold1/train/1265.png +../../data/yoloGtold1/train/1266.png +../../data/yoloGtold1/train/1267.png +../../data/yoloGtold1/train/1268.png +../../data/yoloGtold1/train/1269.png +../../data/yoloGtold1/train/1270.png +../../data/yoloGtold1/train/1271.png +../../data/yoloGtold1/train/1272.png +../../data/yoloGtold1/train/1273.png +../../data/yoloGtold1/train/1274.png +../../data/yoloGtold1/train/1275.png +../../data/yoloGtold1/train/1276.png +../../data/yoloGtold1/train/1277.png +../../data/yoloGtold1/train/1278.png +../../data/yoloGtold1/train/1279.png +../../data/yoloGtold1/train/1280.png +../../data/yoloGtold1/train/1281.png +../../data/yoloGtold1/train/1282.png +../../data/yoloGtold1/train/1283.png +../../data/yoloGtold1/train/1284.png +../../data/yoloGtold1/train/1285.png +../../data/yoloGtold1/train/1286.png +../../data/yoloGtold1/train/1287.png +../../data/yoloGtold1/train/1288.png +../../data/yoloGtold1/train/1289.png +../../data/yoloGtold1/train/1290.png +../../data/yoloGtold1/train/1291.png +../../data/yoloGtold1/train/1292.png +../../data/yoloGtold1/train/1293.png +../../data/yoloGtold1/train/1294.png +../../data/yoloGtold1/train/1295.png +../../data/yoloGtold1/train/1296.png +../../data/yoloGtold1/train/1297.png +../../data/yoloGtold1/train/1298.png +../../data/yoloGtold1/train/1299.png +../../data/yoloGtold1/train/1300.png +../../data/yoloGtold1/train/1301.png +../../data/yoloGtold1/train/1302.png +../../data/yoloGtold1/train/1303.png +../../data/yoloGtold1/train/1304.png +../../data/yoloGtold1/train/1305.png +../../data/yoloGtold1/train/1306.png +../../data/yoloGtold1/train/1307.png +../../data/yoloGtold1/train/1308.png +../../data/yoloGtold1/train/1309.png +../../data/yoloGtold1/train/1310.png +../../data/yoloGtold1/train/1311.png +../../data/yoloGtold1/train/1312.png +../../data/yoloGtold1/train/1313.png +../../data/yoloGtold1/train/1314.png +../../data/yoloGtold1/train/1315.png +../../data/yoloGtold1/train/1316.png +../../data/yoloGtold1/train/1317.png +../../data/yoloGtold1/train/1318.png +../../data/yoloGtold1/train/1319.png +../../data/yoloGtold1/train/1320.png +../../data/yoloGtold1/train/1321.png +../../data/yoloGtold1/train/1322.png +../../data/yoloGtold1/train/1323.png +../../data/yoloGtold1/train/1324.png +../../data/yoloGtold1/train/1325.png +../../data/yoloGtold1/train/1326.png +../../data/yoloGtold1/train/1327.png +../../data/yoloGtold1/train/1328.png +../../data/yoloGtold1/train/1329.png +../../data/yoloGtold1/train/1330.png +../../data/yoloGtold1/train/1331.png +../../data/yoloGtold1/train/1332.png +../../data/yoloGtold1/train/1333.png +../../data/yoloGtold1/train/1334.png +../../data/yoloGtold1/train/1335.png +../../data/yoloGtold1/train/1336.png +../../data/yoloGtold1/train/1337.png +../../data/yoloGtold1/train/1338.png +../../data/yoloGtold1/train/1339.png +../../data/yoloGtold1/train/1340.png +../../data/yoloGtold1/train/1341.png +../../data/yoloGtold1/train/1342.png +../../data/yoloGtold1/train/1343.png +../../data/yoloGtold1/train/1344.png +../../data/yoloGtold1/train/1345.png +../../data/yoloGtold1/train/1346.png +../../data/yoloGtold1/train/1347.png +../../data/yoloGtold1/train/1348.png +../../data/yoloGtold1/train/1349.png +../../data/yoloGtold1/train/1350.png +../../data/yoloGtold1/train/1351.png +../../data/yoloGtold1/train/1352.png +../../data/yoloGtold1/train/1353.png +../../data/yoloGtold1/train/1354.png +../../data/yoloGtold1/train/1355.png +../../data/yoloGtold1/train/1356.png +../../data/yoloGtold1/train/1357.png +../../data/yoloGtold1/train/1358.png +../../data/yoloGtold1/train/1359.png +../../data/yoloGtold1/train/1360.png +../../data/yoloGtold1/train/1361.png +../../data/yoloGtold1/train/1362.png +../../data/yoloGtold1/train/1363.png +../../data/yoloGtold1/train/1364.png +../../data/yoloGtold1/train/1365.png +../../data/yoloGtold1/train/1366.png +../../data/yoloGtold1/train/1367.png +../../data/yoloGtold1/train/1368.png +../../data/yoloGtold1/train/1369.png +../../data/yoloGtold1/train/1370.png +../../data/yoloGtold1/train/1371.png +../../data/yoloGtold1/train/1372.png +../../data/yoloGtold1/train/1373.png +../../data/yoloGtold1/train/1374.png +../../data/yoloGtold1/train/1375.png +../../data/yoloGtold1/train/1376.png +../../data/yoloGtold1/train/1377.png +../../data/yoloGtold1/train/1378.png +../../data/yoloGtold1/train/1379.png +../../data/yoloGtold1/train/1380.png +../../data/yoloGtold1/train/1381.png +../../data/yoloGtold1/train/1382.png +../../data/yoloGtold1/train/1383.png +../../data/yoloGtold1/train/1384.png +../../data/yoloGtold1/train/1385.png +../../data/yoloGtold1/train/1386.png +../../data/yoloGtold1/train/1387.png +../../data/yoloGtold1/train/1388.png +../../data/yoloGtold1/train/1389.png +../../data/yoloGtold1/train/1390.png +../../data/yoloGtold1/train/1391.png +../../data/yoloGtold1/train/1392.png +../../data/yoloGtold1/train/1393.png +../../data/yoloGtold1/train/1394.png +../../data/yoloGtold1/train/1395.png +../../data/yoloGtold1/train/1396.png +../../data/yoloGtold1/train/1397.png +../../data/yoloGtold1/train/1398.png +../../data/yoloGtold1/train/1399.png +../../data/yoloGtold1/train/1400.png +../../data/yoloGtold1/train/1401.png +../../data/yoloGtold1/train/1402.png +../../data/yoloGtold1/train/1403.png +../../data/yoloGtold1/train/1404.png +../../data/yoloGtold1/train/1405.png +../../data/yoloGtold1/train/1406.png +../../data/yoloGtold1/train/1407.png +../../data/yoloGtold1/train/1408.png +../../data/yoloGtold1/train/1409.png +../../data/yoloGtold1/train/1410.png +../../data/yoloGtold1/train/1411.png +../../data/yoloGtold1/train/1412.png +../../data/yoloGtold1/train/1413.png +../../data/yoloGtold1/train/1414.png +../../data/yoloGtold1/train/1415.png +../../data/yoloGtold1/train/1416.png +../../data/yoloGtold1/train/1417.png +../../data/yoloGtold1/train/1418.png +../../data/yoloGtold1/train/1419.png +../../data/yoloGtold1/train/1420.png +../../data/yoloGtold1/train/1421.png +../../data/yoloGtold1/train/1422.png +../../data/yoloGtold1/train/1423.png +../../data/yoloGtold1/train/1424.png +../../data/yoloGtold1/train/1425.png +../../data/yoloGtold1/train/1426.png +../../data/yoloGtold1/train/1427.png +../../data/yoloGtold1/train/1428.png +../../data/yoloGtold1/train/1429.png +../../data/yoloGtold1/train/1430.png +../../data/yoloGtold1/train/1431.png +../../data/yoloGtold1/train/1432.png +../../data/yoloGtold1/train/1433.png +../../data/yoloGtold1/train/1434.png +../../data/yoloGtold1/train/1435.png +../../data/yoloGtold1/train/1436.png +../../data/yoloGtold1/train/1437.png +../../data/yoloGtold1/train/1438.png +../../data/yoloGtold1/train/1439.png +../../data/yoloGtold1/train/1440.png +../../data/yoloGtold1/train/1441.png +../../data/yoloGtold1/train/1442.png +../../data/yoloGtold1/train/1443.png +../../data/yoloGtold1/train/1444.png +../../data/yoloGtold1/train/1445.png +../../data/yoloGtold1/train/1446.png +../../data/yoloGtold1/train/1447.png +../../data/yoloGtold1/train/1448.png +../../data/yoloGtold1/train/1449.png +../../data/yoloGtold1/train/1450.png +../../data/yoloGtold1/train/1451.png +../../data/yoloGtold1/train/1452.png +../../data/yoloGtold1/train/1453.png +../../data/yoloGtold1/train/1454.png +../../data/yoloGtold1/train/1455.png +../../data/yoloGtold1/train/1456.png +../../data/yoloGtold1/train/1457.png +../../data/yoloGtold1/train/1458.png +../../data/yoloGtold1/train/1459.png +../../data/yoloGtold1/train/1460.png +../../data/yoloGtold1/train/1461.png +../../data/yoloGtold1/train/1462.png +../../data/yoloGtold1/train/1463.png +../../data/yoloGtold1/train/1464.png +../../data/yoloGtold1/train/1465.png +../../data/yoloGtold1/train/1466.png +../../data/yoloGtold1/train/1467.png +../../data/yoloGtold1/train/1468.png +../../data/yoloGtold1/train/1469.png +../../data/yoloGtold1/train/1470.png +../../data/yoloGtold1/train/1471.png +../../data/yoloGtold1/train/1472.png +../../data/yoloGtold1/train/1473.png +../../data/yoloGtold1/train/1474.png +../../data/yoloGtold1/train/1475.png +../../data/yoloGtold1/train/1476.png +../../data/yoloGtold1/train/1477.png +../../data/yoloGtold1/train/1478.png +../../data/yoloGtold1/train/1479.png +../../data/yoloGtold1/train/1480.png +../../data/yoloGtold1/train/1481.png +../../data/yoloGtold1/train/1482.png +../../data/yoloGtold1/train/1483.png +../../data/yoloGtold1/train/1484.png +../../data/yoloGtold1/train/1485.png +../../data/yoloGtold1/train/1486.png +../../data/yoloGtold1/train/1487.png +../../data/yoloGtold1/train/1488.png +../../data/yoloGtold1/train/1489.png +../../data/yoloGtold1/train/1490.png +../../data/yoloGtold1/train/1491.png +../../data/yoloGtold1/train/1492.png +../../data/yoloGtold1/train/1493.png +../../data/yoloGtold1/train/1494.png +../../data/yoloGtold1/train/1495.png +../../data/yoloGtold1/train/1496.png +../../data/yoloGtold1/train/1497.png +../../data/yoloGtold1/train/1498.png +../../data/yoloGtold1/train/1499.png +../../data/yoloGtold1/train/1500.png +../../data/yoloGtold1/train/1501.png +../../data/yoloGtold1/train/1502.png +../../data/yoloGtold1/train/1503.png +../../data/yoloGtold1/train/1504.png +../../data/yoloGtold1/train/1505.png +../../data/yoloGtold1/train/1506.png +../../data/yoloGtold1/train/1507.png +../../data/yoloGtold1/train/1508.png +../../data/yoloGtold1/train/1509.png +../../data/yoloGtold1/train/1510.png +../../data/yoloGtold1/train/1511.png +../../data/yoloGtold1/train/1512.png +../../data/yoloGtold1/train/1513.png +../../data/yoloGtold1/train/1514.png +../../data/yoloGtold1/train/1515.png +../../data/yoloGtold1/train/1516.png +../../data/yoloGtold1/train/1517.png +../../data/yoloGtold1/train/1518.png +../../data/yoloGtold1/train/1519.png +../../data/yoloGtold1/train/1520.png +../../data/yoloGtold1/train/1521.png +../../data/yoloGtold1/train/1522.png +../../data/yoloGtold1/train/1523.png +../../data/yoloGtold1/train/1524.png +../../data/yoloGtold1/train/1525.png +../../data/yoloGtold1/train/1526.png +../../data/yoloGtold1/train/1527.png +../../data/yoloGtold1/train/1528.png +../../data/yoloGtold1/train/1529.png +../../data/yoloGtold1/train/1530.png +../../data/yoloGtold1/train/1531.png +../../data/yoloGtold1/train/1532.png +../../data/yoloGtold1/train/1533.png +../../data/yoloGtold1/train/1534.png +../../data/yoloGtold1/train/1535.png +../../data/yoloGtold1/train/1536.png +../../data/yoloGtold1/train/1537.png +../../data/yoloGtold1/train/1538.png +../../data/yoloGtold1/train/1539.png +../../data/yoloGtold1/train/1540.png +../../data/yoloGtold1/train/1541.png +../../data/yoloGtold1/train/1542.png +../../data/yoloGtold1/train/1543.png +../../data/yoloGtold1/train/1544.png +../../data/yoloGtold1/train/1545.png +../../data/yoloGtold1/train/1546.png +../../data/yoloGtold1/train/1547.png +../../data/yoloGtold1/train/1548.png +../../data/yoloGtold1/train/1549.png +../../data/yoloGtold1/train/1550.png +../../data/yoloGtold1/train/1551.png +../../data/yoloGtold1/train/1552.png +../../data/yoloGtold1/train/1553.png +../../data/yoloGtold1/train/1554.png +../../data/yoloGtold1/train/1555.png +../../data/yoloGtold1/train/1556.png +../../data/yoloGtold1/train/1557.png +../../data/yoloGtold1/train/1558.png +../../data/yoloGtold1/train/1559.png +../../data/yoloGtold1/train/1560.png +../../data/yoloGtold1/train/1561.png +../../data/yoloGtold1/train/1562.png +../../data/yoloGtold1/train/1563.png +../../data/yoloGtold1/train/1564.png +../../data/yoloGtold1/train/1565.png +../../data/yoloGtold1/train/1566.png +../../data/yoloGtold1/train/1567.png +../../data/yoloGtold1/train/1568.png +../../data/yoloGtold1/train/1569.png +../../data/yoloGtold1/train/1570.png +../../data/yoloGtold1/train/1571.png +../../data/yoloGtold1/train/1572.png +../../data/yoloGtold1/train/1573.png +../../data/yoloGtold1/train/1574.png +../../data/yoloGtold1/train/1575.png +../../data/yoloGtold1/train/1576.png +../../data/yoloGtold1/train/1577.png +../../data/yoloGtold1/train/1578.png +../../data/yoloGtold1/train/1579.png +../../data/yoloGtold1/train/1580.png +../../data/yoloGtold1/train/1581.png +../../data/yoloGtold1/train/1582.png +../../data/yoloGtold1/train/1583.png +../../data/yoloGtold1/train/1584.png +../../data/yoloGtold1/train/1585.png +../../data/yoloGtold1/train/1586.png +../../data/yoloGtold1/train/1587.png +../../data/yoloGtold1/train/1588.png +../../data/yoloGtold1/train/1589.png +../../data/yoloGtold1/train/1590.png +../../data/yoloGtold1/train/1591.png +../../data/yoloGtold1/train/1592.png +../../data/yoloGtold1/train/1593.png +../../data/yoloGtold1/train/1594.png +../../data/yoloGtold1/train/1595.png +../../data/yoloGtold1/train/1596.png +../../data/yoloGtold1/train/1597.png +../../data/yoloGtold1/train/1598.png +../../data/yoloGtold1/train/1599.png +../../data/yoloGtold1/train/1600.png +../../data/yoloGtold1/train/1601.png +../../data/yoloGtold1/train/1602.png +../../data/yoloGtold1/train/1603.png +../../data/yoloGtold1/train/1604.png +../../data/yoloGtold1/train/1605.png +../../data/yoloGtold1/train/1606.png +../../data/yoloGtold1/train/1607.png +../../data/yoloGtold1/train/1608.png +../../data/yoloGtold1/train/1609.png +../../data/yoloGtold1/train/1610.png +../../data/yoloGtold1/train/1611.png +../../data/yoloGtold1/train/1612.png +../../data/yoloGtold1/train/1613.png +../../data/yoloGtold1/train/1614.png +../../data/yoloGtold1/train/1615.png +../../data/yoloGtold1/train/1616.png +../../data/yoloGtold1/train/1617.png +../../data/yoloGtold1/train/1618.png +../../data/yoloGtold1/train/1619.png +../../data/yoloGtold1/train/1620.png +../../data/yoloGtold1/train/1621.png +../../data/yoloGtold1/train/1622.png +../../data/yoloGtold1/train/1623.png +../../data/yoloGtold1/train/1624.png +../../data/yoloGtold1/train/1625.png +../../data/yoloGtold1/train/1626.png +../../data/yoloGtold1/train/1627.png +../../data/yoloGtold1/train/1628.png +../../data/yoloGtold1/train/1629.png +../../data/yoloGtold1/train/1630.png +../../data/yoloGtold1/train/1631.png +../../data/yoloGtold1/train/1632.png +../../data/yoloGtold1/train/1633.png +../../data/yoloGtold1/train/1634.png +../../data/yoloGtold1/train/1635.png +../../data/yoloGtold1/train/1636.png +../../data/yoloGtold1/train/1637.png +../../data/yoloGtold1/train/1638.png +../../data/yoloGtold1/train/1639.png +../../data/yoloGtold1/train/1640.png +../../data/yoloGtold1/train/1641.png +../../data/yoloGtold1/train/1642.png +../../data/yoloGtold1/train/1643.png +../../data/yoloGtold1/train/1644.png +../../data/yoloGtold1/train/1645.png +../../data/yoloGtold1/train/1646.png +../../data/yoloGtold1/train/1647.png +../../data/yoloGtold1/train/1648.png +../../data/yoloGtold1/train/1649.png +../../data/yoloGtold1/train/1650.png +../../data/yoloGtold1/train/1651.png +../../data/yoloGtold1/train/1652.png +../../data/yoloGtold1/train/1653.png +../../data/yoloGtold1/train/1654.png +../../data/yoloGtold1/train/1655.png +../../data/yoloGtold1/train/1656.png +../../data/yoloGtold1/train/1657.png +../../data/yoloGtold1/train/1658.png +../../data/yoloGtold1/train/1659.png +../../data/yoloGtold1/train/1660.png +../../data/yoloGtold1/train/1661.png +../../data/yoloGtold1/train/1662.png +../../data/yoloGtold1/train/1663.png +../../data/yoloGtold1/train/1664.png +../../data/yoloGtold1/train/1665.png +../../data/yoloGtold1/train/1666.png +../../data/yoloGtold1/train/1667.png +../../data/yoloGtold1/train/1668.png +../../data/yoloGtold1/train/1669.png +../../data/yoloGtold1/train/1670.png +../../data/yoloGtold1/train/1671.png +../../data/yoloGtold1/train/1672.png +../../data/yoloGtold1/train/1673.png +../../data/yoloGtold1/train/1674.png +../../data/yoloGtold1/train/1675.png +../../data/yoloGtold1/train/1676.png +../../data/yoloGtold1/train/1677.png +../../data/yoloGtold1/train/1678.png +../../data/yoloGtold1/train/1679.png +../../data/yoloGtold1/train/1680.png +../../data/yoloGtold1/train/1681.png +../../data/yoloGtold1/train/1682.png +../../data/yoloGtold1/train/1683.png +../../data/yoloGtold1/train/1684.png +../../data/yoloGtold1/train/1685.png +../../data/yoloGtold1/train/1686.png +../../data/yoloGtold1/train/1687.png +../../data/yoloGtold1/train/1688.png +../../data/yoloGtold1/train/1689.png +../../data/yoloGtold1/train/1690.png +../../data/yoloGtold1/train/1691.png +../../data/yoloGtold1/train/1692.png +../../data/yoloGtold1/train/1693.png +../../data/yoloGtold1/train/1694.png +../../data/yoloGtold1/train/1695.png +../../data/yoloGtold1/train/1696.png +../../data/yoloGtold1/train/1697.png +../../data/yoloGtold1/train/1698.png +../../data/yoloGtold1/train/1699.png +../../data/yoloGtold1/train/1700.png +../../data/yoloGtold1/train/1701.png +../../data/yoloGtold1/train/1702.png +../../data/yoloGtold1/train/1703.png +../../data/yoloGtold1/train/1704.png +../../data/yoloGtold1/train/1705.png +../../data/yoloGtold1/train/1706.png +../../data/yoloGtold1/train/1707.png +../../data/yoloGtold1/train/1708.png +../../data/yoloGtold1/train/1709.png +../../data/yoloGtold1/train/1710.png +../../data/yoloGtold1/train/1711.png +../../data/yoloGtold1/train/1712.png +../../data/yoloGtold1/train/1713.png +../../data/yoloGtold1/train/1714.png +../../data/yoloGtold1/train/1715.png +../../data/yoloGtold1/train/1716.png +../../data/yoloGtold1/train/1717.png +../../data/yoloGtold1/train/1718.png +../../data/yoloGtold1/train/1719.png +../../data/yoloGtold1/train/1720.png +../../data/yoloGtold1/train/1721.png +../../data/yoloGtold1/train/1722.png +../../data/yoloGtold1/train/1723.png +../../data/yoloGtold1/train/1724.png +../../data/yoloGtold1/train/1725.png +../../data/yoloGtold1/train/1726.png +../../data/yoloGtold1/train/1727.png +../../data/yoloGtold1/train/1728.png +../../data/yoloGtold1/train/1729.png +../../data/yoloGtold1/train/1730.png +../../data/yoloGtold1/train/1731.png +../../data/yoloGtold1/train/1732.png +../../data/yoloGtold1/train/1733.png +../../data/yoloGtold1/train/1734.png +../../data/yoloGtold1/train/1735.png +../../data/yoloGtold1/train/1736.png +../../data/yoloGtold1/train/1737.png +../../data/yoloGtold1/train/1738.png +../../data/yoloGtold1/train/1739.png +../../data/yoloGtold1/train/1740.png +../../data/yoloGtold1/train/1741.png +../../data/yoloGtold1/train/1742.png +../../data/yoloGtold1/train/1743.png +../../data/yoloGtold1/train/1744.png +../../data/yoloGtold1/train/1745.png +../../data/yoloGtold1/train/1746.png +../../data/yoloGtold1/train/1747.png +../../data/yoloGtold1/train/1748.png +../../data/yoloGtold1/train/1749.png +../../data/yoloGtold1/train/1750.png +../../data/yoloGtold1/train/1751.png +../../data/yoloGtold1/train/1752.png +../../data/yoloGtold1/train/1753.png +../../data/yoloGtold1/train/1754.png +../../data/yoloGtold1/train/1755.png +../../data/yoloGtold1/train/1756.png +../../data/yoloGtold1/train/1757.png +../../data/yoloGtold1/train/1758.png +../../data/yoloGtold1/train/1759.png +../../data/yoloGtold1/train/1760.png +../../data/yoloGtold1/train/1761.png +../../data/yoloGtold1/train/1762.png +../../data/yoloGtold1/train/1763.png +../../data/yoloGtold1/train/1764.png +../../data/yoloGtold1/train/1765.png +../../data/yoloGtold1/train/1766.png +../../data/yoloGtold1/train/1767.png +../../data/yoloGtold1/train/1768.png +../../data/yoloGtold1/train/1769.png +../../data/yoloGtold1/train/1770.png +../../data/yoloGtold1/train/1771.png +../../data/yoloGtold1/train/1772.png +../../data/yoloGtold1/train/1773.png +../../data/yoloGtold1/train/1774.png +../../data/yoloGtold1/train/1775.png +../../data/yoloGtold1/train/1776.png +../../data/yoloGtold1/train/1777.png +../../data/yoloGtold1/train/1778.png +../../data/yoloGtold1/train/1779.png +../../data/yoloGtold1/train/1780.png +../../data/yoloGtold1/train/1781.png +../../data/yoloGtold1/train/1782.png +../../data/yoloGtold1/train/1783.png +../../data/yoloGtold1/train/1784.png +../../data/yoloGtold1/train/1785.png +../../data/yoloGtold1/train/1786.png +../../data/yoloGtold1/train/1787.png +../../data/yoloGtold1/train/1788.png +../../data/yoloGtold1/train/1789.png +../../data/yoloGtold1/train/1790.png +../../data/yoloGtold1/train/1791.png +../../data/yoloGtold1/train/1792.png +../../data/yoloGtold1/train/1793.png +../../data/yoloGtold1/train/1794.png +../../data/yoloGtold1/train/1795.png +../../data/yoloGtold1/train/1796.png +../../data/yoloGtold1/train/1797.png +../../data/yoloGtold1/train/1798.png +../../data/yoloGtold1/train/1799.png +../../data/yoloGtold1/train/1800.png +../../data/yoloGtold1/train/1801.png +../../data/yoloGtold1/train/1802.png +../../data/yoloGtold1/train/1803.png +../../data/yoloGtold1/train/1804.png +../../data/yoloGtold1/train/1805.png +../../data/yoloGtold1/train/1806.png +../../data/yoloGtold1/train/1807.png +../../data/yoloGtold1/train/1808.png +../../data/yoloGtold1/train/1809.png +../../data/yoloGtold1/train/1810.png +../../data/yoloGtold1/train/1811.png +../../data/yoloGtold1/train/1812.png +../../data/yoloGtold1/train/1813.png +../../data/yoloGtold1/train/1814.png +../../data/yoloGtold1/train/1815.png +../../data/yoloGtold1/train/1816.png +../../data/yoloGtold1/train/1817.png +../../data/yoloGtold1/train/1818.png +../../data/yoloGtold1/train/1819.png +../../data/yoloGtold1/train/1820.png +../../data/yoloGtold1/train/1821.png +../../data/yoloGtold1/train/1822.png +../../data/yoloGtold1/train/1823.png +../../data/yoloGtold1/train/1824.png +../../data/yoloGtold1/train/1825.png +../../data/yoloGtold1/train/1826.png +../../data/yoloGtold1/train/1827.png +../../data/yoloGtold1/train/1828.png +../../data/yoloGtold1/train/1829.png +../../data/yoloGtold1/train/1830.png +../../data/yoloGtold1/train/1831.png +../../data/yoloGtold1/train/1832.png +../../data/yoloGtold1/train/1833.png +../../data/yoloGtold1/train/1834.png +../../data/yoloGtold1/train/1835.png +../../data/yoloGtold1/train/1836.png +../../data/yoloGtold1/train/1837.png +../../data/yoloGtold1/train/1838.png +../../data/yoloGtold1/train/1839.png +../../data/yoloGtold1/train/1840.png +../../data/yoloGtold1/train/1841.png +../../data/yoloGtold1/train/1842.png +../../data/yoloGtold1/train/1843.png +../../data/yoloGtold1/train/1844.png +../../data/yoloGtold1/train/1845.png +../../data/yoloGtold1/train/1846.png +../../data/yoloGtold1/train/1847.png +../../data/yoloGtold1/train/1848.png +../../data/yoloGtold1/train/1849.png +../../data/yoloGtold1/train/1850.png +../../data/yoloGtold1/train/1851.png +../../data/yoloGtold1/train/1852.png +../../data/yoloGtold1/train/1853.png +../../data/yoloGtold1/train/1854.png +../../data/yoloGtold1/train/1855.png +../../data/yoloGtold1/train/1856.png +../../data/yoloGtold1/train/1857.png +../../data/yoloGtold1/train/1858.png +../../data/yoloGtold1/train/1859.png +../../data/yoloGtold1/train/1860.png +../../data/yoloGtold1/train/1861.png +../../data/yoloGtold1/train/1862.png +../../data/yoloGtold1/train/1863.png +../../data/yoloGtold1/train/1864.png +../../data/yoloGtold1/train/1865.png +../../data/yoloGtold1/train/1866.png +../../data/yoloGtold1/train/1867.png +../../data/yoloGtold1/train/1868.png +../../data/yoloGtold1/train/1869.png +../../data/yoloGtold1/train/1870.png +../../data/yoloGtold1/train/1871.png +../../data/yoloGtold1/train/1872.png +../../data/yoloGtold1/train/1873.png +../../data/yoloGtold1/train/1874.png +../../data/yoloGtold1/train/1875.png +../../data/yoloGtold1/train/1876.png +../../data/yoloGtold1/train/1877.png +../../data/yoloGtold1/train/1878.png +../../data/yoloGtold1/train/1879.png +../../data/yoloGtold1/train/1880.png +../../data/yoloGtold1/train/1881.png +../../data/yoloGtold1/train/1882.png +../../data/yoloGtold1/train/1883.png +../../data/yoloGtold1/train/1884.png +../../data/yoloGtold1/train/1885.png +../../data/yoloGtold1/train/1886.png +../../data/yoloGtold1/train/1887.png +../../data/yoloGtold1/train/1888.png +../../data/yoloGtold1/train/1889.png +../../data/yoloGtold1/train/1890.png +../../data/yoloGtold1/train/1891.png +../../data/yoloGtold1/train/1892.png +../../data/yoloGtold1/train/1893.png +../../data/yoloGtold1/train/1894.png +../../data/yoloGtold1/train/1895.png +../../data/yoloGtold1/train/1896.png +../../data/yoloGtold1/train/1897.png +../../data/yoloGtold1/train/1898.png +../../data/yoloGtold1/train/1899.png +../../data/yoloGtold1/train/1900.png +../../data/yoloGtold1/train/1901.png +../../data/yoloGtold1/train/1902.png +../../data/yoloGtold1/train/1903.png +../../data/yoloGtold1/train/1904.png +../../data/yoloGtold1/train/1905.png +../../data/yoloGtold1/train/1906.png +../../data/yoloGtold1/train/1907.png +../../data/yoloGtold1/train/1908.png +../../data/yoloGtold1/train/1909.png +../../data/yoloGtold1/train/1910.png +../../data/yoloGtold1/train/1911.png +../../data/yoloGtold1/train/1912.png +../../data/yoloGtold1/train/1913.png +../../data/yoloGtold1/train/1914.png +../../data/yoloGtold1/train/1915.png +../../data/yoloGtold1/train/1916.png +../../data/yoloGtold1/train/1917.png +../../data/yoloGtold1/train/1918.png +../../data/yoloGtold1/train/1919.png +../../data/yoloGtold1/train/1920.png +../../data/yoloGtold1/train/1921.png +../../data/yoloGtold1/train/1922.png +../../data/yoloGtold1/train/1923.png +../../data/yoloGtold1/train/1924.png +../../data/yoloGtold1/train/1925.png +../../data/yoloGtold1/train/1926.png +../../data/yoloGtold1/train/1927.png +../../data/yoloGtold1/train/1928.png +../../data/yoloGtold1/train/1929.png +../../data/yoloGtold1/train/1930.png +../../data/yoloGtold1/train/1931.png +../../data/yoloGtold1/train/1932.png +../../data/yoloGtold1/train/1933.png +../../data/yoloGtold1/train/1934.png +../../data/yoloGtold1/train/1935.png +../../data/yoloGtold1/train/1936.png +../../data/yoloGtold1/train/1937.png +../../data/yoloGtold1/train/1938.png +../../data/yoloGtold1/train/1939.png +../../data/yoloGtold1/train/1940.png +../../data/yoloGtold1/train/1941.png +../../data/yoloGtold1/train/1942.png +../../data/yoloGtold1/train/1943.png +../../data/yoloGtold1/train/1944.png +../../data/yoloGtold1/train/1945.png +../../data/yoloGtold1/train/1946.png +../../data/yoloGtold1/train/1947.png +../../data/yoloGtold1/train/1948.png +../../data/yoloGtold1/train/1949.png +../../data/yoloGtold1/train/1950.png +../../data/yoloGtold1/train/1951.png +../../data/yoloGtold1/train/1952.png +../../data/yoloGtold1/train/1953.png +../../data/yoloGtold1/train/1954.png +../../data/yoloGtold1/train/1955.png +../../data/yoloGtold1/train/1956.png +../../data/yoloGtold1/train/1957.png +../../data/yoloGtold1/train/1958.png +../../data/yoloGtold1/train/1959.png +../../data/yoloGtold1/train/1960.png +../../data/yoloGtold1/train/1961.png +../../data/yoloGtold1/train/1962.png +../../data/yoloGtold1/train/1963.png +../../data/yoloGtold1/train/1964.png +../../data/yoloGtold1/train/1965.png +../../data/yoloGtold1/train/1966.png +../../data/yoloGtold1/train/1967.png +../../data/yoloGtold1/train/1968.png +../../data/yoloGtold1/train/1969.png +../../data/yoloGtold1/train/1970.png +../../data/yoloGtold1/train/1971.png +../../data/yoloGtold1/train/1972.png +../../data/yoloGtold1/train/1973.png +../../data/yoloGtold1/train/1974.png +../../data/yoloGtold1/train/1975.png +../../data/yoloGtold1/train/1976.png +../../data/yoloGtold1/train/1977.png +../../data/yoloGtold1/train/1978.png +../../data/yoloGtold1/train/1979.png +../../data/yoloGtold1/train/1980.png +../../data/yoloGtold1/train/1981.png +../../data/yoloGtold1/train/1982.png +../../data/yoloGtold1/train/1983.png +../../data/yoloGtold1/train/1984.png +../../data/yoloGtold1/train/1985.png +../../data/yoloGtold1/train/1986.png +../../data/yoloGtold1/train/1987.png +../../data/yoloGtold1/train/1988.png +../../data/yoloGtold1/train/1989.png +../../data/yoloGtold1/train/1990.png +../../data/yoloGtold1/train/1991.png +../../data/yoloGtold1/train/1992.png +../../data/yoloGtold1/train/1993.png +../../data/yoloGtold1/train/1994.png +../../data/yoloGtold1/train/1995.png +../../data/yoloGtold1/train/1996.png +../../data/yoloGtold1/train/1997.png +../../data/yoloGtold1/train/1998.png +../../data/yoloGtold1/train/1999.png +../../data/yoloGtold1/train/2000.png +../../data/yoloGtold1/train/2001.png +../../data/yoloGtold1/train/2002.png +../../data/yoloGtold1/train/2003.png +../../data/yoloGtold1/train/2004.png +../../data/yoloGtold1/train/2005.png +../../data/yoloGtold1/train/2006.png +../../data/yoloGtold1/train/2007.png +../../data/yoloGtold1/train/2008.png +../../data/yoloGtold1/train/2009.png +../../data/yoloGtold1/train/2010.png +../../data/yoloGtold1/train/2011.png +../../data/yoloGtold1/train/2012.png +../../data/yoloGtold1/train/2013.png +../../data/yoloGtold1/train/2014.png +../../data/yoloGtold1/train/2015.png +../../data/yoloGtold1/train/2016.png +../../data/yoloGtold1/train/2017.png +../../data/yoloGtold1/train/2018.png +../../data/yoloGtold1/train/2019.png +../../data/yoloGtold1/train/2020.png +../../data/yoloGtold1/train/2021.png +../../data/yoloGtold1/train/2022.png +../../data/yoloGtold1/train/2023.png +../../data/yoloGtold1/train/2024.png +../../data/yoloGtold1/train/2025.png +../../data/yoloGtold1/train/2026.png +../../data/yoloGtold1/train/2027.png +../../data/yoloGtold1/train/2028.png +../../data/yoloGtold1/train/2029.png +../../data/yoloGtold1/train/2030.png +../../data/yoloGtold1/train/2031.png +../../data/yoloGtold1/train/2032.png +../../data/yoloGtold1/train/2033.png +../../data/yoloGtold1/train/2034.png +../../data/yoloGtold1/train/2035.png +../../data/yoloGtold1/train/2036.png +../../data/yoloGtold1/train/2037.png +../../data/yoloGtold1/train/2038.png +../../data/yoloGtold1/train/2039.png +../../data/yoloGtold1/train/2040.png +../../data/yoloGtold1/train/2041.png +../../data/yoloGtold1/train/2042.png +../../data/yoloGtold1/train/2043.png +../../data/yoloGtold1/train/2044.png +../../data/yoloGtold1/train/2045.png +../../data/yoloGtold1/train/2046.png +../../data/yoloGtold1/train/2047.png +../../data/yoloGtold1/train/2048.png +../../data/yoloGtold1/train/2049.png +../../data/yoloGtold1/train/2050.png +../../data/yoloGtold1/train/2051.png +../../data/yoloGtold1/train/2052.png +../../data/yoloGtold1/train/2053.png +../../data/yoloGtold1/train/2054.png +../../data/yoloGtold1/train/2055.png +../../data/yoloGtold1/train/2056.png +../../data/yoloGtold1/train/2057.png +../../data/yoloGtold1/train/2058.png +../../data/yoloGtold1/train/2059.png +../../data/yoloGtold1/train/2060.png +../../data/yoloGtold1/train/2061.png +../../data/yoloGtold1/train/2062.png +../../data/yoloGtold1/train/2063.png +../../data/yoloGtold1/train/2064.png +../../data/yoloGtold1/train/2065.png +../../data/yoloGtold1/train/2066.png +../../data/yoloGtold1/train/2067.png +../../data/yoloGtold1/train/2068.png +../../data/yoloGtold1/train/2069.png +../../data/yoloGtold1/train/2070.png +../../data/yoloGtold1/train/2071.png +../../data/yoloGtold1/train/2072.png +../../data/yoloGtold1/train/2073.png +../../data/yoloGtold1/train/2074.png +../../data/yoloGtold1/train/2075.png +../../data/yoloGtold1/train/2076.png +../../data/yoloGtold1/train/2077.png +../../data/yoloGtold1/train/2078.png +../../data/yoloGtold1/train/2079.png +../../data/yoloGtold1/train/2080.png +../../data/yoloGtold1/train/2081.png +../../data/yoloGtold1/train/2082.png +../../data/yoloGtold1/train/2083.png +../../data/yoloGtold1/train/2084.png +../../data/yoloGtold1/train/2085.png +../../data/yoloGtold1/train/2086.png +../../data/yoloGtold1/train/2087.png +../../data/yoloGtold1/train/2088.png +../../data/yoloGtold1/train/2089.png +../../data/yoloGtold1/train/2090.png +../../data/yoloGtold1/train/2091.png +../../data/yoloGtold1/train/2092.png +../../data/yoloGtold1/train/2093.png +../../data/yoloGtold1/train/2094.png +../../data/yoloGtold1/train/2095.png +../../data/yoloGtold1/train/2096.png +../../data/yoloGtold1/train/2097.png +../../data/yoloGtold1/train/2098.png +../../data/yoloGtold1/train/2099.png +../../data/yoloGtold1/train/2100.png +../../data/yoloGtold1/train/2101.png +../../data/yoloGtold1/train/2102.png +../../data/yoloGtold1/train/2103.png +../../data/yoloGtold1/train/2104.png +../../data/yoloGtold1/train/2105.png +../../data/yoloGtold1/train/2106.png +../../data/yoloGtold1/train/2107.png +../../data/yoloGtold1/train/2108.png +../../data/yoloGtold1/train/2109.png +../../data/yoloGtold1/train/2110.png +../../data/yoloGtold1/train/2111.png +../../data/yoloGtold1/train/2112.png +../../data/yoloGtold1/train/2113.png +../../data/yoloGtold1/train/2114.png +../../data/yoloGtold1/train/2115.png +../../data/yoloGtold1/train/2116.png +../../data/yoloGtold1/train/2117.png +../../data/yoloGtold1/train/2118.png +../../data/yoloGtold1/train/2119.png +../../data/yoloGtold1/train/2120.png +../../data/yoloGtold1/train/2121.png +../../data/yoloGtold1/train/2122.png +../../data/yoloGtold1/train/2123.png +../../data/yoloGtold1/train/2124.png +../../data/yoloGtold1/train/2125.png +../../data/yoloGtold1/train/2126.png +../../data/yoloGtold1/train/2127.png +../../data/yoloGtold1/train/2128.png +../../data/yoloGtold1/train/2129.png +../../data/yoloGtold1/train/2130.png +../../data/yoloGtold1/train/2131.png +../../data/yoloGtold1/train/2132.png +../../data/yoloGtold1/train/2133.png +../../data/yoloGtold1/train/2134.png +../../data/yoloGtold1/train/2135.png +../../data/yoloGtold1/train/2136.png +../../data/yoloGtold1/train/2137.png +../../data/yoloGtold1/train/2138.png +../../data/yoloGtold1/train/2139.png +../../data/yoloGtold1/train/2140.png +../../data/yoloGtold1/train/2141.png +../../data/yoloGtold1/train/2142.png +../../data/yoloGtold1/train/2143.png +../../data/yoloGtold1/train/2144.png +../../data/yoloGtold1/train/2145.png +../../data/yoloGtold1/train/2146.png +../../data/yoloGtold1/train/2147.png +../../data/yoloGtold1/train/2148.png +../../data/yoloGtold1/train/2149.png +../../data/yoloGtold1/train/2150.png +../../data/yoloGtold1/train/2151.png +../../data/yoloGtold1/train/2152.png +../../data/yoloGtold1/train/2153.png +../../data/yoloGtold1/train/2154.png +../../data/yoloGtold1/train/2155.png +../../data/yoloGtold1/train/2156.png +../../data/yoloGtold1/train/2157.png +../../data/yoloGtold1/train/2158.png +../../data/yoloGtold1/train/2159.png +../../data/yoloGtold1/train/2160.png +../../data/yoloGtold1/train/2161.png +../../data/yoloGtold1/train/2162.png +../../data/yoloGtold1/train/2163.png +../../data/yoloGtold1/train/2164.png +../../data/yoloGtold1/train/2165.png +../../data/yoloGtold1/train/2166.png +../../data/yoloGtold1/train/2167.png +../../data/yoloGtold1/train/2168.png +../../data/yoloGtold1/train/2169.png +../../data/yoloGtold1/train/2170.png +../../data/yoloGtold1/train/2171.png +../../data/yoloGtold1/train/2172.png +../../data/yoloGtold1/train/2173.png +../../data/yoloGtold1/train/2174.png +../../data/yoloGtold1/train/2175.png +../../data/yoloGtold1/train/2176.png +../../data/yoloGtold1/train/2177.png +../../data/yoloGtold1/train/2178.png +../../data/yoloGtold1/train/2179.png +../../data/yoloGtold1/train/2180.png +../../data/yoloGtold1/train/2181.png +../../data/yoloGtold1/train/2182.png +../../data/yoloGtold1/train/2183.png +../../data/yoloGtold1/train/2184.png +../../data/yoloGtold1/train/2185.png +../../data/yoloGtold1/train/2186.png +../../data/yoloGtold1/train/2187.png +../../data/yoloGtold1/train/2188.png +../../data/yoloGtold1/train/2189.png +../../data/yoloGtold1/train/2190.png +../../data/yoloGtold1/train/2191.png +../../data/yoloGtold1/train/2192.png +../../data/yoloGtold1/train/2193.png +../../data/yoloGtold1/train/2194.png +../../data/yoloGtold1/train/2195.png +../../data/yoloGtold1/train/2196.png +../../data/yoloGtold1/train/2197.png +../../data/yoloGtold1/train/2198.png +../../data/yoloGtold1/train/2199.png +../../data/yoloGtold1/train/2200.png +../../data/yoloGtold1/train/2201.png +../../data/yoloGtold1/train/2202.png +../../data/yoloGtold1/train/2203.png +../../data/yoloGtold1/train/2204.png +../../data/yoloGtold1/train/2205.png +../../data/yoloGtold1/train/2206.png +../../data/yoloGtold1/train/2207.png +../../data/yoloGtold1/train/2208.png +../../data/yoloGtold1/train/2209.png +../../data/yoloGtold1/train/2210.png +../../data/yoloGtold1/train/2211.png +../../data/yoloGtold1/train/2212.png +../../data/yoloGtold1/train/2213.png +../../data/yoloGtold1/train/2214.png +../../data/yoloGtold1/train/2215.png +../../data/yoloGtold1/train/2216.png +../../data/yoloGtold1/train/2217.png +../../data/yoloGtold1/train/2218.png +../../data/yoloGtold1/train/2219.png +../../data/yoloGtold1/train/2220.png +../../data/yoloGtold1/train/2221.png +../../data/yoloGtold1/train/2222.png +../../data/yoloGtold1/train/2223.png +../../data/yoloGtold1/train/2224.png +../../data/yoloGtold1/train/2225.png +../../data/yoloGtold1/train/2226.png +../../data/yoloGtold1/train/2227.png +../../data/yoloGtold1/train/2228.png +../../data/yoloGtold1/train/2229.png +../../data/yoloGtold1/train/2230.png +../../data/yoloGtold1/train/2231.png +../../data/yoloGtold1/train/2232.png +../../data/yoloGtold1/train/2233.png +../../data/yoloGtold1/train/2234.png +../../data/yoloGtold1/train/2235.png +../../data/yoloGtold1/train/2236.png +../../data/yoloGtold1/train/2237.png +../../data/yoloGtold1/train/2238.png +../../data/yoloGtold1/train/2239.png +../../data/yoloGtold1/train/2240.png +../../data/yoloGtold1/train/2241.png +../../data/yoloGtold1/train/2242.png +../../data/yoloGtold1/train/2243.png +../../data/yoloGtold1/train/2244.png +../../data/yoloGtold1/train/2245.png +../../data/yoloGtold1/train/2246.png +../../data/yoloGtold1/train/2247.png +../../data/yoloGtold1/train/2248.png +../../data/yoloGtold1/train/2249.png +../../data/yoloGtold1/train/2250.png +../../data/yoloGtold1/train/2251.png +../../data/yoloGtold1/train/2252.png +../../data/yoloGtold1/train/2253.png +../../data/yoloGtold1/train/2254.png +../../data/yoloGtold1/train/2255.png +../../data/yoloGtold1/train/2256.png +../../data/yoloGtold1/train/2257.png +../../data/yoloGtold1/train/2258.png +../../data/yoloGtold1/train/2259.png +../../data/yoloGtold1/train/2260.png +../../data/yoloGtold1/train/2261.png +../../data/yoloGtold1/train/2262.png +../../data/yoloGtold1/train/2263.png +../../data/yoloGtold1/train/2264.png +../../data/yoloGtold1/train/2265.png +../../data/yoloGtold1/train/2266.png +../../data/yoloGtold1/train/2267.png +../../data/yoloGtold1/train/2268.png +../../data/yoloGtold1/train/2269.png +../../data/yoloGtold1/train/2270.png +../../data/yoloGtold1/train/2271.png +../../data/yoloGtold1/train/2272.png +../../data/yoloGtold1/train/2273.png +../../data/yoloGtold1/train/2274.png +../../data/yoloGtold1/train/2275.png +../../data/yoloGtold1/train/2276.png +../../data/yoloGtold1/train/2277.png +../../data/yoloGtold1/train/2278.png +../../data/yoloGtold1/train/2279.png +../../data/yoloGtold1/train/2280.png +../../data/yoloGtold1/train/2281.png +../../data/yoloGtold1/train/2282.png +../../data/yoloGtold1/train/2283.png +../../data/yoloGtold1/train/2284.png +../../data/yoloGtold1/train/2285.png +../../data/yoloGtold1/train/2286.png +../../data/yoloGtold1/train/2287.png +../../data/yoloGtold1/train/2288.png +../../data/yoloGtold1/train/2289.png +../../data/yoloGtold1/train/2290.png +../../data/yoloGtold1/train/2291.png +../../data/yoloGtold1/train/2292.png +../../data/yoloGtold1/train/2293.png +../../data/yoloGtold1/train/2294.png +../../data/yoloGtold1/train/2295.png +../../data/yoloGtold1/train/2296.png +../../data/yoloGtold1/train/2297.png +../../data/yoloGtold1/train/2298.png +../../data/yoloGtold1/train/2299.png +../../data/yoloGtold1/train/2300.png +../../data/yoloGtold1/train/2301.png +../../data/yoloGtold1/train/2302.png +../../data/yoloGtold1/train/2303.png +../../data/yoloGtold1/train/2304.png +../../data/yoloGtold1/train/2305.png +../../data/yoloGtold1/train/2306.png +../../data/yoloGtold1/train/2307.png +../../data/yoloGtold1/train/2308.png +../../data/yoloGtold1/train/2309.png +../../data/yoloGtold1/train/2310.png +../../data/yoloGtold1/train/2311.png +../../data/yoloGtold1/train/2312.png +../../data/yoloGtold1/train/2313.png +../../data/yoloGtold1/train/2314.png +../../data/yoloGtold1/train/2315.png +../../data/yoloGtold1/train/2316.png +../../data/yoloGtold1/train/2317.png +../../data/yoloGtold1/train/2318.png +../../data/yoloGtold1/train/2319.png +../../data/yoloGtold1/train/2320.png +../../data/yoloGtold1/train/2321.png +../../data/yoloGtold1/train/2322.png +../../data/yoloGtold1/train/2323.png +../../data/yoloGtold1/train/2324.png +../../data/yoloGtold1/train/2325.png +../../data/yoloGtold1/train/2326.png +../../data/yoloGtold1/train/2327.png +../../data/yoloGtold1/train/2328.png +../../data/yoloGtold1/train/2329.png +../../data/yoloGtold1/train/2330.png +../../data/yoloGtold1/train/2331.png +../../data/yoloGtold1/train/2332.png +../../data/yoloGtold1/train/2333.png +../../data/yoloGtold1/train/2334.png +../../data/yoloGtold1/train/2335.png +../../data/yoloGtold1/train/2336.png +../../data/yoloGtold1/train/2337.png +../../data/yoloGtold1/train/2338.png +../../data/yoloGtold1/train/2339.png +../../data/yoloGtold1/train/2340.png +../../data/yoloGtold1/train/2341.png +../../data/yoloGtold1/train/2342.png +../../data/yoloGtold1/train/2343.png +../../data/yoloGtold1/train/2344.png +../../data/yoloGtold1/train/2345.png +../../data/yoloGtold1/train/2346.png +../../data/yoloGtold1/train/2347.png +../../data/yoloGtold1/train/2348.png +../../data/yoloGtold1/train/2349.png +../../data/yoloGtold1/train/2350.png +../../data/yoloGtold1/train/2351.png +../../data/yoloGtold1/train/2352.png +../../data/yoloGtold1/train/2353.png +../../data/yoloGtold1/train/2354.png +../../data/yoloGtold1/train/2355.png +../../data/yoloGtold1/train/2356.png +../../data/yoloGtold1/train/2357.png +../../data/yoloGtold1/train/2358.png +../../data/yoloGtold1/train/2359.png +../../data/yoloGtold1/train/2360.png +../../data/yoloGtold1/train/2361.png +../../data/yoloGtold1/train/2362.png +../../data/yoloGtold1/train/2363.png +../../data/yoloGtold1/train/2364.png +../../data/yoloGtold1/train/2365.png +../../data/yoloGtold1/train/2366.png +../../data/yoloGtold1/train/2367.png +../../data/yoloGtold1/train/2368.png +../../data/yoloGtold1/train/2369.png +../../data/yoloGtold1/train/2370.png +../../data/yoloGtold1/train/2371.png +../../data/yoloGtold1/train/2372.png +../../data/yoloGtold1/train/2373.png +../../data/yoloGtold1/train/2374.png +../../data/yoloGtold1/train/2375.png +../../data/yoloGtold1/train/2376.png +../../data/yoloGtold1/train/2377.png +../../data/yoloGtold1/train/2378.png +../../data/yoloGtold1/train/2379.png +../../data/yoloGtold1/train/2380.png +../../data/yoloGtold1/train/2381.png +../../data/yoloGtold1/train/2382.png +../../data/yoloGtold1/train/2383.png +../../data/yoloGtold1/train/2384.png +../../data/yoloGtold1/train/2385.png +../../data/yoloGtold1/train/2386.png +../../data/yoloGtold1/train/2387.png +../../data/yoloGtold1/train/2388.png +../../data/yoloGtold1/train/2389.png +../../data/yoloGtold1/train/2390.png +../../data/yoloGtold1/train/2391.png +../../data/yoloGtold1/train/2392.png +../../data/yoloGtold1/train/2393.png +../../data/yoloGtold1/train/2394.png +../../data/yoloGtold1/train/2395.png +../../data/yoloGtold1/train/2396.png +../../data/yoloGtold1/train/2397.png +../../data/yoloGtold1/train/2398.png +../../data/yoloGtold1/train/2399.png +../../data/yoloGtold1/train/2400.png +../../data/yoloGtold1/train/2401.png +../../data/yoloGtold1/train/2402.png +../../data/yoloGtold1/train/2403.png +../../data/yoloGtold1/train/2404.png +../../data/yoloGtold1/train/2405.png +../../data/yoloGtold1/train/2406.png +../../data/yoloGtold1/train/2407.png +../../data/yoloGtold1/train/2408.png +../../data/yoloGtold1/train/2409.png +../../data/yoloGtold1/train/2410.png +../../data/yoloGtold1/train/2411.png +../../data/yoloGtold1/train/2412.png +../../data/yoloGtold1/train/2413.png +../../data/yoloGtold1/train/2414.png +../../data/yoloGtold1/train/2415.png +../../data/yoloGtold1/train/2416.png +../../data/yoloGtold1/train/2417.png +../../data/yoloGtold1/train/2418.png +../../data/yoloGtold1/train/2419.png +../../data/yoloGtold1/train/2420.png +../../data/yoloGtold1/train/2421.png +../../data/yoloGtold1/train/2422.png +../../data/yoloGtold1/train/2423.png +../../data/yoloGtold1/train/2424.png +../../data/yoloGtold1/train/2425.png +../../data/yoloGtold1/train/2426.png +../../data/yoloGtold1/train/2427.png +../../data/yoloGtold1/train/2428.png +../../data/yoloGtold1/train/2429.png +../../data/yoloGtold1/train/2430.png +../../data/yoloGtold1/train/2431.png +../../data/yoloGtold1/train/2432.png +../../data/yoloGtold1/train/2433.png +../../data/yoloGtold1/train/2434.png +../../data/yoloGtold1/train/2435.png +../../data/yoloGtold1/train/2436.png +../../data/yoloGtold1/train/2437.png +../../data/yoloGtold1/train/2438.png +../../data/yoloGtold1/train/2439.png +../../data/yoloGtold1/train/2440.png +../../data/yoloGtold1/train/2441.png +../../data/yoloGtold1/train/2442.png +../../data/yoloGtold1/train/2443.png +../../data/yoloGtold1/train/2444.png +../../data/yoloGtold1/train/2445.png +../../data/yoloGtold1/train/2446.png +../../data/yoloGtold1/train/2447.png +../../data/yoloGtold1/train/2448.png +../../data/yoloGtold1/train/2449.png +../../data/yoloGtold1/train/2450.png +../../data/yoloGtold1/train/2451.png +../../data/yoloGtold1/train/2452.png +../../data/yoloGtold1/train/2453.png +../../data/yoloGtold1/train/2454.png +../../data/yoloGtold1/train/2455.png +../../data/yoloGtold1/train/2456.png +../../data/yoloGtold1/train/2457.png +../../data/yoloGtold1/train/2458.png +../../data/yoloGtold1/train/2459.png +../../data/yoloGtold1/train/2460.png +../../data/yoloGtold1/train/2461.png +../../data/yoloGtold1/train/2462.png +../../data/yoloGtold1/train/2463.png +../../data/yoloGtold1/train/2464.png +../../data/yoloGtold1/train/2465.png +../../data/yoloGtold1/train/2466.png +../../data/yoloGtold1/train/2467.png +../../data/yoloGtold1/train/2468.png +../../data/yoloGtold1/train/2469.png +../../data/yoloGtold1/train/2470.png +../../data/yoloGtold1/train/2471.png +../../data/yoloGtold1/train/2472.png +../../data/yoloGtold1/train/2473.png +../../data/yoloGtold1/train/2474.png +../../data/yoloGtold1/train/2475.png +../../data/yoloGtold1/train/2476.png +../../data/yoloGtold1/train/2477.png +../../data/yoloGtold1/train/2478.png +../../data/yoloGtold1/train/2479.png +../../data/yoloGtold1/train/2480.png +../../data/yoloGtold1/train/2481.png +../../data/yoloGtold1/train/2482.png +../../data/yoloGtold1/train/2483.png +../../data/yoloGtold1/train/2484.png +../../data/yoloGtold1/train/2485.png +../../data/yoloGtold1/train/2486.png +../../data/yoloGtold1/train/2487.png +../../data/yoloGtold1/train/2488.png +../../data/yoloGtold1/train/2489.png +../../data/yoloGtold1/train/2490.png +../../data/yoloGtold1/train/2491.png +../../data/yoloGtold1/train/2492.png +../../data/yoloGtold1/train/2493.png +../../data/yoloGtold1/train/2494.png +../../data/yoloGtold1/train/2495.png +../../data/yoloGtold1/train/2496.png +../../data/yoloGtold1/train/2497.png +../../data/yoloGtold1/train/2498.png +../../data/yoloGtold1/train/2499.png +../../data/yoloGtold1/train/2500.png +../../data/yoloGtold1/train/2501.png +../../data/yoloGtold1/train/2502.png +../../data/yoloGtold1/train/2503.png +../../data/yoloGtold1/train/2504.png +../../data/yoloGtold1/train/2505.png +../../data/yoloGtold1/train/2506.png +../../data/yoloGtold1/train/2507.png +../../data/yoloGtold1/train/2508.png +../../data/yoloGtold1/train/2509.png +../../data/yoloGtold1/train/2510.png +../../data/yoloGtold1/train/2511.png +../../data/yoloGtold1/train/2512.png +../../data/yoloGtold1/train/2513.png +../../data/yoloGtold1/train/2514.png +../../data/yoloGtold1/train/2515.png +../../data/yoloGtold1/train/2516.png +../../data/yoloGtold1/train/2517.png +../../data/yoloGtold1/train/2518.png +../../data/yoloGtold1/train/2519.png +../../data/yoloGtold1/train/2520.png +../../data/yoloGtold1/train/2521.png +../../data/yoloGtold1/train/2522.png +../../data/yoloGtold1/train/2523.png +../../data/yoloGtold1/train/2524.png +../../data/yoloGtold1/train/2525.png +../../data/yoloGtold1/train/2526.png +../../data/yoloGtold1/train/2527.png +../../data/yoloGtold1/train/2528.png +../../data/yoloGtold1/train/2529.png +../../data/yoloGtold1/train/2530.png +../../data/yoloGtold1/train/2531.png +../../data/yoloGtold1/train/2532.png +../../data/yoloGtold1/train/2533.png +../../data/yoloGtold1/train/2534.png +../../data/yoloGtold1/train/2535.png +../../data/yoloGtold1/train/2536.png +../../data/yoloGtold1/train/2537.png +../../data/yoloGtold1/train/2538.png +../../data/yoloGtold1/train/2539.png +../../data/yoloGtold1/train/2540.png +../../data/yoloGtold1/train/2541.png +../../data/yoloGtold1/train/2542.png +../../data/yoloGtold1/train/2543.png +../../data/yoloGtold1/train/2544.png +../../data/yoloGtold1/train/2545.png +../../data/yoloGtold1/train/2546.png +../../data/yoloGtold1/train/2547.png +../../data/yoloGtold1/train/2548.png +../../data/yoloGtold1/train/2549.png +../../data/yoloGtold1/train/2550.png +../../data/yoloGtold1/train/2551.png +../../data/yoloGtold1/train/2552.png +../../data/yoloGtold1/train/2553.png +../../data/yoloGtold1/train/2554.png +../../data/yoloGtold1/train/2555.png +../../data/yoloGtold1/train/2556.png +../../data/yoloGtold1/train/2557.png +../../data/yoloGtold1/train/2558.png +../../data/yoloGtold1/train/2559.png +../../data/yoloGtold1/train/2560.png +../../data/yoloGtold1/train/2561.png +../../data/yoloGtold1/train/2562.png +../../data/yoloGtold1/train/2563.png +../../data/yoloGtold1/train/2564.png +../../data/yoloGtold1/train/2565.png +../../data/yoloGtold1/train/2566.png +../../data/yoloGtold1/train/2567.png +../../data/yoloGtold1/train/2568.png +../../data/yoloGtold1/train/2569.png +../../data/yoloGtold1/train/2570.png +../../data/yoloGtold1/train/2571.png +../../data/yoloGtold1/train/2572.png +../../data/yoloGtold1/train/2573.png +../../data/yoloGtold1/train/2574.png +../../data/yoloGtold1/train/2575.png +../../data/yoloGtold1/train/2576.png +../../data/yoloGtold1/train/2577.png +../../data/yoloGtold1/train/2578.png +../../data/yoloGtold1/train/2579.png +../../data/yoloGtold1/train/2580.png +../../data/yoloGtold1/train/2581.png +../../data/yoloGtold1/train/2582.png +../../data/yoloGtold1/train/2583.png +../../data/yoloGtold1/train/2584.png +../../data/yoloGtold1/train/2585.png +../../data/yoloGtold1/train/2586.png +../../data/yoloGtold1/train/2587.png +../../data/yoloGtold1/train/2588.png +../../data/yoloGtold1/train/2589.png +../../data/yoloGtold1/train/2590.png +../../data/yoloGtold1/train/2591.png +../../data/yoloGtold1/train/2592.png +../../data/yoloGtold1/train/2593.png +../../data/yoloGtold1/train/2594.png +../../data/yoloGtold1/train/2595.png +../../data/yoloGtold1/train/2596.png +../../data/yoloGtold1/train/2597.png +../../data/yoloGtold1/train/2598.png +../../data/yoloGtold1/train/2599.png +../../data/yoloGtold1/train/2600.png +../../data/yoloGtold1/train/2601.png +../../data/yoloGtold1/train/2602.png +../../data/yoloGtold1/train/2603.png +../../data/yoloGtold1/train/2604.png +../../data/yoloGtold1/train/2605.png +../../data/yoloGtold1/train/2606.png +../../data/yoloGtold1/train/2607.png +../../data/yoloGtold1/train/2608.png +../../data/yoloGtold1/train/2609.png +../../data/yoloGtold1/train/2610.png +../../data/yoloGtold1/train/2611.png +../../data/yoloGtold1/train/2612.png +../../data/yoloGtold1/train/2613.png +../../data/yoloGtold1/train/2614.png +../../data/yoloGtold1/train/2615.png +../../data/yoloGtold1/train/2616.png +../../data/yoloGtold1/train/2617.png +../../data/yoloGtold1/train/2618.png +../../data/yoloGtold1/train/2619.png +../../data/yoloGtold1/train/2620.png +../../data/yoloGtold1/train/2621.png +../../data/yoloGtold1/train/2622.png +../../data/yoloGtold1/train/2623.png +../../data/yoloGtold1/train/2624.png +../../data/yoloGtold1/train/2625.png +../../data/yoloGtold1/train/2626.png +../../data/yoloGtold1/train/2627.png +../../data/yoloGtold1/train/2628.png +../../data/yoloGtold1/train/2629.png +../../data/yoloGtold1/train/2630.png +../../data/yoloGtold1/train/2631.png +../../data/yoloGtold1/train/2632.png +../../data/yoloGtold1/train/2633.png +../../data/yoloGtold1/train/2634.png +../../data/yoloGtold1/train/2635.png +../../data/yoloGtold1/train/2636.png +../../data/yoloGtold1/train/2637.png +../../data/yoloGtold1/train/2638.png +../../data/yoloGtold1/train/2639.png +../../data/yoloGtold1/train/2640.png +../../data/yoloGtold1/train/2641.png +../../data/yoloGtold1/train/2642.png +../../data/yoloGtold1/train/2643.png +../../data/yoloGtold1/train/2644.png +../../data/yoloGtold1/train/2645.png +../../data/yoloGtold1/train/2646.png +../../data/yoloGtold1/train/2647.png +../../data/yoloGtold1/train/2648.png +../../data/yoloGtold1/train/2649.png +../../data/yoloGtold1/train/2650.png +../../data/yoloGtold1/train/2651.png +../../data/yoloGtold1/train/2652.png +../../data/yoloGtold1/train/2653.png +../../data/yoloGtold1/train/2654.png +../../data/yoloGtold1/train/2655.png +../../data/yoloGtold1/train/2656.png +../../data/yoloGtold1/train/2657.png +../../data/yoloGtold1/train/2658.png +../../data/yoloGtold1/train/2659.png +../../data/yoloGtold1/train/2660.png +../../data/yoloGtold1/train/2661.png +../../data/yoloGtold1/train/2662.png +../../data/yoloGtold1/train/2663.png +../../data/yoloGtold1/train/2664.png +../../data/yoloGtold1/train/2665.png +../../data/yoloGtold1/train/2666.png +../../data/yoloGtold1/train/2667.png +../../data/yoloGtold1/train/2668.png +../../data/yoloGtold1/train/2669.png +../../data/yoloGtold1/train/2670.png +../../data/yoloGtold1/train/2671.png +../../data/yoloGtold1/train/2672.png +../../data/yoloGtold1/train/2673.png +../../data/yoloGtold1/train/2674.png +../../data/yoloGtold1/train/2675.png +../../data/yoloGtold1/train/2676.png +../../data/yoloGtold1/train/2677.png +../../data/yoloGtold1/train/2678.png +../../data/yoloGtold1/train/2679.png +../../data/yoloGtold1/train/2680.png +../../data/yoloGtold1/train/2681.png +../../data/yoloGtold1/train/2682.png +../../data/yoloGtold1/train/2683.png +../../data/yoloGtold1/train/2684.png +../../data/yoloGtold1/train/2685.png +../../data/yoloGtold1/train/2686.png +../../data/yoloGtold1/train/2687.png +../../data/yoloGtold1/train/2688.png +../../data/yoloGtold1/train/2689.png +../../data/yoloGtold1/train/2690.png +../../data/yoloGtold1/train/2691.png +../../data/yoloGtold1/train/2692.png +../../data/yoloGtold1/train/2693.png +../../data/yoloGtold1/train/2694.png +../../data/yoloGtold1/train/2695.png +../../data/yoloGtold1/train/2696.png +../../data/yoloGtold1/train/2697.png +../../data/yoloGtold1/train/2698.png +../../data/yoloGtold1/train/2699.png +../../data/yoloGtold1/train/2700.png +../../data/yoloGtold1/train/2701.png +../../data/yoloGtold1/train/2702.png +../../data/yoloGtold1/train/2703.png +../../data/yoloGtold1/train/2704.png +../../data/yoloGtold1/train/2705.png +../../data/yoloGtold1/train/2706.png +../../data/yoloGtold1/train/2707.png +../../data/yoloGtold1/train/2708.png +../../data/yoloGtold1/train/2709.png +../../data/yoloGtold1/train/2710.png +../../data/yoloGtold1/train/2711.png +../../data/yoloGtold1/train/2712.png +../../data/yoloGtold1/train/2713.png +../../data/yoloGtold1/train/2714.png +../../data/yoloGtold1/train/2715.png +../../data/yoloGtold1/train/2716.png +../../data/yoloGtold1/train/2717.png +../../data/yoloGtold1/train/2718.png +../../data/yoloGtold1/train/2719.png +../../data/yoloGtold1/train/2720.png +../../data/yoloGtold1/train/2721.png +../../data/yoloGtold1/train/2722.png +../../data/yoloGtold1/train/2723.png +../../data/yoloGtold1/train/2724.png +../../data/yoloGtold1/train/2725.png +../../data/yoloGtold1/train/2726.png +../../data/yoloGtold1/train/2727.png +../../data/yoloGtold1/train/2728.png +../../data/yoloGtold1/train/2729.png +../../data/yoloGtold1/train/2730.png +../../data/yoloGtold1/train/2731.png +../../data/yoloGtold1/train/2732.png +../../data/yoloGtold1/train/2733.png +../../data/yoloGtold1/train/2734.png +../../data/yoloGtold1/train/2735.png +../../data/yoloGtold1/train/2736.png +../../data/yoloGtold1/train/2737.png +../../data/yoloGtold1/train/2738.png +../../data/yoloGtold1/train/2739.png +../../data/yoloGtold1/train/2740.png +../../data/yoloGtold1/train/2741.png +../../data/yoloGtold1/train/2742.png +../../data/yoloGtold1/train/2743.png +../../data/yoloGtold1/train/2744.png +../../data/yoloGtold1/train/2745.png +../../data/yoloGtold1/train/2746.png +../../data/yoloGtold1/train/2747.png +../../data/yoloGtold1/train/2748.png +../../data/yoloGtold1/train/2749.png +../../data/yoloGtold1/train/2750.png +../../data/yoloGtold1/train/2751.png +../../data/yoloGtold1/train/2752.png +../../data/yoloGtold1/train/2753.png +../../data/yoloGtold1/train/2754.png +../../data/yoloGtold1/train/2755.png +../../data/yoloGtold1/train/2756.png +../../data/yoloGtold1/train/2757.png +../../data/yoloGtold1/train/2758.png +../../data/yoloGtold1/train/2759.png +../../data/yoloGtold1/train/2760.png +../../data/yoloGtold1/train/2761.png +../../data/yoloGtold1/train/2762.png +../../data/yoloGtold1/train/2763.png +../../data/yoloGtold1/train/2764.png +../../data/yoloGtold1/train/2765.png +../../data/yoloGtold1/train/2766.png +../../data/yoloGtold1/train/2767.png +../../data/yoloGtold1/train/2768.png +../../data/yoloGtold1/train/2769.png +../../data/yoloGtold1/train/2770.png +../../data/yoloGtold1/train/2771.png +../../data/yoloGtold1/train/2772.png +../../data/yoloGtold1/train/2773.png +../../data/yoloGtold1/train/2774.png +../../data/yoloGtold1/train/2775.png +../../data/yoloGtold1/train/2776.png +../../data/yoloGtold1/train/2777.png +../../data/yoloGtold1/train/2778.png +../../data/yoloGtold1/train/2779.png +../../data/yoloGtold1/train/2780.png +../../data/yoloGtold1/train/2781.png +../../data/yoloGtold1/train/2782.png +../../data/yoloGtold1/train/2783.png +../../data/yoloGtold1/train/2784.png +../../data/yoloGtold1/train/2785.png +../../data/yoloGtold1/train/2786.png +../../data/yoloGtold1/train/2787.png +../../data/yoloGtold1/train/2788.png +../../data/yoloGtold1/train/2789.png +../../data/yoloGtold1/train/2790.png +../../data/yoloGtold1/train/2791.png +../../data/yoloGtold1/train/2792.png +../../data/yoloGtold1/train/2793.png +../../data/yoloGtold1/train/2794.png +../../data/yoloGtold1/train/2795.png +../../data/yoloGtold1/train/2796.png +../../data/yoloGtold1/train/2797.png +../../data/yoloGtold1/train/2798.png +../../data/yoloGtold1/train/2799.png +../../data/yoloGtold1/train/2800.png +../../data/yoloGtold1/train/2801.png +../../data/yoloGtold1/train/2802.png +../../data/yoloGtold1/train/2803.png +../../data/yoloGtold1/train/2804.png +../../data/yoloGtold1/train/2805.png +../../data/yoloGtold1/train/2806.png +../../data/yoloGtold1/train/2807.png +../../data/yoloGtold1/train/2808.png +../../data/yoloGtold1/train/2809.png +../../data/yoloGtold1/train/2810.png +../../data/yoloGtold1/train/2811.png +../../data/yoloGtold1/train/2812.png +../../data/yoloGtold1/train/2813.png +../../data/yoloGtold1/train/2814.png +../../data/yoloGtold1/train/2815.png +../../data/yoloGtold1/train/2816.png +../../data/yoloGtold1/train/2817.png +../../data/yoloGtold1/train/2818.png +../../data/yoloGtold1/train/2819.png +../../data/yoloGtold1/train/2820.png +../../data/yoloGtold1/train/2821.png +../../data/yoloGtold1/train/2822.png +../../data/yoloGtold1/train/2823.png +../../data/yoloGtold1/train/2824.png +../../data/yoloGtold1/train/2825.png +../../data/yoloGtold1/train/2826.png +../../data/yoloGtold1/train/2827.png +../../data/yoloGtold1/train/2828.png +../../data/yoloGtold1/train/2829.png +../../data/yoloGtold1/train/2830.png +../../data/yoloGtold1/train/2831.png +../../data/yoloGtold1/train/2832.png +../../data/yoloGtold1/train/2833.png +../../data/yoloGtold1/train/2834.png +../../data/yoloGtold1/train/2835.png +../../data/yoloGtold1/train/2836.png +../../data/yoloGtold1/train/2837.png +../../data/yoloGtold1/train/2838.png +../../data/yoloGtold1/train/2839.png +../../data/yoloGtold1/train/2840.png +../../data/yoloGtold1/train/2841.png +../../data/yoloGtold1/train/2842.png +../../data/yoloGtold1/train/2843.png +../../data/yoloGtold1/train/2844.png +../../data/yoloGtold1/train/2845.png +../../data/yoloGtold1/train/2846.png +../../data/yoloGtold1/train/2847.png +../../data/yoloGtold1/train/2848.png +../../data/yoloGtold1/train/2849.png +../../data/yoloGtold1/train/2850.png +../../data/yoloGtold1/train/2851.png +../../data/yoloGtold1/train/2852.png +../../data/yoloGtold1/train/2853.png +../../data/yoloGtold1/train/2854.png +../../data/yoloGtold1/train/2855.png +../../data/yoloGtold1/train/2856.png +../../data/yoloGtold1/train/2857.png +../../data/yoloGtold1/train/2858.png +../../data/yoloGtold1/train/2859.png +../../data/yoloGtold1/train/2860.png +../../data/yoloGtold1/train/2861.png +../../data/yoloGtold1/train/2862.png +../../data/yoloGtold1/train/2863.png +../../data/yoloGtold1/train/2864.png +../../data/yoloGtold1/train/2865.png +../../data/yoloGtold1/train/2866.png +../../data/yoloGtold1/train/2867.png +../../data/yoloGtold1/train/2868.png +../../data/yoloGtold1/train/2869.png +../../data/yoloGtold1/train/2870.png +../../data/yoloGtold1/train/2871.png +../../data/yoloGtold1/train/2872.png +../../data/yoloGtold1/train/2873.png +../../data/yoloGtold1/train/2874.png +../../data/yoloGtold1/train/2875.png +../../data/yoloGtold1/train/2876.png +../../data/yoloGtold1/train/2877.png +../../data/yoloGtold1/train/2878.png +../../data/yoloGtold1/train/2879.png +../../data/yoloGtold1/train/2880.png +../../data/yoloGtold1/train/2881.png +../../data/yoloGtold1/train/2882.png +../../data/yoloGtold1/train/2883.png +../../data/yoloGtold1/train/2884.png +../../data/yoloGtold1/train/2885.png +../../data/yoloGtold1/train/2886.png +../../data/yoloGtold1/train/2887.png +../../data/yoloGtold1/train/2888.png +../../data/yoloGtold1/train/2889.png +../../data/yoloGtold1/train/2890.png +../../data/yoloGtold1/train/2891.png +../../data/yoloGtold1/train/2892.png +../../data/yoloGtold1/train/2893.png +../../data/yoloGtold1/train/2894.png +../../data/yoloGtold1/train/2895.png +../../data/yoloGtold1/train/2896.png +../../data/yoloGtold1/train/2897.png +../../data/yoloGtold1/train/2898.png +../../data/yoloGtold1/train/2899.png +../../data/yoloGtold1/train/2900.png +../../data/yoloGtold1/train/2901.png +../../data/yoloGtold1/train/2902.png +../../data/yoloGtold1/train/2903.png +../../data/yoloGtold1/train/2904.png +../../data/yoloGtold1/train/2905.png +../../data/yoloGtold1/train/2906.png +../../data/yoloGtold1/train/2907.png +../../data/yoloGtold1/train/2908.png +../../data/yoloGtold1/train/2909.png +../../data/yoloGtold1/train/2910.png +../../data/yoloGtold1/train/2911.png +../../data/yoloGtold1/train/2912.png +../../data/yoloGtold1/train/2913.png +../../data/yoloGtold1/train/2914.png +../../data/yoloGtold1/train/2915.png +../../data/yoloGtold1/train/2916.png +../../data/yoloGtold1/train/2917.png +../../data/yoloGtold1/train/2918.png +../../data/yoloGtold1/train/2919.png +../../data/yoloGtold1/train/2920.png +../../data/yoloGtold1/train/2921.png +../../data/yoloGtold1/train/2922.png +../../data/yoloGtold1/train/2923.png +../../data/yoloGtold1/train/2924.png +../../data/yoloGtold1/train/2925.png +../../data/yoloGtold1/train/2926.png +../../data/yoloGtold1/train/2927.png +../../data/yoloGtold1/train/2928.png +../../data/yoloGtold1/train/2929.png +../../data/yoloGtold1/train/2930.png +../../data/yoloGtold1/train/2931.png +../../data/yoloGtold1/train/2932.png +../../data/yoloGtold1/train/2933.png +../../data/yoloGtold1/train/2934.png +../../data/yoloGtold1/train/2935.png +../../data/yoloGtold1/train/2936.png +../../data/yoloGtold1/train/2937.png +../../data/yoloGtold1/train/2938.png +../../data/yoloGtold1/train/2939.png +../../data/yoloGtold1/train/2940.png +../../data/yoloGtold1/train/2941.png +../../data/yoloGtold1/train/2942.png +../../data/yoloGtold1/train/2943.png +../../data/yoloGtold1/train/2944.png +../../data/yoloGtold1/train/2945.png +../../data/yoloGtold1/train/2946.png +../../data/yoloGtold1/train/2947.png +../../data/yoloGtold1/train/2948.png +../../data/yoloGtold1/train/2949.png +../../data/yoloGtold1/train/2950.png +../../data/yoloGtold1/train/2951.png +../../data/yoloGtold1/train/2952.png +../../data/yoloGtold1/train/2953.png +../../data/yoloGtold1/train/2954.png +../../data/yoloGtold1/train/2955.png +../../data/yoloGtold1/train/2956.png +../../data/yoloGtold1/train/2957.png +../../data/yoloGtold1/train/2958.png +../../data/yoloGtold1/train/2959.png +../../data/yoloGtold1/train/2960.png +../../data/yoloGtold1/train/2961.png +../../data/yoloGtold1/train/2962.png +../../data/yoloGtold1/train/2963.png +../../data/yoloGtold1/train/2964.png +../../data/yoloGtold1/train/2965.png +../../data/yoloGtold1/train/2966.png +../../data/yoloGtold1/train/2967.png +../../data/yoloGtold1/train/2968.png +../../data/yoloGtold1/train/2969.png +../../data/yoloGtold1/train/2970.png +../../data/yoloGtold1/train/2971.png +../../data/yoloGtold1/train/2972.png +../../data/yoloGtold1/train/2973.png +../../data/yoloGtold1/train/2974.png +../../data/yoloGtold1/train/2975.png +../../data/yoloGtold1/train/2976.png +../../data/yoloGtold1/train/2977.png +../../data/yoloGtold1/train/2978.png +../../data/yoloGtold1/train/2979.png +../../data/yoloGtold1/train/2980.png +../../data/yoloGtold1/train/2981.png +../../data/yoloGtold1/train/2982.png +../../data/yoloGtold1/train/2983.png +../../data/yoloGtold1/train/2984.png +../../data/yoloGtold1/train/2985.png +../../data/yoloGtold1/train/2986.png +../../data/yoloGtold1/train/2987.png +../../data/yoloGtold1/train/2988.png +../../data/yoloGtold1/train/2989.png +../../data/yoloGtold1/train/2990.png +../../data/yoloGtold1/train/2991.png +../../data/yoloGtold1/train/2992.png +../../data/yoloGtold1/train/2993.png +../../data/yoloGtold1/train/2994.png +../../data/yoloGtold1/train/2995.png +../../data/yoloGtold1/train/2996.png +../../data/yoloGtold1/train/2997.png +../../data/yoloGtold1/train/2998.png +../../data/yoloGtold1/train/2999.png +../../data/yoloGtold1/train/3000.png +../../data/yoloGtold1/train/3001.png +../../data/yoloGtold1/train/3002.png +../../data/yoloGtold1/train/3003.png +../../data/yoloGtold1/train/3004.png +../../data/yoloGtold1/train/3005.png +../../data/yoloGtold1/train/3006.png +../../data/yoloGtold1/train/3007.png +../../data/yoloGtold1/train/3008.png +../../data/yoloGtold1/train/3009.png +../../data/yoloGtold1/train/3010.png +../../data/yoloGtold1/train/3011.png +../../data/yoloGtold1/train/3012.png +../../data/yoloGtold1/train/3013.png +../../data/yoloGtold1/train/3014.png +../../data/yoloGtold1/train/3015.png +../../data/yoloGtold1/train/3016.png +../../data/yoloGtold1/train/3017.png +../../data/yoloGtold1/train/3018.png +../../data/yoloGtold1/train/3019.png +../../data/yoloGtold1/train/3020.png +../../data/yoloGtold1/train/3021.png +../../data/yoloGtold1/train/3022.png +../../data/yoloGtold1/train/3023.png +../../data/yoloGtold1/train/3024.png +../../data/yoloGtold1/train/3025.png +../../data/yoloGtold1/train/3026.png +../../data/yoloGtold1/train/3027.png +../../data/yoloGtold1/train/3028.png +../../data/yoloGtold1/train/3029.png +../../data/yoloGtold1/train/3030.png +../../data/yoloGtold1/train/3031.png +../../data/yoloGtold1/train/3032.png +../../data/yoloGtold1/train/3033.png +../../data/yoloGtold1/train/3034.png +../../data/yoloGtold1/train/3035.png +../../data/yoloGtold1/train/3036.png +../../data/yoloGtold1/train/3037.png +../../data/yoloGtold1/train/3038.png +../../data/yoloGtold1/train/3039.png +../../data/yoloGtold1/train/3040.png +../../data/yoloGtold1/train/3041.png +../../data/yoloGtold1/train/3042.png +../../data/yoloGtold1/train/3043.png +../../data/yoloGtold1/train/3044.png +../../data/yoloGtold1/train/3045.png +../../data/yoloGtold1/train/3046.png +../../data/yoloGtold1/train/3047.png +../../data/yoloGtold1/train/3048.png +../../data/yoloGtold1/train/3049.png +../../data/yoloGtold1/train/3050.png +../../data/yoloGtold1/train/3051.png +../../data/yoloGtold1/train/3052.png +../../data/yoloGtold1/train/3053.png +../../data/yoloGtold1/train/3054.png +../../data/yoloGtold1/train/3055.png +../../data/yoloGtold1/train/3056.png +../../data/yoloGtold1/train/3057.png +../../data/yoloGtold1/train/3058.png +../../data/yoloGtold1/train/3059.png +../../data/yoloGtold1/train/3060.png +../../data/yoloGtold1/train/3061.png +../../data/yoloGtold1/train/3062.png +../../data/yoloGtold1/train/3063.png +../../data/yoloGtold1/train/3064.png +../../data/yoloGtold1/train/3065.png +../../data/yoloGtold1/train/3066.png +../../data/yoloGtold1/train/3067.png +../../data/yoloGtold1/train/3068.png +../../data/yoloGtold1/train/3069.png +../../data/yoloGtold1/train/3070.png +../../data/yoloGtold1/train/3071.png +../../data/yoloGtold1/train/3072.png +../../data/yoloGtold1/train/3073.png +../../data/yoloGtold1/train/3074.png +../../data/yoloGtold1/train/3075.png +../../data/yoloGtold1/train/3076.png +../../data/yoloGtold1/train/3077.png +../../data/yoloGtold1/train/3078.png +../../data/yoloGtold1/train/3079.png +../../data/yoloGtold1/train/3080.png +../../data/yoloGtold1/train/3081.png +../../data/yoloGtold1/train/3082.png +../../data/yoloGtold1/train/3083.png +../../data/yoloGtold1/train/3084.png +../../data/yoloGtold1/train/3085.png +../../data/yoloGtold1/train/3086.png +../../data/yoloGtold1/train/3087.png +../../data/yoloGtold1/train/3088.png +../../data/yoloGtold1/train/3089.png +../../data/yoloGtold1/train/3090.png +../../data/yoloGtold1/train/3091.png +../../data/yoloGtold1/train/3092.png +../../data/yoloGtold1/train/3093.png +../../data/yoloGtold1/train/3094.png +../../data/yoloGtold1/train/3095.png +../../data/yoloGtold1/train/3096.png +../../data/yoloGtold1/train/3097.png +../../data/yoloGtold1/train/3098.png +../../data/yoloGtold1/train/3099.png +../../data/yoloGtold1/train/3100.png +../../data/yoloGtold1/train/3101.png +../../data/yoloGtold1/train/3102.png +../../data/yoloGtold1/train/3103.png +../../data/yoloGtold1/train/3104.png +../../data/yoloGtold1/train/3105.png +../../data/yoloGtold1/train/3106.png +../../data/yoloGtold1/train/3107.png +../../data/yoloGtold1/train/3108.png +../../data/yoloGtold1/train/3109.png +../../data/yoloGtold1/train/3110.png +../../data/yoloGtold1/train/3111.png +../../data/yoloGtold1/train/3112.png +../../data/yoloGtold1/train/3113.png +../../data/yoloGtold1/train/3114.png +../../data/yoloGtold1/train/3115.png +../../data/yoloGtold1/train/3116.png +../../data/yoloGtold1/train/3117.png +../../data/yoloGtold1/train/3118.png +../../data/yoloGtold1/train/3119.png +../../data/yoloGtold1/train/3120.png +../../data/yoloGtold1/train/3121.png +../../data/yoloGtold1/train/3122.png +../../data/yoloGtold1/train/3123.png +../../data/yoloGtold1/train/3124.png +../../data/yoloGtold1/train/3125.png +../../data/yoloGtold1/train/3126.png +../../data/yoloGtold1/train/3127.png +../../data/yoloGtold1/train/3128.png +../../data/yoloGtold1/train/3129.png +../../data/yoloGtold1/train/3130.png +../../data/yoloGtold1/train/3131.png +../../data/yoloGtold1/train/3132.png +../../data/yoloGtold1/train/3133.png +../../data/yoloGtold1/train/3134.png +../../data/yoloGtold1/train/3135.png +../../data/yoloGtold1/train/3136.png +../../data/yoloGtold1/train/3137.png +../../data/yoloGtold1/train/3138.png +../../data/yoloGtold1/train/3139.png +../../data/yoloGtold1/train/3140.png +../../data/yoloGtold1/train/3141.png +../../data/yoloGtold1/train/3142.png +../../data/yoloGtold1/train/3143.png +../../data/yoloGtold1/train/3144.png +../../data/yoloGtold1/train/3145.png +../../data/yoloGtold1/train/3146.png +../../data/yoloGtold1/train/3147.png +../../data/yoloGtold1/train/3148.png +../../data/yoloGtold1/train/3149.png +../../data/yoloGtold1/train/3150.png +../../data/yoloGtold1/train/3151.png +../../data/yoloGtold1/train/3152.png +../../data/yoloGtold1/train/3153.png +../../data/yoloGtold1/train/3154.png +../../data/yoloGtold1/train/3155.png +../../data/yoloGtold1/train/3156.png +../../data/yoloGtold1/train/3157.png +../../data/yoloGtold1/train/3158.png +../../data/yoloGtold1/train/3159.png +../../data/yoloGtold1/train/3160.png +../../data/yoloGtold1/train/3161.png +../../data/yoloGtold1/train/3162.png +../../data/yoloGtold1/train/3163.png +../../data/yoloGtold1/train/3164.png +../../data/yoloGtold1/train/3165.png +../../data/yoloGtold1/train/3166.png +../../data/yoloGtold1/train/3167.png +../../data/yoloGtold1/train/3168.png +../../data/yoloGtold1/train/3169.png +../../data/yoloGtold1/train/3170.png +../../data/yoloGtold1/train/3171.png +../../data/yoloGtold1/train/3172.png +../../data/yoloGtold1/train/3173.png +../../data/yoloGtold1/train/3174.png +../../data/yoloGtold1/train/3175.png +../../data/yoloGtold1/train/3176.png +../../data/yoloGtold1/train/3177.png +../../data/yoloGtold1/train/3178.png +../../data/yoloGtold1/train/3179.png +../../data/yoloGtold1/train/3180.png +../../data/yoloGtold1/train/3181.png +../../data/yoloGtold1/train/3182.png +../../data/yoloGtold1/train/3183.png +../../data/yoloGtold1/train/3184.png +../../data/yoloGtold1/train/3185.png +../../data/yoloGtold1/train/3186.png +../../data/yoloGtold1/train/3187.png +../../data/yoloGtold1/train/3188.png +../../data/yoloGtold1/train/3189.png +../../data/yoloGtold1/train/3190.png +../../data/yoloGtold1/train/3191.png +../../data/yoloGtold1/train/3192.png +../../data/yoloGtold1/train/3193.png +../../data/yoloGtold1/train/3194.png +../../data/yoloGtold1/train/3195.png +../../data/yoloGtold1/train/3196.png +../../data/yoloGtold1/train/3197.png +../../data/yoloGtold1/train/3198.png +../../data/yoloGtold1/train/3199.png +../../data/yoloGtold1/train/3200.png +../../data/yoloGtold1/train/3201.png +../../data/yoloGtold1/train/3202.png +../../data/yoloGtold1/train/3203.png +../../data/yoloGtold1/train/3204.png +../../data/yoloGtold1/train/3205.png +../../data/yoloGtold1/train/3206.png +../../data/yoloGtold1/train/3207.png +../../data/yoloGtold1/train/3208.png +../../data/yoloGtold1/train/3209.png +../../data/yoloGtold1/train/3210.png +../../data/yoloGtold1/train/3211.png +../../data/yoloGtold1/train/3212.png +../../data/yoloGtold1/train/3213.png +../../data/yoloGtold1/train/3214.png +../../data/yoloGtold1/train/3215.png +../../data/yoloGtold1/train/3216.png +../../data/yoloGtold1/train/3217.png +../../data/yoloGtold1/train/3218.png +../../data/yoloGtold1/train/3219.png +../../data/yoloGtold1/train/3220.png +../../data/yoloGtold1/train/3221.png +../../data/yoloGtold1/train/3222.png +../../data/yoloGtold1/train/3223.png +../../data/yoloGtold1/train/3224.png +../../data/yoloGtold1/train/3225.png +../../data/yoloGtold1/train/3226.png +../../data/yoloGtold1/train/3227.png +../../data/yoloGtold1/train/3228.png +../../data/yoloGtold1/train/3229.png +../../data/yoloGtold1/train/3230.png +../../data/yoloGtold1/train/3231.png +../../data/yoloGtold1/train/3232.png +../../data/yoloGtold1/train/3233.png +../../data/yoloGtold1/train/3234.png +../../data/yoloGtold1/train/3235.png +../../data/yoloGtold1/train/3236.png +../../data/yoloGtold1/train/3237.png +../../data/yoloGtold1/train/3238.png +../../data/yoloGtold1/train/3239.png +../../data/yoloGtold1/train/3240.png +../../data/yoloGtold1/train/3241.png +../../data/yoloGtold1/train/3242.png +../../data/yoloGtold1/train/3243.png +../../data/yoloGtold1/train/3244.png +../../data/yoloGtold1/train/3245.png +../../data/yoloGtold1/train/3246.png +../../data/yoloGtold1/train/3247.png +../../data/yoloGtold1/train/3248.png +../../data/yoloGtold1/train/3249.png +../../data/yoloGtold1/train/3250.png +../../data/yoloGtold1/train/3251.png +../../data/yoloGtold1/train/3252.png +../../data/yoloGtold1/train/3253.png +../../data/yoloGtold1/train/3254.png +../../data/yoloGtold1/train/3255.png +../../data/yoloGtold1/train/3256.png +../../data/yoloGtold1/train/3257.png +../../data/yoloGtold1/train/3258.png +../../data/yoloGtold1/train/3259.png +../../data/yoloGtold1/train/3260.png +../../data/yoloGtold1/train/3261.png +../../data/yoloGtold1/train/3262.png +../../data/yoloGtold1/train/3263.png +../../data/yoloGtold1/train/3264.png +../../data/yoloGtold1/train/3265.png +../../data/yoloGtold1/train/3266.png +../../data/yoloGtold1/train/3267.png +../../data/yoloGtold1/train/3268.png +../../data/yoloGtold1/train/3269.png +../../data/yoloGtold1/train/3270.png +../../data/yoloGtold1/train/3271.png +../../data/yoloGtold1/train/3272.png +../../data/yoloGtold1/train/3273.png +../../data/yoloGtold1/train/3274.png +../../data/yoloGtold1/train/3275.png +../../data/yoloGtold1/train/3276.png +../../data/yoloGtold1/train/3277.png +../../data/yoloGtold1/train/3278.png +../../data/yoloGtold1/train/3279.png +../../data/yoloGtold1/train/3280.png +../../data/yoloGtold1/train/3281.png +../../data/yoloGtold1/train/3282.png +../../data/yoloGtold1/train/3283.png +../../data/yoloGtold1/train/3284.png +../../data/yoloGtold1/train/3285.png +../../data/yoloGtold1/train/3286.png +../../data/yoloGtold1/train/3287.png +../../data/yoloGtold1/train/3288.png +../../data/yoloGtold1/train/3289.png +../../data/yoloGtold1/train/3290.png +../../data/yoloGtold1/train/3291.png +../../data/yoloGtold1/train/3292.png +../../data/yoloGtold1/train/3293.png +../../data/yoloGtold1/train/3294.png +../../data/yoloGtold1/train/3295.png +../../data/yoloGtold1/train/3296.png +../../data/yoloGtold1/train/3297.png +../../data/yoloGtold1/train/3298.png +../../data/yoloGtold1/train/3299.png +../../data/yoloGtold1/train/3300.png +../../data/yoloGtold1/train/3301.png +../../data/yoloGtold1/train/3302.png +../../data/yoloGtold1/train/3303.png +../../data/yoloGtold1/train/3304.png +../../data/yoloGtold1/train/3305.png +../../data/yoloGtold1/train/3306.png +../../data/yoloGtold1/train/3307.png +../../data/yoloGtold1/train/3308.png +../../data/yoloGtold1/train/3309.png +../../data/yoloGtold1/train/3310.png +../../data/yoloGtold1/train/3311.png +../../data/yoloGtold1/train/3312.png +../../data/yoloGtold1/train/3313.png +../../data/yoloGtold1/train/3314.png +../../data/yoloGtold1/train/3315.png +../../data/yoloGtold1/train/3316.png +../../data/yoloGtold1/train/3317.png +../../data/yoloGtold1/train/3318.png +../../data/yoloGtold1/train/3319.png +../../data/yoloGtold1/train/3320.png +../../data/yoloGtold1/train/3321.png +../../data/yoloGtold1/train/3322.png +../../data/yoloGtold1/train/3323.png +../../data/yoloGtold1/train/3324.png +../../data/yoloGtold1/train/3325.png +../../data/yoloGtold1/train/3326.png +../../data/yoloGtold1/train/3327.png +../../data/yoloGtold1/train/3328.png +../../data/yoloGtold1/train/3329.png +../../data/yoloGtold1/train/3330.png +../../data/yoloGtold1/train/3331.png +../../data/yoloGtold1/train/3332.png +../../data/yoloGtold1/train/3333.png +../../data/yoloGtold1/train/3334.png +../../data/yoloGtold1/train/3335.png +../../data/yoloGtold1/train/3336.png +../../data/yoloGtold1/train/3337.png +../../data/yoloGtold1/train/3338.png +../../data/yoloGtold1/train/3339.png +../../data/yoloGtold1/train/3340.png +../../data/yoloGtold1/train/3341.png +../../data/yoloGtold1/train/3342.png +../../data/yoloGtold1/train/3343.png +../../data/yoloGtold1/train/3344.png +../../data/yoloGtold1/train/3345.png +../../data/yoloGtold1/train/3346.png +../../data/yoloGtold1/train/3347.png +../../data/yoloGtold1/train/3348.png +../../data/yoloGtold1/train/3349.png +../../data/yoloGtold1/train/3350.png +../../data/yoloGtold1/train/3351.png +../../data/yoloGtold1/train/3352.png +../../data/yoloGtold1/train/3353.png +../../data/yoloGtold1/train/3354.png +../../data/yoloGtold1/train/3355.png +../../data/yoloGtold1/train/3356.png +../../data/yoloGtold1/train/3357.png +../../data/yoloGtold1/train/3358.png +../../data/yoloGtold1/train/3359.png +../../data/yoloGtold1/train/3360.png +../../data/yoloGtold1/train/3361.png +../../data/yoloGtold1/train/3362.png +../../data/yoloGtold1/train/3363.png +../../data/yoloGtold1/train/3364.png +../../data/yoloGtold1/train/3365.png +../../data/yoloGtold1/train/3366.png +../../data/yoloGtold1/train/3367.png +../../data/yoloGtold1/train/3368.png +../../data/yoloGtold1/train/3369.png +../../data/yoloGtold1/train/3370.png +../../data/yoloGtold1/train/3371.png +../../data/yoloGtold1/train/3372.png +../../data/yoloGtold1/train/3373.png +../../data/yoloGtold1/train/3374.png +../../data/yoloGtold1/train/3375.png +../../data/yoloGtold1/train/3376.png +../../data/yoloGtold1/train/3377.png +../../data/yoloGtold1/train/3378.png +../../data/yoloGtold1/train/3379.png +../../data/yoloGtold1/train/3380.png +../../data/yoloGtold1/train/3381.png +../../data/yoloGtold1/train/3382.png +../../data/yoloGtold1/train/3383.png +../../data/yoloGtold1/train/3384.png +../../data/yoloGtold1/train/3385.png +../../data/yoloGtold1/train/3386.png +../../data/yoloGtold1/train/3387.png +../../data/yoloGtold1/train/3388.png +../../data/yoloGtold1/train/3389.png +../../data/yoloGtold1/train/3390.png +../../data/yoloGtold1/train/3391.png +../../data/yoloGtold1/train/3392.png +../../data/yoloGtold1/train/3393.png +../../data/yoloGtold1/train/3394.png +../../data/yoloGtold1/train/3395.png +../../data/yoloGtold1/train/3396.png +../../data/yoloGtold1/train/3397.png +../../data/yoloGtold1/train/3398.png +../../data/yoloGtold1/train/3399.png +../../data/yoloGtold1/train/3400.png +../../data/yoloGtold1/train/3401.png +../../data/yoloGtold1/train/3402.png +../../data/yoloGtold1/train/3403.png +../../data/yoloGtold1/train/3404.png +../../data/yoloGtold1/train/3405.png +../../data/yoloGtold1/train/3406.png +../../data/yoloGtold1/train/3407.png +../../data/yoloGtold1/train/3408.png +../../data/yoloGtold1/train/3409.png +../../data/yoloGtold1/train/3410.png +../../data/yoloGtold1/train/3411.png +../../data/yoloGtold1/train/3412.png +../../data/yoloGtold1/train/3413.png +../../data/yoloGtold1/train/3414.png +../../data/yoloGtold1/train/3415.png +../../data/yoloGtold1/train/3416.png +../../data/yoloGtold1/train/3417.png +../../data/yoloGtold1/train/3418.png +../../data/yoloGtold1/train/3419.png +../../data/yoloGtold1/train/3420.png +../../data/yoloGtold1/train/3421.png +../../data/yoloGtold1/train/3422.png +../../data/yoloGtold1/train/3423.png +../../data/yoloGtold1/train/3424.png +../../data/yoloGtold1/train/3425.png +../../data/yoloGtold1/train/3426.png +../../data/yoloGtold1/train/3427.png +../../data/yoloGtold1/train/3428.png +../../data/yoloGtold1/train/3429.png +../../data/yoloGtold1/train/3430.png +../../data/yoloGtold1/train/3431.png +../../data/yoloGtold1/train/3432.png +../../data/yoloGtold1/train/3433.png +../../data/yoloGtold1/train/3434.png +../../data/yoloGtold1/train/3435.png +../../data/yoloGtold1/train/3436.png +../../data/yoloGtold1/train/3437.png +../../data/yoloGtold1/train/3438.png +../../data/yoloGtold1/train/3439.png +../../data/yoloGtold1/train/3440.png +../../data/yoloGtold1/train/3441.png +../../data/yoloGtold1/train/3442.png +../../data/yoloGtold1/train/3443.png +../../data/yoloGtold1/train/3444.png +../../data/yoloGtold1/train/3445.png +../../data/yoloGtold1/train/3446.png +../../data/yoloGtold1/train/3447.png +../../data/yoloGtold1/train/3448.png +../../data/yoloGtold1/train/3449.png +../../data/yoloGtold1/train/3450.png +../../data/yoloGtold1/train/3451.png +../../data/yoloGtold1/train/3452.png +../../data/yoloGtold1/train/3453.png +../../data/yoloGtold1/train/3454.png +../../data/yoloGtold1/train/3455.png +../../data/yoloGtold1/train/3456.png +../../data/yoloGtold1/train/3457.png +../../data/yoloGtold1/train/3458.png +../../data/yoloGtold1/train/3459.png +../../data/yoloGtold1/train/3460.png +../../data/yoloGtold1/train/3461.png +../../data/yoloGtold1/train/3462.png +../../data/yoloGtold1/train/3463.png +../../data/yoloGtold1/train/3464.png +../../data/yoloGtold1/train/3465.png +../../data/yoloGtold1/train/3466.png +../../data/yoloGtold1/train/3467.png +../../data/yoloGtold1/train/3468.png +../../data/yoloGtold1/train/3469.png +../../data/yoloGtold1/train/3470.png +../../data/yoloGtold1/train/3471.png +../../data/yoloGtold1/train/3472.png +../../data/yoloGtold1/train/3473.png +../../data/yoloGtold1/train/3474.png +../../data/yoloGtold1/train/3475.png +../../data/yoloGtold1/train/3476.png +../../data/yoloGtold1/train/3477.png +../../data/yoloGtold1/train/3478.png +../../data/yoloGtold1/train/3479.png +../../data/yoloGtold1/train/3480.png +../../data/yoloGtold1/train/3481.png +../../data/yoloGtold1/train/3482.png +../../data/yoloGtold1/train/3483.png +../../data/yoloGtold1/train/3484.png +../../data/yoloGtold1/train/3485.png +../../data/yoloGtold1/train/3486.png +../../data/yoloGtold1/train/3487.png +../../data/yoloGtold1/train/3488.png +../../data/yoloGtold1/train/3489.png +../../data/yoloGtold1/train/3490.png +../../data/yoloGtold1/train/3491.png +../../data/yoloGtold1/train/3492.png +../../data/yoloGtold1/train/3493.png +../../data/yoloGtold1/train/3494.png +../../data/yoloGtold1/train/3495.png +../../data/yoloGtold1/train/3496.png +../../data/yoloGtold1/train/3497.png +../../data/yoloGtold1/train/3498.png +../../data/yoloGtold1/train/3499.png +../../data/yoloGtold1/train/3500.png +../../data/yoloGtold1/train/3501.png +../../data/yoloGtold1/train/3502.png +../../data/yoloGtold1/train/3503.png +../../data/yoloGtold1/train/3504.png +../../data/yoloGtold1/train/3505.png +../../data/yoloGtold1/train/3506.png +../../data/yoloGtold1/train/3507.png +../../data/yoloGtold1/train/3508.png +../../data/yoloGtold1/train/3509.png +../../data/yoloGtold1/train/3510.png +../../data/yoloGtold1/train/3511.png +../../data/yoloGtold1/train/3512.png +../../data/yoloGtold1/train/3513.png +../../data/yoloGtold1/train/3514.png +../../data/yoloGtold1/train/3515.png +../../data/yoloGtold1/train/3516.png +../../data/yoloGtold1/train/3517.png +../../data/yoloGtold1/train/3518.png +../../data/yoloGtold1/train/3519.png +../../data/yoloGtold1/train/3520.png +../../data/yoloGtold1/train/3521.png +../../data/yoloGtold1/train/3522.png +../../data/yoloGtold1/train/3523.png +../../data/yoloGtold1/train/3524.png +../../data/yoloGtold1/train/3525.png +../../data/yoloGtold1/train/3526.png +../../data/yoloGtold1/train/3527.png +../../data/yoloGtold1/train/3528.png +../../data/yoloGtold1/train/3529.png +../../data/yoloGtold1/train/3530.png +../../data/yoloGtold1/train/3531.png +../../data/yoloGtold1/train/3532.png +../../data/yoloGtold1/train/3533.png +../../data/yoloGtold1/train/3534.png +../../data/yoloGtold1/train/3535.png +../../data/yoloGtold1/train/3536.png +../../data/yoloGtold1/train/3537.png +../../data/yoloGtold1/train/3538.png +../../data/yoloGtold1/train/3539.png +../../data/yoloGtold1/train/3540.png +../../data/yoloGtold1/train/3541.png +../../data/yoloGtold1/train/3542.png +../../data/yoloGtold1/train/3543.png +../../data/yoloGtold1/train/3544.png +../../data/yoloGtold1/train/3545.png +../../data/yoloGtold1/train/3546.png +../../data/yoloGtold1/train/3547.png +../../data/yoloGtold1/train/3548.png +../../data/yoloGtold1/train/3549.png +../../data/yoloGtold1/train/3550.png +../../data/yoloGtold1/train/3551.png +../../data/yoloGtold1/train/3552.png +../../data/yoloGtold1/train/3553.png +../../data/yoloGtold1/train/3554.png +../../data/yoloGtold1/train/3555.png +../../data/yoloGtold1/train/3556.png +../../data/yoloGtold1/train/3557.png +../../data/yoloGtold1/train/3558.png +../../data/yoloGtold1/train/3559.png +../../data/yoloGtold1/train/3560.png +../../data/yoloGtold1/train/3561.png +../../data/yoloGtold1/train/3562.png +../../data/yoloGtold1/train/3563.png +../../data/yoloGtold1/train/3564.png +../../data/yoloGtold1/train/3565.png +../../data/yoloGtold1/train/3566.png +../../data/yoloGtold1/train/3567.png +../../data/yoloGtold1/train/3568.png +../../data/yoloGtold1/train/3569.png +../../data/yoloGtold1/train/3570.png +../../data/yoloGtold1/train/3571.png +../../data/yoloGtold1/train/3572.png +../../data/yoloGtold1/train/3573.png +../../data/yoloGtold1/train/3574.png +../../data/yoloGtold1/train/3575.png +../../data/yoloGtold1/train/3576.png +../../data/yoloGtold1/train/3577.png +../../data/yoloGtold1/train/3578.png +../../data/yoloGtold1/train/3579.png +../../data/yoloGtold1/train/3580.png +../../data/yoloGtold1/train/3581.png +../../data/yoloGtold1/train/3582.png +../../data/yoloGtold1/train/3583.png +../../data/yoloGtold1/train/3584.png +../../data/yoloGtold1/train/3585.png +../../data/yoloGtold1/train/3586.png +../../data/yoloGtold1/train/3587.png +../../data/yoloGtold1/train/3588.png +../../data/yoloGtold1/train/3589.png +../../data/yoloGtold1/train/3590.png +../../data/yoloGtold1/train/3591.png +../../data/yoloGtold1/train/3592.png +../../data/yoloGtold1/train/3593.png +../../data/yoloGtold1/train/3594.png +../../data/yoloGtold1/train/3595.png +../../data/yoloGtold1/train/3596.png +../../data/yoloGtold1/train/3597.png +../../data/yoloGtold1/train/3598.png +../../data/yoloGtold1/train/3599.png +../../data/yoloGtold1/train/3600.png +../../data/yoloGtold1/train/3601.png +../../data/yoloGtold1/train/3602.png +../../data/yoloGtold1/train/3603.png +../../data/yoloGtold1/train/3604.png +../../data/yoloGtold1/train/3605.png +../../data/yoloGtold1/train/3606.png +../../data/yoloGtold1/train/3607.png +../../data/yoloGtold1/train/3608.png +../../data/yoloGtold1/train/3609.png +../../data/yoloGtold1/train/3610.png +../../data/yoloGtold1/train/3611.png +../../data/yoloGtold1/train/3612.png +../../data/yoloGtold1/train/3613.png +../../data/yoloGtold1/train/3614.png +../../data/yoloGtold1/train/3615.png +../../data/yoloGtold1/train/3616.png +../../data/yoloGtold1/train/3617.png +../../data/yoloGtold1/train/3618.png +../../data/yoloGtold1/train/3619.png +../../data/yoloGtold1/train/3620.png +../../data/yoloGtold1/train/3621.png +../../data/yoloGtold1/train/3622.png +../../data/yoloGtold1/train/3623.png +../../data/yoloGtold1/train/3624.png +../../data/yoloGtold1/train/3625.png +../../data/yoloGtold1/train/3626.png +../../data/yoloGtold1/train/3627.png +../../data/yoloGtold1/train/3628.png +../../data/yoloGtold1/train/3629.png +../../data/yoloGtold1/train/3630.png +../../data/yoloGtold1/train/3631.png +../../data/yoloGtold1/train/3632.png +../../data/yoloGtold1/train/3633.png +../../data/yoloGtold1/train/3634.png +../../data/yoloGtold1/train/3635.png +../../data/yoloGtold1/train/3636.png +../../data/yoloGtold1/train/3637.png +../../data/yoloGtold1/train/3638.png +../../data/yoloGtold1/train/3639.png +../../data/yoloGtold1/train/3640.png +../../data/yoloGtold1/train/3641.png +../../data/yoloGtold1/train/3642.png +../../data/yoloGtold1/train/3643.png +../../data/yoloGtold1/train/3644.png +../../data/yoloGtold1/train/3645.png +../../data/yoloGtold1/train/3646.png +../../data/yoloGtold1/train/3647.png +../../data/yoloGtold1/train/3648.png +../../data/yoloGtold1/train/3649.png +../../data/yoloGtold1/train/3650.png +../../data/yoloGtold1/train/3651.png +../../data/yoloGtold1/train/3652.png +../../data/yoloGtold1/train/3653.png +../../data/yoloGtold1/train/3654.png +../../data/yoloGtold1/train/3655.png +../../data/yoloGtold1/train/3656.png +../../data/yoloGtold1/train/3657.png +../../data/yoloGtold1/train/3658.png +../../data/yoloGtold1/train/3659.png +../../data/yoloGtold1/train/3660.png +../../data/yoloGtold1/train/3661.png +../../data/yoloGtold1/train/3662.png +../../data/yoloGtold1/train/3663.png +../../data/yoloGtold1/train/3664.png +../../data/yoloGtold1/train/3665.png +../../data/yoloGtold1/train/3666.png +../../data/yoloGtold1/train/3667.png +../../data/yoloGtold1/train/3668.png +../../data/yoloGtold1/train/3669.png +../../data/yoloGtold1/train/3670.png +../../data/yoloGtold1/train/3671.png +../../data/yoloGtold1/train/3672.png +../../data/yoloGtold1/train/3673.png +../../data/yoloGtold1/train/3674.png +../../data/yoloGtold1/train/3675.png +../../data/yoloGtold1/train/3676.png +../../data/yoloGtold1/train/3677.png +../../data/yoloGtold1/train/3678.png +../../data/yoloGtold1/train/3679.png +../../data/yoloGtold1/train/3680.png +../../data/yoloGtold1/train/3681.png +../../data/yoloGtold1/train/3682.png +../../data/yoloGtold1/train/3683.png +../../data/yoloGtold1/train/3684.png +../../data/yoloGtold1/train/3685.png +../../data/yoloGtold1/train/3686.png +../../data/yoloGtold1/train/3687.png +../../data/yoloGtold1/train/3688.png +../../data/yoloGtold1/train/3689.png +../../data/yoloGtold1/train/3690.png +../../data/yoloGtold1/train/3691.png +../../data/yoloGtold1/train/3692.png +../../data/yoloGtold1/train/3693.png +../../data/yoloGtold1/train/3694.png +../../data/yoloGtold1/train/3695.png +../../data/yoloGtold1/train/3696.png +../../data/yoloGtold1/train/3697.png +../../data/yoloGtold1/train/3698.png +../../data/yoloGtold1/train/3699.png +../../data/yoloGtold1/train/3700.png +../../data/yoloGtold1/train/3701.png +../../data/yoloGtold1/train/3702.png +../../data/yoloGtold1/train/3703.png +../../data/yoloGtold1/train/3704.png +../../data/yoloGtold1/train/3705.png +../../data/yoloGtold1/train/3706.png +../../data/yoloGtold1/train/3707.png +../../data/yoloGtold1/train/3708.png +../../data/yoloGtold1/train/3709.png +../../data/yoloGtold1/train/3710.png +../../data/yoloGtold1/train/3711.png +../../data/yoloGtold1/train/3712.png +../../data/yoloGtold1/train/3713.png +../../data/yoloGtold1/train/3714.png +../../data/yoloGtold1/train/3715.png +../../data/yoloGtold1/train/3716.png +../../data/yoloGtold1/train/3717.png +../../data/yoloGtold1/train/3718.png +../../data/yoloGtold1/train/3719.png +../../data/yoloGtold1/train/3720.png +../../data/yoloGtold1/train/3721.png +../../data/yoloGtold1/train/3722.png +../../data/yoloGtold1/train/3723.png +../../data/yoloGtold1/train/3724.png +../../data/yoloGtold1/train/3725.png +../../data/yoloGtold1/train/3726.png +../../data/yoloGtold1/train/3727.png +../../data/yoloGtold1/train/3728.png +../../data/yoloGtold1/train/3729.png +../../data/yoloGtold1/train/3730.png +../../data/yoloGtold1/train/3731.png +../../data/yoloGtold1/train/3732.png +../../data/yoloGtold1/train/3733.png +../../data/yoloGtold1/train/3734.png +../../data/yoloGtold1/train/3735.png +../../data/yoloGtold1/train/3736.png +../../data/yoloGtold1/train/3737.png +../../data/yoloGtold1/train/3738.png +../../data/yoloGtold1/train/3739.png +../../data/yoloGtold1/train/3740.png +../../data/yoloGtold1/train/3741.png +../../data/yoloGtold1/train/3742.png +../../data/yoloGtold1/train/3743.png +../../data/yoloGtold1/train/3744.png +../../data/yoloGtold1/train/3745.png +../../data/yoloGtold1/train/3746.png +../../data/yoloGtold1/train/3747.png +../../data/yoloGtold1/train/3748.png +../../data/yoloGtold1/train/3749.png +../../data/yoloGtold1/train/3750.png +../../data/yoloGtold1/train/3751.png +../../data/yoloGtold1/train/3752.png +../../data/yoloGtold1/train/3753.png +../../data/yoloGtold1/train/3754.png +../../data/yoloGtold1/train/3755.png +../../data/yoloGtold1/train/3756.png +../../data/yoloGtold1/train/3757.png +../../data/yoloGtold1/train/3758.png +../../data/yoloGtold1/train/3759.png +../../data/yoloGtold1/train/3760.png +../../data/yoloGtold1/train/3761.png +../../data/yoloGtold1/train/3762.png +../../data/yoloGtold1/train/3763.png +../../data/yoloGtold1/train/3764.png +../../data/yoloGtold1/train/3765.png +../../data/yoloGtold1/train/3766.png +../../data/yoloGtold1/train/3767.png +../../data/yoloGtold1/train/3768.png +../../data/yoloGtold1/train/3769.png +../../data/yoloGtold1/train/3770.png +../../data/yoloGtold1/train/3771.png +../../data/yoloGtold1/train/3772.png +../../data/yoloGtold1/train/3773.png +../../data/yoloGtold1/train/3774.png +../../data/yoloGtold1/train/3775.png +../../data/yoloGtold1/train/3776.png +../../data/yoloGtold1/train/3777.png +../../data/yoloGtold1/train/3778.png +../../data/yoloGtold1/train/3779.png +../../data/yoloGtold1/train/3780.png +../../data/yoloGtold1/train/3781.png +../../data/yoloGtold1/train/3782.png +../../data/yoloGtold1/train/3783.png +../../data/yoloGtold1/train/3784.png +../../data/yoloGtold1/train/3785.png +../../data/yoloGtold1/train/3786.png +../../data/yoloGtold1/train/3787.png +../../data/yoloGtold1/train/3788.png +../../data/yoloGtold1/train/3789.png +../../data/yoloGtold1/train/3790.png +../../data/yoloGtold1/train/3791.png +../../data/yoloGtold1/train/3792.png +../../data/yoloGtold1/train/3793.png +../../data/yoloGtold1/train/3794.png +../../data/yoloGtold1/train/3795.png +../../data/yoloGtold1/train/3796.png +../../data/yoloGtold1/train/3797.png +../../data/yoloGtold1/train/3798.png +../../data/yoloGtold1/train/3799.png +../../data/yoloGtold1/train/3800.png +../../data/yoloGtold1/train/3801.png +../../data/yoloGtold1/train/3802.png +../../data/yoloGtold1/train/3803.png +../../data/yoloGtold1/train/3804.png +../../data/yoloGtold1/train/3805.png +../../data/yoloGtold1/train/3806.png +../../data/yoloGtold1/train/3807.png +../../data/yoloGtold1/train/3808.png +../../data/yoloGtold1/train/3809.png +../../data/yoloGtold1/train/3810.png +../../data/yoloGtold1/train/3811.png +../../data/yoloGtold1/train/3812.png +../../data/yoloGtold1/train/3813.png +../../data/yoloGtold1/train/3814.png +../../data/yoloGtold1/train/3815.png +../../data/yoloGtold1/train/3816.png +../../data/yoloGtold1/train/3817.png +../../data/yoloGtold1/train/3818.png +../../data/yoloGtold1/train/3819.png +../../data/yoloGtold1/train/3820.png +../../data/yoloGtold1/train/3821.png +../../data/yoloGtold1/train/3822.png +../../data/yoloGtold1/train/3823.png +../../data/yoloGtold1/train/3824.png +../../data/yoloGtold1/train/3825.png +../../data/yoloGtold1/train/3826.png +../../data/yoloGtold1/train/3827.png +../../data/yoloGtold1/train/3828.png +../../data/yoloGtold1/train/3829.png +../../data/yoloGtold1/train/3830.png +../../data/yoloGtold1/train/3831.png +../../data/yoloGtold1/train/3832.png +../../data/yoloGtold1/train/3833.png +../../data/yoloGtold1/train/3834.png +../../data/yoloGtold1/train/3835.png +../../data/yoloGtold1/train/3836.png +../../data/yoloGtold1/train/3837.png +../../data/yoloGtold1/train/3838.png +../../data/yoloGtold1/train/3839.png +../../data/yoloGtold1/train/3840.png +../../data/yoloGtold1/train/3841.png +../../data/yoloGtold1/train/3842.png +../../data/yoloGtold1/train/3843.png +../../data/yoloGtold1/train/3844.png +../../data/yoloGtold1/train/3845.png +../../data/yoloGtold1/train/3846.png +../../data/yoloGtold1/train/3847.png +../../data/yoloGtold1/train/3848.png +../../data/yoloGtold1/train/3849.png +../../data/yoloGtold1/train/3850.png +../../data/yoloGtold1/train/3851.png +../../data/yoloGtold1/train/3852.png +../../data/yoloGtold1/train/3853.png +../../data/yoloGtold1/train/3854.png +../../data/yoloGtold1/train/3855.png +../../data/yoloGtold1/train/3856.png +../../data/yoloGtold1/train/3857.png +../../data/yoloGtold1/train/3858.png +../../data/yoloGtold1/train/3859.png +../../data/yoloGtold1/train/3860.png +../../data/yoloGtold1/train/3861.png +../../data/yoloGtold1/train/3862.png +../../data/yoloGtold1/train/3863.png +../../data/yoloGtold1/train/3864.png +../../data/yoloGtold1/train/3865.png +../../data/yoloGtold1/train/3866.png +../../data/yoloGtold1/train/3867.png +../../data/yoloGtold1/train/3868.png +../../data/yoloGtold1/train/3869.png +../../data/yoloGtold1/train/3870.png +../../data/yoloGtold1/train/3871.png +../../data/yoloGtold1/train/3872.png +../../data/yoloGtold1/train/3873.png +../../data/yoloGtold1/train/3874.png +../../data/yoloGtold1/train/3875.png +../../data/yoloGtold1/train/3876.png +../../data/yoloGtold1/train/3877.png +../../data/yoloGtold1/train/3878.png +../../data/yoloGtold1/train/3879.png +../../data/yoloGtold1/train/3880.png +../../data/yoloGtold1/train/3881.png +../../data/yoloGtold1/train/3882.png +../../data/yoloGtold1/train/3883.png +../../data/yoloGtold1/train/3884.png +../../data/yoloGtold1/train/3885.png +../../data/yoloGtold1/train/3886.png +../../data/yoloGtold1/train/3887.png +../../data/yoloGtold1/train/3888.png +../../data/yoloGtold1/train/3889.png +../../data/yoloGtold1/train/3890.png +../../data/yoloGtold1/train/3891.png +../../data/yoloGtold1/train/3892.png +../../data/yoloGtold1/train/3893.png +../../data/yoloGtold1/train/3894.png +../../data/yoloGtold1/train/3895.png +../../data/yoloGtold1/train/3896.png +../../data/yoloGtold1/train/3897.png +../../data/yoloGtold1/train/3898.png +../../data/yoloGtold1/train/3899.png +../../data/yoloGtold1/train/3900.png +../../data/yoloGtold1/train/3901.png +../../data/yoloGtold1/train/3902.png +../../data/yoloGtold1/train/3903.png +../../data/yoloGtold1/train/3904.png +../../data/yoloGtold1/train/3905.png +../../data/yoloGtold1/train/3906.png +../../data/yoloGtold1/train/3907.png +../../data/yoloGtold1/train/3908.png +../../data/yoloGtold1/train/3909.png +../../data/yoloGtold1/train/3910.png +../../data/yoloGtold1/train/3911.png +../../data/yoloGtold1/train/3912.png +../../data/yoloGtold1/train/3913.png +../../data/yoloGtold1/train/3914.png +../../data/yoloGtold1/train/3915.png +../../data/yoloGtold1/train/3916.png +../../data/yoloGtold1/train/3917.png +../../data/yoloGtold1/train/3918.png +../../data/yoloGtold1/train/3919.png +../../data/yoloGtold1/train/3920.png +../../data/yoloGtold1/train/3921.png +../../data/yoloGtold1/train/3922.png +../../data/yoloGtold1/train/3923.png +../../data/yoloGtold1/train/3924.png +../../data/yoloGtold1/train/3925.png +../../data/yoloGtold1/train/3926.png +../../data/yoloGtold1/train/3927.png +../../data/yoloGtold1/train/3928.png +../../data/yoloGtold1/train/3929.png +../../data/yoloGtold1/train/3930.png +../../data/yoloGtold1/train/3931.png +../../data/yoloGtold1/train/3932.png +../../data/yoloGtold1/train/3933.png +../../data/yoloGtold1/train/3934.png +../../data/yoloGtold1/train/3935.png +../../data/yoloGtold1/train/3936.png +../../data/yoloGtold1/train/3937.png +../../data/yoloGtold1/train/3938.png +../../data/yoloGtold1/train/3939.png +../../data/yoloGtold1/train/3940.png +../../data/yoloGtold1/train/3941.png +../../data/yoloGtold1/train/3942.png +../../data/yoloGtold1/train/3943.png +../../data/yoloGtold1/train/3944.png +../../data/yoloGtold1/train/3945.png +../../data/yoloGtold1/train/3946.png +../../data/yoloGtold1/train/3947.png +../../data/yoloGtold1/train/3948.png +../../data/yoloGtold1/train/3949.png +../../data/yoloGtold1/train/3950.png +../../data/yoloGtold1/train/3951.png +../../data/yoloGtold1/train/3952.png +../../data/yoloGtold1/train/3953.png +../../data/yoloGtold1/train/3954.png +../../data/yoloGtold1/train/3955.png +../../data/yoloGtold1/train/3956.png +../../data/yoloGtold1/train/3957.png +../../data/yoloGtold1/train/3958.png +../../data/yoloGtold1/train/3959.png +../../data/yoloGtold1/train/3960.png +../../data/yoloGtold1/train/3961.png +../../data/yoloGtold1/train/3962.png +../../data/yoloGtold1/train/3963.png +../../data/yoloGtold1/train/3964.png +../../data/yoloGtold1/train/3965.png +../../data/yoloGtold1/train/3966.png +../../data/yoloGtold1/train/3967.png +../../data/yoloGtold1/train/3968.png +../../data/yoloGtold1/train/3969.png +../../data/yoloGtold1/train/3970.png +../../data/yoloGtold1/train/3971.png +../../data/yoloGtold1/train/3972.png +../../data/yoloGtold1/train/3973.png +../../data/yoloGtold1/train/3974.png +../../data/yoloGtold1/train/3975.png +../../data/yoloGtold1/train/3976.png +../../data/yoloGtold1/train/3977.png +../../data/yoloGtold1/train/3978.png +../../data/yoloGtold1/train/3979.png +../../data/yoloGtold1/train/3980.png +../../data/yoloGtold1/train/3981.png +../../data/yoloGtold1/train/3982.png +../../data/yoloGtold1/train/3983.png +../../data/yoloGtold1/train/3984.png +../../data/yoloGtold1/train/3985.png +../../data/yoloGtold1/train/3986.png +../../data/yoloGtold1/train/3987.png +../../data/yoloGtold1/train/3988.png +../../data/yoloGtold1/train/3989.png +../../data/yoloGtold1/train/3990.png +../../data/yoloGtold1/train/3991.png +../../data/yoloGtold1/train/3992.png +../../data/yoloGtold1/train/3993.png +../../data/yoloGtold1/train/3994.png +../../data/yoloGtold1/train/3995.png +../../data/yoloGtold1/train/3996.png +../../data/yoloGtold1/train/3997.png +../../data/yoloGtold1/train/3998.png +../../data/yoloGtold1/train/3999.png +../../data/yoloGtold1/train/4000.png +../../data/yoloGtold1/train/4001.png +../../data/yoloGtold1/train/4002.png +../../data/yoloGtold1/train/4003.png +../../data/yoloGtold1/train/4004.png +../../data/yoloGtold1/train/4005.png +../../data/yoloGtold1/train/4006.png +../../data/yoloGtold1/train/4007.png +../../data/yoloGtold1/train/4008.png +../../data/yoloGtold1/train/4009.png +../../data/yoloGtold1/train/4010.png +../../data/yoloGtold1/train/4011.png +../../data/yoloGtold1/train/4012.png +../../data/yoloGtold1/train/4013.png +../../data/yoloGtold1/train/4014.png +../../data/yoloGtold1/train/4015.png +../../data/yoloGtold1/train/4016.png +../../data/yoloGtold1/train/4017.png +../../data/yoloGtold1/train/4018.png +../../data/yoloGtold1/train/4019.png +../../data/yoloGtold1/train/4020.png +../../data/yoloGtold1/train/4021.png +../../data/yoloGtold1/train/4022.png +../../data/yoloGtold1/train/4023.png +../../data/yoloGtold1/train/4024.png +../../data/yoloGtold1/train/4025.png +../../data/yoloGtold1/train/4026.png +../../data/yoloGtold1/train/4027.png +../../data/yoloGtold1/train/4028.png +../../data/yoloGtold1/train/4029.png +../../data/yoloGtold1/train/4030.png +../../data/yoloGtold1/train/4031.png +../../data/yoloGtold1/train/4032.png +../../data/yoloGtold1/train/4033.png +../../data/yoloGtold1/train/4034.png +../../data/yoloGtold1/train/4035.png +../../data/yoloGtold1/train/4036.png +../../data/yoloGtold1/train/4037.png +../../data/yoloGtold1/train/4038.png +../../data/yoloGtold1/train/4039.png +../../data/yoloGtold1/train/4040.png +../../data/yoloGtold1/train/4041.png +../../data/yoloGtold1/train/4042.png +../../data/yoloGtold1/train/4043.png +../../data/yoloGtold1/train/4044.png +../../data/yoloGtold1/train/4045.png +../../data/yoloGtold1/train/4046.png +../../data/yoloGtold1/train/4047.png +../../data/yoloGtold1/train/4048.png +../../data/yoloGtold1/train/4049.png +../../data/yoloGtold1/train/4050.png +../../data/yoloGtold1/train/4051.png +../../data/yoloGtold1/train/4052.png +../../data/yoloGtold1/train/4053.png +../../data/yoloGtold1/train/4054.png +../../data/yoloGtold1/train/4055.png +../../data/yoloGtold1/train/4056.png +../../data/yoloGtold1/train/4057.png +../../data/yoloGtold1/train/4058.png +../../data/yoloGtold1/train/4059.png +../../data/yoloGtold1/train/4060.png +../../data/yoloGtold1/train/4061.png +../../data/yoloGtold1/train/4062.png +../../data/yoloGtold1/train/4063.png +../../data/yoloGtold1/train/4064.png +../../data/yoloGtold1/train/4065.png +../../data/yoloGtold1/train/4066.png +../../data/yoloGtold1/train/4067.png +../../data/yoloGtold1/train/4068.png +../../data/yoloGtold1/train/4069.png +../../data/yoloGtold1/train/4070.png +../../data/yoloGtold1/train/4071.png +../../data/yoloGtold1/train/4072.png +../../data/yoloGtold1/train/4073.png +../../data/yoloGtold1/train/4074.png +../../data/yoloGtold1/train/4075.png +../../data/yoloGtold1/train/4076.png +../../data/yoloGtold1/train/4077.png +../../data/yoloGtold1/train/4078.png +../../data/yoloGtold1/train/4079.png +../../data/yoloGtold1/train/4080.png +../../data/yoloGtold1/train/4081.png +../../data/yoloGtold1/train/4082.png +../../data/yoloGtold1/train/4083.png +../../data/yoloGtold1/train/4084.png +../../data/yoloGtold1/train/4085.png +../../data/yoloGtold1/train/4086.png +../../data/yoloGtold1/train/4087.png +../../data/yoloGtold1/train/4088.png +../../data/yoloGtold1/train/4089.png +../../data/yoloGtold1/train/4090.png +../../data/yoloGtold1/train/4091.png +../../data/yoloGtold1/train/4092.png +../../data/yoloGtold1/train/4093.png +../../data/yoloGtold1/train/4094.png +../../data/yoloGtold1/train/4095.png +../../data/yoloGtold1/train/4096.png +../../data/yoloGtold1/train/4097.png +../../data/yoloGtold1/train/4098.png +../../data/yoloGtold1/train/4099.png +../../data/yoloGtold1/train/4100.png +../../data/yoloGtold1/train/4101.png +../../data/yoloGtold1/train/4102.png +../../data/yoloGtold1/train/4103.png +../../data/yoloGtold1/train/4104.png +../../data/yoloGtold1/train/4105.png +../../data/yoloGtold1/train/4106.png +../../data/yoloGtold1/train/4107.png +../../data/yoloGtold1/train/4108.png +../../data/yoloGtold1/train/4109.png +../../data/yoloGtold1/train/4110.png +../../data/yoloGtold1/train/4111.png +../../data/yoloGtold1/train/4112.png +../../data/yoloGtold1/train/4113.png +../../data/yoloGtold1/train/4114.png +../../data/yoloGtold1/train/4115.png +../../data/yoloGtold1/train/4116.png +../../data/yoloGtold1/train/4117.png +../../data/yoloGtold1/train/4118.png +../../data/yoloGtold1/train/4119.png +../../data/yoloGtold1/train/4120.png +../../data/yoloGtold1/train/4121.png +../../data/yoloGtold1/train/4122.png +../../data/yoloGtold1/train/4123.png +../../data/yoloGtold1/train/4124.png +../../data/yoloGtold1/train/4125.png +../../data/yoloGtold1/train/4126.png +../../data/yoloGtold1/train/4127.png +../../data/yoloGtold1/train/4128.png +../../data/yoloGtold1/train/4129.png +../../data/yoloGtold1/train/4130.png +../../data/yoloGtold1/train/4131.png +../../data/yoloGtold1/train/4132.png +../../data/yoloGtold1/train/4133.png +../../data/yoloGtold1/train/4134.png +../../data/yoloGtold1/train/4135.png +../../data/yoloGtold1/train/4136.png +../../data/yoloGtold1/train/4137.png +../../data/yoloGtold1/train/4138.png +../../data/yoloGtold1/train/4139.png +../../data/yoloGtold1/train/4140.png +../../data/yoloGtold1/train/4141.png +../../data/yoloGtold1/train/4142.png +../../data/yoloGtold1/train/4143.png +../../data/yoloGtold1/train/4144.png +../../data/yoloGtold1/train/4145.png +../../data/yoloGtold1/train/4146.png +../../data/yoloGtold1/train/4147.png +../../data/yoloGtold1/train/4148.png +../../data/yoloGtold1/train/4149.png +../../data/yoloGtold1/train/4150.png +../../data/yoloGtold1/train/4151.png +../../data/yoloGtold1/train/4152.png +../../data/yoloGtold1/train/4153.png +../../data/yoloGtold1/train/4154.png +../../data/yoloGtold1/train/4155.png +../../data/yoloGtold1/train/4156.png +../../data/yoloGtold1/train/4157.png +../../data/yoloGtold1/train/4158.png +../../data/yoloGtold1/train/4159.png +../../data/yoloGtold1/train/4160.png +../../data/yoloGtold1/train/4161.png +../../data/yoloGtold1/train/4162.png +../../data/yoloGtold1/train/4163.png +../../data/yoloGtold1/train/4164.png +../../data/yoloGtold1/train/4165.png +../../data/yoloGtold1/train/4166.png +../../data/yoloGtold1/train/4167.png +../../data/yoloGtold1/train/4168.png +../../data/yoloGtold1/train/4169.png +../../data/yoloGtold1/train/4170.png +../../data/yoloGtold1/train/4171.png +../../data/yoloGtold1/train/4172.png +../../data/yoloGtold1/train/4173.png +../../data/yoloGtold1/train/4174.png +../../data/yoloGtold1/train/4175.png +../../data/yoloGtold1/train/4176.png +../../data/yoloGtold1/train/4177.png +../../data/yoloGtold1/train/4178.png +../../data/yoloGtold1/train/4179.png +../../data/yoloGtold1/train/4180.png +../../data/yoloGtold1/train/4181.png +../../data/yoloGtold1/train/4182.png +../../data/yoloGtold1/train/4183.png +../../data/yoloGtold1/train/4184.png +../../data/yoloGtold1/train/4185.png +../../data/yoloGtold1/train/4186.png +../../data/yoloGtold1/train/4187.png +../../data/yoloGtold1/train/4188.png +../../data/yoloGtold1/train/4189.png +../../data/yoloGtold1/train/4190.png +../../data/yoloGtold1/train/4191.png +../../data/yoloGtold1/train/4192.png +../../data/yoloGtold1/train/4193.png +../../data/yoloGtold1/train/4194.png +../../data/yoloGtold1/train/4195.png +../../data/yoloGtold1/train/4196.png +../../data/yoloGtold1/train/4197.png +../../data/yoloGtold1/train/4198.png +../../data/yoloGtold1/train/4199.png +../../data/yoloGtold1/train/4200.png +../../data/yoloGtold1/train/4201.png +../../data/yoloGtold1/train/4202.png +../../data/yoloGtold1/train/4203.png +../../data/yoloGtold1/train/4204.png +../../data/yoloGtold1/train/4205.png +../../data/yoloGtold1/train/4206.png +../../data/yoloGtold1/train/4207.png +../../data/yoloGtold1/train/4208.png +../../data/yoloGtold1/train/4209.png +../../data/yoloGtold1/train/4210.png +../../data/yoloGtold1/train/4211.png +../../data/yoloGtold1/train/4212.png +../../data/yoloGtold1/train/4213.png +../../data/yoloGtold1/train/4214.png +../../data/yoloGtold1/train/4215.png +../../data/yoloGtold1/train/4216.png +../../data/yoloGtold1/train/4217.png +../../data/yoloGtold1/train/4218.png +../../data/yoloGtold1/train/4219.png +../../data/yoloGtold1/train/4220.png +../../data/yoloGtold1/train/4221.png +../../data/yoloGtold1/train/4222.png +../../data/yoloGtold1/train/4223.png +../../data/yoloGtold1/train/4224.png +../../data/yoloGtold1/train/4225.png +../../data/yoloGtold1/train/4226.png +../../data/yoloGtold1/train/4227.png +../../data/yoloGtold1/train/4228.png +../../data/yoloGtold1/train/4229.png +../../data/yoloGtold1/train/4230.png +../../data/yoloGtold1/train/4231.png +../../data/yoloGtold1/train/4232.png +../../data/yoloGtold1/train/4233.png +../../data/yoloGtold1/train/4234.png +../../data/yoloGtold1/train/4235.png +../../data/yoloGtold1/train/4236.png +../../data/yoloGtold1/train/4237.png +../../data/yoloGtold1/train/4238.png +../../data/yoloGtold1/train/4239.png +../../data/yoloGtold1/train/4240.png +../../data/yoloGtold1/train/4241.png +../../data/yoloGtold1/train/4242.png +../../data/yoloGtold1/train/4243.png +../../data/yoloGtold1/train/4244.png +../../data/yoloGtold1/train/4245.png +../../data/yoloGtold1/train/4246.png +../../data/yoloGtold1/train/4247.png +../../data/yoloGtold1/train/4248.png +../../data/yoloGtold1/train/4249.png +../../data/yoloGtold1/train/4250.png +../../data/yoloGtold1/train/4251.png +../../data/yoloGtold1/train/4252.png +../../data/yoloGtold1/train/4253.png +../../data/yoloGtold1/train/4254.png +../../data/yoloGtold1/train/4255.png +../../data/yoloGtold1/train/4256.png +../../data/yoloGtold1/train/4257.png +../../data/yoloGtold1/train/4258.png +../../data/yoloGtold1/train/4259.png +../../data/yoloGtold1/train/4260.png +../../data/yoloGtold1/train/4261.png +../../data/yoloGtold1/train/4262.png +../../data/yoloGtold1/train/4263.png +../../data/yoloGtold1/train/4264.png +../../data/yoloGtold1/train/4265.png +../../data/yoloGtold1/train/4266.png +../../data/yoloGtold1/train/4267.png +../../data/yoloGtold1/train/4268.png +../../data/yoloGtold1/train/4269.png +../../data/yoloGtold1/train/4270.png +../../data/yoloGtold1/train/4271.png +../../data/yoloGtold1/train/4272.png +../../data/yoloGtold1/train/4273.png +../../data/yoloGtold1/train/4274.png +../../data/yoloGtold1/train/4275.png +../../data/yoloGtold1/train/4276.png +../../data/yoloGtold1/train/4277.png +../../data/yoloGtold1/train/4278.png +../../data/yoloGtold1/train/4279.png +../../data/yoloGtold1/train/4280.png +../../data/yoloGtold1/train/4281.png +../../data/yoloGtold1/train/4282.png +../../data/yoloGtold1/train/4283.png +../../data/yoloGtold1/train/4284.png +../../data/yoloGtold1/train/4285.png +../../data/yoloGtold1/train/4286.png +../../data/yoloGtold1/train/4287.png +../../data/yoloGtold1/train/4288.png +../../data/yoloGtold1/train/4289.png +../../data/yoloGtold1/train/4290.png +../../data/yoloGtold1/train/4291.png +../../data/yoloGtold1/train/4292.png +../../data/yoloGtold1/train/4293.png +../../data/yoloGtold1/train/4294.png +../../data/yoloGtold1/train/4295.png +../../data/yoloGtold1/train/4296.png +../../data/yoloGtold1/train/4297.png +../../data/yoloGtold1/train/4298.png +../../data/yoloGtold1/train/4299.png +../../data/yoloGtold1/train/4300.png +../../data/yoloGtold1/train/4301.png +../../data/yoloGtold1/train/4302.png +../../data/yoloGtold1/train/4303.png +../../data/yoloGtold1/train/4304.png +../../data/yoloGtold1/train/4305.png +../../data/yoloGtold1/train/4306.png +../../data/yoloGtold1/train/4307.png +../../data/yoloGtold1/train/4308.png +../../data/yoloGtold1/train/4309.png +../../data/yoloGtold1/train/4310.png +../../data/yoloGtold1/train/4311.png +../../data/yoloGtold1/train/4312.png +../../data/yoloGtold1/train/4313.png +../../data/yoloGtold1/train/4314.png +../../data/yoloGtold1/train/4315.png +../../data/yoloGtold1/train/4316.png +../../data/yoloGtold1/train/4317.png +../../data/yoloGtold1/train/4318.png +../../data/yoloGtold1/train/4319.png +../../data/yoloGtold1/train/4320.png +../../data/yoloGtold1/train/4321.png +../../data/yoloGtold1/train/4322.png +../../data/yoloGtold1/train/4323.png +../../data/yoloGtold1/train/4324.png +../../data/yoloGtold1/train/4325.png +../../data/yoloGtold1/train/4326.png +../../data/yoloGtold1/train/4327.png +../../data/yoloGtold1/train/4328.png +../../data/yoloGtold1/train/4329.png +../../data/yoloGtold1/train/4330.png +../../data/yoloGtold1/train/4331.png +../../data/yoloGtold1/train/4332.png +../../data/yoloGtold1/train/4333.png +../../data/yoloGtold1/train/4334.png +../../data/yoloGtold1/train/4335.png +../../data/yoloGtold1/train/4336.png +../../data/yoloGtold1/train/4337.png +../../data/yoloGtold1/train/4338.png +../../data/yoloGtold1/train/4339.png +../../data/yoloGtold1/train/4340.png +../../data/yoloGtold1/train/4341.png +../../data/yoloGtold1/train/4342.png +../../data/yoloGtold1/train/4343.png +../../data/yoloGtold1/train/4344.png +../../data/yoloGtold1/train/4345.png +../../data/yoloGtold1/train/4346.png +../../data/yoloGtold1/train/4347.png +../../data/yoloGtold1/train/4348.png +../../data/yoloGtold1/train/4349.png +../../data/yoloGtold1/train/4350.png +../../data/yoloGtold1/train/4351.png +../../data/yoloGtold1/train/4352.png +../../data/yoloGtold1/train/4353.png +../../data/yoloGtold1/train/4354.png +../../data/yoloGtold1/train/4355.png +../../data/yoloGtold1/train/4356.png +../../data/yoloGtold1/train/4357.png +../../data/yoloGtold1/train/4358.png +../../data/yoloGtold1/train/4359.png +../../data/yoloGtold1/train/4360.png +../../data/yoloGtold1/train/4361.png +../../data/yoloGtold1/train/4362.png +../../data/yoloGtold1/train/4363.png +../../data/yoloGtold1/train/4364.png +../../data/yoloGtold1/train/4365.png +../../data/yoloGtold1/train/4366.png +../../data/yoloGtold1/train/4367.png +../../data/yoloGtold1/train/4368.png +../../data/yoloGtold1/train/4369.png +../../data/yoloGtold1/train/4370.png +../../data/yoloGtold1/train/4371.png +../../data/yoloGtold1/train/4372.png +../../data/yoloGtold1/train/4373.png +../../data/yoloGtold1/train/4374.png +../../data/yoloGtold1/train/4375.png +../../data/yoloGtold1/train/4376.png +../../data/yoloGtold1/train/4377.png +../../data/yoloGtold1/train/4378.png +../../data/yoloGtold1/train/4379.png +../../data/yoloGtold1/train/4380.png +../../data/yoloGtold1/train/4381.png +../../data/yoloGtold1/train/4382.png +../../data/yoloGtold1/train/4383.png +../../data/yoloGtold1/train/4384.png +../../data/yoloGtold1/train/4385.png +../../data/yoloGtold1/train/4386.png +../../data/yoloGtold1/train/4387.png +../../data/yoloGtold1/train/4388.png +../../data/yoloGtold1/train/4389.png +../../data/yoloGtold1/train/4390.png +../../data/yoloGtold1/train/4391.png +../../data/yoloGtold1/train/4392.png +../../data/yoloGtold1/train/4393.png +../../data/yoloGtold1/train/4394.png +../../data/yoloGtold1/train/4395.png +../../data/yoloGtold1/train/4396.png +../../data/yoloGtold1/train/4397.png +../../data/yoloGtold1/train/4398.png +../../data/yoloGtold1/train/4399.png +../../data/yoloGtold1/train/4400.png +../../data/yoloGtold1/train/4401.png +../../data/yoloGtold1/train/4402.png +../../data/yoloGtold1/train/4403.png +../../data/yoloGtold1/train/4404.png +../../data/yoloGtold1/train/4405.png +../../data/yoloGtold1/train/4406.png +../../data/yoloGtold1/train/4407.png +../../data/yoloGtold1/train/4408.png +../../data/yoloGtold1/train/4409.png +../../data/yoloGtold1/train/4410.png +../../data/yoloGtold1/train/4411.png +../../data/yoloGtold1/train/4412.png +../../data/yoloGtold1/train/4413.png +../../data/yoloGtold1/train/4414.png +../../data/yoloGtold1/train/4415.png +../../data/yoloGtold1/train/4416.png +../../data/yoloGtold1/train/4417.png +../../data/yoloGtold1/train/4418.png +../../data/yoloGtold1/train/4419.png +../../data/yoloGtold1/train/4420.png +../../data/yoloGtold1/train/4421.png +../../data/yoloGtold1/train/4422.png +../../data/yoloGtold1/train/4423.png +../../data/yoloGtold1/train/4424.png +../../data/yoloGtold1/train/4425.png +../../data/yoloGtold1/train/4426.png +../../data/yoloGtold1/train/4427.png +../../data/yoloGtold1/train/4428.png +../../data/yoloGtold1/train/4429.png +../../data/yoloGtold1/train/4430.png +../../data/yoloGtold1/train/4431.png +../../data/yoloGtold1/train/4432.png +../../data/yoloGtold1/train/4433.png +../../data/yoloGtold1/train/4434.png +../../data/yoloGtold1/train/4435.png +../../data/yoloGtold1/train/4436.png +../../data/yoloGtold1/train/4437.png +../../data/yoloGtold1/train/4438.png +../../data/yoloGtold1/train/4439.png +../../data/yoloGtold1/train/4440.png +../../data/yoloGtold1/train/4441.png +../../data/yoloGtold1/train/4442.png +../../data/yoloGtold1/train/4443.png +../../data/yoloGtold1/train/4444.png +../../data/yoloGtold1/train/4445.png +../../data/yoloGtold1/train/4446.png +../../data/yoloGtold1/train/4447.png +../../data/yoloGtold1/train/4448.png +../../data/yoloGtold1/train/4449.png +../../data/yoloGtold1/train/4450.png +../../data/yoloGtold1/train/4451.png +../../data/yoloGtold1/train/4452.png +../../data/yoloGtold1/train/4453.png +../../data/yoloGtold1/train/4454.png +../../data/yoloGtold1/train/4455.png +../../data/yoloGtold1/train/4456.png +../../data/yoloGtold1/train/4457.png +../../data/yoloGtold1/train/4458.png +../../data/yoloGtold1/train/4459.png +../../data/yoloGtold1/train/4460.png +../../data/yoloGtold1/train/4461.png +../../data/yoloGtold1/train/4462.png +../../data/yoloGtold1/train/4463.png +../../data/yoloGtold1/train/4464.png +../../data/yoloGtold1/train/4465.png +../../data/yoloGtold1/train/4466.png +../../data/yoloGtold1/train/4467.png +../../data/yoloGtold1/train/4468.png +../../data/yoloGtold1/train/4469.png +../../data/yoloGtold1/train/4470.png +../../data/yoloGtold1/train/4471.png +../../data/yoloGtold1/train/4472.png +../../data/yoloGtold1/train/4473.png +../../data/yoloGtold1/train/4474.png +../../data/yoloGtold1/train/4475.png +../../data/yoloGtold1/train/4476.png +../../data/yoloGtold1/train/4477.png +../../data/yoloGtold1/train/4478.png +../../data/yoloGtold1/train/4479.png +../../data/yoloGtold1/train/4480.png +../../data/yoloGtold1/train/4481.png +../../data/yoloGtold1/train/4482.png +../../data/yoloGtold1/train/4483.png +../../data/yoloGtold1/train/4484.png +../../data/yoloGtold1/train/4485.png +../../data/yoloGtold1/train/4486.png +../../data/yoloGtold1/train/4487.png +../../data/yoloGtold1/train/4488.png +../../data/yoloGtold1/train/4489.png +../../data/yoloGtold1/train/4490.png +../../data/yoloGtold1/train/4491.png +../../data/yoloGtold1/train/4492.png +../../data/yoloGtold1/train/4493.png +../../data/yoloGtold1/train/4494.png +../../data/yoloGtold1/train/4495.png +../../data/yoloGtold1/train/4496.png +../../data/yoloGtold1/train/4497.png +../../data/yoloGtold1/train/4498.png +../../data/yoloGtold1/train/4499.png +../../data/yoloGtold1/train/4500.png +../../data/yoloGtold1/train/4501.png +../../data/yoloGtold1/train/4502.png +../../data/yoloGtold1/train/4503.png +../../data/yoloGtold1/train/4504.png +../../data/yoloGtold1/train/4505.png +../../data/yoloGtold1/train/4506.png +../../data/yoloGtold1/train/4507.png +../../data/yoloGtold1/train/4508.png +../../data/yoloGtold1/train/4509.png +../../data/yoloGtold1/train/4510.png +../../data/yoloGtold1/train/4511.png +../../data/yoloGtold1/train/4512.png +../../data/yoloGtold1/train/4513.png +../../data/yoloGtold1/train/4514.png +../../data/yoloGtold1/train/4515.png +../../data/yoloGtold1/train/4516.png +../../data/yoloGtold1/train/4517.png +../../data/yoloGtold1/train/4518.png +../../data/yoloGtold1/train/4519.png +../../data/yoloGtold1/train/4520.png +../../data/yoloGtold1/train/4521.png +../../data/yoloGtold1/train/4522.png +../../data/yoloGtold1/train/4523.png +../../data/yoloGtold1/train/4524.png +../../data/yoloGtold1/train/4525.png +../../data/yoloGtold1/train/4526.png +../../data/yoloGtold1/train/4527.png +../../data/yoloGtold1/train/4528.png +../../data/yoloGtold1/train/4529.png +../../data/yoloGtold1/train/4530.png +../../data/yoloGtold1/train/4531.png +../../data/yoloGtold1/train/4532.png +../../data/yoloGtold1/train/4533.png +../../data/yoloGtold1/train/4534.png +../../data/yoloGtold1/train/4535.png +../../data/yoloGtold1/train/4536.png +../../data/yoloGtold1/train/4537.png +../../data/yoloGtold1/train/4538.png +../../data/yoloGtold1/train/4539.png +../../data/yoloGtold1/train/4540.png +../../data/yoloGtold1/train/4541.png +../../data/yoloGtold1/train/4542.png +../../data/yoloGtold1/train/4543.png +../../data/yoloGtold1/train/4544.png +../../data/yoloGtold1/train/4545.png +../../data/yoloGtold1/train/4546.png +../../data/yoloGtold1/train/4547.png +../../data/yoloGtold1/train/4548.png +../../data/yoloGtold1/train/4549.png +../../data/yoloGtold1/train/4550.png +../../data/yoloGtold1/train/4551.png +../../data/yoloGtold1/train/4552.png +../../data/yoloGtold1/train/4553.png +../../data/yoloGtold1/train/4554.png +../../data/yoloGtold1/train/4555.png +../../data/yoloGtold1/train/4556.png +../../data/yoloGtold1/train/4557.png +../../data/yoloGtold1/train/4558.png +../../data/yoloGtold1/train/4559.png +../../data/yoloGtold1/train/4560.png +../../data/yoloGtold1/train/4561.png +../../data/yoloGtold1/train/4562.png +../../data/yoloGtold1/train/4563.png +../../data/yoloGtold1/train/4564.png +../../data/yoloGtold1/train/4565.png +../../data/yoloGtold1/train/4566.png +../../data/yoloGtold1/train/4567.png +../../data/yoloGtold1/train/4568.png +../../data/yoloGtold1/train/4569.png +../../data/yoloGtold1/train/4570.png +../../data/yoloGtold1/train/4571.png +../../data/yoloGtold1/train/4572.png +../../data/yoloGtold1/train/4573.png +../../data/yoloGtold1/train/4574.png +../../data/yoloGtold1/train/4575.png +../../data/yoloGtold1/train/4576.png +../../data/yoloGtold1/train/4577.png +../../data/yoloGtold1/train/4578.png +../../data/yoloGtold1/train/4579.png +../../data/yoloGtold1/train/4580.png +../../data/yoloGtold1/train/4581.png +../../data/yoloGtold1/train/4582.png +../../data/yoloGtold1/train/4583.png +../../data/yoloGtold1/train/4584.png +../../data/yoloGtold1/train/4585.png +../../data/yoloGtold1/train/4586.png +../../data/yoloGtold1/train/4587.png +../../data/yoloGtold1/train/4588.png +../../data/yoloGtold1/train/4589.png +../../data/yoloGtold1/train/4590.png +../../data/yoloGtold1/train/4591.png +../../data/yoloGtold1/train/4592.png +../../data/yoloGtold1/train/4593.png +../../data/yoloGtold1/train/4594.png +../../data/yoloGtold1/train/4595.png +../../data/yoloGtold1/train/4596.png +../../data/yoloGtold1/train/4597.png +../../data/yoloGtold1/train/4598.png +../../data/yoloGtold1/train/4599.png +../../data/yoloGtold1/train/4600.png +../../data/yoloGtold1/train/4601.png +../../data/yoloGtold1/train/4602.png +../../data/yoloGtold1/train/4603.png +../../data/yoloGtold1/train/4604.png +../../data/yoloGtold1/train/4605.png +../../data/yoloGtold1/train/4606.png +../../data/yoloGtold1/train/4607.png +../../data/yoloGtold1/train/4608.png +../../data/yoloGtold1/train/4609.png +../../data/yoloGtold1/train/4610.png +../../data/yoloGtold1/train/4611.png +../../data/yoloGtold1/train/4612.png +../../data/yoloGtold1/train/4613.png +../../data/yoloGtold1/train/4614.png +../../data/yoloGtold1/train/4615.png +../../data/yoloGtold1/train/4616.png +../../data/yoloGtold1/train/4617.png +../../data/yoloGtold1/train/4618.png +../../data/yoloGtold1/train/4619.png +../../data/yoloGtold1/train/4620.png +../../data/yoloGtold1/train/4621.png +../../data/yoloGtold1/train/4622.png +../../data/yoloGtold1/train/4623.png +../../data/yoloGtold1/train/4624.png +../../data/yoloGtold1/train/4625.png +../../data/yoloGtold1/train/4626.png +../../data/yoloGtold1/train/4627.png +../../data/yoloGtold1/train/4628.png +../../data/yoloGtold1/train/4629.png +../../data/yoloGtold1/train/4630.png +../../data/yoloGtold1/train/4631.png +../../data/yoloGtold1/train/4632.png +../../data/yoloGtold1/train/4633.png +../../data/yoloGtold1/train/4634.png +../../data/yoloGtold1/train/4635.png +../../data/yoloGtold1/train/4636.png +../../data/yoloGtold1/train/4637.png +../../data/yoloGtold1/train/4638.png +../../data/yoloGtold1/train/4639.png +../../data/yoloGtold1/train/4640.png +../../data/yoloGtold1/train/4641.png +../../data/yoloGtold1/train/4642.png +../../data/yoloGtold1/train/4643.png +../../data/yoloGtold1/train/4644.png +../../data/yoloGtold1/train/4645.png +../../data/yoloGtold1/train/4646.png +../../data/yoloGtold1/train/4647.png +../../data/yoloGtold1/train/4648.png +../../data/yoloGtold1/train/4649.png +../../data/yoloGtold1/train/4650.png +../../data/yoloGtold1/train/4651.png +../../data/yoloGtold1/train/4652.png +../../data/yoloGtold1/train/4653.png +../../data/yoloGtold1/train/4654.png +../../data/yoloGtold1/train/4655.png +../../data/yoloGtold1/train/4656.png +../../data/yoloGtold1/train/4657.png +../../data/yoloGtold1/train/4658.png +../../data/yoloGtold1/train/4659.png +../../data/yoloGtold1/train/4660.png +../../data/yoloGtold1/train/4661.png +../../data/yoloGtold1/train/4662.png +../../data/yoloGtold1/train/4663.png +../../data/yoloGtold1/train/4664.png +../../data/yoloGtold1/train/4665.png +../../data/yoloGtold1/train/4666.png +../../data/yoloGtold1/train/4667.png +../../data/yoloGtold1/train/4668.png +../../data/yoloGtold1/train/4669.png +../../data/yoloGtold1/train/4670.png +../../data/yoloGtold1/train/4671.png +../../data/yoloGtold1/train/4672.png +../../data/yoloGtold1/train/4673.png +../../data/yoloGtold1/train/4674.png +../../data/yoloGtold1/train/4675.png +../../data/yoloGtold1/train/4676.png +../../data/yoloGtold1/train/4677.png +../../data/yoloGtold1/train/4678.png +../../data/yoloGtold1/train/4679.png +../../data/yoloGtold1/train/4680.png +../../data/yoloGtold1/train/4681.png +../../data/yoloGtold1/train/4682.png +../../data/yoloGtold1/train/4683.png +../../data/yoloGtold1/train/4684.png +../../data/yoloGtold1/train/4685.png +../../data/yoloGtold1/train/4686.png +../../data/yoloGtold1/train/4687.png +../../data/yoloGtold1/train/4688.png +../../data/yoloGtold1/train/4689.png +../../data/yoloGtold1/train/4690.png +../../data/yoloGtold1/train/4691.png +../../data/yoloGtold1/train/4692.png +../../data/yoloGtold1/train/4693.png +../../data/yoloGtold1/train/4694.png +../../data/yoloGtold1/train/4695.png +../../data/yoloGtold1/train/4696.png +../../data/yoloGtold1/train/4697.png +../../data/yoloGtold1/train/4698.png +../../data/yoloGtold1/train/4699.png +../../data/yoloGtold1/train/4700.png +../../data/yoloGtold1/train/4701.png +../../data/yoloGtold1/train/4702.png +../../data/yoloGtold1/train/4703.png +../../data/yoloGtold1/train/4704.png +../../data/yoloGtold1/train/4705.png +../../data/yoloGtold1/train/4706.png +../../data/yoloGtold1/train/4707.png +../../data/yoloGtold1/train/4708.png +../../data/yoloGtold1/train/4709.png +../../data/yoloGtold1/train/4710.png +../../data/yoloGtold1/train/4711.png +../../data/yoloGtold1/train/4712.png +../../data/yoloGtold1/train/4713.png +../../data/yoloGtold1/train/4714.png +../../data/yoloGtold1/train/4715.png +../../data/yoloGtold1/train/4716.png +../../data/yoloGtold1/train/4717.png +../../data/yoloGtold1/train/4718.png +../../data/yoloGtold1/train/4719.png +../../data/yoloGtold1/train/4720.png +../../data/yoloGtold1/train/4721.png +../../data/yoloGtold1/train/4722.png +../../data/yoloGtold1/train/4723.png +../../data/yoloGtold1/train/4724.png +../../data/yoloGtold1/train/4725.png +../../data/yoloGtold1/train/4726.png +../../data/yoloGtold1/train/4727.png +../../data/yoloGtold1/train/4728.png +../../data/yoloGtold1/train/4729.png +../../data/yoloGtold1/train/4730.png +../../data/yoloGtold1/train/4731.png +../../data/yoloGtold1/train/4732.png +../../data/yoloGtold1/train/4733.png +../../data/yoloGtold1/train/4734.png +../../data/yoloGtold1/train/4735.png +../../data/yoloGtold1/train/4736.png +../../data/yoloGtold1/train/4737.png +../../data/yoloGtold1/train/4738.png +../../data/yoloGtold1/train/4739.png +../../data/yoloGtold1/train/4740.png +../../data/yoloGtold1/train/4741.png +../../data/yoloGtold1/train/4742.png +../../data/yoloGtold1/train/4743.png +../../data/yoloGtold1/train/4744.png +../../data/yoloGtold1/train/4745.png +../../data/yoloGtold1/train/4746.png +../../data/yoloGtold1/train/4747.png +../../data/yoloGtold1/train/4748.png +../../data/yoloGtold1/train/4749.png +../../data/yoloGtold1/train/4750.png +../../data/yoloGtold1/train/4751.png +../../data/yoloGtold1/train/4752.png +../../data/yoloGtold1/train/4753.png +../../data/yoloGtold1/train/4754.png +../../data/yoloGtold1/train/4755.png +../../data/yoloGtold1/train/4756.png +../../data/yoloGtold1/train/4757.png +../../data/yoloGtold1/train/4758.png +../../data/yoloGtold1/train/4759.png +../../data/yoloGtold1/train/4760.png +../../data/yoloGtold1/train/4761.png +../../data/yoloGtold1/train/4762.png +../../data/yoloGtold1/train/4763.png +../../data/yoloGtold1/train/4764.png +../../data/yoloGtold1/train/4765.png +../../data/yoloGtold1/train/4766.png +../../data/yoloGtold1/train/4767.png +../../data/yoloGtold1/train/4768.png +../../data/yoloGtold1/train/4769.png +../../data/yoloGtold1/train/4770.png +../../data/yoloGtold1/train/4771.png +../../data/yoloGtold1/train/4772.png +../../data/yoloGtold1/train/4773.png +../../data/yoloGtold1/train/4774.png +../../data/yoloGtold1/train/4775.png +../../data/yoloGtold1/train/4776.png +../../data/yoloGtold1/train/4777.png +../../data/yoloGtold1/train/4778.png +../../data/yoloGtold1/train/4779.png +../../data/yoloGtold1/train/4780.png +../../data/yoloGtold1/train/4781.png +../../data/yoloGtold1/train/4782.png +../../data/yoloGtold1/train/4783.png +../../data/yoloGtold1/train/4784.png +../../data/yoloGtold1/train/4785.png +../../data/yoloGtold1/train/4786.png +../../data/yoloGtold1/train/4787.png +../../data/yoloGtold1/train/4788.png +../../data/yoloGtold1/train/4789.png +../../data/yoloGtold1/train/4790.png +../../data/yoloGtold1/train/4791.png +../../data/yoloGtold1/train/4792.png +../../data/yoloGtold1/train/4793.png +../../data/yoloGtold1/train/4794.png +../../data/yoloGtold1/train/4795.png +../../data/yoloGtold1/train/4796.png +../../data/yoloGtold1/train/4797.png +../../data/yoloGtold1/train/4798.png +../../data/yoloGtold1/train/4799.png +../../data/yoloGtold1/train/4800.png +../../data/yoloGtold1/train/4801.png +../../data/yoloGtold1/train/4802.png +../../data/yoloGtold1/train/4803.png +../../data/yoloGtold1/train/4804.png +../../data/yoloGtold1/train/4805.png +../../data/yoloGtold1/train/4806.png +../../data/yoloGtold1/train/4807.png +../../data/yoloGtold1/train/4808.png +../../data/yoloGtold1/train/4809.png +../../data/yoloGtold1/train/4810.png +../../data/yoloGtold1/train/4811.png +../../data/yoloGtold1/train/4812.png +../../data/yoloGtold1/train/4813.png +../../data/yoloGtold1/train/4814.png +../../data/yoloGtold1/train/4815.png +../../data/yoloGtold1/train/4816.png +../../data/yoloGtold1/train/4817.png +../../data/yoloGtold1/train/4818.png +../../data/yoloGtold1/train/4819.png +../../data/yoloGtold1/train/4820.png +../../data/yoloGtold1/train/4821.png +../../data/yoloGtold1/train/4822.png +../../data/yoloGtold1/train/4823.png +../../data/yoloGtold1/train/4824.png +../../data/yoloGtold1/train/4825.png +../../data/yoloGtold1/train/4826.png +../../data/yoloGtold1/train/4827.png +../../data/yoloGtold1/train/4828.png +../../data/yoloGtold1/train/4829.png +../../data/yoloGtold1/train/4830.png +../../data/yoloGtold1/train/4831.png +../../data/yoloGtold1/train/4832.png +../../data/yoloGtold1/train/4833.png +../../data/yoloGtold1/train/4834.png +../../data/yoloGtold1/train/4835.png +../../data/yoloGtold1/train/4836.png +../../data/yoloGtold1/train/4837.png +../../data/yoloGtold1/train/4838.png +../../data/yoloGtold1/train/4839.png +../../data/yoloGtold1/train/4840.png +../../data/yoloGtold1/train/4841.png +../../data/yoloGtold1/train/4842.png +../../data/yoloGtold1/train/4843.png +../../data/yoloGtold1/train/4844.png +../../data/yoloGtold1/train/4845.png +../../data/yoloGtold1/train/4846.png +../../data/yoloGtold1/train/4847.png +../../data/yoloGtold1/train/4848.png +../../data/yoloGtold1/train/4849.png +../../data/yoloGtold1/train/4850.png +../../data/yoloGtold1/train/4851.png +../../data/yoloGtold1/train/4852.png +../../data/yoloGtold1/train/4853.png +../../data/yoloGtold1/train/4854.png +../../data/yoloGtold1/train/4855.png +../../data/yoloGtold1/train/4856.png +../../data/yoloGtold1/train/4857.png +../../data/yoloGtold1/train/4858.png +../../data/yoloGtold1/train/4859.png +../../data/yoloGtold1/train/4860.png +../../data/yoloGtold1/train/4861.png +../../data/yoloGtold1/train/4862.png +../../data/yoloGtold1/train/4863.png +../../data/yoloGtold1/train/4864.png +../../data/yoloGtold1/train/4865.png +../../data/yoloGtold1/train/4866.png +../../data/yoloGtold1/train/4867.png +../../data/yoloGtold1/train/4868.png +../../data/yoloGtold1/train/4869.png +../../data/yoloGtold1/train/4870.png +../../data/yoloGtold1/train/4871.png +../../data/yoloGtold1/train/4872.png +../../data/yoloGtold1/train/4873.png +../../data/yoloGtold1/train/4874.png +../../data/yoloGtold1/train/4875.png +../../data/yoloGtold1/train/4876.png +../../data/yoloGtold1/train/4877.png +../../data/yoloGtold1/train/4878.png +../../data/yoloGtold1/train/4879.png +../../data/yoloGtold1/train/4880.png +../../data/yoloGtold1/train/4881.png +../../data/yoloGtold1/train/4882.png +../../data/yoloGtold1/train/4883.png +../../data/yoloGtold1/train/4884.png +../../data/yoloGtold1/train/4885.png +../../data/yoloGtold1/train/4886.png +../../data/yoloGtold1/train/4887.png +../../data/yoloGtold1/train/4888.png +../../data/yoloGtold1/train/4889.png +../../data/yoloGtold1/train/4890.png +../../data/yoloGtold1/train/4891.png +../../data/yoloGtold1/train/4892.png +../../data/yoloGtold1/train/4893.png +../../data/yoloGtold1/train/4894.png +../../data/yoloGtold1/train/4895.png +../../data/yoloGtold1/train/4896.png +../../data/yoloGtold1/train/4897.png +../../data/yoloGtold1/train/4898.png +../../data/yoloGtold1/train/4899.png +../../data/yoloGtold1/train/4900.png +../../data/yoloGtold1/train/4901.png +../../data/yoloGtold1/train/4902.png +../../data/yoloGtold1/train/4903.png +../../data/yoloGtold1/train/4904.png +../../data/yoloGtold1/train/4905.png +../../data/yoloGtold1/train/4906.png +../../data/yoloGtold1/train/4907.png +../../data/yoloGtold1/train/4908.png +../../data/yoloGtold1/train/4909.png +../../data/yoloGtold1/train/4910.png +../../data/yoloGtold1/train/4911.png +../../data/yoloGtold1/train/4912.png +../../data/yoloGtold1/train/4913.png +../../data/yoloGtold1/train/4914.png +../../data/yoloGtold1/train/4915.png +../../data/yoloGtold1/train/4916.png +../../data/yoloGtold1/train/4917.png +../../data/yoloGtold1/train/4918.png +../../data/yoloGtold1/train/4919.png +../../data/yoloGtold1/train/4920.png +../../data/yoloGtold1/train/4921.png +../../data/yoloGtold1/train/4922.png +../../data/yoloGtold1/train/4923.png +../../data/yoloGtold1/train/4924.png +../../data/yoloGtold1/train/4925.png +../../data/yoloGtold1/train/4926.png +../../data/yoloGtold1/train/4927.png +../../data/yoloGtold1/train/4928.png +../../data/yoloGtold1/train/4929.png +../../data/yoloGtold1/train/4930.png +../../data/yoloGtold1/train/4931.png +../../data/yoloGtold1/train/4932.png +../../data/yoloGtold1/train/4933.png +../../data/yoloGtold1/train/4934.png +../../data/yoloGtold1/train/4935.png +../../data/yoloGtold1/train/4936.png +../../data/yoloGtold1/train/4937.png +../../data/yoloGtold1/train/4938.png +../../data/yoloGtold1/train/4939.png +../../data/yoloGtold1/train/4940.png +../../data/yoloGtold1/train/4941.png +../../data/yoloGtold1/train/4942.png +../../data/yoloGtold1/train/4943.png +../../data/yoloGtold1/train/4944.png +../../data/yoloGtold1/train/4945.png +../../data/yoloGtold1/train/4946.png +../../data/yoloGtold1/train/4947.png +../../data/yoloGtold1/train/4948.png +../../data/yoloGtold1/train/4949.png +../../data/yoloGtold1/train/4950.png +../../data/yoloGtold1/train/4951.png +../../data/yoloGtold1/train/4952.png +../../data/yoloGtold1/train/4953.png +../../data/yoloGtold1/train/4954.png +../../data/yoloGtold1/train/4955.png +../../data/yoloGtold1/train/4956.png +../../data/yoloGtold1/train/4957.png +../../data/yoloGtold1/train/4958.png +../../data/yoloGtold1/train/4959.png +../../data/yoloGtold1/train/4960.png +../../data/yoloGtold1/train/4961.png +../../data/yoloGtold1/train/4962.png +../../data/yoloGtold1/train/4963.png +../../data/yoloGtold1/train/4964.png +../../data/yoloGtold1/train/4965.png +../../data/yoloGtold1/train/4966.png +../../data/yoloGtold1/train/4967.png +../../data/yoloGtold1/train/4968.png +../../data/yoloGtold1/train/4969.png +../../data/yoloGtold1/train/4970.png +../../data/yoloGtold1/train/4971.png +../../data/yoloGtold1/train/4972.png +../../data/yoloGtold1/train/4973.png +../../data/yoloGtold1/train/4974.png +../../data/yoloGtold1/train/4975.png +../../data/yoloGtold1/train/4976.png +../../data/yoloGtold1/train/4977.png +../../data/yoloGtold1/train/4978.png +../../data/yoloGtold1/train/4979.png +../../data/yoloGtold1/train/4980.png +../../data/yoloGtold1/train/4981.png +../../data/yoloGtold1/train/4982.png +../../data/yoloGtold1/train/4983.png +../../data/yoloGtold1/train/4984.png +../../data/yoloGtold1/train/4985.png +../../data/yoloGtold1/train/4986.png +../../data/yoloGtold1/train/4987.png +../../data/yoloGtold1/train/4988.png +../../data/yoloGtold1/train/4989.png +../../data/yoloGtold1/train/4990.png +../../data/yoloGtold1/train/4991.png +../../data/yoloGtold1/train/4992.png +../../data/yoloGtold1/train/4993.png +../../data/yoloGtold1/train/4994.png +../../data/yoloGtold1/train/4995.png +../../data/yoloGtold1/train/4996.png +../../data/yoloGtold1/train/4997.png +../../data/yoloGtold1/train/4998.png +../../data/yoloGtold1/train/4999.png +../../data/yoloGtold1/train/5000.png +../../data/yoloGtold1/train/5001.png +../../data/yoloGtold1/train/5002.png +../../data/yoloGtold1/train/5003.png +../../data/yoloGtold1/train/5004.png +../../data/yoloGtold1/train/5005.png +../../data/yoloGtold1/train/5006.png +../../data/yoloGtold1/train/5007.png +../../data/yoloGtold1/train/5008.png +../../data/yoloGtold1/train/5009.png +../../data/yoloGtold1/train/5010.png +../../data/yoloGtold1/train/5011.png +../../data/yoloGtold1/train/5012.png +../../data/yoloGtold1/train/5013.png +../../data/yoloGtold1/train/5014.png +../../data/yoloGtold1/train/5015.png +../../data/yoloGtold1/train/5016.png +../../data/yoloGtold1/train/5017.png +../../data/yoloGtold1/train/5018.png +../../data/yoloGtold1/train/5019.png +../../data/yoloGtold1/train/5020.png +../../data/yoloGtold1/train/5021.png +../../data/yoloGtold1/train/5022.png +../../data/yoloGtold1/train/5023.png +../../data/yoloGtold1/train/5024.png +../../data/yoloGtold1/train/5025.png +../../data/yoloGtold1/train/5026.png +../../data/yoloGtold1/train/5027.png +../../data/yoloGtold1/train/5028.png +../../data/yoloGtold1/train/5029.png +../../data/yoloGtold1/train/5030.png +../../data/yoloGtold1/train/5031.png +../../data/yoloGtold1/train/5032.png +../../data/yoloGtold1/train/5033.png +../../data/yoloGtold1/train/5034.png +../../data/yoloGtold1/train/5035.png +../../data/yoloGtold1/train/5036.png +../../data/yoloGtold1/train/5037.png +../../data/yoloGtold1/train/5038.png +../../data/yoloGtold1/train/5039.png +../../data/yoloGtold1/train/5040.png +../../data/yoloGtold1/train/5041.png +../../data/yoloGtold1/train/5042.png +../../data/yoloGtold1/train/5043.png +../../data/yoloGtold1/train/5044.png +../../data/yoloGtold1/train/5045.png +../../data/yoloGtold1/train/5046.png +../../data/yoloGtold1/train/5047.png +../../data/yoloGtold1/train/5048.png +../../data/yoloGtold1/train/5049.png +../../data/yoloGtold1/train/5050.png +../../data/yoloGtold1/train/5051.png +../../data/yoloGtold1/train/5052.png +../../data/yoloGtold1/train/5053.png +../../data/yoloGtold1/train/5054.png +../../data/yoloGtold1/train/5055.png +../../data/yoloGtold1/train/5056.png +../../data/yoloGtold1/train/5057.png +../../data/yoloGtold1/train/5058.png +../../data/yoloGtold1/train/5059.png +../../data/yoloGtold1/train/5060.png +../../data/yoloGtold1/train/5061.png +../../data/yoloGtold1/train/5062.png +../../data/yoloGtold1/train/5063.png +../../data/yoloGtold1/train/5064.png +../../data/yoloGtold1/train/5065.png +../../data/yoloGtold1/train/5066.png +../../data/yoloGtold1/train/5067.png +../../data/yoloGtold1/train/5068.png +../../data/yoloGtold1/train/5069.png +../../data/yoloGtold1/train/5070.png +../../data/yoloGtold1/train/5071.png +../../data/yoloGtold1/train/5072.png +../../data/yoloGtold1/train/5073.png +../../data/yoloGtold1/train/5074.png +../../data/yoloGtold1/train/5075.png +../../data/yoloGtold1/train/5076.png +../../data/yoloGtold1/train/5077.png +../../data/yoloGtold1/train/5078.png +../../data/yoloGtold1/train/5079.png +../../data/yoloGtold1/train/5080.png +../../data/yoloGtold1/train/5081.png +../../data/yoloGtold1/train/5082.png +../../data/yoloGtold1/train/5083.png +../../data/yoloGtold1/train/5084.png +../../data/yoloGtold1/train/5085.png +../../data/yoloGtold1/train/5086.png +../../data/yoloGtold1/train/5087.png +../../data/yoloGtold1/train/5088.png +../../data/yoloGtold1/train/5089.png +../../data/yoloGtold1/train/5090.png +../../data/yoloGtold1/train/5091.png +../../data/yoloGtold1/train/5092.png +../../data/yoloGtold1/train/5093.png +../../data/yoloGtold1/train/5094.png +../../data/yoloGtold1/train/5095.png +../../data/yoloGtold1/train/5096.png +../../data/yoloGtold1/train/5097.png +../../data/yoloGtold1/train/5098.png +../../data/yoloGtold1/train/5099.png +../../data/yoloGtold1/train/5100.png +../../data/yoloGtold1/train/5101.png +../../data/yoloGtold1/train/5102.png +../../data/yoloGtold1/train/5103.png +../../data/yoloGtold1/train/5104.png +../../data/yoloGtold1/train/5105.png +../../data/yoloGtold1/train/5106.png +../../data/yoloGtold1/train/5107.png +../../data/yoloGtold1/train/5108.png +../../data/yoloGtold1/train/5109.png +../../data/yoloGtold1/train/5110.png +../../data/yoloGtold1/train/5111.png +../../data/yoloGtold1/train/5112.png +../../data/yoloGtold1/train/5113.png +../../data/yoloGtold1/train/5114.png +../../data/yoloGtold1/train/5115.png +../../data/yoloGtold1/train/5116.png +../../data/yoloGtold1/train/5117.png +../../data/yoloGtold1/train/5118.png +../../data/yoloGtold1/train/5119.png +../../data/yoloGtold1/train/5120.png +../../data/yoloGtold1/train/5121.png +../../data/yoloGtold1/train/5122.png +../../data/yoloGtold1/train/5123.png +../../data/yoloGtold1/train/5124.png +../../data/yoloGtold1/train/5125.png +../../data/yoloGtold1/train/5126.png +../../data/yoloGtold1/train/5127.png +../../data/yoloGtold1/train/5128.png +../../data/yoloGtold1/train/5129.png +../../data/yoloGtold1/train/5130.png +../../data/yoloGtold1/train/5131.png +../../data/yoloGtold1/train/5132.png +../../data/yoloGtold1/train/5133.png +../../data/yoloGtold1/train/5134.png +../../data/yoloGtold1/train/5135.png +../../data/yoloGtold1/train/5136.png +../../data/yoloGtold1/train/5137.png +../../data/yoloGtold1/train/5138.png +../../data/yoloGtold1/train/5139.png +../../data/yoloGtold1/train/5140.png +../../data/yoloGtold1/train/5141.png +../../data/yoloGtold1/train/5142.png +../../data/yoloGtold1/train/5143.png +../../data/yoloGtold1/train/5144.png +../../data/yoloGtold1/train/5145.png +../../data/yoloGtold1/train/5146.png +../../data/yoloGtold1/train/5147.png +../../data/yoloGtold1/train/5148.png +../../data/yoloGtold1/train/5149.png +../../data/yoloGtold1/train/5150.png +../../data/yoloGtold1/train/5151.png +../../data/yoloGtold1/train/5152.png +../../data/yoloGtold1/train/5153.png +../../data/yoloGtold1/train/5154.png +../../data/yoloGtold1/train/5155.png +../../data/yoloGtold1/train/5156.png +../../data/yoloGtold1/train/5157.png +../../data/yoloGtold1/train/5158.png +../../data/yoloGtold1/train/5159.png +../../data/yoloGtold1/train/5160.png +../../data/yoloGtold1/train/5161.png +../../data/yoloGtold1/train/5162.png +../../data/yoloGtold1/train/5163.png +../../data/yoloGtold1/train/5164.png +../../data/yoloGtold1/train/5165.png +../../data/yoloGtold1/train/5166.png +../../data/yoloGtold1/train/5167.png +../../data/yoloGtold1/train/5168.png +../../data/yoloGtold1/train/5169.png +../../data/yoloGtold1/train/5170.png +../../data/yoloGtold1/train/5171.png +../../data/yoloGtold1/train/5172.png +../../data/yoloGtold1/train/5173.png +../../data/yoloGtold1/train/5174.png +../../data/yoloGtold1/train/5175.png +../../data/yoloGtold1/train/5176.png +../../data/yoloGtold1/train/5177.png +../../data/yoloGtold1/train/5178.png +../../data/yoloGtold1/train/5179.png +../../data/yoloGtold1/train/5180.png +../../data/yoloGtold1/train/5181.png +../../data/yoloGtold1/train/5182.png +../../data/yoloGtold1/train/5183.png +../../data/yoloGtold1/train/5184.png +../../data/yoloGtold1/train/5185.png +../../data/yoloGtold1/train/5186.png +../../data/yoloGtold1/train/5187.png +../../data/yoloGtold1/train/5188.png +../../data/yoloGtold1/train/5189.png +../../data/yoloGtold1/train/5190.png +../../data/yoloGtold1/train/5191.png +../../data/yoloGtold1/train/5192.png +../../data/yoloGtold1/train/5193.png +../../data/yoloGtold1/train/5194.png +../../data/yoloGtold1/train/5195.png +../../data/yoloGtold1/train/5196.png +../../data/yoloGtold1/train/5197.png +../../data/yoloGtold1/train/5198.png +../../data/yoloGtold1/train/5199.png +../../data/yoloGtold1/train/5200.png +../../data/yoloGtold1/train/5201.png +../../data/yoloGtold1/train/5202.png +../../data/yoloGtold1/train/5203.png +../../data/yoloGtold1/train/5204.png +../../data/yoloGtold1/train/5205.png +../../data/yoloGtold1/train/5206.png +../../data/yoloGtold1/train/5207.png +../../data/yoloGtold1/train/5208.png +../../data/yoloGtold1/train/5209.png +../../data/yoloGtold1/train/5210.png +../../data/yoloGtold1/train/5211.png +../../data/yoloGtold1/train/5212.png +../../data/yoloGtold1/train/5213.png +../../data/yoloGtold1/train/5214.png +../../data/yoloGtold1/train/5215.png +../../data/yoloGtold1/train/5216.png +../../data/yoloGtold1/train/5217.png +../../data/yoloGtold1/train/5218.png +../../data/yoloGtold1/train/5219.png +../../data/yoloGtold1/train/5220.png +../../data/yoloGtold1/train/5221.png +../../data/yoloGtold1/train/5222.png +../../data/yoloGtold1/train/5223.png +../../data/yoloGtold1/train/5224.png +../../data/yoloGtold1/train/5225.png +../../data/yoloGtold1/train/5226.png +../../data/yoloGtold1/train/5227.png +../../data/yoloGtold1/train/5228.png +../../data/yoloGtold1/train/5229.png +../../data/yoloGtold1/train/5230.png +../../data/yoloGtold1/train/5231.png +../../data/yoloGtold1/train/5232.png +../../data/yoloGtold1/train/5233.png +../../data/yoloGtold1/train/5234.png +../../data/yoloGtold1/train/5235.png +../../data/yoloGtold1/train/5236.png +../../data/yoloGtold1/train/5237.png +../../data/yoloGtold1/train/5238.png +../../data/yoloGtold1/train/5239.png +../../data/yoloGtold1/train/5240.png +../../data/yoloGtold1/train/5241.png +../../data/yoloGtold1/train/5242.png +../../data/yoloGtold1/train/5243.png +../../data/yoloGtold1/train/5244.png +../../data/yoloGtold1/train/5245.png +../../data/yoloGtold1/train/5246.png +../../data/yoloGtold1/train/5247.png +../../data/yoloGtold1/train/5248.png +../../data/yoloGtold1/train/5249.png +../../data/yoloGtold1/train/5250.png +../../data/yoloGtold1/train/5251.png +../../data/yoloGtold1/train/5252.png +../../data/yoloGtold1/train/5253.png +../../data/yoloGtold1/train/5254.png +../../data/yoloGtold1/train/5255.png +../../data/yoloGtold1/train/5256.png +../../data/yoloGtold1/train/5257.png +../../data/yoloGtold1/train/5258.png +../../data/yoloGtold1/train/5259.png +../../data/yoloGtold1/train/5260.png +../../data/yoloGtold1/train/5261.png +../../data/yoloGtold1/train/5262.png +../../data/yoloGtold1/train/5263.png +../../data/yoloGtold1/train/5264.png +../../data/yoloGtold1/train/5265.png +../../data/yoloGtold1/train/5266.png +../../data/yoloGtold1/train/5267.png +../../data/yoloGtold1/train/5268.png +../../data/yoloGtold1/train/5269.png +../../data/yoloGtold1/train/5270.png +../../data/yoloGtold1/train/5271.png +../../data/yoloGtold1/train/5272.png +../../data/yoloGtold1/train/5273.png +../../data/yoloGtold1/train/5274.png +../../data/yoloGtold1/train/5275.png +../../data/yoloGtold1/train/5276.png +../../data/yoloGtold1/train/5277.png +../../data/yoloGtold1/train/5278.png +../../data/yoloGtold1/train/5279.png +../../data/yoloGtold1/train/5280.png +../../data/yoloGtold1/train/5281.png +../../data/yoloGtold1/train/5282.png +../../data/yoloGtold1/train/5283.png +../../data/yoloGtold1/train/5284.png +../../data/yoloGtold1/train/5285.png +../../data/yoloGtold1/train/5286.png +../../data/yoloGtold1/train/5287.png +../../data/yoloGtold1/train/5288.png +../../data/yoloGtold1/train/5289.png +../../data/yoloGtold1/train/5290.png +../../data/yoloGtold1/train/5291.png +../../data/yoloGtold1/train/5292.png +../../data/yoloGtold1/train/5293.png +../../data/yoloGtold1/train/5294.png +../../data/yoloGtold1/train/5295.png +../../data/yoloGtold1/train/5296.png +../../data/yoloGtold1/train/5297.png +../../data/yoloGtold1/train/5298.png +../../data/yoloGtold1/train/5299.png +../../data/yoloGtold1/train/5300.png +../../data/yoloGtold1/train/5301.png +../../data/yoloGtold1/train/5302.png +../../data/yoloGtold1/train/5303.png +../../data/yoloGtold1/train/5304.png +../../data/yoloGtold1/train/5305.png +../../data/yoloGtold1/train/5306.png +../../data/yoloGtold1/train/5307.png +../../data/yoloGtold1/train/5308.png +../../data/yoloGtold1/train/5309.png +../../data/yoloGtold1/train/5310.png +../../data/yoloGtold1/train/5311.png +../../data/yoloGtold1/train/5312.png +../../data/yoloGtold1/train/5313.png +../../data/yoloGtold1/train/5314.png +../../data/yoloGtold1/train/5315.png +../../data/yoloGtold1/train/5316.png +../../data/yoloGtold1/train/5317.png +../../data/yoloGtold1/train/5318.png +../../data/yoloGtold1/train/5319.png +../../data/yoloGtold1/train/5320.png +../../data/yoloGtold1/train/5321.png +../../data/yoloGtold1/train/5322.png +../../data/yoloGtold1/train/5323.png +../../data/yoloGtold1/train/5324.png +../../data/yoloGtold1/train/5325.png +../../data/yoloGtold1/train/5326.png +../../data/yoloGtold1/train/5327.png +../../data/yoloGtold1/train/5328.png +../../data/yoloGtold1/train/5329.png +../../data/yoloGtold1/train/5330.png +../../data/yoloGtold1/train/5331.png +../../data/yoloGtold1/train/5332.png +../../data/yoloGtold1/train/5333.png +../../data/yoloGtold1/train/5334.png +../../data/yoloGtold1/train/5335.png +../../data/yoloGtold1/train/5336.png +../../data/yoloGtold1/train/5337.png +../../data/yoloGtold1/train/5338.png +../../data/yoloGtold1/train/5339.png +../../data/yoloGtold1/train/5340.png +../../data/yoloGtold1/train/5341.png +../../data/yoloGtold1/train/5342.png +../../data/yoloGtold1/train/5343.png +../../data/yoloGtold1/train/5344.png +../../data/yoloGtold1/train/5345.png +../../data/yoloGtold1/train/5346.png +../../data/yoloGtold1/train/5347.png +../../data/yoloGtold1/train/5348.png +../../data/yoloGtold1/train/5349.png +../../data/yoloGtold1/train/5350.png +../../data/yoloGtold1/train/5351.png +../../data/yoloGtold1/train/5352.png +../../data/yoloGtold1/train/5353.png +../../data/yoloGtold1/train/5354.png +../../data/yoloGtold1/train/5355.png +../../data/yoloGtold1/train/5356.png +../../data/yoloGtold1/train/5357.png +../../data/yoloGtold1/train/5358.png +../../data/yoloGtold1/train/5359.png +../../data/yoloGtold1/train/5360.png +../../data/yoloGtold1/train/5361.png +../../data/yoloGtold1/train/5362.png +../../data/yoloGtold1/train/5363.png +../../data/yoloGtold1/train/5364.png +../../data/yoloGtold1/train/5365.png +../../data/yoloGtold1/train/5366.png +../../data/yoloGtold1/train/5367.png +../../data/yoloGtold1/train/5368.png +../../data/yoloGtold1/train/5369.png +../../data/yoloGtold1/train/5370.png +../../data/yoloGtold1/train/5371.png +../../data/yoloGtold1/train/5372.png +../../data/yoloGtold1/train/5373.png +../../data/yoloGtold1/train/5374.png +../../data/yoloGtold1/train/5375.png +../../data/yoloGtold1/train/5376.png +../../data/yoloGtold1/train/5377.png +../../data/yoloGtold1/train/5378.png +../../data/yoloGtold1/train/5379.png +../../data/yoloGtold1/train/5380.png +../../data/yoloGtold1/train/5381.png +../../data/yoloGtold1/train/5382.png +../../data/yoloGtold1/train/5383.png +../../data/yoloGtold1/train/5384.png +../../data/yoloGtold1/train/5385.png +../../data/yoloGtold1/train/5386.png +../../data/yoloGtold1/train/5387.png +../../data/yoloGtold1/train/5388.png +../../data/yoloGtold1/train/5389.png +../../data/yoloGtold1/train/5390.png +../../data/yoloGtold1/train/5391.png +../../data/yoloGtold1/train/5392.png +../../data/yoloGtold1/train/5393.png +../../data/yoloGtold1/train/5394.png +../../data/yoloGtold1/train/5395.png +../../data/yoloGtold1/train/5396.png +../../data/yoloGtold1/train/5397.png +../../data/yoloGtold1/train/5398.png +../../data/yoloGtold1/train/5399.png +../../data/yoloGtold1/train/5400.png +../../data/yoloGtold1/train/5401.png +../../data/yoloGtold1/train/5402.png +../../data/yoloGtold1/train/5403.png +../../data/yoloGtold1/train/5404.png +../../data/yoloGtold1/train/5405.png +../../data/yoloGtold1/train/5406.png +../../data/yoloGtold1/train/5407.png +../../data/yoloGtold1/train/5408.png +../../data/yoloGtold1/train/5409.png +../../data/yoloGtold1/train/5410.png +../../data/yoloGtold1/train/5411.png +../../data/yoloGtold1/train/5412.png +../../data/yoloGtold1/train/5413.png +../../data/yoloGtold1/train/5414.png +../../data/yoloGtold1/train/5415.png +../../data/yoloGtold1/train/5416.png +../../data/yoloGtold1/train/5417.png +../../data/yoloGtold1/train/5418.png +../../data/yoloGtold1/train/5419.png +../../data/yoloGtold1/train/5420.png +../../data/yoloGtold1/train/5421.png +../../data/yoloGtold1/train/5422.png +../../data/yoloGtold1/train/5423.png +../../data/yoloGtold1/train/5424.png +../../data/yoloGtold1/train/5425.png +../../data/yoloGtold1/train/5426.png +../../data/yoloGtold1/train/5427.png +../../data/yoloGtold1/train/5428.png +../../data/yoloGtold1/train/5429.png +../../data/yoloGtold1/train/5430.png +../../data/yoloGtold1/train/5431.png +../../data/yoloGtold1/train/5432.png +../../data/yoloGtold1/train/5433.png +../../data/yoloGtold1/train/5434.png +../../data/yoloGtold1/train/5435.png +../../data/yoloGtold1/train/5436.png +../../data/yoloGtold1/train/5437.png +../../data/yoloGtold1/train/5438.png +../../data/yoloGtold1/train/5439.png +../../data/yoloGtold1/train/5440.png +../../data/yoloGtold1/train/5441.png +../../data/yoloGtold1/train/5442.png +../../data/yoloGtold1/train/5443.png +../../data/yoloGtold1/train/5444.png +../../data/yoloGtold1/train/5445.png +../../data/yoloGtold1/train/5446.png +../../data/yoloGtold1/train/5447.png +../../data/yoloGtold1/train/5448.png +../../data/yoloGtold1/train/5449.png +../../data/yoloGtold1/train/5450.png +../../data/yoloGtold1/train/5451.png +../../data/yoloGtold1/train/5452.png +../../data/yoloGtold1/train/5453.png +../../data/yoloGtold1/train/5454.png +../../data/yoloGtold1/train/5455.png +../../data/yoloGtold1/train/5456.png +../../data/yoloGtold1/train/5457.png +../../data/yoloGtold1/train/5458.png +../../data/yoloGtold1/train/5459.png +../../data/yoloGtold1/train/5460.png +../../data/yoloGtold1/train/5461.png +../../data/yoloGtold1/train/5462.png +../../data/yoloGtold1/train/5463.png +../../data/yoloGtold1/train/5464.png +../../data/yoloGtold1/train/5465.png +../../data/yoloGtold1/train/5466.png +../../data/yoloGtold1/train/5467.png +../../data/yoloGtold1/train/5468.png +../../data/yoloGtold1/train/5469.png +../../data/yoloGtold1/train/5470.png +../../data/yoloGtold1/train/5471.png +../../data/yoloGtold1/train/5472.png +../../data/yoloGtold1/train/5473.png +../../data/yoloGtold1/train/5474.png +../../data/yoloGtold1/train/5475.png +../../data/yoloGtold1/train/5476.png +../../data/yoloGtold1/train/5477.png +../../data/yoloGtold1/train/5478.png +../../data/yoloGtold1/train/5479.png +../../data/yoloGtold1/train/5480.png +../../data/yoloGtold1/train/5481.png +../../data/yoloGtold1/train/5482.png +../../data/yoloGtold1/train/5483.png +../../data/yoloGtold1/train/5484.png +../../data/yoloGtold1/train/5485.png +../../data/yoloGtold1/train/5486.png +../../data/yoloGtold1/train/5487.png +../../data/yoloGtold1/train/5488.png +../../data/yoloGtold1/train/5489.png +../../data/yoloGtold1/train/5490.png +../../data/yoloGtold1/train/5491.png +../../data/yoloGtold1/train/5492.png +../../data/yoloGtold1/train/5493.png +../../data/yoloGtold1/train/5494.png +../../data/yoloGtold1/train/5495.png +../../data/yoloGtold1/train/5496.png +../../data/yoloGtold1/train/5497.png +../../data/yoloGtold1/train/5498.png +../../data/yoloGtold1/train/5499.png +../../data/yoloGtold1/train/5500.png +../../data/yoloGtold1/train/5501.png +../../data/yoloGtold1/train/5502.png +../../data/yoloGtold1/train/5503.png +../../data/yoloGtold1/train/5504.png +../../data/yoloGtold1/train/5505.png +../../data/yoloGtold1/train/5506.png +../../data/yoloGtold1/train/5507.png +../../data/yoloGtold1/train/5508.png +../../data/yoloGtold1/train/5509.png +../../data/yoloGtold1/train/5510.png +../../data/yoloGtold1/train/5511.png +../../data/yoloGtold1/train/5512.png +../../data/yoloGtold1/train/5513.png +../../data/yoloGtold1/train/5514.png +../../data/yoloGtold1/train/5515.png +../../data/yoloGtold1/train/5516.png +../../data/yoloGtold1/train/5517.png +../../data/yoloGtold1/train/5518.png +../../data/yoloGtold1/train/5519.png +../../data/yoloGtold1/train/5520.png +../../data/yoloGtold1/train/5521.png +../../data/yoloGtold1/train/5522.png +../../data/yoloGtold1/train/5523.png +../../data/yoloGtold1/train/5524.png +../../data/yoloGtold1/train/5525.png +../../data/yoloGtold1/train/5526.png +../../data/yoloGtold1/train/5527.png +../../data/yoloGtold1/train/5528.png +../../data/yoloGtold1/train/5529.png +../../data/yoloGtold1/train/5530.png +../../data/yoloGtold1/train/5531.png +../../data/yoloGtold1/train/5532.png +../../data/yoloGtold1/train/5533.png +../../data/yoloGtold1/train/5534.png +../../data/yoloGtold1/train/5535.png +../../data/yoloGtold1/train/5536.png +../../data/yoloGtold1/train/5537.png +../../data/yoloGtold1/train/5538.png +../../data/yoloGtold1/train/5539.png +../../data/yoloGtold1/train/5540.png +../../data/yoloGtold1/train/5541.png +../../data/yoloGtold1/train/5542.png +../../data/yoloGtold1/train/5543.png +../../data/yoloGtold1/train/5544.png +../../data/yoloGtold1/train/5545.png +../../data/yoloGtold1/train/5546.png +../../data/yoloGtold1/train/5547.png +../../data/yoloGtold1/train/5548.png +../../data/yoloGtold1/train/5549.png +../../data/yoloGtold1/train/5550.png +../../data/yoloGtold1/train/5551.png +../../data/yoloGtold1/train/5552.png +../../data/yoloGtold1/train/5553.png +../../data/yoloGtold1/train/5554.png +../../data/yoloGtold1/train/5555.png +../../data/yoloGtold1/train/5556.png +../../data/yoloGtold1/train/5557.png +../../data/yoloGtold1/train/5558.png +../../data/yoloGtold1/train/5559.png +../../data/yoloGtold1/train/5560.png +../../data/yoloGtold1/train/5561.png +../../data/yoloGtold1/train/5562.png +../../data/yoloGtold1/train/5563.png +../../data/yoloGtold1/train/5564.png +../../data/yoloGtold1/train/5565.png +../../data/yoloGtold1/train/5566.png +../../data/yoloGtold1/train/5567.png +../../data/yoloGtold1/train/5568.png +../../data/yoloGtold1/train/5569.png +../../data/yoloGtold1/train/5570.png +../../data/yoloGtold1/train/5571.png +../../data/yoloGtold1/train/5572.png +../../data/yoloGtold1/train/5573.png +../../data/yoloGtold1/train/5574.png +../../data/yoloGtold1/train/5575.png +../../data/yoloGtold1/train/5576.png +../../data/yoloGtold1/train/5577.png +../../data/yoloGtold1/train/5578.png +../../data/yoloGtold1/train/5579.png +../../data/yoloGtold1/train/5580.png +../../data/yoloGtold1/train/5581.png +../../data/yoloGtold1/train/5582.png +../../data/yoloGtold1/train/5583.png +../../data/yoloGtold1/train/5584.png +../../data/yoloGtold1/train/5585.png +../../data/yoloGtold1/train/5586.png +../../data/yoloGtold1/train/5587.png +../../data/yoloGtold1/train/5588.png +../../data/yoloGtold1/train/5589.png +../../data/yoloGtold1/train/5590.png +../../data/yoloGtold1/train/5591.png +../../data/yoloGtold1/train/5592.png +../../data/yoloGtold1/train/5593.png +../../data/yoloGtold1/train/5594.png +../../data/yoloGtold1/train/5595.png +../../data/yoloGtold1/train/5596.png +../../data/yoloGtold1/train/5597.png +../../data/yoloGtold1/train/5598.png +../../data/yoloGtold1/train/5599.png +../../data/yoloGtold1/train/5600.png +../../data/yoloGtold1/train/5601.png +../../data/yoloGtold1/train/5602.png +../../data/yoloGtold1/train/5603.png +../../data/yoloGtold1/train/5604.png +../../data/yoloGtold1/train/5605.png +../../data/yoloGtold1/train/5606.png +../../data/yoloGtold1/train/5607.png +../../data/yoloGtold1/train/5608.png +../../data/yoloGtold1/train/5609.png +../../data/yoloGtold1/train/5610.png +../../data/yoloGtold1/train/5611.png +../../data/yoloGtold1/train/5612.png +../../data/yoloGtold1/train/5613.png +../../data/yoloGtold1/train/5614.png +../../data/yoloGtold1/train/5615.png +../../data/yoloGtold1/train/5616.png +../../data/yoloGtold1/train/5617.png +../../data/yoloGtold1/train/5618.png +../../data/yoloGtold1/train/5619.png +../../data/yoloGtold1/train/5620.png +../../data/yoloGtold1/train/5621.png +../../data/yoloGtold1/train/5622.png +../../data/yoloGtold1/train/5623.png +../../data/yoloGtold1/train/5624.png +../../data/yoloGtold1/train/5625.png +../../data/yoloGtold1/train/5626.png +../../data/yoloGtold1/train/5627.png +../../data/yoloGtold1/train/5628.png +../../data/yoloGtold1/train/5629.png +../../data/yoloGtold1/train/5630.png +../../data/yoloGtold1/train/5631.png +../../data/yoloGtold1/train/5632.png +../../data/yoloGtold1/train/5633.png +../../data/yoloGtold1/train/5634.png +../../data/yoloGtold1/train/5635.png +../../data/yoloGtold1/train/5636.png +../../data/yoloGtold1/train/5637.png +../../data/yoloGtold1/train/5638.png +../../data/yoloGtold1/train/5639.png +../../data/yoloGtold1/train/5640.png +../../data/yoloGtold1/train/5641.png +../../data/yoloGtold1/train/5642.png +../../data/yoloGtold1/train/5643.png +../../data/yoloGtold1/train/5644.png +../../data/yoloGtold1/train/5645.png +../../data/yoloGtold1/train/5646.png +../../data/yoloGtold1/train/5647.png +../../data/yoloGtold1/train/5648.png +../../data/yoloGtold1/train/5649.png +../../data/yoloGtold1/train/5650.png +../../data/yoloGtold1/train/5651.png +../../data/yoloGtold1/train/5652.png +../../data/yoloGtold1/train/5653.png +../../data/yoloGtold1/train/5654.png +../../data/yoloGtold1/train/5655.png +../../data/yoloGtold1/train/5656.png +../../data/yoloGtold1/train/5657.png +../../data/yoloGtold1/train/5658.png +../../data/yoloGtold1/train/5659.png +../../data/yoloGtold1/train/5660.png +../../data/yoloGtold1/train/5661.png +../../data/yoloGtold1/train/5662.png +../../data/yoloGtold1/train/5663.png +../../data/yoloGtold1/train/5664.png +../../data/yoloGtold1/train/5665.png +../../data/yoloGtold1/train/5666.png +../../data/yoloGtold1/train/5667.png +../../data/yoloGtold1/train/5668.png +../../data/yoloGtold1/train/5669.png +../../data/yoloGtold1/train/5670.png +../../data/yoloGtold1/train/5671.png +../../data/yoloGtold1/train/5672.png +../../data/yoloGtold1/train/5673.png +../../data/yoloGtold1/train/5674.png +../../data/yoloGtold1/train/5675.png +../../data/yoloGtold1/train/5676.png +../../data/yoloGtold1/train/5677.png +../../data/yoloGtold1/train/5678.png +../../data/yoloGtold1/train/5679.png +../../data/yoloGtold1/train/5680.png +../../data/yoloGtold1/train/5681.png +../../data/yoloGtold1/train/5682.png +../../data/yoloGtold1/train/5683.png +../../data/yoloGtold1/train/5684.png +../../data/yoloGtold1/train/5685.png +../../data/yoloGtold1/train/5686.png +../../data/yoloGtold1/train/5687.png +../../data/yoloGtold1/train/5688.png +../../data/yoloGtold1/train/5689.png +../../data/yoloGtold1/train/5690.png +../../data/yoloGtold1/train/5691.png +../../data/yoloGtold1/train/5692.png +../../data/yoloGtold1/train/5693.png +../../data/yoloGtold1/train/5694.png +../../data/yoloGtold1/train/5695.png +../../data/yoloGtold1/train/5696.png +../../data/yoloGtold1/train/5697.png +../../data/yoloGtold1/train/5698.png +../../data/yoloGtold1/train/5699.png +../../data/yoloGtold1/train/5700.png +../../data/yoloGtold1/train/5701.png +../../data/yoloGtold1/train/5702.png +../../data/yoloGtold1/train/5703.png +../../data/yoloGtold1/train/5704.png +../../data/yoloGtold1/train/5705.png +../../data/yoloGtold1/train/5706.png +../../data/yoloGtold1/train/5707.png +../../data/yoloGtold1/train/5708.png +../../data/yoloGtold1/train/5709.png +../../data/yoloGtold1/train/5710.png +../../data/yoloGtold1/train/5711.png +../../data/yoloGtold1/train/5712.png +../../data/yoloGtold1/train/5713.png +../../data/yoloGtold1/train/5714.png +../../data/yoloGtold1/train/5715.png +../../data/yoloGtold1/train/5716.png +../../data/yoloGtold1/train/5717.png +../../data/yoloGtold1/train/5718.png +../../data/yoloGtold1/train/5719.png +../../data/yoloGtold1/train/5720.png +../../data/yoloGtold1/train/5721.png +../../data/yoloGtold1/train/5722.png +../../data/yoloGtold1/train/5723.png +../../data/yoloGtold1/train/5724.png +../../data/yoloGtold1/train/5725.png +../../data/yoloGtold1/train/5726.png +../../data/yoloGtold1/train/5727.png +../../data/yoloGtold1/train/5728.png +../../data/yoloGtold1/train/5729.png +../../data/yoloGtold1/train/5730.png +../../data/yoloGtold1/train/5731.png +../../data/yoloGtold1/train/5732.png +../../data/yoloGtold1/train/5733.png +../../data/yoloGtold1/train/5734.png +../../data/yoloGtold1/train/5735.png +../../data/yoloGtold1/train/5736.png +../../data/yoloGtold1/train/5737.png +../../data/yoloGtold1/train/5738.png +../../data/yoloGtold1/train/5739.png +../../data/yoloGtold1/train/5740.png +../../data/yoloGtold1/train/5741.png +../../data/yoloGtold1/train/5742.png +../../data/yoloGtold1/train/5743.png +../../data/yoloGtold1/train/5744.png +../../data/yoloGtold1/train/5745.png +../../data/yoloGtold1/train/5746.png +../../data/yoloGtold1/train/5747.png +../../data/yoloGtold1/train/5748.png +../../data/yoloGtold1/train/5749.png +../../data/yoloGtold1/train/5750.png +../../data/yoloGtold1/train/5751.png +../../data/yoloGtold1/train/5752.png +../../data/yoloGtold1/train/5753.png +../../data/yoloGtold1/train/5754.png +../../data/yoloGtold1/train/5755.png +../../data/yoloGtold1/train/5756.png +../../data/yoloGtold1/train/5757.png +../../data/yoloGtold1/train/5758.png +../../data/yoloGtold1/train/5759.png +../../data/yoloGtold1/train/5760.png +../../data/yoloGtold1/train/5761.png +../../data/yoloGtold1/train/5762.png +../../data/yoloGtold1/train/5763.png +../../data/yoloGtold1/train/5764.png +../../data/yoloGtold1/train/5765.png +../../data/yoloGtold1/train/5766.png +../../data/yoloGtold1/train/5767.png +../../data/yoloGtold1/train/5768.png +../../data/yoloGtold1/train/5769.png +../../data/yoloGtold1/train/5770.png +../../data/yoloGtold1/train/5771.png +../../data/yoloGtold1/train/5772.png +../../data/yoloGtold1/train/5773.png +../../data/yoloGtold1/train/5774.png +../../data/yoloGtold1/train/5775.png +../../data/yoloGtold1/train/5776.png +../../data/yoloGtold1/train/5777.png +../../data/yoloGtold1/train/5778.png +../../data/yoloGtold1/train/5779.png +../../data/yoloGtold1/train/5780.png +../../data/yoloGtold1/train/5781.png +../../data/yoloGtold1/train/5782.png +../../data/yoloGtold1/train/5783.png +../../data/yoloGtold1/train/5784.png +../../data/yoloGtold1/train/5785.png +../../data/yoloGtold1/train/5786.png +../../data/yoloGtold1/train/5787.png +../../data/yoloGtold1/train/5788.png +../../data/yoloGtold1/train/5789.png +../../data/yoloGtold1/train/5790.png +../../data/yoloGtold1/train/5791.png +../../data/yoloGtold1/train/5792.png +../../data/yoloGtold1/train/5793.png +../../data/yoloGtold1/train/5794.png +../../data/yoloGtold1/train/5795.png +../../data/yoloGtold1/train/5796.png +../../data/yoloGtold1/train/5797.png +../../data/yoloGtold1/train/5798.png +../../data/yoloGtold1/train/5799.png +../../data/yoloGtold1/train/5800.png +../../data/yoloGtold1/train/5801.png +../../data/yoloGtold1/train/5802.png +../../data/yoloGtold1/train/5803.png +../../data/yoloGtold1/train/5804.png +../../data/yoloGtold1/train/5805.png +../../data/yoloGtold1/train/5806.png +../../data/yoloGtold1/train/5807.png +../../data/yoloGtold1/train/5808.png +../../data/yoloGtold1/train/5809.png +../../data/yoloGtold1/train/5810.png +../../data/yoloGtold1/train/5811.png +../../data/yoloGtold1/train/5812.png +../../data/yoloGtold1/train/5813.png +../../data/yoloGtold1/train/5814.png +../../data/yoloGtold1/train/5815.png +../../data/yoloGtold1/train/5816.png +../../data/yoloGtold1/train/5817.png +../../data/yoloGtold1/train/5818.png +../../data/yoloGtold1/train/5819.png +../../data/yoloGtold1/train/5820.png +../../data/yoloGtold1/train/5821.png +../../data/yoloGtold1/train/5822.png +../../data/yoloGtold1/train/5823.png +../../data/yoloGtold1/train/5824.png +../../data/yoloGtold1/train/5825.png +../../data/yoloGtold1/train/5826.png +../../data/yoloGtold1/train/5827.png +../../data/yoloGtold1/train/5828.png +../../data/yoloGtold1/train/5829.png +../../data/yoloGtold1/train/5830.png +../../data/yoloGtold1/train/5831.png +../../data/yoloGtold1/train/5832.png +../../data/yoloGtold1/train/5833.png +../../data/yoloGtold1/train/5834.png +../../data/yoloGtold1/train/5835.png +../../data/yoloGtold1/train/5836.png +../../data/yoloGtold1/train/5837.png +../../data/yoloGtold1/train/5838.png +../../data/yoloGtold1/train/5839.png +../../data/yoloGtold1/train/5840.png +../../data/yoloGtold1/train/5841.png +../../data/yoloGtold1/train/5842.png +../../data/yoloGtold1/train/5843.png +../../data/yoloGtold1/train/5844.png +../../data/yoloGtold1/train/5845.png +../../data/yoloGtold1/train/5846.png +../../data/yoloGtold1/train/5847.png +../../data/yoloGtold1/train/5848.png +../../data/yoloGtold1/train/5849.png +../../data/yoloGtold1/train/5850.png +../../data/yoloGtold1/train/5851.png +../../data/yoloGtold1/train/5852.png +../../data/yoloGtold1/train/5853.png +../../data/yoloGtold1/train/5854.png +../../data/yoloGtold1/train/5855.png +../../data/yoloGtold1/train/5856.png +../../data/yoloGtold1/train/5857.png +../../data/yoloGtold1/train/5858.png +../../data/yoloGtold1/train/5859.png +../../data/yoloGtold1/train/5860.png +../../data/yoloGtold1/train/5861.png +../../data/yoloGtold1/train/5862.png +../../data/yoloGtold1/train/5863.png +../../data/yoloGtold1/train/5864.png +../../data/yoloGtold1/train/5865.png +../../data/yoloGtold1/train/5866.png +../../data/yoloGtold1/train/5867.png +../../data/yoloGtold1/train/5868.png +../../data/yoloGtold1/train/5869.png +../../data/yoloGtold1/train/5870.png +../../data/yoloGtold1/train/5871.png +../../data/yoloGtold1/train/5872.png +../../data/yoloGtold1/train/5873.png +../../data/yoloGtold1/train/5874.png +../../data/yoloGtold1/train/5875.png +../../data/yoloGtold1/train/5876.png +../../data/yoloGtold1/train/5877.png +../../data/yoloGtold1/train/5878.png +../../data/yoloGtold1/train/5879.png +../../data/yoloGtold1/train/5880.png +../../data/yoloGtold1/train/5881.png +../../data/yoloGtold1/train/5882.png +../../data/yoloGtold1/train/5883.png +../../data/yoloGtold1/train/5884.png +../../data/yoloGtold1/train/5885.png +../../data/yoloGtold1/train/5886.png +../../data/yoloGtold1/train/5887.png +../../data/yoloGtold1/train/5888.png +../../data/yoloGtold1/train/5889.png +../../data/yoloGtold1/train/5890.png +../../data/yoloGtold1/train/5891.png +../../data/yoloGtold1/train/5892.png +../../data/yoloGtold1/train/5893.png +../../data/yoloGtold1/train/5894.png +../../data/yoloGtold1/train/5895.png +../../data/yoloGtold1/train/5896.png +../../data/yoloGtold1/train/5897.png +../../data/yoloGtold1/train/5898.png +../../data/yoloGtold1/train/5899.png +../../data/yoloGtold1/train/5900.png +../../data/yoloGtold1/train/5901.png +../../data/yoloGtold1/train/5902.png +../../data/yoloGtold1/train/5903.png +../../data/yoloGtold1/train/5904.png +../../data/yoloGtold1/train/5905.png +../../data/yoloGtold1/train/5906.png +../../data/yoloGtold1/train/5907.png +../../data/yoloGtold1/train/5908.png +../../data/yoloGtold1/train/5909.png +../../data/yoloGtold1/train/5910.png +../../data/yoloGtold1/train/5911.png +../../data/yoloGtold1/train/5912.png +../../data/yoloGtold1/train/5913.png +../../data/yoloGtold1/train/5914.png +../../data/yoloGtold1/train/5915.png +../../data/yoloGtold1/train/5916.png +../../data/yoloGtold1/train/5917.png +../../data/yoloGtold1/train/5918.png +../../data/yoloGtold1/train/5919.png +../../data/yoloGtold1/train/5920.png +../../data/yoloGtold1/train/5921.png +../../data/yoloGtold1/train/5922.png +../../data/yoloGtold1/train/5923.png +../../data/yoloGtold1/train/5924.png +../../data/yoloGtold1/train/5925.png +../../data/yoloGtold1/train/5926.png +../../data/yoloGtold1/train/5927.png +../../data/yoloGtold1/train/5928.png +../../data/yoloGtold1/train/5929.png +../../data/yoloGtold1/train/5930.png +../../data/yoloGtold1/train/5931.png +../../data/yoloGtold1/train/5932.png +../../data/yoloGtold1/train/5933.png +../../data/yoloGtold1/train/5934.png +../../data/yoloGtold1/train/5935.png +../../data/yoloGtold1/train/5936.png +../../data/yoloGtold1/train/5937.png +../../data/yoloGtold1/train/5938.png +../../data/yoloGtold1/train/5939.png +../../data/yoloGtold1/train/5940.png +../../data/yoloGtold1/train/5941.png +../../data/yoloGtold1/train/5942.png +../../data/yoloGtold1/train/5943.png +../../data/yoloGtold1/train/5944.png +../../data/yoloGtold1/train/5945.png +../../data/yoloGtold1/train/5946.png +../../data/yoloGtold1/train/5947.png +../../data/yoloGtold1/train/5948.png +../../data/yoloGtold1/train/5949.png +../../data/yoloGtold1/train/5950.png +../../data/yoloGtold1/train/5951.png +../../data/yoloGtold1/train/5952.png +../../data/yoloGtold1/train/5953.png +../../data/yoloGtold1/train/5954.png +../../data/yoloGtold1/train/5955.png +../../data/yoloGtold1/train/5956.png +../../data/yoloGtold1/train/5957.png +../../data/yoloGtold1/train/5958.png +../../data/yoloGtold1/train/5959.png +../../data/yoloGtold1/train/5960.png +../../data/yoloGtold1/train/5961.png +../../data/yoloGtold1/train/5962.png +../../data/yoloGtold1/train/5963.png +../../data/yoloGtold1/train/5964.png +../../data/yoloGtold1/train/5965.png +../../data/yoloGtold1/train/5966.png +../../data/yoloGtold1/train/5967.png +../../data/yoloGtold1/train/5968.png +../../data/yoloGtold1/train/5969.png +../../data/yoloGtold1/train/5970.png +../../data/yoloGtold1/train/5971.png +../../data/yoloGtold1/train/5972.png +../../data/yoloGtold1/train/5973.png +../../data/yoloGtold1/train/5974.png +../../data/yoloGtold1/train/5975.png +../../data/yoloGtold1/train/5976.png +../../data/yoloGtold1/train/5977.png +../../data/yoloGtold1/train/5978.png +../../data/yoloGtold1/train/5979.png +../../data/yoloGtold1/train/5980.png +../../data/yoloGtold1/train/5981.png +../../data/yoloGtold1/train/5982.png +../../data/yoloGtold1/train/5983.png +../../data/yoloGtold1/train/5984.png +../../data/yoloGtold1/train/5985.png +../../data/yoloGtold1/train/5986.png +../../data/yoloGtold1/train/5987.png +../../data/yoloGtold1/train/5988.png +../../data/yoloGtold1/train/5989.png +../../data/yoloGtold1/train/5990.png +../../data/yoloGtold1/train/5991.png +../../data/yoloGtold1/train/5992.png +../../data/yoloGtold1/train/5993.png +../../data/yoloGtold1/train/5994.png +../../data/yoloGtold1/train/5995.png +../../data/yoloGtold1/train/5996.png +../../data/yoloGtold1/train/5997.png +../../data/yoloGtold1/train/5998.png +../../data/yoloGtold1/train/5999.png +../../data/yoloGtold1/train/6000.png +../../data/yoloGtold1/train/6001.png +../../data/yoloGtold1/train/6002.png +../../data/yoloGtold1/train/6003.png +../../data/yoloGtold1/train/6004.png +../../data/yoloGtold1/train/6005.png +../../data/yoloGtold1/train/6006.png +../../data/yoloGtold1/train/6007.png +../../data/yoloGtold1/train/6008.png +../../data/yoloGtold1/train/6009.png +../../data/yoloGtold1/train/6010.png +../../data/yoloGtold1/train/6011.png +../../data/yoloGtold1/train/6012.png +../../data/yoloGtold1/train/6013.png +../../data/yoloGtold1/train/6014.png +../../data/yoloGtold1/train/6015.png +../../data/yoloGtold1/train/6016.png +../../data/yoloGtold1/train/6017.png +../../data/yoloGtold1/train/6018.png +../../data/yoloGtold1/train/6019.png +../../data/yoloGtold1/train/6020.png +../../data/yoloGtold1/train/6021.png +../../data/yoloGtold1/train/6022.png +../../data/yoloGtold1/train/6023.png +../../data/yoloGtold1/train/6024.png +../../data/yoloGtold1/train/6025.png +../../data/yoloGtold1/train/6026.png +../../data/yoloGtold1/train/6027.png +../../data/yoloGtold1/train/6028.png +../../data/yoloGtold1/train/6029.png +../../data/yoloGtold1/train/6030.png +../../data/yoloGtold1/train/6031.png +../../data/yoloGtold1/train/6032.png +../../data/yoloGtold1/train/6033.png +../../data/yoloGtold1/train/6034.png +../../data/yoloGtold1/train/6035.png +../../data/yoloGtold1/train/6036.png +../../data/yoloGtold1/train/6037.png +../../data/yoloGtold1/train/6038.png +../../data/yoloGtold1/train/6039.png +../../data/yoloGtold1/train/6040.png +../../data/yoloGtold1/train/6041.png +../../data/yoloGtold1/train/6042.png +../../data/yoloGtold1/train/6043.png +../../data/yoloGtold1/train/6044.png +../../data/yoloGtold1/train/6045.png +../../data/yoloGtold1/train/6046.png +../../data/yoloGtold1/train/6047.png +../../data/yoloGtold1/train/6048.png +../../data/yoloGtold1/train/6049.png +../../data/yoloGtold1/train/6050.png +../../data/yoloGtold1/train/6051.png +../../data/yoloGtold1/train/6052.png +../../data/yoloGtold1/train/6053.png +../../data/yoloGtold1/train/6054.png +../../data/yoloGtold1/train/6055.png +../../data/yoloGtold1/train/6056.png +../../data/yoloGtold1/train/6057.png +../../data/yoloGtold1/train/6058.png +../../data/yoloGtold1/train/6059.png +../../data/yoloGtold1/train/6060.png +../../data/yoloGtold1/train/6061.png +../../data/yoloGtold1/train/6062.png +../../data/yoloGtold1/train/6063.png +../../data/yoloGtold1/train/6064.png +../../data/yoloGtold1/train/6065.png +../../data/yoloGtold1/train/6066.png +../../data/yoloGtold1/train/6067.png +../../data/yoloGtold1/train/6068.png +../../data/yoloGtold1/train/6069.png +../../data/yoloGtold1/train/6070.png +../../data/yoloGtold1/train/6071.png +../../data/yoloGtold1/train/6072.png +../../data/yoloGtold1/train/6073.png +../../data/yoloGtold1/train/6074.png +../../data/yoloGtold1/train/6075.png +../../data/yoloGtold1/train/6076.png +../../data/yoloGtold1/train/6077.png +../../data/yoloGtold1/train/6078.png +../../data/yoloGtold1/train/6079.png +../../data/yoloGtold1/train/6080.png +../../data/yoloGtold1/train/6081.png +../../data/yoloGtold1/train/6082.png +../../data/yoloGtold1/train/6083.png +../../data/yoloGtold1/train/6084.png +../../data/yoloGtold1/train/6085.png +../../data/yoloGtold1/train/6086.png +../../data/yoloGtold1/train/6087.png +../../data/yoloGtold1/train/6088.png +../../data/yoloGtold1/train/6089.png +../../data/yoloGtold1/train/6090.png +../../data/yoloGtold1/train/6091.png +../../data/yoloGtold1/train/6092.png +../../data/yoloGtold1/train/6093.png +../../data/yoloGtold1/train/6094.png +../../data/yoloGtold1/train/6095.png +../../data/yoloGtold1/train/6096.png +../../data/yoloGtold1/train/6097.png +../../data/yoloGtold1/train/6098.png +../../data/yoloGtold1/train/6099.png +../../data/yoloGtold1/train/6100.png +../../data/yoloGtold1/train/6101.png +../../data/yoloGtold1/train/6102.png +../../data/yoloGtold1/train/6103.png +../../data/yoloGtold1/train/6104.png +../../data/yoloGtold1/train/6105.png +../../data/yoloGtold1/train/6106.png +../../data/yoloGtold1/train/6107.png +../../data/yoloGtold1/train/6108.png +../../data/yoloGtold1/train/6109.png +../../data/yoloGtold1/train/6110.png +../../data/yoloGtold1/train/6111.png +../../data/yoloGtold1/train/6112.png +../../data/yoloGtold1/train/6113.png +../../data/yoloGtold1/train/6114.png +../../data/yoloGtold1/train/6115.png +../../data/yoloGtold1/train/6116.png +../../data/yoloGtold1/train/6117.png +../../data/yoloGtold1/train/6118.png +../../data/yoloGtold1/train/6119.png +../../data/yoloGtold1/train/6120.png +../../data/yoloGtold1/train/6121.png +../../data/yoloGtold1/train/6122.png +../../data/yoloGtold1/train/6123.png +../../data/yoloGtold1/train/6124.png +../../data/yoloGtold1/train/6125.png +../../data/yoloGtold1/train/6126.png +../../data/yoloGtold1/train/6127.png +../../data/yoloGtold1/train/6128.png +../../data/yoloGtold1/train/6129.png +../../data/yoloGtold1/train/6130.png +../../data/yoloGtold1/train/6131.png +../../data/yoloGtold1/train/6132.png +../../data/yoloGtold1/train/6133.png +../../data/yoloGtold1/train/6134.png +../../data/yoloGtold1/train/6135.png +../../data/yoloGtold1/train/6136.png +../../data/yoloGtold1/train/6137.png +../../data/yoloGtold1/train/6138.png +../../data/yoloGtold1/train/6139.png +../../data/yoloGtold1/train/6140.png +../../data/yoloGtold1/train/6141.png +../../data/yoloGtold1/train/6142.png +../../data/yoloGtold1/train/6143.png +../../data/yoloGtold1/train/6144.png +../../data/yoloGtold1/train/6145.png +../../data/yoloGtold1/train/6146.png +../../data/yoloGtold1/train/6147.png +../../data/yoloGtold1/train/6148.png +../../data/yoloGtold1/train/6149.png +../../data/yoloGtold1/train/6150.png +../../data/yoloGtold1/train/6151.png +../../data/yoloGtold1/train/6152.png +../../data/yoloGtold1/train/6153.png +../../data/yoloGtold1/train/6154.png +../../data/yoloGtold1/train/6155.png +../../data/yoloGtold1/train/6156.png +../../data/yoloGtold1/train/6157.png +../../data/yoloGtold1/train/6158.png +../../data/yoloGtold1/train/6159.png +../../data/yoloGtold1/train/6160.png +../../data/yoloGtold1/train/6161.png +../../data/yoloGtold1/train/6162.png +../../data/yoloGtold1/train/6163.png +../../data/yoloGtold1/train/6164.png +../../data/yoloGtold1/train/6165.png +../../data/yoloGtold1/train/6166.png +../../data/yoloGtold1/train/6167.png +../../data/yoloGtold1/train/6168.png +../../data/yoloGtold1/train/6169.png +../../data/yoloGtold1/train/6170.png +../../data/yoloGtold1/train/6171.png +../../data/yoloGtold1/train/6172.png +../../data/yoloGtold1/train/6173.png +../../data/yoloGtold1/train/6174.png +../../data/yoloGtold1/train/6175.png +../../data/yoloGtold1/train/6176.png +../../data/yoloGtold1/train/6177.png +../../data/yoloGtold1/train/6178.png +../../data/yoloGtold1/train/6179.png +../../data/yoloGtold1/train/6180.png +../../data/yoloGtold1/train/6181.png +../../data/yoloGtold1/train/6182.png +../../data/yoloGtold1/train/6183.png +../../data/yoloGtold1/train/6184.png +../../data/yoloGtold1/train/6185.png +../../data/yoloGtold1/train/6186.png +../../data/yoloGtold1/train/6187.png +../../data/yoloGtold1/train/6188.png +../../data/yoloGtold1/train/6189.png +../../data/yoloGtold1/train/6190.png +../../data/yoloGtold1/train/6191.png +../../data/yoloGtold1/train/6192.png +../../data/yoloGtold1/train/6193.png +../../data/yoloGtold1/train/6194.png +../../data/yoloGtold1/train/6195.png +../../data/yoloGtold1/train/6196.png +../../data/yoloGtold1/train/6197.png +../../data/yoloGtold1/train/6198.png +../../data/yoloGtold1/train/6199.png +../../data/yoloGtold1/train/6200.png +../../data/yoloGtold1/train/6201.png +../../data/yoloGtold1/train/6202.png +../../data/yoloGtold1/train/6203.png +../../data/yoloGtold1/train/6204.png +../../data/yoloGtold1/train/6205.png +../../data/yoloGtold1/train/6206.png +../../data/yoloGtold1/train/6207.png +../../data/yoloGtold1/train/6208.png +../../data/yoloGtold1/train/6209.png +../../data/yoloGtold1/train/6210.png +../../data/yoloGtold1/train/6211.png +../../data/yoloGtold1/train/6212.png +../../data/yoloGtold1/train/6213.png +../../data/yoloGtold1/train/6214.png +../../data/yoloGtold1/train/6215.png +../../data/yoloGtold1/train/6216.png +../../data/yoloGtold1/train/6217.png +../../data/yoloGtold1/train/6218.png +../../data/yoloGtold1/train/6219.png +../../data/yoloGtold1/train/6220.png +../../data/yoloGtold1/train/6221.png +../../data/yoloGtold1/train/6222.png +../../data/yoloGtold1/train/6223.png +../../data/yoloGtold1/train/6224.png +../../data/yoloGtold1/train/6225.png +../../data/yoloGtold1/train/6226.png +../../data/yoloGtold1/train/6227.png +../../data/yoloGtold1/train/6228.png +../../data/yoloGtold1/train/6229.png +../../data/yoloGtold1/train/6230.png +../../data/yoloGtold1/train/6231.png +../../data/yoloGtold1/train/6232.png +../../data/yoloGtold1/train/6233.png +../../data/yoloGtold1/train/6234.png +../../data/yoloGtold1/train/6235.png +../../data/yoloGtold1/train/6236.png +../../data/yoloGtold1/train/6237.png +../../data/yoloGtold1/train/6238.png +../../data/yoloGtold1/train/6239.png +../../data/yoloGtold1/train/6240.png +../../data/yoloGtold1/train/6241.png +../../data/yoloGtold1/train/6242.png +../../data/yoloGtold1/train/6243.png +../../data/yoloGtold1/train/6244.png +../../data/yoloGtold1/train/6245.png +../../data/yoloGtold1/train/6246.png +../../data/yoloGtold1/train/6247.png +../../data/yoloGtold1/train/6248.png +../../data/yoloGtold1/train/6249.png +../../data/yoloGtold1/train/6250.png +../../data/yoloGtold1/train/6251.png +../../data/yoloGtold1/train/6252.png +../../data/yoloGtold1/train/6253.png +../../data/yoloGtold1/train/6254.png +../../data/yoloGtold1/train/6255.png +../../data/yoloGtold1/train/6256.png +../../data/yoloGtold1/train/6257.png +../../data/yoloGtold1/train/6258.png +../../data/yoloGtold1/train/6259.png +../../data/yoloGtold1/train/6260.png +../../data/yoloGtold1/train/6261.png +../../data/yoloGtold1/train/6262.png +../../data/yoloGtold1/train/6263.png +../../data/yoloGtold1/train/6264.png +../../data/yoloGtold1/train/6265.png +../../data/yoloGtold1/train/6266.png +../../data/yoloGtold1/train/6267.png +../../data/yoloGtold1/train/6268.png +../../data/yoloGtold1/train/6269.png +../../data/yoloGtold1/train/6270.png +../../data/yoloGtold1/train/6271.png +../../data/yoloGtold1/train/6272.png +../../data/yoloGtold1/train/6273.png +../../data/yoloGtold1/train/6274.png +../../data/yoloGtold1/train/6275.png +../../data/yoloGtold1/train/6276.png +../../data/yoloGtold1/train/6277.png +../../data/yoloGtold1/train/6278.png +../../data/yoloGtold1/train/6279.png +../../data/yoloGtold1/train/6280.png +../../data/yoloGtold1/train/6281.png +../../data/yoloGtold1/train/6282.png +../../data/yoloGtold1/train/6283.png +../../data/yoloGtold1/train/6284.png +../../data/yoloGtold1/train/6285.png +../../data/yoloGtold1/train/6286.png +../../data/yoloGtold1/train/6287.png +../../data/yoloGtold1/train/6288.png +../../data/yoloGtold1/train/6289.png +../../data/yoloGtold1/train/6290.png +../../data/yoloGtold1/train/6291.png +../../data/yoloGtold1/train/6292.png +../../data/yoloGtold1/train/6293.png +../../data/yoloGtold1/train/6294.png +../../data/yoloGtold1/train/6295.png +../../data/yoloGtold1/train/6296.png +../../data/yoloGtold1/train/6297.png +../../data/yoloGtold1/train/6298.png +../../data/yoloGtold1/train/6299.png +../../data/yoloGtold1/train/6300.png +../../data/yoloGtold1/train/6301.png +../../data/yoloGtold1/train/6302.png +../../data/yoloGtold1/train/6303.png +../../data/yoloGtold1/train/6304.png +../../data/yoloGtold1/train/6305.png +../../data/yoloGtold1/train/6306.png +../../data/yoloGtold1/train/6307.png +../../data/yoloGtold1/train/6308.png +../../data/yoloGtold1/train/6309.png +../../data/yoloGtold1/train/6310.png +../../data/yoloGtold1/train/6311.png +../../data/yoloGtold1/train/6312.png +../../data/yoloGtold1/train/6313.png +../../data/yoloGtold1/train/6314.png +../../data/yoloGtold1/train/6315.png +../../data/yoloGtold1/train/6316.png +../../data/yoloGtold1/train/6317.png +../../data/yoloGtold1/train/6318.png +../../data/yoloGtold1/train/6319.png +../../data/yoloGtold1/train/6320.png +../../data/yoloGtold1/train/6321.png +../../data/yoloGtold1/train/6322.png +../../data/yoloGtold1/train/6323.png +../../data/yoloGtold1/train/6324.png +../../data/yoloGtold1/train/6325.png +../../data/yoloGtold1/train/6326.png +../../data/yoloGtold1/train/6327.png +../../data/yoloGtold1/train/6328.png +../../data/yoloGtold1/train/6329.png +../../data/yoloGtold1/train/6330.png +../../data/yoloGtold1/train/6331.png +../../data/yoloGtold1/train/6332.png +../../data/yoloGtold1/train/6333.png +../../data/yoloGtold1/train/6334.png +../../data/yoloGtold1/train/6335.png +../../data/yoloGtold1/train/6336.png +../../data/yoloGtold1/train/6337.png +../../data/yoloGtold1/train/6338.png +../../data/yoloGtold1/train/6339.png +../../data/yoloGtold1/train/6340.png +../../data/yoloGtold1/train/6341.png +../../data/yoloGtold1/train/6342.png +../../data/yoloGtold1/train/6343.png +../../data/yoloGtold1/train/6344.png +../../data/yoloGtold1/train/6345.png +../../data/yoloGtold1/train/6346.png +../../data/yoloGtold1/train/6347.png +../../data/yoloGtold1/train/6348.png +../../data/yoloGtold1/train/6349.png +../../data/yoloGtold1/train/6350.png +../../data/yoloGtold1/train/6351.png +../../data/yoloGtold1/train/6352.png +../../data/yoloGtold1/train/6353.png +../../data/yoloGtold1/train/6354.png +../../data/yoloGtold1/train/6355.png +../../data/yoloGtold1/train/6356.png +../../data/yoloGtold1/train/6357.png +../../data/yoloGtold1/train/6358.png +../../data/yoloGtold1/train/6359.png +../../data/yoloGtold1/train/6360.png +../../data/yoloGtold1/train/6361.png +../../data/yoloGtold1/train/6362.png +../../data/yoloGtold1/train/6363.png +../../data/yoloGtold1/train/6364.png +../../data/yoloGtold1/train/6365.png +../../data/yoloGtold1/train/6366.png +../../data/yoloGtold1/train/6367.png +../../data/yoloGtold1/train/6368.png +../../data/yoloGtold1/train/6369.png +../../data/yoloGtold1/train/6370.png +../../data/yoloGtold1/train/6371.png +../../data/yoloGtold1/train/6372.png +../../data/yoloGtold1/train/6373.png +../../data/yoloGtold1/train/6374.png +../../data/yoloGtold1/train/6375.png +../../data/yoloGtold1/train/6376.png +../../data/yoloGtold1/train/6377.png +../../data/yoloGtold1/train/6378.png +../../data/yoloGtold1/train/6379.png +../../data/yoloGtold1/train/6380.png +../../data/yoloGtold1/train/6381.png +../../data/yoloGtold1/train/6382.png +../../data/yoloGtold1/train/6383.png +../../data/yoloGtold1/train/6384.png +../../data/yoloGtold1/train/6385.png +../../data/yoloGtold1/train/6386.png +../../data/yoloGtold1/train/6387.png +../../data/yoloGtold1/train/6388.png +../../data/yoloGtold1/train/6389.png +../../data/yoloGtold1/train/6390.png +../../data/yoloGtold1/train/6391.png +../../data/yoloGtold1/train/6392.png +../../data/yoloGtold1/train/6393.png +../../data/yoloGtold1/train/6394.png +../../data/yoloGtold1/train/6395.png +../../data/yoloGtold1/train/6396.png +../../data/yoloGtold1/train/6397.png +../../data/yoloGtold1/train/6398.png +../../data/yoloGtold1/train/6399.png +../../data/yoloGtold1/train/6400.png +../../data/yoloGtold1/train/6401.png +../../data/yoloGtold1/train/6402.png +../../data/yoloGtold1/train/6403.png +../../data/yoloGtold1/train/6404.png +../../data/yoloGtold1/train/6405.png +../../data/yoloGtold1/train/6406.png +../../data/yoloGtold1/train/6407.png +../../data/yoloGtold1/train/6408.png +../../data/yoloGtold1/train/6409.png +../../data/yoloGtold1/train/6410.png +../../data/yoloGtold1/train/6411.png +../../data/yoloGtold1/train/6412.png +../../data/yoloGtold1/train/6413.png +../../data/yoloGtold1/train/6414.png +../../data/yoloGtold1/train/6415.png +../../data/yoloGtold1/train/6416.png +../../data/yoloGtold1/train/6417.png +../../data/yoloGtold1/train/6418.png +../../data/yoloGtold1/train/6419.png +../../data/yoloGtold1/train/6420.png +../../data/yoloGtold1/train/6421.png +../../data/yoloGtold1/train/6422.png +../../data/yoloGtold1/train/6423.png +../../data/yoloGtold1/train/6424.png +../../data/yoloGtold1/train/6425.png +../../data/yoloGtold1/train/6426.png +../../data/yoloGtold1/train/6427.png +../../data/yoloGtold1/train/6428.png +../../data/yoloGtold1/train/6429.png +../../data/yoloGtold1/train/6430.png +../../data/yoloGtold1/train/6431.png +../../data/yoloGtold1/train/6432.png +../../data/yoloGtold1/train/6433.png +../../data/yoloGtold1/train/6434.png +../../data/yoloGtold1/train/6435.png +../../data/yoloGtold1/train/6436.png +../../data/yoloGtold1/train/6437.png +../../data/yoloGtold1/train/6438.png +../../data/yoloGtold1/train/6439.png +../../data/yoloGtold1/train/6440.png +../../data/yoloGtold1/train/6441.png +../../data/yoloGtold1/train/6442.png +../../data/yoloGtold1/train/6443.png +../../data/yoloGtold1/train/6444.png +../../data/yoloGtold1/train/6445.png +../../data/yoloGtold1/train/6446.png +../../data/yoloGtold1/train/6447.png +../../data/yoloGtold1/train/6448.png +../../data/yoloGtold1/train/6449.png +../../data/yoloGtold1/train/6450.png +../../data/yoloGtold1/train/6451.png +../../data/yoloGtold1/train/6452.png +../../data/yoloGtold1/train/6453.png +../../data/yoloGtold1/train/6454.png +../../data/yoloGtold1/train/6455.png +../../data/yoloGtold1/train/6456.png +../../data/yoloGtold1/train/6457.png +../../data/yoloGtold1/train/6458.png +../../data/yoloGtold1/train/6459.png +../../data/yoloGtold1/train/6460.png +../../data/yoloGtold1/train/6461.png +../../data/yoloGtold1/train/6462.png +../../data/yoloGtold1/train/6463.png +../../data/yoloGtold1/train/6464.png +../../data/yoloGtold1/train/6465.png +../../data/yoloGtold1/train/6466.png +../../data/yoloGtold1/train/6467.png +../../data/yoloGtold1/train/6468.png +../../data/yoloGtold1/train/6469.png +../../data/yoloGtold1/train/6470.png +../../data/yoloGtold1/train/6471.png +../../data/yoloGtold1/train/6472.png +../../data/yoloGtold1/train/6473.png +../../data/yoloGtold1/train/6474.png +../../data/yoloGtold1/train/6475.png +../../data/yoloGtold1/train/6476.png +../../data/yoloGtold1/train/6477.png +../../data/yoloGtold1/train/6478.png +../../data/yoloGtold1/train/6479.png +../../data/yoloGtold1/train/6480.png +../../data/yoloGtold1/train/6481.png +../../data/yoloGtold1/train/6482.png +../../data/yoloGtold1/train/6483.png +../../data/yoloGtold1/train/6484.png +../../data/yoloGtold1/train/6485.png +../../data/yoloGtold1/train/6486.png +../../data/yoloGtold1/train/6487.png +../../data/yoloGtold1/train/6488.png +../../data/yoloGtold1/train/6489.png +../../data/yoloGtold1/train/6490.png +../../data/yoloGtold1/train/6491.png +../../data/yoloGtold1/train/6492.png +../../data/yoloGtold1/train/6493.png +../../data/yoloGtold1/train/6494.png +../../data/yoloGtold1/train/6495.png +../../data/yoloGtold1/train/6496.png +../../data/yoloGtold1/train/6497.png +../../data/yoloGtold1/train/6498.png +../../data/yoloGtold1/train/6499.png +../../data/yoloGtold1/train/6500.png +../../data/yoloGtold1/train/6501.png +../../data/yoloGtold1/train/6502.png +../../data/yoloGtold1/train/6503.png +../../data/yoloGtold1/train/6504.png +../../data/yoloGtold1/train/6505.png +../../data/yoloGtold1/train/6506.png +../../data/yoloGtold1/train/6507.png +../../data/yoloGtold1/train/6508.png +../../data/yoloGtold1/train/6509.png +../../data/yoloGtold1/train/6510.png +../../data/yoloGtold1/train/6511.png +../../data/yoloGtold1/train/6512.png +../../data/yoloGtold1/train/6513.png +../../data/yoloGtold1/train/6514.png +../../data/yoloGtold1/train/6515.png +../../data/yoloGtold1/train/6516.png +../../data/yoloGtold1/train/6517.png +../../data/yoloGtold1/train/6518.png +../../data/yoloGtold1/train/6519.png +../../data/yoloGtold1/train/6520.png +../../data/yoloGtold1/train/6521.png +../../data/yoloGtold1/train/6522.png +../../data/yoloGtold1/train/6523.png +../../data/yoloGtold1/train/6524.png +../../data/yoloGtold1/train/6525.png +../../data/yoloGtold1/train/6526.png +../../data/yoloGtold1/train/6527.png +../../data/yoloGtold1/train/6528.png +../../data/yoloGtold1/train/6529.png +../../data/yoloGtold1/train/6530.png +../../data/yoloGtold1/train/6531.png +../../data/yoloGtold1/train/6532.png +../../data/yoloGtold1/train/6533.png +../../data/yoloGtold1/train/6534.png +../../data/yoloGtold1/train/6535.png +../../data/yoloGtold1/train/6536.png +../../data/yoloGtold1/train/6537.png +../../data/yoloGtold1/train/6538.png +../../data/yoloGtold1/train/6539.png +../../data/yoloGtold1/train/6540.png +../../data/yoloGtold1/train/6541.png +../../data/yoloGtold1/train/6542.png +../../data/yoloGtold1/train/6543.png +../../data/yoloGtold1/train/6544.png +../../data/yoloGtold1/train/6545.png +../../data/yoloGtold1/train/6546.png +../../data/yoloGtold1/train/6547.png +../../data/yoloGtold1/train/6548.png +../../data/yoloGtold1/train/6549.png +../../data/yoloGtold1/train/6550.png +../../data/yoloGtold1/train/6551.png +../../data/yoloGtold1/train/6552.png +../../data/yoloGtold1/train/6553.png +../../data/yoloGtold1/train/6554.png +../../data/yoloGtold1/train/6555.png +../../data/yoloGtold1/train/6556.png +../../data/yoloGtold1/train/6557.png +../../data/yoloGtold1/train/6558.png +../../data/yoloGtold1/train/6559.png +../../data/yoloGtold1/train/6560.png +../../data/yoloGtold1/train/6561.png +../../data/yoloGtold1/train/6562.png +../../data/yoloGtold1/train/6563.png +../../data/yoloGtold1/train/6564.png +../../data/yoloGtold1/train/6565.png +../../data/yoloGtold1/train/6566.png +../../data/yoloGtold1/train/6567.png +../../data/yoloGtold1/train/6568.png +../../data/yoloGtold1/train/6569.png +../../data/yoloGtold1/train/6570.png +../../data/yoloGtold1/train/6571.png +../../data/yoloGtold1/train/6572.png +../../data/yoloGtold1/train/6573.png +../../data/yoloGtold1/train/6574.png +../../data/yoloGtold1/train/6575.png +../../data/yoloGtold1/train/6576.png +../../data/yoloGtold1/train/6577.png +../../data/yoloGtold1/train/6578.png +../../data/yoloGtold1/train/6579.png +../../data/yoloGtold1/train/6580.png +../../data/yoloGtold1/train/6581.png +../../data/yoloGtold1/train/6582.png +../../data/yoloGtold1/train/6583.png +../../data/yoloGtold1/train/6584.png +../../data/yoloGtold1/train/6585.png +../../data/yoloGtold1/train/6586.png +../../data/yoloGtold1/train/6587.png +../../data/yoloGtold1/train/6588.png +../../data/yoloGtold1/train/6589.png +../../data/yoloGtold1/train/6590.png +../../data/yoloGtold1/train/6591.png +../../data/yoloGtold1/train/6592.png +../../data/yoloGtold1/train/6593.png +../../data/yoloGtold1/train/6594.png +../../data/yoloGtold1/train/6595.png +../../data/yoloGtold1/train/6596.png +../../data/yoloGtold1/train/6597.png +../../data/yoloGtold1/train/6598.png +../../data/yoloGtold1/train/6599.png +../../data/yoloGtold1/train/6600.png +../../data/yoloGtold1/train/6601.png +../../data/yoloGtold1/train/6602.png +../../data/yoloGtold1/train/6603.png +../../data/yoloGtold1/train/6604.png +../../data/yoloGtold1/train/6605.png +../../data/yoloGtold1/train/6606.png +../../data/yoloGtold1/train/6607.png +../../data/yoloGtold1/train/6608.png +../../data/yoloGtold1/train/6609.png +../../data/yoloGtold1/train/6610.png +../../data/yoloGtold1/train/6611.png +../../data/yoloGtold1/train/6612.png +../../data/yoloGtold1/train/6613.png +../../data/yoloGtold1/train/6614.png +../../data/yoloGtold1/train/6615.png +../../data/yoloGtold1/train/6616.png +../../data/yoloGtold1/train/6617.png +../../data/yoloGtold1/train/6618.png +../../data/yoloGtold1/train/6619.png +../../data/yoloGtold1/train/6620.png +../../data/yoloGtold1/train/6621.png +../../data/yoloGtold1/train/6622.png +../../data/yoloGtold1/train/6623.png +../../data/yoloGtold1/train/6624.png +../../data/yoloGtold1/train/6625.png +../../data/yoloGtold1/train/6626.png +../../data/yoloGtold1/train/6627.png +../../data/yoloGtold1/train/6628.png +../../data/yoloGtold1/train/6629.png +../../data/yoloGtold1/train/6630.png +../../data/yoloGtold1/train/6631.png +../../data/yoloGtold1/train/6632.png +../../data/yoloGtold1/train/6633.png +../../data/yoloGtold1/train/6634.png +../../data/yoloGtold1/train/6635.png +../../data/yoloGtold1/train/6636.png +../../data/yoloGtold1/train/6637.png +../../data/yoloGtold1/train/6638.png +../../data/yoloGtold1/train/6639.png +../../data/yoloGtold1/train/6640.png +../../data/yoloGtold1/train/6641.png +../../data/yoloGtold1/train/6642.png +../../data/yoloGtold1/train/6643.png +../../data/yoloGtold1/train/6644.png +../../data/yoloGtold1/train/6645.png +../../data/yoloGtold1/train/6646.png +../../data/yoloGtold1/train/6647.png +../../data/yoloGtold1/train/6648.png +../../data/yoloGtold1/train/6649.png +../../data/yoloGtold1/train/6650.png +../../data/yoloGtold1/train/6651.png +../../data/yoloGtold1/train/6652.png +../../data/yoloGtold1/train/6653.png +../../data/yoloGtold1/train/6654.png +../../data/yoloGtold1/train/6655.png +../../data/yoloGtold1/train/6656.png +../../data/yoloGtold1/train/6657.png +../../data/yoloGtold1/train/6658.png +../../data/yoloGtold1/train/6659.png +../../data/yoloGtold1/train/6660.png +../../data/yoloGtold1/train/6661.png +../../data/yoloGtold1/train/6662.png +../../data/yoloGtold1/train/6663.png +../../data/yoloGtold1/train/6664.png +../../data/yoloGtold1/train/6665.png +../../data/yoloGtold1/train/6666.png +../../data/yoloGtold1/train/6667.png +../../data/yoloGtold1/train/6668.png +../../data/yoloGtold1/train/6669.png +../../data/yoloGtold1/train/6670.png +../../data/yoloGtold1/train/6671.png +../../data/yoloGtold1/train/6672.png +../../data/yoloGtold1/train/6673.png +../../data/yoloGtold1/train/6674.png +../../data/yoloGtold1/train/6675.png +../../data/yoloGtold1/train/6676.png +../../data/yoloGtold1/train/6677.png +../../data/yoloGtold1/train/6678.png +../../data/yoloGtold1/train/6679.png +../../data/yoloGtold1/train/6680.png +../../data/yoloGtold1/train/6681.png +../../data/yoloGtold1/train/6682.png +../../data/yoloGtold1/train/6683.png +../../data/yoloGtold1/train/6684.png +../../data/yoloGtold1/train/6685.png +../../data/yoloGtold1/train/6686.png +../../data/yoloGtold1/train/6687.png +../../data/yoloGtold1/train/6688.png +../../data/yoloGtold1/train/6689.png +../../data/yoloGtold1/train/6690.png +../../data/yoloGtold1/train/6691.png +../../data/yoloGtold1/train/6692.png +../../data/yoloGtold1/train/6693.png +../../data/yoloGtold1/train/6694.png +../../data/yoloGtold1/train/6695.png +../../data/yoloGtold1/train/6696.png +../../data/yoloGtold1/train/6697.png +../../data/yoloGtold1/train/6698.png +../../data/yoloGtold1/train/6699.png +../../data/yoloGtold1/train/6700.png +../../data/yoloGtold1/train/6701.png +../../data/yoloGtold1/train/6702.png +../../data/yoloGtold1/train/6703.png +../../data/yoloGtold1/train/6704.png +../../data/yoloGtold1/train/6705.png +../../data/yoloGtold1/train/6706.png +../../data/yoloGtold1/train/6707.png +../../data/yoloGtold1/train/6708.png +../../data/yoloGtold1/train/6709.png +../../data/yoloGtold1/train/6710.png +../../data/yoloGtold1/train/6711.png +../../data/yoloGtold1/train/6712.png +../../data/yoloGtold1/train/6713.png +../../data/yoloGtold1/train/6714.png +../../data/yoloGtold1/train/6715.png +../../data/yoloGtold1/train/6716.png +../../data/yoloGtold1/train/6717.png +../../data/yoloGtold1/train/6718.png +../../data/yoloGtold1/train/6719.png +../../data/yoloGtold1/train/6720.png +../../data/yoloGtold1/train/6721.png +../../data/yoloGtold1/train/6722.png +../../data/yoloGtold1/train/6723.png +../../data/yoloGtold1/train/6724.png +../../data/yoloGtold1/train/6725.png +../../data/yoloGtold1/train/6726.png +../../data/yoloGtold1/train/6727.png +../../data/yoloGtold1/train/6728.png +../../data/yoloGtold1/train/6729.png +../../data/yoloGtold1/train/6730.png +../../data/yoloGtold1/train/6731.png +../../data/yoloGtold1/train/6732.png +../../data/yoloGtold1/train/6733.png +../../data/yoloGtold1/train/6734.png +../../data/yoloGtold1/train/6735.png +../../data/yoloGtold1/train/6736.png +../../data/yoloGtold1/train/6737.png +../../data/yoloGtold1/train/6738.png +../../data/yoloGtold1/train/6739.png +../../data/yoloGtold1/train/6740.png +../../data/yoloGtold1/train/6741.png +../../data/yoloGtold1/train/6742.png +../../data/yoloGtold1/train/6743.png +../../data/yoloGtold1/train/6744.png +../../data/yoloGtold1/train/6745.png +../../data/yoloGtold1/train/6746.png +../../data/yoloGtold1/train/6747.png +../../data/yoloGtold1/train/6748.png +../../data/yoloGtold1/train/6749.png +../../data/yoloGtold1/train/6750.png +../../data/yoloGtold1/train/6751.png +../../data/yoloGtold1/train/6752.png +../../data/yoloGtold1/train/6753.png +../../data/yoloGtold1/train/6754.png +../../data/yoloGtold1/train/6755.png +../../data/yoloGtold1/train/6756.png +../../data/yoloGtold1/train/6757.png +../../data/yoloGtold1/train/6758.png +../../data/yoloGtold1/train/6759.png +../../data/yoloGtold1/train/6760.png +../../data/yoloGtold1/train/6761.png +../../data/yoloGtold1/train/6762.png +../../data/yoloGtold1/train/6763.png +../../data/yoloGtold1/train/6764.png +../../data/yoloGtold1/train/6765.png +../../data/yoloGtold1/train/6766.png +../../data/yoloGtold1/train/6767.png +../../data/yoloGtold1/train/6768.png +../../data/yoloGtold1/train/6769.png +../../data/yoloGtold1/train/6770.png +../../data/yoloGtold1/train/6771.png +../../data/yoloGtold1/train/6772.png +../../data/yoloGtold1/train/6773.png +../../data/yoloGtold1/train/6774.png +../../data/yoloGtold1/train/6775.png +../../data/yoloGtold1/train/6776.png +../../data/yoloGtold1/train/6777.png +../../data/yoloGtold1/train/6778.png +../../data/yoloGtold1/train/6779.png +../../data/yoloGtold1/train/6780.png +../../data/yoloGtold1/train/6781.png +../../data/yoloGtold1/train/6782.png +../../data/yoloGtold1/train/6783.png +../../data/yoloGtold1/train/6784.png +../../data/yoloGtold1/train/6785.png +../../data/yoloGtold1/train/6786.png +../../data/yoloGtold1/train/6787.png +../../data/yoloGtold1/train/6788.png +../../data/yoloGtold1/train/6789.png +../../data/yoloGtold1/train/6790.png +../../data/yoloGtold1/train/6791.png +../../data/yoloGtold1/train/6792.png +../../data/yoloGtold1/train/6793.png +../../data/yoloGtold1/train/6794.png +../../data/yoloGtold1/train/6795.png +../../data/yoloGtold1/train/6796.png +../../data/yoloGtold1/train/6797.png +../../data/yoloGtold1/train/6798.png +../../data/yoloGtold1/train/6799.png +../../data/yoloGtold1/train/6800.png +../../data/yoloGtold1/train/6801.png +../../data/yoloGtold1/train/6802.png +../../data/yoloGtold1/train/6803.png +../../data/yoloGtold1/train/6804.png +../../data/yoloGtold1/train/6805.png +../../data/yoloGtold1/train/6806.png +../../data/yoloGtold1/train/6807.png +../../data/yoloGtold1/train/6808.png +../../data/yoloGtold1/train/6809.png +../../data/yoloGtold1/train/6810.png +../../data/yoloGtold1/train/6811.png +../../data/yoloGtold1/train/6812.png +../../data/yoloGtold1/train/6813.png +../../data/yoloGtold1/train/6814.png +../../data/yoloGtold1/train/6815.png +../../data/yoloGtold1/train/6816.png +../../data/yoloGtold1/train/6817.png +../../data/yoloGtold1/train/6818.png +../../data/yoloGtold1/train/6819.png +../../data/yoloGtold1/train/6820.png +../../data/yoloGtold1/train/6821.png +../../data/yoloGtold1/train/6822.png +../../data/yoloGtold1/train/6823.png +../../data/yoloGtold1/train/6824.png +../../data/yoloGtold1/train/6825.png +../../data/yoloGtold1/train/6826.png +../../data/yoloGtold1/train/6827.png +../../data/yoloGtold1/train/6828.png +../../data/yoloGtold1/train/6829.png +../../data/yoloGtold1/train/6830.png +../../data/yoloGtold1/train/6831.png +../../data/yoloGtold1/train/6832.png +../../data/yoloGtold1/train/6833.png +../../data/yoloGtold1/train/6834.png +../../data/yoloGtold1/train/6835.png +../../data/yoloGtold1/train/6836.png +../../data/yoloGtold1/train/6837.png +../../data/yoloGtold1/train/6838.png +../../data/yoloGtold1/train/6839.png +../../data/yoloGtold1/train/6840.png +../../data/yoloGtold1/train/6841.png +../../data/yoloGtold1/train/6842.png +../../data/yoloGtold1/train/6843.png +../../data/yoloGtold1/train/6844.png +../../data/yoloGtold1/train/6845.png +../../data/yoloGtold1/train/6846.png +../../data/yoloGtold1/train/6847.png +../../data/yoloGtold1/train/6848.png +../../data/yoloGtold1/train/6849.png +../../data/yoloGtold1/train/6850.png +../../data/yoloGtold1/train/6851.png +../../data/yoloGtold1/train/6852.png +../../data/yoloGtold1/train/6853.png +../../data/yoloGtold1/train/6854.png +../../data/yoloGtold1/train/6855.png +../../data/yoloGtold1/train/6856.png +../../data/yoloGtold1/train/6857.png +../../data/yoloGtold1/train/6858.png +../../data/yoloGtold1/train/6859.png +../../data/yoloGtold1/train/6860.png +../../data/yoloGtold1/train/6861.png +../../data/yoloGtold1/train/6862.png +../../data/yoloGtold1/train/6863.png +../../data/yoloGtold1/train/6864.png +../../data/yoloGtold1/train/6865.png +../../data/yoloGtold1/train/6866.png +../../data/yoloGtold1/train/6867.png +../../data/yoloGtold1/train/6868.png +../../data/yoloGtold1/train/6869.png +../../data/yoloGtold1/train/6870.png +../../data/yoloGtold1/train/6871.png +../../data/yoloGtold1/train/6872.png +../../data/yoloGtold1/train/6873.png +../../data/yoloGtold1/train/6874.png +../../data/yoloGtold1/train/6875.png +../../data/yoloGtold1/train/6876.png +../../data/yoloGtold1/train/6877.png +../../data/yoloGtold1/train/6878.png +../../data/yoloGtold1/train/6879.png +../../data/yoloGtold1/train/6880.png +../../data/yoloGtold1/train/6881.png +../../data/yoloGtold1/train/6882.png +../../data/yoloGtold1/train/6883.png +../../data/yoloGtold1/train/6884.png +../../data/yoloGtold1/train/6885.png +../../data/yoloGtold1/train/6886.png +../../data/yoloGtold1/train/6887.png +../../data/yoloGtold1/train/6888.png +../../data/yoloGtold1/train/6889.png +../../data/yoloGtold1/train/6890.png +../../data/yoloGtold1/train/6891.png +../../data/yoloGtold1/train/6892.png +../../data/yoloGtold1/train/6893.png +../../data/yoloGtold1/train/6894.png +../../data/yoloGtold1/train/6895.png +../../data/yoloGtold1/train/6896.png +../../data/yoloGtold1/train/6897.png +../../data/yoloGtold1/train/6898.png +../../data/yoloGtold1/train/6899.png +../../data/yoloGtold1/train/6900.png +../../data/yoloGtold1/train/6901.png +../../data/yoloGtold1/train/6902.png +../../data/yoloGtold1/train/6903.png +../../data/yoloGtold1/train/6904.png +../../data/yoloGtold1/train/6905.png +../../data/yoloGtold1/train/6906.png +../../data/yoloGtold1/train/6907.png +../../data/yoloGtold1/train/6908.png +../../data/yoloGtold1/train/6909.png +../../data/yoloGtold1/train/6910.png +../../data/yoloGtold1/train/6911.png +../../data/yoloGtold1/train/6912.png +../../data/yoloGtold1/train/6913.png +../../data/yoloGtold1/train/6914.png +../../data/yoloGtold1/train/6915.png +../../data/yoloGtold1/train/6916.png +../../data/yoloGtold1/train/6917.png +../../data/yoloGtold1/train/6918.png +../../data/yoloGtold1/train/6919.png +../../data/yoloGtold1/train/6920.png +../../data/yoloGtold1/train/6921.png +../../data/yoloGtold1/train/6922.png +../../data/yoloGtold1/train/6923.png +../../data/yoloGtold1/train/6924.png +../../data/yoloGtold1/train/6925.png +../../data/yoloGtold1/train/6926.png +../../data/yoloGtold1/train/6927.png +../../data/yoloGtold1/train/6928.png +../../data/yoloGtold1/train/6929.png +../../data/yoloGtold1/train/6930.png +../../data/yoloGtold1/train/6931.png +../../data/yoloGtold1/train/6932.png +../../data/yoloGtold1/train/6933.png +../../data/yoloGtold1/train/6934.png +../../data/yoloGtold1/train/6935.png +../../data/yoloGtold1/train/6936.png +../../data/yoloGtold1/train/6937.png +../../data/yoloGtold1/train/6938.png +../../data/yoloGtold1/train/6939.png +../../data/yoloGtold1/train/6940.png +../../data/yoloGtold1/train/6941.png +../../data/yoloGtold1/train/6942.png +../../data/yoloGtold1/train/6943.png +../../data/yoloGtold1/train/6944.png +../../data/yoloGtold1/train/6945.png +../../data/yoloGtold1/train/6946.png +../../data/yoloGtold1/train/6947.png +../../data/yoloGtold1/train/6948.png +../../data/yoloGtold1/train/6949.png +../../data/yoloGtold1/train/6950.png +../../data/yoloGtold1/train/6951.png +../../data/yoloGtold1/train/6952.png +../../data/yoloGtold1/train/6953.png +../../data/yoloGtold1/train/6954.png +../../data/yoloGtold1/train/6955.png +../../data/yoloGtold1/train/6956.png +../../data/yoloGtold1/train/6957.png +../../data/yoloGtold1/train/6958.png +../../data/yoloGtold1/train/6959.png +../../data/yoloGtold1/train/6960.png +../../data/yoloGtold1/train/6961.png +../../data/yoloGtold1/train/6962.png +../../data/yoloGtold1/train/6963.png +../../data/yoloGtold1/train/6964.png +../../data/yoloGtold1/train/6965.png +../../data/yoloGtold1/train/6966.png +../../data/yoloGtold1/train/6967.png +../../data/yoloGtold1/train/6968.png +../../data/yoloGtold1/train/6969.png +../../data/yoloGtold1/train/6970.png +../../data/yoloGtold1/train/6971.png +../../data/yoloGtold1/train/6972.png +../../data/yoloGtold1/train/6973.png +../../data/yoloGtold1/train/6974.png +../../data/yoloGtold1/train/6975.png +../../data/yoloGtold1/train/6976.png +../../data/yoloGtold1/train/6977.png +../../data/yoloGtold1/train/6978.png +../../data/yoloGtold1/train/6979.png +../../data/yoloGtold1/train/6980.png +../../data/yoloGtold1/train/6981.png +../../data/yoloGtold1/train/6982.png +../../data/yoloGtold1/train/6983.png +../../data/yoloGtold1/train/6984.png +../../data/yoloGtold1/train/6985.png +../../data/yoloGtold1/train/6986.png +../../data/yoloGtold1/train/6987.png +../../data/yoloGtold1/train/6988.png +../../data/yoloGtold1/train/6989.png +../../data/yoloGtold1/train/6990.png +../../data/yoloGtold1/train/6991.png +../../data/yoloGtold1/train/6992.png +../../data/yoloGtold1/train/6993.png +../../data/yoloGtold1/train/6994.png +../../data/yoloGtold1/train/6995.png +../../data/yoloGtold1/train/6996.png +../../data/yoloGtold1/train/6997.png +../../data/yoloGtold1/train/6998.png +../../data/yoloGtold1/train/6999.png +../../data/yoloGtold1/train/7000.png +../../data/yoloGtold1/train/7001.png +../../data/yoloGtold1/train/7002.png +../../data/yoloGtold1/train/7003.png +../../data/yoloGtold1/train/7004.png +../../data/yoloGtold1/train/7005.png +../../data/yoloGtold1/train/7006.png +../../data/yoloGtold1/train/7007.png +../../data/yoloGtold1/train/7008.png +../../data/yoloGtold1/train/7009.png +../../data/yoloGtold1/train/7010.png +../../data/yoloGtold1/train/7011.png +../../data/yoloGtold1/train/7012.png +../../data/yoloGtold1/train/7013.png +../../data/yoloGtold1/train/7014.png +../../data/yoloGtold1/train/7015.png +../../data/yoloGtold1/train/7016.png +../../data/yoloGtold1/train/7017.png +../../data/yoloGtold1/train/7018.png +../../data/yoloGtold1/train/7019.png +../../data/yoloGtold1/train/7020.png +../../data/yoloGtold1/train/7021.png +../../data/yoloGtold1/train/7022.png +../../data/yoloGtold1/train/7023.png +../../data/yoloGtold1/train/7024.png +../../data/yoloGtold1/train/7025.png +../../data/yoloGtold1/train/7026.png +../../data/yoloGtold1/train/7027.png +../../data/yoloGtold1/train/7028.png +../../data/yoloGtold1/train/7029.png +../../data/yoloGtold1/train/7030.png +../../data/yoloGtold1/train/7031.png +../../data/yoloGtold1/train/7032.png +../../data/yoloGtold1/train/7033.png +../../data/yoloGtold1/train/7034.png +../../data/yoloGtold1/train/7035.png +../../data/yoloGtold1/train/7036.png +../../data/yoloGtold1/train/7037.png +../../data/yoloGtold1/train/7038.png +../../data/yoloGtold1/train/7039.png +../../data/yoloGtold1/train/7040.png +../../data/yoloGtold1/train/7041.png +../../data/yoloGtold1/train/7042.png +../../data/yoloGtold1/train/7043.png +../../data/yoloGtold1/train/7044.png +../../data/yoloGtold1/train/7045.png +../../data/yoloGtold1/train/7046.png +../../data/yoloGtold1/train/7047.png +../../data/yoloGtold1/train/7048.png +../../data/yoloGtold1/train/7049.png +../../data/yoloGtold1/train/7050.png +../../data/yoloGtold1/train/7051.png +../../data/yoloGtold1/train/7052.png +../../data/yoloGtold1/train/7053.png +../../data/yoloGtold1/train/7054.png +../../data/yoloGtold1/train/7055.png +../../data/yoloGtold1/train/7056.png +../../data/yoloGtold1/train/7057.png +../../data/yoloGtold1/train/7058.png +../../data/yoloGtold1/train/7059.png +../../data/yoloGtold1/train/7060.png +../../data/yoloGtold1/train/7061.png +../../data/yoloGtold1/train/7062.png +../../data/yoloGtold1/train/7063.png +../../data/yoloGtold1/train/7064.png +../../data/yoloGtold1/train/7065.png +../../data/yoloGtold1/train/7066.png +../../data/yoloGtold1/train/7067.png +../../data/yoloGtold1/train/7068.png +../../data/yoloGtold1/train/7069.png +../../data/yoloGtold1/train/7070.png +../../data/yoloGtold1/train/7071.png +../../data/yoloGtold1/train/7072.png +../../data/yoloGtold1/train/7073.png +../../data/yoloGtold1/train/7074.png +../../data/yoloGtold1/train/7075.png +../../data/yoloGtold1/train/7076.png +../../data/yoloGtold1/train/7077.png +../../data/yoloGtold1/train/7078.png +../../data/yoloGtold1/train/7079.png +../../data/yoloGtold1/train/7080.png +../../data/yoloGtold1/train/7081.png +../../data/yoloGtold1/train/7082.png +../../data/yoloGtold1/train/7083.png +../../data/yoloGtold1/train/7084.png +../../data/yoloGtold1/train/7085.png +../../data/yoloGtold1/train/7086.png +../../data/yoloGtold1/train/7087.png +../../data/yoloGtold1/train/7088.png +../../data/yoloGtold1/train/7089.png +../../data/yoloGtold1/train/7090.png +../../data/yoloGtold1/train/7091.png +../../data/yoloGtold1/train/7092.png +../../data/yoloGtold1/train/7093.png +../../data/yoloGtold1/train/7094.png +../../data/yoloGtold1/train/7095.png +../../data/yoloGtold1/train/7096.png +../../data/yoloGtold1/train/7097.png +../../data/yoloGtold1/train/7098.png +../../data/yoloGtold1/train/7099.png +../../data/yoloGtold1/train/7100.png +../../data/yoloGtold1/train/7101.png +../../data/yoloGtold1/train/7102.png +../../data/yoloGtold1/train/7103.png +../../data/yoloGtold1/train/7104.png +../../data/yoloGtold1/train/7105.png +../../data/yoloGtold1/train/7106.png +../../data/yoloGtold1/train/7107.png +../../data/yoloGtold1/train/7108.png +../../data/yoloGtold1/train/7109.png +../../data/yoloGtold1/train/7110.png +../../data/yoloGtold1/train/7111.png +../../data/yoloGtold1/train/7112.png +../../data/yoloGtold1/train/7113.png +../../data/yoloGtold1/train/7114.png +../../data/yoloGtold1/train/7115.png +../../data/yoloGtold1/train/7116.png +../../data/yoloGtold1/train/7117.png +../../data/yoloGtold1/train/7118.png +../../data/yoloGtold1/train/7119.png +../../data/yoloGtold1/train/7120.png +../../data/yoloGtold1/train/7121.png +../../data/yoloGtold1/train/7122.png +../../data/yoloGtold1/train/7123.png +../../data/yoloGtold1/train/7124.png +../../data/yoloGtold1/train/7125.png +../../data/yoloGtold1/train/7126.png +../../data/yoloGtold1/train/7127.png +../../data/yoloGtold1/train/7128.png +../../data/yoloGtold1/train/7129.png +../../data/yoloGtold1/train/7130.png +../../data/yoloGtold1/train/7131.png +../../data/yoloGtold1/train/7132.png +../../data/yoloGtold1/train/7133.png +../../data/yoloGtold1/train/7134.png +../../data/yoloGtold1/train/7135.png +../../data/yoloGtold1/train/7136.png +../../data/yoloGtold1/train/7137.png +../../data/yoloGtold1/train/7138.png +../../data/yoloGtold1/train/7139.png +../../data/yoloGtold1/train/7140.png +../../data/yoloGtold1/train/7141.png +../../data/yoloGtold1/train/7142.png +../../data/yoloGtold1/train/7143.png +../../data/yoloGtold1/train/7144.png +../../data/yoloGtold1/train/7145.png +../../data/yoloGtold1/train/7146.png +../../data/yoloGtold1/train/7147.png +../../data/yoloGtold1/train/7148.png +../../data/yoloGtold1/train/7149.png +../../data/yoloGtold1/train/7150.png +../../data/yoloGtold1/train/7151.png +../../data/yoloGtold1/train/7152.png +../../data/yoloGtold1/train/7153.png +../../data/yoloGtold1/train/7154.png +../../data/yoloGtold1/train/7155.png +../../data/yoloGtold1/train/7156.png +../../data/yoloGtold1/train/7157.png +../../data/yoloGtold1/train/7158.png +../../data/yoloGtold1/train/7159.png +../../data/yoloGtold1/train/7160.png +../../data/yoloGtold1/train/7161.png +../../data/yoloGtold1/train/7162.png +../../data/yoloGtold1/train/7163.png +../../data/yoloGtold1/train/7164.png +../../data/yoloGtold1/train/7165.png +../../data/yoloGtold1/train/7166.png +../../data/yoloGtold1/train/7167.png +../../data/yoloGtold1/train/7168.png +../../data/yoloGtold1/train/7169.png +../../data/yoloGtold1/train/7170.png +../../data/yoloGtold1/train/7171.png +../../data/yoloGtold1/train/7172.png +../../data/yoloGtold1/train/7173.png +../../data/yoloGtold1/train/7174.png +../../data/yoloGtold1/train/7175.png +../../data/yoloGtold1/train/7176.png +../../data/yoloGtold1/train/7177.png +../../data/yoloGtold1/train/7178.png +../../data/yoloGtold1/train/7179.png +../../data/yoloGtold1/train/7180.png +../../data/yoloGtold1/train/7181.png +../../data/yoloGtold1/train/7182.png +../../data/yoloGtold1/train/7183.png +../../data/yoloGtold1/train/7184.png +../../data/yoloGtold1/train/7185.png +../../data/yoloGtold1/train/7186.png +../../data/yoloGtold1/train/7187.png +../../data/yoloGtold1/train/7188.png +../../data/yoloGtold1/train/7189.png +../../data/yoloGtold1/train/7190.png +../../data/yoloGtold1/train/7191.png +../../data/yoloGtold1/train/7192.png +../../data/yoloGtold1/train/7193.png +../../data/yoloGtold1/train/7194.png +../../data/yoloGtold1/train/7195.png +../../data/yoloGtold1/train/7196.png +../../data/yoloGtold1/train/7197.png +../../data/yoloGtold1/train/7198.png +../../data/yoloGtold1/train/7199.png +../../data/yoloGtold1/train/7200.png +../../data/yoloGtold1/train/7201.png +../../data/yoloGtold1/train/7202.png +../../data/yoloGtold1/train/7203.png +../../data/yoloGtold1/train/7204.png +../../data/yoloGtold1/train/7205.png +../../data/yoloGtold1/train/7206.png +../../data/yoloGtold1/train/7207.png +../../data/yoloGtold1/train/7208.png +../../data/yoloGtold1/train/7209.png +../../data/yoloGtold1/train/7210.png +../../data/yoloGtold1/train/7211.png +../../data/yoloGtold1/train/7212.png +../../data/yoloGtold1/train/7213.png +../../data/yoloGtold1/train/7214.png +../../data/yoloGtold1/train/7215.png +../../data/yoloGtold1/train/7216.png +../../data/yoloGtold1/train/7217.png +../../data/yoloGtold1/train/7218.png +../../data/yoloGtold1/train/7219.png +../../data/yoloGtold1/train/7220.png +../../data/yoloGtold1/train/7221.png +../../data/yoloGtold1/train/7222.png +../../data/yoloGtold1/train/7223.png +../../data/yoloGtold1/train/7224.png +../../data/yoloGtold1/train/7225.png +../../data/yoloGtold1/train/7226.png +../../data/yoloGtold1/train/7227.png +../../data/yoloGtold1/train/7228.png +../../data/yoloGtold1/train/7229.png +../../data/yoloGtold1/train/7230.png +../../data/yoloGtold1/train/7231.png +../../data/yoloGtold1/train/7232.png +../../data/yoloGtold1/train/7233.png +../../data/yoloGtold1/train/7234.png +../../data/yoloGtold1/train/7235.png +../../data/yoloGtold1/train/7236.png +../../data/yoloGtold1/train/7237.png +../../data/yoloGtold1/train/7238.png +../../data/yoloGtold1/train/7239.png +../../data/yoloGtold1/train/7240.png +../../data/yoloGtold1/train/7241.png +../../data/yoloGtold1/train/7242.png +../../data/yoloGtold1/train/7243.png +../../data/yoloGtold1/train/7244.png +../../data/yoloGtold1/train/7245.png +../../data/yoloGtold1/train/7246.png +../../data/yoloGtold1/train/7247.png +../../data/yoloGtold1/train/7248.png +../../data/yoloGtold1/train/7249.png +../../data/yoloGtold1/train/7250.png +../../data/yoloGtold1/train/7251.png +../../data/yoloGtold1/train/7252.png +../../data/yoloGtold1/train/7253.png +../../data/yoloGtold1/train/7254.png +../../data/yoloGtold1/train/7255.png +../../data/yoloGtold1/train/7256.png +../../data/yoloGtold1/train/7257.png +../../data/yoloGtold1/train/7258.png +../../data/yoloGtold1/train/7259.png +../../data/yoloGtold1/train/7260.png +../../data/yoloGtold1/train/7261.png +../../data/yoloGtold1/train/7262.png +../../data/yoloGtold1/train/7263.png +../../data/yoloGtold1/train/7264.png +../../data/yoloGtold1/train/7265.png +../../data/yoloGtold1/train/7266.png +../../data/yoloGtold1/train/7267.png +../../data/yoloGtold1/train/7268.png +../../data/yoloGtold1/train/7269.png +../../data/yoloGtold1/train/7270.png +../../data/yoloGtold1/train/7271.png +../../data/yoloGtold1/train/7272.png +../../data/yoloGtold1/train/7273.png +../../data/yoloGtold1/train/7274.png +../../data/yoloGtold1/train/7275.png +../../data/yoloGtold1/train/7276.png +../../data/yoloGtold1/train/7277.png +../../data/yoloGtold1/train/7278.png +../../data/yoloGtold1/train/7279.png +../../data/yoloGtold1/train/7280.png +../../data/yoloGtold1/train/7281.png +../../data/yoloGtold1/train/7282.png +../../data/yoloGtold1/train/7283.png +../../data/yoloGtold1/train/7284.png +../../data/yoloGtold1/train/7285.png +../../data/yoloGtold1/train/7286.png +../../data/yoloGtold1/train/7287.png +../../data/yoloGtold1/train/7288.png +../../data/yoloGtold1/train/7289.png +../../data/yoloGtold1/train/7290.png +../../data/yoloGtold1/train/7291.png +../../data/yoloGtold1/train/7292.png +../../data/yoloGtold1/train/7293.png +../../data/yoloGtold1/train/7294.png +../../data/yoloGtold1/train/7295.png +../../data/yoloGtold1/train/7296.png +../../data/yoloGtold1/train/7297.png +../../data/yoloGtold1/train/7298.png +../../data/yoloGtold1/train/7299.png +../../data/yoloGtold1/train/7300.png +../../data/yoloGtold1/train/7301.png +../../data/yoloGtold1/train/7302.png +../../data/yoloGtold1/train/7303.png +../../data/yoloGtold1/train/7304.png +../../data/yoloGtold1/train/7305.png +../../data/yoloGtold1/train/7306.png +../../data/yoloGtold1/train/7307.png +../../data/yoloGtold1/train/7308.png +../../data/yoloGtold1/train/7309.png +../../data/yoloGtold1/train/7310.png +../../data/yoloGtold1/train/7311.png +../../data/yoloGtold1/train/7312.png +../../data/yoloGtold1/train/7313.png +../../data/yoloGtold1/train/7314.png +../../data/yoloGtold1/train/7315.png +../../data/yoloGtold1/train/7316.png +../../data/yoloGtold1/train/7317.png +../../data/yoloGtold1/train/7318.png +../../data/yoloGtold1/train/7319.png +../../data/yoloGtold1/train/7320.png +../../data/yoloGtold1/train/7321.png +../../data/yoloGtold1/train/7322.png +../../data/yoloGtold1/train/7323.png +../../data/yoloGtold1/train/7324.png +../../data/yoloGtold1/train/7325.png +../../data/yoloGtold1/train/7326.png +../../data/yoloGtold1/train/7327.png +../../data/yoloGtold1/train/7328.png +../../data/yoloGtold1/train/7329.png +../../data/yoloGtold1/train/7330.png +../../data/yoloGtold1/train/7331.png +../../data/yoloGtold1/train/7332.png +../../data/yoloGtold1/train/7333.png +../../data/yoloGtold1/train/7334.png +../../data/yoloGtold1/train/7335.png +../../data/yoloGtold1/train/7336.png +../../data/yoloGtold1/train/7337.png +../../data/yoloGtold1/train/7338.png +../../data/yoloGtold1/train/7339.png +../../data/yoloGtold1/train/7340.png +../../data/yoloGtold1/train/7341.png +../../data/yoloGtold1/train/7342.png +../../data/yoloGtold1/train/7343.png +../../data/yoloGtold1/train/7344.png +../../data/yoloGtold1/train/7345.png +../../data/yoloGtold1/train/7346.png +../../data/yoloGtold1/train/7347.png +../../data/yoloGtold1/train/7348.png +../../data/yoloGtold1/train/7349.png +../../data/yoloGtold1/train/7350.png +../../data/yoloGtold1/train/7351.png +../../data/yoloGtold1/train/7352.png +../../data/yoloGtold1/train/7353.png +../../data/yoloGtold1/train/7354.png +../../data/yoloGtold1/train/7355.png +../../data/yoloGtold1/train/7356.png +../../data/yoloGtold1/train/7357.png +../../data/yoloGtold1/train/7358.png +../../data/yoloGtold1/train/7359.png +../../data/yoloGtold1/train/7360.png +../../data/yoloGtold1/train/7361.png +../../data/yoloGtold1/train/7362.png +../../data/yoloGtold1/train/7363.png +../../data/yoloGtold1/train/7364.png +../../data/yoloGtold1/train/7365.png +../../data/yoloGtold1/train/7366.png +../../data/yoloGtold1/train/7367.png +../../data/yoloGtold1/train/7368.png +../../data/yoloGtold1/train/7369.png +../../data/yoloGtold1/train/7370.png +../../data/yoloGtold1/train/7371.png +../../data/yoloGtold1/train/7372.png +../../data/yoloGtold1/train/7373.png +../../data/yoloGtold1/train/7374.png +../../data/yoloGtold1/train/7375.png +../../data/yoloGtold1/train/7376.png +../../data/yoloGtold1/train/7377.png +../../data/yoloGtold1/train/7378.png +../../data/yoloGtold1/train/7379.png +../../data/yoloGtold1/train/7380.png +../../data/yoloGtold1/train/7381.png +../../data/yoloGtold1/train/7382.png +../../data/yoloGtold1/train/7383.png +../../data/yoloGtold1/train/7384.png +../../data/yoloGtold1/train/7385.png +../../data/yoloGtold1/train/7386.png +../../data/yoloGtold1/train/7387.png +../../data/yoloGtold1/train/7388.png +../../data/yoloGtold1/train/7389.png +../../data/yoloGtold1/train/7390.png +../../data/yoloGtold1/train/7391.png +../../data/yoloGtold1/train/7392.png +../../data/yoloGtold1/train/7393.png +../../data/yoloGtold1/train/7394.png +../../data/yoloGtold1/train/7395.png +../../data/yoloGtold1/train/7396.png +../../data/yoloGtold1/train/7397.png +../../data/yoloGtold1/train/7398.png +../../data/yoloGtold1/train/7399.png +../../data/yoloGtold1/train/7400.png +../../data/yoloGtold1/train/7401.png +../../data/yoloGtold1/train/7402.png +../../data/yoloGtold1/train/7403.png +../../data/yoloGtold1/train/7404.png +../../data/yoloGtold1/train/7405.png +../../data/yoloGtold1/train/7406.png +../../data/yoloGtold1/train/7407.png +../../data/yoloGtold1/train/7408.png +../../data/yoloGtold1/train/7409.png +../../data/yoloGtold1/train/7410.png +../../data/yoloGtold1/train/7411.png +../../data/yoloGtold1/train/7412.png +../../data/yoloGtold1/train/7413.png +../../data/yoloGtold1/train/7414.png +../../data/yoloGtold1/train/7415.png +../../data/yoloGtold1/train/7416.png +../../data/yoloGtold1/train/7417.png +../../data/yoloGtold1/train/7418.png +../../data/yoloGtold1/train/7419.png +../../data/yoloGtold1/train/7420.png +../../data/yoloGtold1/train/7421.png +../../data/yoloGtold1/train/7422.png +../../data/yoloGtold1/train/7423.png +../../data/yoloGtold1/train/7424.png +../../data/yoloGtold1/train/7425.png +../../data/yoloGtold1/train/7426.png +../../data/yoloGtold1/train/7427.png +../../data/yoloGtold1/train/7428.png +../../data/yoloGtold1/train/7429.png +../../data/yoloGtold1/train/7430.png +../../data/yoloGtold1/train/7431.png +../../data/yoloGtold1/train/7432.png +../../data/yoloGtold1/train/7433.png +../../data/yoloGtold1/train/7434.png +../../data/yoloGtold1/train/7435.png +../../data/yoloGtold1/train/7436.png +../../data/yoloGtold1/train/7437.png +../../data/yoloGtold1/train/7438.png +../../data/yoloGtold1/train/7439.png +../../data/yoloGtold1/train/7440.png +../../data/yoloGtold1/train/7441.png +../../data/yoloGtold1/train/7442.png +../../data/yoloGtold1/train/7443.png +../../data/yoloGtold1/train/7444.png +../../data/yoloGtold1/train/7445.png +../../data/yoloGtold1/train/7446.png +../../data/yoloGtold1/train/7447.png +../../data/yoloGtold1/train/7448.png +../../data/yoloGtold1/train/7449.png +../../data/yoloGtold1/train/7450.png +../../data/yoloGtold1/train/7451.png +../../data/yoloGtold1/train/7452.png +../../data/yoloGtold1/train/7453.png +../../data/yoloGtold1/train/7454.png +../../data/yoloGtold1/train/7455.png +../../data/yoloGtold1/train/7456.png +../../data/yoloGtold1/train/7457.png +../../data/yoloGtold1/train/7458.png +../../data/yoloGtold1/train/7459.png +../../data/yoloGtold1/train/7460.png +../../data/yoloGtold1/train/7461.png +../../data/yoloGtold1/train/7462.png +../../data/yoloGtold1/train/7463.png +../../data/yoloGtold1/train/7464.png +../../data/yoloGtold1/train/7465.png +../../data/yoloGtold1/train/7466.png +../../data/yoloGtold1/train/7467.png +../../data/yoloGtold1/train/7468.png +../../data/yoloGtold1/train/7469.png +../../data/yoloGtold1/train/7470.png +../../data/yoloGtold1/train/7471.png +../../data/yoloGtold1/train/7472.png +../../data/yoloGtold1/train/7473.png +../../data/yoloGtold1/train/7474.png +../../data/yoloGtold1/train/7475.png +../../data/yoloGtold1/train/7476.png +../../data/yoloGtold1/train/7477.png +../../data/yoloGtold1/train/7478.png +../../data/yoloGtold1/train/7479.png +../../data/yoloGtold1/train/7480.png +../../data/yoloGtold1/train/7481.png +../../data/yoloGtold1/train/7482.png +../../data/yoloGtold1/train/7483.png +../../data/yoloGtold1/train/7484.png +../../data/yoloGtold1/train/7485.png +../../data/yoloGtold1/train/7486.png +../../data/yoloGtold1/train/7487.png +../../data/yoloGtold1/train/7488.png +../../data/yoloGtold1/train/7489.png +../../data/yoloGtold1/train/7490.png +../../data/yoloGtold1/train/7491.png +../../data/yoloGtold1/train/7492.png +../../data/yoloGtold1/train/7493.png +../../data/yoloGtold1/train/7494.png +../../data/yoloGtold1/train/7495.png +../../data/yoloGtold1/train/7496.png +../../data/yoloGtold1/train/7497.png +../../data/yoloGtold1/train/7498.png +../../data/yoloGtold1/train/7499.png +../../data/yoloGtold1/train/7500.png +../../data/yoloGtold1/train/7501.png +../../data/yoloGtold1/train/7502.png +../../data/yoloGtold1/train/7503.png +../../data/yoloGtold1/train/7504.png +../../data/yoloGtold1/train/7505.png +../../data/yoloGtold1/train/7506.png +../../data/yoloGtold1/train/7507.png +../../data/yoloGtold1/train/7508.png +../../data/yoloGtold1/train/7509.png +../../data/yoloGtold1/train/7510.png +../../data/yoloGtold1/train/7511.png +../../data/yoloGtold1/train/7512.png +../../data/yoloGtold1/train/7513.png +../../data/yoloGtold1/train/7514.png +../../data/yoloGtold1/train/7515.png +../../data/yoloGtold1/train/7516.png +../../data/yoloGtold1/train/7517.png +../../data/yoloGtold1/train/7518.png +../../data/yoloGtold1/train/7519.png +../../data/yoloGtold1/train/7520.png +../../data/yoloGtold1/train/7521.png +../../data/yoloGtold1/train/7522.png +../../data/yoloGtold1/train/7523.png +../../data/yoloGtold1/train/7524.png +../../data/yoloGtold1/train/7525.png +../../data/yoloGtold1/train/7526.png +../../data/yoloGtold1/train/7527.png +../../data/yoloGtold1/train/7528.png +../../data/yoloGtold1/train/7529.png +../../data/yoloGtold1/train/7530.png +../../data/yoloGtold1/train/7531.png +../../data/yoloGtold1/train/7532.png +../../data/yoloGtold1/train/7533.png +../../data/yoloGtold1/train/7534.png +../../data/yoloGtold1/train/7535.png +../../data/yoloGtold1/train/7536.png +../../data/yoloGtold1/train/7537.png +../../data/yoloGtold1/train/7538.png +../../data/yoloGtold1/train/7539.png +../../data/yoloGtold1/train/7540.png +../../data/yoloGtold1/train/7541.png +../../data/yoloGtold1/train/7542.png +../../data/yoloGtold1/train/7543.png +../../data/yoloGtold1/train/7544.png +../../data/yoloGtold1/train/7545.png +../../data/yoloGtold1/train/7546.png +../../data/yoloGtold1/train/7547.png +../../data/yoloGtold1/train/7548.png +../../data/yoloGtold1/train/7549.png +../../data/yoloGtold1/train/7550.png +../../data/yoloGtold1/train/7551.png +../../data/yoloGtold1/train/7552.png +../../data/yoloGtold1/train/7553.png +../../data/yoloGtold1/train/7554.png +../../data/yoloGtold1/train/7555.png +../../data/yoloGtold1/train/7556.png +../../data/yoloGtold1/train/7557.png +../../data/yoloGtold1/train/7558.png +../../data/yoloGtold1/train/7559.png +../../data/yoloGtold1/train/7560.png +../../data/yoloGtold1/train/7561.png +../../data/yoloGtold1/train/7562.png +../../data/yoloGtold1/train/7563.png +../../data/yoloGtold1/train/7564.png +../../data/yoloGtold1/train/7565.png +../../data/yoloGtold1/train/7566.png +../../data/yoloGtold1/train/7567.png +../../data/yoloGtold1/train/7568.png +../../data/yoloGtold1/train/7569.png +../../data/yoloGtold1/train/7570.png +../../data/yoloGtold1/train/7571.png +../../data/yoloGtold1/train/7572.png +../../data/yoloGtold1/train/7573.png +../../data/yoloGtold1/train/7574.png +../../data/yoloGtold1/train/7575.png +../../data/yoloGtold1/train/7576.png +../../data/yoloGtold1/train/7577.png +../../data/yoloGtold1/train/7578.png +../../data/yoloGtold1/train/7579.png +../../data/yoloGtold1/train/7580.png +../../data/yoloGtold1/train/7581.png +../../data/yoloGtold1/train/7582.png +../../data/yoloGtold1/train/7583.png +../../data/yoloGtold1/train/7584.png +../../data/yoloGtold1/train/7585.png +../../data/yoloGtold1/train/7586.png +../../data/yoloGtold1/train/7587.png +../../data/yoloGtold1/train/7588.png +../../data/yoloGtold1/train/7589.png +../../data/yoloGtold1/train/7590.png +../../data/yoloGtold1/train/7591.png +../../data/yoloGtold1/train/7592.png +../../data/yoloGtold1/train/7593.png +../../data/yoloGtold1/train/7594.png +../../data/yoloGtold1/train/7595.png +../../data/yoloGtold1/train/7596.png +../../data/yoloGtold1/train/7597.png +../../data/yoloGtold1/train/7598.png +../../data/yoloGtold1/train/7599.png +../../data/yoloGtold1/train/7600.png +../../data/yoloGtold1/train/7601.png +../../data/yoloGtold1/train/7602.png +../../data/yoloGtold1/train/7603.png +../../data/yoloGtold1/train/7604.png +../../data/yoloGtold1/train/7605.png +../../data/yoloGtold1/train/7606.png +../../data/yoloGtold1/train/7607.png +../../data/yoloGtold1/train/7608.png +../../data/yoloGtold1/train/7609.png +../../data/yoloGtold1/train/7610.png +../../data/yoloGtold1/train/7611.png +../../data/yoloGtold1/train/7612.png +../../data/yoloGtold1/train/7613.png +../../data/yoloGtold1/train/7614.png +../../data/yoloGtold1/train/7615.png +../../data/yoloGtold1/train/7616.png +../../data/yoloGtold1/train/7617.png +../../data/yoloGtold1/train/7618.png +../../data/yoloGtold1/train/7619.png +../../data/yoloGtold1/train/7620.png +../../data/yoloGtold1/train/7621.png +../../data/yoloGtold1/train/7622.png +../../data/yoloGtold1/train/7623.png +../../data/yoloGtold1/train/7624.png +../../data/yoloGtold1/train/7625.png +../../data/yoloGtold1/train/7626.png +../../data/yoloGtold1/train/7627.png +../../data/yoloGtold1/train/7628.png +../../data/yoloGtold1/train/7629.png +../../data/yoloGtold1/train/7630.png +../../data/yoloGtold1/train/7631.png +../../data/yoloGtold1/train/7632.png +../../data/yoloGtold1/train/7633.png +../../data/yoloGtold1/train/7634.png +../../data/yoloGtold1/train/7635.png +../../data/yoloGtold1/train/7636.png +../../data/yoloGtold1/train/7637.png +../../data/yoloGtold1/train/7638.png +../../data/yoloGtold1/train/7639.png +../../data/yoloGtold1/train/7640.png +../../data/yoloGtold1/train/7641.png +../../data/yoloGtold1/train/7642.png +../../data/yoloGtold1/train/7643.png +../../data/yoloGtold1/train/7644.png +../../data/yoloGtold1/train/7645.png +../../data/yoloGtold1/train/7646.png +../../data/yoloGtold1/train/7647.png +../../data/yoloGtold1/train/7648.png +../../data/yoloGtold1/train/7649.png +../../data/yoloGtold1/train/7650.png +../../data/yoloGtold1/train/7651.png +../../data/yoloGtold1/train/7652.png +../../data/yoloGtold1/train/7653.png +../../data/yoloGtold1/train/7654.png +../../data/yoloGtold1/train/7655.png +../../data/yoloGtold1/train/7656.png +../../data/yoloGtold1/train/7657.png +../../data/yoloGtold1/train/7658.png +../../data/yoloGtold1/train/7659.png +../../data/yoloGtold1/train/7660.png +../../data/yoloGtold1/train/7661.png +../../data/yoloGtold1/train/7662.png +../../data/yoloGtold1/train/7663.png +../../data/yoloGtold1/train/7664.png +../../data/yoloGtold1/train/7665.png +../../data/yoloGtold1/train/7666.png +../../data/yoloGtold1/train/7667.png +../../data/yoloGtold1/train/7668.png +../../data/yoloGtold1/train/7669.png +../../data/yoloGtold1/train/7670.png +../../data/yoloGtold1/train/7671.png +../../data/yoloGtold1/train/7672.png +../../data/yoloGtold1/train/7673.png +../../data/yoloGtold1/train/7674.png +../../data/yoloGtold1/train/7675.png +../../data/yoloGtold1/train/7676.png +../../data/yoloGtold1/train/7677.png +../../data/yoloGtold1/train/7678.png +../../data/yoloGtold1/train/7679.png +../../data/yoloGtold1/train/7680.png +../../data/yoloGtold1/train/7681.png +../../data/yoloGtold1/train/7682.png +../../data/yoloGtold1/train/7683.png +../../data/yoloGtold1/train/7684.png +../../data/yoloGtold1/train/7685.png +../../data/yoloGtold1/train/7686.png +../../data/yoloGtold1/train/7687.png +../../data/yoloGtold1/train/7688.png +../../data/yoloGtold1/train/7689.png +../../data/yoloGtold1/train/7690.png +../../data/yoloGtold1/train/7691.png +../../data/yoloGtold1/train/7692.png +../../data/yoloGtold1/train/7693.png +../../data/yoloGtold1/train/7694.png +../../data/yoloGtold1/train/7695.png +../../data/yoloGtold1/train/7696.png +../../data/yoloGtold1/train/7697.png +../../data/yoloGtold1/train/7698.png +../../data/yoloGtold1/train/7699.png +../../data/yoloGtold1/train/7700.png +../../data/yoloGtold1/train/7701.png +../../data/yoloGtold1/train/7702.png +../../data/yoloGtold1/train/7703.png +../../data/yoloGtold1/train/7704.png +../../data/yoloGtold1/train/7705.png +../../data/yoloGtold1/train/7706.png +../../data/yoloGtold1/train/7707.png +../../data/yoloGtold1/train/7708.png +../../data/yoloGtold1/train/7709.png +../../data/yoloGtold1/train/7710.png +../../data/yoloGtold1/train/7711.png +../../data/yoloGtold1/train/7712.png +../../data/yoloGtold1/train/7713.png +../../data/yoloGtold1/train/7714.png +../../data/yoloGtold1/train/7715.png +../../data/yoloGtold1/train/7716.png +../../data/yoloGtold1/train/7717.png +../../data/yoloGtold1/train/7718.png +../../data/yoloGtold1/train/7719.png +../../data/yoloGtold1/train/7720.png +../../data/yoloGtold1/train/7721.png +../../data/yoloGtold1/train/7722.png +../../data/yoloGtold1/train/7723.png +../../data/yoloGtold1/train/7724.png +../../data/yoloGtold1/train/7725.png +../../data/yoloGtold1/train/7726.png +../../data/yoloGtold1/train/7727.png +../../data/yoloGtold1/train/7728.png +../../data/yoloGtold1/train/7729.png +../../data/yoloGtold1/train/7730.png +../../data/yoloGtold1/train/7731.png +../../data/yoloGtold1/train/7732.png +../../data/yoloGtold1/train/7733.png +../../data/yoloGtold1/train/7734.png +../../data/yoloGtold1/train/7735.png +../../data/yoloGtold1/train/7736.png +../../data/yoloGtold1/train/7737.png +../../data/yoloGtold1/train/7738.png +../../data/yoloGtold1/train/7739.png +../../data/yoloGtold1/train/7740.png +../../data/yoloGtold1/train/7741.png +../../data/yoloGtold1/train/7742.png +../../data/yoloGtold1/train/7743.png +../../data/yoloGtold1/train/7744.png +../../data/yoloGtold1/train/7745.png +../../data/yoloGtold1/train/7746.png +../../data/yoloGtold1/train/7747.png +../../data/yoloGtold1/train/7748.png +../../data/yoloGtold1/train/7749.png +../../data/yoloGtold1/train/7750.png +../../data/yoloGtold1/train/7751.png +../../data/yoloGtold1/train/7752.png +../../data/yoloGtold1/train/7753.png +../../data/yoloGtold1/train/7754.png +../../data/yoloGtold1/train/7755.png +../../data/yoloGtold1/train/7756.png +../../data/yoloGtold1/train/7757.png +../../data/yoloGtold1/train/7758.png +../../data/yoloGtold1/train/7759.png +../../data/yoloGtold1/train/7760.png +../../data/yoloGtold1/train/7761.png +../../data/yoloGtold1/train/7762.png +../../data/yoloGtold1/train/7763.png +../../data/yoloGtold1/train/7764.png +../../data/yoloGtold1/train/7765.png +../../data/yoloGtold1/train/7766.png +../../data/yoloGtold1/train/7767.png +../../data/yoloGtold1/train/7768.png +../../data/yoloGtold1/train/7769.png +../../data/yoloGtold1/train/7770.png +../../data/yoloGtold1/train/7771.png +../../data/yoloGtold1/train/7772.png +../../data/yoloGtold1/train/7773.png +../../data/yoloGtold1/train/7774.png +../../data/yoloGtold1/train/7775.png +../../data/yoloGtold1/train/7776.png +../../data/yoloGtold1/train/7777.png +../../data/yoloGtold1/train/7778.png +../../data/yoloGtold1/train/7779.png +../../data/yoloGtold1/train/7780.png +../../data/yoloGtold1/train/7781.png +../../data/yoloGtold1/train/7782.png +../../data/yoloGtold1/train/7783.png +../../data/yoloGtold1/train/7784.png +../../data/yoloGtold1/train/7785.png +../../data/yoloGtold1/train/7786.png +../../data/yoloGtold1/train/7787.png +../../data/yoloGtold1/train/7788.png +../../data/yoloGtold1/train/7789.png +../../data/yoloGtold1/train/7790.png +../../data/yoloGtold1/train/7791.png +../../data/yoloGtold1/train/7792.png +../../data/yoloGtold1/train/7793.png +../../data/yoloGtold1/train/7794.png +../../data/yoloGtold1/train/7795.png +../../data/yoloGtold1/train/7796.png +../../data/yoloGtold1/train/7797.png +../../data/yoloGtold1/train/7798.png +../../data/yoloGtold1/train/7799.png +../../data/yoloGtold1/train/7800.png +../../data/yoloGtold1/train/7801.png +../../data/yoloGtold1/train/7802.png +../../data/yoloGtold1/train/7803.png +../../data/yoloGtold1/train/7804.png +../../data/yoloGtold1/train/7805.png +../../data/yoloGtold1/train/7806.png +../../data/yoloGtold1/train/7807.png +../../data/yoloGtold1/train/7808.png +../../data/yoloGtold1/train/7809.png +../../data/yoloGtold1/train/7810.png +../../data/yoloGtold1/train/7811.png +../../data/yoloGtold1/train/7812.png +../../data/yoloGtold1/train/7813.png +../../data/yoloGtold1/train/7814.png +../../data/yoloGtold1/train/7815.png +../../data/yoloGtold1/train/7816.png +../../data/yoloGtold1/train/7817.png +../../data/yoloGtold1/train/7818.png +../../data/yoloGtold1/train/7819.png +../../data/yoloGtold1/train/7820.png +../../data/yoloGtold1/train/7821.png +../../data/yoloGtold1/train/7822.png +../../data/yoloGtold1/train/7823.png +../../data/yoloGtold1/train/7824.png +../../data/yoloGtold1/train/7825.png +../../data/yoloGtold1/train/7826.png +../../data/yoloGtold1/train/7827.png +../../data/yoloGtold1/train/7828.png +../../data/yoloGtold1/train/7829.png +../../data/yoloGtold1/train/7830.png +../../data/yoloGtold1/train/7831.png +../../data/yoloGtold1/train/7832.png +../../data/yoloGtold1/train/7833.png +../../data/yoloGtold1/train/7834.png +../../data/yoloGtold1/train/7835.png +../../data/yoloGtold1/train/7836.png +../../data/yoloGtold1/train/7837.png +../../data/yoloGtold1/train/7838.png +../../data/yoloGtold1/train/7839.png +../../data/yoloGtold1/train/7840.png +../../data/yoloGtold1/train/7841.png +../../data/yoloGtold1/train/7842.png +../../data/yoloGtold1/train/7843.png +../../data/yoloGtold1/train/7844.png +../../data/yoloGtold1/train/7845.png +../../data/yoloGtold1/train/7846.png +../../data/yoloGtold1/train/7847.png +../../data/yoloGtold1/train/7848.png +../../data/yoloGtold1/train/7849.png +../../data/yoloGtold1/train/7850.png +../../data/yoloGtold1/train/7851.png +../../data/yoloGtold1/train/7852.png +../../data/yoloGtold1/train/7853.png +../../data/yoloGtold1/train/7854.png +../../data/yoloGtold1/train/7855.png +../../data/yoloGtold1/train/7856.png +../../data/yoloGtold1/train/7857.png +../../data/yoloGtold1/train/7858.png +../../data/yoloGtold1/train/7859.png +../../data/yoloGtold1/train/7860.png +../../data/yoloGtold1/train/7861.png +../../data/yoloGtold1/train/7862.png +../../data/yoloGtold1/train/7863.png +../../data/yoloGtold1/train/7864.png +../../data/yoloGtold1/train/7865.png +../../data/yoloGtold1/train/7866.png +../../data/yoloGtold1/train/7867.png +../../data/yoloGtold1/train/7868.png +../../data/yoloGtold1/train/7869.png +../../data/yoloGtold1/train/7870.png +../../data/yoloGtold1/train/7871.png +../../data/yoloGtold1/train/7872.png +../../data/yoloGtold1/train/7873.png +../../data/yoloGtold1/train/7874.png +../../data/yoloGtold1/train/7875.png +../../data/yoloGtold1/train/7876.png +../../data/yoloGtold1/train/7877.png +../../data/yoloGtold1/train/7878.png +../../data/yoloGtold1/train/7879.png +../../data/yoloGtold1/train/7880.png +../../data/yoloGtold1/train/7881.png +../../data/yoloGtold1/train/7882.png +../../data/yoloGtold1/train/7883.png +../../data/yoloGtold1/train/7884.png +../../data/yoloGtold1/train/7885.png +../../data/yoloGtold1/train/7886.png +../../data/yoloGtold1/train/7887.png +../../data/yoloGtold1/train/7888.png +../../data/yoloGtold1/train/7889.png +../../data/yoloGtold1/train/7890.png +../../data/yoloGtold1/train/7891.png +../../data/yoloGtold1/train/7892.png +../../data/yoloGtold1/train/7893.png +../../data/yoloGtold1/train/7894.png +../../data/yoloGtold1/train/7895.png +../../data/yoloGtold1/train/7896.png +../../data/yoloGtold1/train/7897.png +../../data/yoloGtold1/train/7898.png +../../data/yoloGtold1/train/7899.png +../../data/yoloGtold1/train/7900.png +../../data/yoloGtold1/train/7901.png +../../data/yoloGtold1/train/7902.png +../../data/yoloGtold1/train/7903.png +../../data/yoloGtold1/train/7904.png +../../data/yoloGtold1/train/7905.png +../../data/yoloGtold1/train/7906.png +../../data/yoloGtold1/train/7907.png +../../data/yoloGtold1/train/7908.png +../../data/yoloGtold1/train/7909.png +../../data/yoloGtold1/train/7910.png +../../data/yoloGtold1/train/7911.png +../../data/yoloGtold1/train/7912.png +../../data/yoloGtold1/train/7913.png +../../data/yoloGtold1/train/7914.png +../../data/yoloGtold1/train/7915.png +../../data/yoloGtold1/train/7916.png +../../data/yoloGtold1/train/7917.png +../../data/yoloGtold1/train/7918.png +../../data/yoloGtold1/train/7919.png +../../data/yoloGtold1/train/7920.png +../../data/yoloGtold1/train/7921.png +../../data/yoloGtold1/train/7922.png +../../data/yoloGtold1/train/7923.png +../../data/yoloGtold1/train/7924.png +../../data/yoloGtold1/train/7925.png +../../data/yoloGtold1/train/7926.png +../../data/yoloGtold1/train/7927.png +../../data/yoloGtold1/train/7928.png +../../data/yoloGtold1/train/7929.png +../../data/yoloGtold1/train/7930.png +../../data/yoloGtold1/train/7931.png +../../data/yoloGtold1/train/7932.png +../../data/yoloGtold1/train/7933.png +../../data/yoloGtold1/train/7934.png +../../data/yoloGtold1/train/7935.png +../../data/yoloGtold1/train/7936.png +../../data/yoloGtold1/train/7937.png +../../data/yoloGtold1/train/7938.png +../../data/yoloGtold1/train/7939.png +../../data/yoloGtold1/train/7940.png +../../data/yoloGtold1/train/7941.png +../../data/yoloGtold1/train/7942.png +../../data/yoloGtold1/train/7943.png +../../data/yoloGtold1/train/7944.png +../../data/yoloGtold1/train/7945.png +../../data/yoloGtold1/train/7946.png +../../data/yoloGtold1/train/7947.png +../../data/yoloGtold1/train/7948.png +../../data/yoloGtold1/train/7949.png +../../data/yoloGtold1/train/7950.png +../../data/yoloGtold1/train/7951.png +../../data/yoloGtold1/train/7952.png +../../data/yoloGtold1/train/7953.png +../../data/yoloGtold1/train/7954.png +../../data/yoloGtold1/train/7955.png +../../data/yoloGtold1/train/7956.png +../../data/yoloGtold1/train/7957.png +../../data/yoloGtold1/train/7958.png +../../data/yoloGtold1/train/7959.png +../../data/yoloGtold1/train/7960.png +../../data/yoloGtold1/train/7961.png +../../data/yoloGtold1/train/7962.png +../../data/yoloGtold1/train/7963.png +../../data/yoloGtold1/train/7964.png +../../data/yoloGtold1/train/7965.png +../../data/yoloGtold1/train/7966.png +../../data/yoloGtold1/train/7967.png +../../data/yoloGtold1/train/7968.png +../../data/yoloGtold1/train/7969.png +../../data/yoloGtold1/train/7970.png +../../data/yoloGtold1/train/7971.png +../../data/yoloGtold1/train/7972.png +../../data/yoloGtold1/train/7973.png +../../data/yoloGtold1/train/7974.png +../../data/yoloGtold1/train/7975.png +../../data/yoloGtold1/train/7976.png +../../data/yoloGtold1/train/7977.png +../../data/yoloGtold1/train/7978.png +../../data/yoloGtold1/train/7979.png +../../data/yoloGtold1/train/7980.png +../../data/yoloGtold1/train/7981.png +../../data/yoloGtold1/train/7982.png +../../data/yoloGtold1/train/7983.png +../../data/yoloGtold1/train/7984.png +../../data/yoloGtold1/train/7985.png +../../data/yoloGtold1/train/7986.png +../../data/yoloGtold1/train/7987.png +../../data/yoloGtold1/train/7988.png +../../data/yoloGtold1/train/7989.png +../../data/yoloGtold1/train/7990.png +../../data/yoloGtold1/train/7991.png +../../data/yoloGtold1/train/7992.png +../../data/yoloGtold1/train/7993.png +../../data/yoloGtold1/train/7994.png +../../data/yoloGtold1/train/7995.png +../../data/yoloGtold1/train/7996.png +../../data/yoloGtold1/train/7997.png +../../data/yoloGtold1/train/7998.png +../../data/yoloGtold1/train/7999.png +../../data/yoloGtold1/train/8000.png +../../data/yoloGtold1/train/8001.png +../../data/yoloGtold1/train/8002.png +../../data/yoloGtold1/train/8003.png +../../data/yoloGtold1/train/8004.png +../../data/yoloGtold1/train/8005.png +../../data/yoloGtold1/train/8006.png +../../data/yoloGtold1/train/8007.png +../../data/yoloGtold1/train/8008.png +../../data/yoloGtold1/train/8009.png +../../data/yoloGtold1/train/8010.png +../../data/yoloGtold1/train/8011.png +../../data/yoloGtold1/train/8012.png +../../data/yoloGtold1/train/8013.png +../../data/yoloGtold1/train/8014.png +../../data/yoloGtold1/train/8015.png +../../data/yoloGtold1/train/8016.png +../../data/yoloGtold1/train/8017.png +../../data/yoloGtold1/train/8018.png +../../data/yoloGtold1/train/8019.png +../../data/yoloGtold1/train/8020.png +../../data/yoloGtold1/train/8021.png +../../data/yoloGtold1/train/8022.png +../../data/yoloGtold1/train/8023.png +../../data/yoloGtold1/train/8024.png +../../data/yoloGtold1/train/8025.png +../../data/yoloGtold1/train/8026.png +../../data/yoloGtold1/train/8027.png +../../data/yoloGtold1/train/8028.png +../../data/yoloGtold1/train/8029.png +../../data/yoloGtold1/train/8030.png +../../data/yoloGtold1/train/8031.png +../../data/yoloGtold1/train/8032.png +../../data/yoloGtold1/train/8033.png +../../data/yoloGtold1/train/8034.png +../../data/yoloGtold1/train/8035.png +../../data/yoloGtold1/train/8036.png +../../data/yoloGtold1/train/8037.png +../../data/yoloGtold1/train/8038.png +../../data/yoloGtold1/train/8039.png +../../data/yoloGtold1/train/8040.png +../../data/yoloGtold1/train/8041.png +../../data/yoloGtold1/train/8042.png +../../data/yoloGtold1/train/8043.png +../../data/yoloGtold1/train/8044.png +../../data/yoloGtold1/train/8045.png +../../data/yoloGtold1/train/8046.png +../../data/yoloGtold1/train/8047.png +../../data/yoloGtold1/train/8048.png +../../data/yoloGtold1/train/8049.png +../../data/yoloGtold1/train/8050.png +../../data/yoloGtold1/train/8051.png +../../data/yoloGtold1/train/8052.png +../../data/yoloGtold1/train/8053.png +../../data/yoloGtold1/train/8054.png +../../data/yoloGtold1/train/8055.png +../../data/yoloGtold1/train/8056.png +../../data/yoloGtold1/train/8057.png +../../data/yoloGtold1/train/8058.png +../../data/yoloGtold1/train/8059.png +../../data/yoloGtold1/train/8060.png +../../data/yoloGtold1/train/8061.png +../../data/yoloGtold1/train/8062.png +../../data/yoloGtold1/train/8063.png +../../data/yoloGtold1/train/8064.png +../../data/yoloGtold1/train/8065.png +../../data/yoloGtold1/train/8066.png +../../data/yoloGtold1/train/8067.png +../../data/yoloGtold1/train/8068.png +../../data/yoloGtold1/train/8069.png +../../data/yoloGtold1/train/8070.png +../../data/yoloGtold1/train/8071.png +../../data/yoloGtold1/train/8072.png +../../data/yoloGtold1/train/8073.png +../../data/yoloGtold1/train/8074.png +../../data/yoloGtold1/train/8075.png +../../data/yoloGtold1/train/8076.png +../../data/yoloGtold1/train/8077.png +../../data/yoloGtold1/train/8078.png +../../data/yoloGtold1/train/8079.png +../../data/yoloGtold1/train/8080.png +../../data/yoloGtold1/train/8081.png +../../data/yoloGtold1/train/8082.png +../../data/yoloGtold1/train/8083.png +../../data/yoloGtold1/train/8084.png +../../data/yoloGtold1/train/8085.png +../../data/yoloGtold1/train/8086.png +../../data/yoloGtold1/train/8087.png +../../data/yoloGtold1/train/8088.png +../../data/yoloGtold1/train/8089.png +../../data/yoloGtold1/train/8090.png +../../data/yoloGtold1/train/8091.png +../../data/yoloGtold1/train/8092.png +../../data/yoloGtold1/train/8093.png +../../data/yoloGtold1/train/8094.png +../../data/yoloGtold1/train/8095.png +../../data/yoloGtold1/train/8096.png +../../data/yoloGtold1/train/8097.png +../../data/yoloGtold1/train/8098.png +../../data/yoloGtold1/train/8099.png +../../data/yoloGtold1/train/8100.png +../../data/yoloGtold1/train/8101.png +../../data/yoloGtold1/train/8102.png +../../data/yoloGtold1/train/8103.png +../../data/yoloGtold1/train/8104.png +../../data/yoloGtold1/train/8105.png +../../data/yoloGtold1/train/8106.png +../../data/yoloGtold1/train/8107.png +../../data/yoloGtold1/train/8108.png +../../data/yoloGtold1/train/8109.png +../../data/yoloGtold1/train/8110.png +../../data/yoloGtold1/train/8111.png +../../data/yoloGtold1/train/8112.png +../../data/yoloGtold1/train/8113.png +../../data/yoloGtold1/train/8114.png +../../data/yoloGtold1/train/8115.png +../../data/yoloGtold1/train/8116.png +../../data/yoloGtold1/train/8117.png +../../data/yoloGtold1/train/8118.png +../../data/yoloGtold1/train/8119.png +../../data/yoloGtold1/train/8120.png +../../data/yoloGtold1/train/8121.png +../../data/yoloGtold1/train/8122.png +../../data/yoloGtold1/train/8123.png +../../data/yoloGtold1/train/8124.png +../../data/yoloGtold1/train/8125.png +../../data/yoloGtold1/train/8126.png +../../data/yoloGtold1/train/8127.png +../../data/yoloGtold1/train/8128.png +../../data/yoloGtold1/train/8129.png +../../data/yoloGtold1/train/8130.png +../../data/yoloGtold1/train/8131.png +../../data/yoloGtold1/train/8132.png +../../data/yoloGtold1/train/8133.png +../../data/yoloGtold1/train/8134.png +../../data/yoloGtold1/train/8135.png +../../data/yoloGtold1/train/8136.png +../../data/yoloGtold1/train/8137.png +../../data/yoloGtold1/train/8138.png +../../data/yoloGtold1/train/8139.png +../../data/yoloGtold1/train/8140.png +../../data/yoloGtold1/train/8141.png +../../data/yoloGtold1/train/8142.png +../../data/yoloGtold1/train/8143.png +../../data/yoloGtold1/train/8144.png +../../data/yoloGtold1/train/8145.png +../../data/yoloGtold1/train/8146.png +../../data/yoloGtold1/train/8147.png +../../data/yoloGtold1/train/8148.png +../../data/yoloGtold1/train/8149.png +../../data/yoloGtold1/train/8150.png +../../data/yoloGtold1/train/8151.png +../../data/yoloGtold1/train/8152.png +../../data/yoloGtold1/train/8153.png +../../data/yoloGtold1/train/8154.png +../../data/yoloGtold1/train/8155.png +../../data/yoloGtold1/train/8156.png +../../data/yoloGtold1/train/8157.png +../../data/yoloGtold1/train/8158.png +../../data/yoloGtold1/train/8159.png +../../data/yoloGtold1/train/8160.png +../../data/yoloGtold1/train/8161.png +../../data/yoloGtold1/train/8162.png +../../data/yoloGtold1/train/8163.png +../../data/yoloGtold1/train/8164.png +../../data/yoloGtold1/train/8165.png +../../data/yoloGtold1/train/8166.png +../../data/yoloGtold1/train/8167.png +../../data/yoloGtold1/train/8168.png +../../data/yoloGtold1/train/8169.png +../../data/yoloGtold1/train/8170.png +../../data/yoloGtold1/train/8171.png +../../data/yoloGtold1/train/8172.png +../../data/yoloGtold1/train/8173.png +../../data/yoloGtold1/train/8174.png +../../data/yoloGtold1/train/8175.png +../../data/yoloGtold1/train/8176.png +../../data/yoloGtold1/train/8177.png +../../data/yoloGtold1/train/8178.png +../../data/yoloGtold1/train/8179.png +../../data/yoloGtold1/train/8180.png +../../data/yoloGtold1/train/8181.png +../../data/yoloGtold1/train/8182.png +../../data/yoloGtold1/train/8183.png +../../data/yoloGtold1/train/8184.png +../../data/yoloGtold1/train/8185.png +../../data/yoloGtold1/train/8186.png +../../data/yoloGtold1/train/8187.png +../../data/yoloGtold1/train/8188.png +../../data/yoloGtold1/train/8189.png +../../data/yoloGtold1/train/8190.png +../../data/yoloGtold1/train/8191.png +../../data/yoloGtold1/train/8192.png +../../data/yoloGtold1/train/8193.png +../../data/yoloGtold1/train/8194.png +../../data/yoloGtold1/train/8195.png +../../data/yoloGtold1/train/8196.png +../../data/yoloGtold1/train/8197.png +../../data/yoloGtold1/train/8198.png +../../data/yoloGtold1/train/8199.png +../../data/yoloGtold1/train/8200.png +../../data/yoloGtold1/train/8201.png +../../data/yoloGtold1/train/8202.png +../../data/yoloGtold1/train/8203.png +../../data/yoloGtold1/train/8204.png +../../data/yoloGtold1/train/8205.png +../../data/yoloGtold1/train/8206.png +../../data/yoloGtold1/train/8207.png +../../data/yoloGtold1/train/8208.png +../../data/yoloGtold1/train/8209.png +../../data/yoloGtold1/train/8210.png +../../data/yoloGtold1/train/8211.png +../../data/yoloGtold1/train/8212.png +../../data/yoloGtold1/train/8213.png +../../data/yoloGtold1/train/8214.png +../../data/yoloGtold1/train/8215.png +../../data/yoloGtold1/train/8216.png +../../data/yoloGtold1/train/8217.png +../../data/yoloGtold1/train/8218.png +../../data/yoloGtold1/train/8219.png +../../data/yoloGtold1/train/8220.png +../../data/yoloGtold1/train/8221.png +../../data/yoloGtold1/train/8222.png +../../data/yoloGtold1/train/8223.png +../../data/yoloGtold1/train/8224.png +../../data/yoloGtold1/train/8225.png +../../data/yoloGtold1/train/8226.png +../../data/yoloGtold1/train/8227.png +../../data/yoloGtold1/train/8228.png +../../data/yoloGtold1/train/8229.png +../../data/yoloGtold1/train/8230.png +../../data/yoloGtold1/train/8231.png +../../data/yoloGtold1/train/8232.png +../../data/yoloGtold1/train/8233.png +../../data/yoloGtold1/train/8234.png +../../data/yoloGtold1/train/8235.png +../../data/yoloGtold1/train/8236.png +../../data/yoloGtold1/train/8237.png +../../data/yoloGtold1/train/8238.png +../../data/yoloGtold1/train/8239.png +../../data/yoloGtold1/train/8240.png +../../data/yoloGtold1/train/8241.png +../../data/yoloGtold1/train/8242.png +../../data/yoloGtold1/train/8243.png +../../data/yoloGtold1/train/8244.png +../../data/yoloGtold1/train/8245.png +../../data/yoloGtold1/train/8246.png +../../data/yoloGtold1/train/8247.png +../../data/yoloGtold1/train/8248.png +../../data/yoloGtold1/train/8249.png +../../data/yoloGtold1/train/8250.png +../../data/yoloGtold1/train/8251.png +../../data/yoloGtold1/train/8252.png +../../data/yoloGtold1/train/8253.png +../../data/yoloGtold1/train/8254.png +../../data/yoloGtold1/train/8255.png +../../data/yoloGtold1/train/8256.png +../../data/yoloGtold1/train/8257.png +../../data/yoloGtold1/train/8258.png +../../data/yoloGtold1/train/8259.png +../../data/yoloGtold1/train/8260.png +../../data/yoloGtold1/train/8261.png +../../data/yoloGtold1/train/8262.png +../../data/yoloGtold1/train/8263.png +../../data/yoloGtold1/train/8264.png +../../data/yoloGtold1/train/8265.png +../../data/yoloGtold1/train/8266.png +../../data/yoloGtold1/train/8267.png +../../data/yoloGtold1/train/8268.png +../../data/yoloGtold1/train/8269.png +../../data/yoloGtold1/train/8270.png +../../data/yoloGtold1/train/8271.png +../../data/yoloGtold1/train/8272.png +../../data/yoloGtold1/train/8273.png +../../data/yoloGtold1/train/8274.png +../../data/yoloGtold1/train/8275.png +../../data/yoloGtold1/train/8276.png +../../data/yoloGtold1/train/8277.png +../../data/yoloGtold1/train/8278.png +../../data/yoloGtold1/train/8279.png +../../data/yoloGtold1/train/8280.png +../../data/yoloGtold1/train/8281.png +../../data/yoloGtold1/train/8282.png +../../data/yoloGtold1/train/8283.png +../../data/yoloGtold1/train/8284.png +../../data/yoloGtold1/train/8285.png +../../data/yoloGtold1/train/8286.png +../../data/yoloGtold1/train/8287.png +../../data/yoloGtold1/train/8288.png +../../data/yoloGtold1/train/8289.png +../../data/yoloGtold1/train/8290.png +../../data/yoloGtold1/train/8291.png +../../data/yoloGtold1/train/8292.png +../../data/yoloGtold1/train/8293.png +../../data/yoloGtold1/train/8294.png +../../data/yoloGtold1/train/8295.png +../../data/yoloGtold1/train/8296.png +../../data/yoloGtold1/train/8297.png +../../data/yoloGtold1/train/8298.png +../../data/yoloGtold1/train/8299.png +../../data/yoloGtold1/train/8300.png +../../data/yoloGtold1/train/8301.png +../../data/yoloGtold1/train/8302.png +../../data/yoloGtold1/train/8303.png +../../data/yoloGtold1/train/8304.png +../../data/yoloGtold1/train/8305.png +../../data/yoloGtold1/train/8306.png +../../data/yoloGtold1/train/8307.png +../../data/yoloGtold1/train/8308.png +../../data/yoloGtold1/train/8309.png +../../data/yoloGtold1/train/8310.png +../../data/yoloGtold1/train/8311.png +../../data/yoloGtold1/train/8312.png +../../data/yoloGtold1/train/8313.png +../../data/yoloGtold1/train/8314.png +../../data/yoloGtold1/train/8315.png +../../data/yoloGtold1/train/8316.png +../../data/yoloGtold1/train/8317.png +../../data/yoloGtold1/train/8318.png +../../data/yoloGtold1/train/8319.png +../../data/yoloGtold1/train/8320.png +../../data/yoloGtold1/train/8321.png +../../data/yoloGtold1/train/8322.png +../../data/yoloGtold1/train/8323.png +../../data/yoloGtold1/train/8324.png +../../data/yoloGtold1/train/8325.png +../../data/yoloGtold1/train/8326.png +../../data/yoloGtold1/train/8327.png +../../data/yoloGtold1/train/8328.png +../../data/yoloGtold1/train/8329.png +../../data/yoloGtold1/train/8330.png +../../data/yoloGtold1/train/8331.png +../../data/yoloGtold1/train/8332.png +../../data/yoloGtold1/train/8333.png +../../data/yoloGtold1/train/8334.png +../../data/yoloGtold1/train/8335.png +../../data/yoloGtold1/train/8336.png +../../data/yoloGtold1/train/8337.png +../../data/yoloGtold1/train/8338.png +../../data/yoloGtold1/train/8339.png +../../data/yoloGtold1/train/8340.png +../../data/yoloGtold1/train/8341.png +../../data/yoloGtold1/train/8342.png +../../data/yoloGtold1/train/8343.png +../../data/yoloGtold1/train/8344.png +../../data/yoloGtold1/train/8345.png +../../data/yoloGtold1/train/8346.png +../../data/yoloGtold1/train/8347.png +../../data/yoloGtold1/train/8348.png +../../data/yoloGtold1/train/8349.png +../../data/yoloGtold1/train/8350.png +../../data/yoloGtold1/train/8351.png +../../data/yoloGtold1/train/8352.png +../../data/yoloGtold1/train/8353.png +../../data/yoloGtold1/train/8354.png +../../data/yoloGtold1/train/8355.png +../../data/yoloGtold1/train/8356.png +../../data/yoloGtold1/train/8357.png +../../data/yoloGtold1/train/8358.png +../../data/yoloGtold1/train/8359.png +../../data/yoloGtold1/train/8360.png +../../data/yoloGtold1/train/8361.png +../../data/yoloGtold1/train/8362.png +../../data/yoloGtold1/train/8363.png +../../data/yoloGtold1/train/8364.png +../../data/yoloGtold1/train/8365.png +../../data/yoloGtold1/train/8366.png +../../data/yoloGtold1/train/8367.png +../../data/yoloGtold1/train/8368.png +../../data/yoloGtold1/train/8369.png +../../data/yoloGtold1/train/8370.png +../../data/yoloGtold1/train/8371.png +../../data/yoloGtold1/train/8372.png +../../data/yoloGtold1/train/8373.png +../../data/yoloGtold1/train/8374.png +../../data/yoloGtold1/train/8375.png +../../data/yoloGtold1/train/8376.png +../../data/yoloGtold1/train/8377.png +../../data/yoloGtold1/train/8378.png +../../data/yoloGtold1/train/8379.png +../../data/yoloGtold1/train/8380.png +../../data/yoloGtold1/train/8381.png +../../data/yoloGtold1/train/8382.png +../../data/yoloGtold1/train/8383.png +../../data/yoloGtold1/train/8384.png +../../data/yoloGtold1/train/8385.png +../../data/yoloGtold1/train/8386.png +../../data/yoloGtold1/train/8387.png +../../data/yoloGtold1/train/8388.png +../../data/yoloGtold1/train/8389.png +../../data/yoloGtold1/train/8390.png +../../data/yoloGtold1/train/8391.png +../../data/yoloGtold1/train/8392.png +../../data/yoloGtold1/train/8393.png +../../data/yoloGtold1/train/8394.png +../../data/yoloGtold1/train/8395.png +../../data/yoloGtold1/train/8396.png +../../data/yoloGtold1/train/8397.png +../../data/yoloGtold1/train/8398.png +../../data/yoloGtold1/train/8399.png +../../data/yoloGtold1/train/8400.png +../../data/yoloGtold1/train/8401.png +../../data/yoloGtold1/train/8402.png +../../data/yoloGtold1/train/8403.png +../../data/yoloGtold1/train/8404.png +../../data/yoloGtold1/train/8405.png +../../data/yoloGtold1/train/8406.png +../../data/yoloGtold1/train/8407.png +../../data/yoloGtold1/train/8408.png +../../data/yoloGtold1/train/8409.png +../../data/yoloGtold1/train/8410.png +../../data/yoloGtold1/train/8411.png +../../data/yoloGtold1/train/8412.png +../../data/yoloGtold1/train/8413.png +../../data/yoloGtold1/train/8414.png +../../data/yoloGtold1/train/8415.png +../../data/yoloGtold1/train/8416.png +../../data/yoloGtold1/train/8417.png +../../data/yoloGtold1/train/8418.png +../../data/yoloGtold1/train/8419.png +../../data/yoloGtold1/train/8420.png +../../data/yoloGtold1/train/8421.png +../../data/yoloGtold1/train/8422.png +../../data/yoloGtold1/train/8423.png +../../data/yoloGtold1/train/8424.png +../../data/yoloGtold1/train/8425.png +../../data/yoloGtold1/train/8426.png +../../data/yoloGtold1/train/8427.png +../../data/yoloGtold1/train/8428.png +../../data/yoloGtold1/train/8429.png +../../data/yoloGtold1/train/8430.png +../../data/yoloGtold1/train/8431.png +../../data/yoloGtold1/train/8432.png +../../data/yoloGtold1/train/8433.png +../../data/yoloGtold1/train/8434.png +../../data/yoloGtold1/train/8435.png +../../data/yoloGtold1/train/8436.png +../../data/yoloGtold1/train/8437.png +../../data/yoloGtold1/train/8438.png +../../data/yoloGtold1/train/8439.png +../../data/yoloGtold1/train/8440.png +../../data/yoloGtold1/train/8441.png +../../data/yoloGtold1/train/8442.png +../../data/yoloGtold1/train/8443.png +../../data/yoloGtold1/train/8444.png +../../data/yoloGtold1/train/8445.png +../../data/yoloGtold1/train/8446.png +../../data/yoloGtold1/train/8447.png +../../data/yoloGtold1/train/8448.png +../../data/yoloGtold1/train/8449.png +../../data/yoloGtold1/train/8450.png +../../data/yoloGtold1/train/8451.png +../../data/yoloGtold1/train/8452.png +../../data/yoloGtold1/train/8453.png +../../data/yoloGtold1/train/8454.png +../../data/yoloGtold1/train/8455.png +../../data/yoloGtold1/train/8456.png +../../data/yoloGtold1/train/8457.png +../../data/yoloGtold1/train/8458.png +../../data/yoloGtold1/train/8459.png +../../data/yoloGtold1/train/8460.png +../../data/yoloGtold1/train/8461.png +../../data/yoloGtold1/train/8462.png +../../data/yoloGtold1/train/8463.png +../../data/yoloGtold1/train/8464.png +../../data/yoloGtold1/train/8465.png +../../data/yoloGtold1/train/8466.png +../../data/yoloGtold1/train/8467.png +../../data/yoloGtold1/train/8468.png +../../data/yoloGtold1/train/8469.png +../../data/yoloGtold1/train/8470.png +../../data/yoloGtold1/train/8471.png +../../data/yoloGtold1/train/8472.png +../../data/yoloGtold1/train/8473.png +../../data/yoloGtold1/train/8474.png +../../data/yoloGtold1/train/8475.png +../../data/yoloGtold1/train/8476.png +../../data/yoloGtold1/train/8477.png +../../data/yoloGtold1/train/8478.png +../../data/yoloGtold1/train/8479.png +../../data/yoloGtold1/train/8480.png +../../data/yoloGtold1/train/8481.png +../../data/yoloGtold1/train/8482.png +../../data/yoloGtold1/train/8483.png +../../data/yoloGtold1/train/8484.png +../../data/yoloGtold1/train/8485.png +../../data/yoloGtold1/train/8486.png +../../data/yoloGtold1/train/8487.png +../../data/yoloGtold1/train/8488.png +../../data/yoloGtold1/train/8489.png +../../data/yoloGtold1/train/8490.png +../../data/yoloGtold1/train/8491.png +../../data/yoloGtold1/train/8492.png +../../data/yoloGtold1/train/8493.png +../../data/yoloGtold1/train/8494.png +../../data/yoloGtold1/train/8495.png +../../data/yoloGtold1/train/8496.png +../../data/yoloGtold1/train/8497.png +../../data/yoloGtold1/train/8498.png +../../data/yoloGtold1/train/8499.png +../../data/yoloGtold1/train/8500.png +../../data/yoloGtold1/train/8501.png +../../data/yoloGtold1/train/8502.png +../../data/yoloGtold1/train/8503.png +../../data/yoloGtold1/train/8504.png +../../data/yoloGtold1/train/8505.png +../../data/yoloGtold1/train/8506.png +../../data/yoloGtold1/train/8507.png +../../data/yoloGtold1/train/8508.png +../../data/yoloGtold1/train/8509.png +../../data/yoloGtold1/train/8510.png +../../data/yoloGtold1/train/8511.png +../../data/yoloGtold1/train/8512.png +../../data/yoloGtold1/train/8513.png +../../data/yoloGtold1/train/8514.png +../../data/yoloGtold1/train/8515.png +../../data/yoloGtold1/train/8516.png +../../data/yoloGtold1/train/8517.png +../../data/yoloGtold1/train/8518.png +../../data/yoloGtold1/train/8519.png +../../data/yoloGtold1/train/8520.png +../../data/yoloGtold1/train/8521.png +../../data/yoloGtold1/train/8522.png +../../data/yoloGtold1/train/8523.png +../../data/yoloGtold1/train/8524.png +../../data/yoloGtold1/train/8525.png +../../data/yoloGtold1/train/8526.png +../../data/yoloGtold1/train/8527.png +../../data/yoloGtold1/train/8528.png +../../data/yoloGtold1/train/8529.png +../../data/yoloGtold1/train/8530.png +../../data/yoloGtold1/train/8531.png +../../data/yoloGtold1/train/8532.png +../../data/yoloGtold1/train/8533.png +../../data/yoloGtold1/train/8534.png +../../data/yoloGtold1/train/8535.png +../../data/yoloGtold1/train/8536.png +../../data/yoloGtold1/train/8537.png +../../data/yoloGtold1/train/8538.png +../../data/yoloGtold1/train/8539.png +../../data/yoloGtold1/train/8540.png +../../data/yoloGtold1/train/8541.png +../../data/yoloGtold1/train/8542.png +../../data/yoloGtold1/train/8543.png +../../data/yoloGtold1/train/8544.png +../../data/yoloGtold1/train/8545.png +../../data/yoloGtold1/train/8546.png +../../data/yoloGtold1/train/8547.png +../../data/yoloGtold1/train/8548.png +../../data/yoloGtold1/train/8549.png +../../data/yoloGtold1/train/8550.png +../../data/yoloGtold1/train/8551.png +../../data/yoloGtold1/train/8552.png +../../data/yoloGtold1/train/8553.png +../../data/yoloGtold1/train/8554.png +../../data/yoloGtold1/train/8555.png +../../data/yoloGtold1/train/8556.png +../../data/yoloGtold1/train/8557.png +../../data/yoloGtold1/train/8558.png +../../data/yoloGtold1/train/8559.png +../../data/yoloGtold1/train/8560.png +../../data/yoloGtold1/train/8561.png +../../data/yoloGtold1/train/8562.png +../../data/yoloGtold1/train/8563.png +../../data/yoloGtold1/train/8564.png +../../data/yoloGtold1/train/8565.png +../../data/yoloGtold1/train/8566.png +../../data/yoloGtold1/train/8567.png +../../data/yoloGtold1/train/8568.png +../../data/yoloGtold1/train/8569.png +../../data/yoloGtold1/train/8570.png +../../data/yoloGtold1/train/8571.png +../../data/yoloGtold1/train/8572.png +../../data/yoloGtold1/train/8573.png +../../data/yoloGtold1/train/8574.png +../../data/yoloGtold1/train/8575.png +../../data/yoloGtold1/train/8576.png +../../data/yoloGtold1/train/8577.png +../../data/yoloGtold1/train/8578.png +../../data/yoloGtold1/train/8579.png +../../data/yoloGtold1/train/8580.png +../../data/yoloGtold1/train/8581.png +../../data/yoloGtold1/train/8582.png +../../data/yoloGtold1/train/8583.png +../../data/yoloGtold1/train/8584.png +../../data/yoloGtold1/train/8585.png +../../data/yoloGtold1/train/8586.png +../../data/yoloGtold1/train/8587.png +../../data/yoloGtold1/train/8588.png +../../data/yoloGtold1/train/8589.png +../../data/yoloGtold1/train/8590.png +../../data/yoloGtold1/train/8591.png +../../data/yoloGtold1/train/8592.png +../../data/yoloGtold1/train/8593.png +../../data/yoloGtold1/train/8594.png +../../data/yoloGtold1/train/8595.png +../../data/yoloGtold1/train/8596.png +../../data/yoloGtold1/train/8597.png +../../data/yoloGtold1/train/8598.png +../../data/yoloGtold1/train/8599.png +../../data/yoloGtold1/train/8600.png +../../data/yoloGtold1/train/8601.png +../../data/yoloGtold1/train/8602.png +../../data/yoloGtold1/train/8603.png +../../data/yoloGtold1/train/8604.png +../../data/yoloGtold1/train/8605.png +../../data/yoloGtold1/train/8606.png +../../data/yoloGtold1/train/8607.png +../../data/yoloGtold1/train/8608.png +../../data/yoloGtold1/train/8609.png +../../data/yoloGtold1/train/8610.png +../../data/yoloGtold1/train/8611.png +../../data/yoloGtold1/train/8612.png +../../data/yoloGtold1/train/8613.png +../../data/yoloGtold1/train/8614.png +../../data/yoloGtold1/train/8615.png +../../data/yoloGtold1/train/8616.png +../../data/yoloGtold1/train/8617.png +../../data/yoloGtold1/train/8618.png +../../data/yoloGtold1/train/8619.png +../../data/yoloGtold1/train/8620.png +../../data/yoloGtold1/train/8621.png +../../data/yoloGtold1/train/8622.png +../../data/yoloGtold1/train/8623.png +../../data/yoloGtold1/train/8624.png +../../data/yoloGtold1/train/8625.png +../../data/yoloGtold1/train/8626.png +../../data/yoloGtold1/train/8627.png +../../data/yoloGtold1/train/8628.png +../../data/yoloGtold1/train/8629.png +../../data/yoloGtold1/train/8630.png +../../data/yoloGtold1/train/8631.png +../../data/yoloGtold1/train/8632.png +../../data/yoloGtold1/train/8633.png +../../data/yoloGtold1/train/8634.png +../../data/yoloGtold1/train/8635.png +../../data/yoloGtold1/train/8636.png +../../data/yoloGtold1/train/8637.png +../../data/yoloGtold1/train/8638.png +../../data/yoloGtold1/train/8639.png +../../data/yoloGtold1/train/8640.png +../../data/yoloGtold1/train/8641.png +../../data/yoloGtold1/train/8642.png +../../data/yoloGtold1/train/8643.png +../../data/yoloGtold1/train/8644.png +../../data/yoloGtold1/train/8645.png +../../data/yoloGtold1/train/8646.png +../../data/yoloGtold1/train/8647.png +../../data/yoloGtold1/train/8648.png +../../data/yoloGtold1/train/8649.png +../../data/yoloGtold1/train/8650.png +../../data/yoloGtold1/train/8651.png +../../data/yoloGtold1/train/8652.png +../../data/yoloGtold1/train/8653.png +../../data/yoloGtold1/train/8654.png +../../data/yoloGtold1/train/8655.png +../../data/yoloGtold1/train/8656.png +../../data/yoloGtold1/train/8657.png +../../data/yoloGtold1/train/8658.png +../../data/yoloGtold1/train/8659.png +../../data/yoloGtold1/train/8660.png +../../data/yoloGtold1/train/8661.png +../../data/yoloGtold1/train/8662.png +../../data/yoloGtold1/train/8663.png +../../data/yoloGtold1/train/8664.png +../../data/yoloGtold1/train/8665.png +../../data/yoloGtold1/train/8666.png +../../data/yoloGtold1/train/8667.png +../../data/yoloGtold1/train/8668.png +../../data/yoloGtold1/train/8669.png +../../data/yoloGtold1/train/8670.png +../../data/yoloGtold1/train/8671.png +../../data/yoloGtold1/train/8672.png +../../data/yoloGtold1/train/8673.png +../../data/yoloGtold1/train/8674.png +../../data/yoloGtold1/train/8675.png +../../data/yoloGtold1/train/8676.png +../../data/yoloGtold1/train/8677.png +../../data/yoloGtold1/train/8678.png +../../data/yoloGtold1/train/8679.png +../../data/yoloGtold1/train/8680.png +../../data/yoloGtold1/train/8681.png +../../data/yoloGtold1/train/8682.png +../../data/yoloGtold1/train/8683.png +../../data/yoloGtold1/train/8684.png +../../data/yoloGtold1/train/8685.png +../../data/yoloGtold1/train/8686.png +../../data/yoloGtold1/train/8687.png +../../data/yoloGtold1/train/8688.png +../../data/yoloGtold1/train/8689.png +../../data/yoloGtold1/train/8690.png +../../data/yoloGtold1/train/8691.png +../../data/yoloGtold1/train/8692.png +../../data/yoloGtold1/train/8693.png +../../data/yoloGtold1/train/8694.png +../../data/yoloGtold1/train/8695.png +../../data/yoloGtold1/train/8696.png +../../data/yoloGtold1/train/8697.png +../../data/yoloGtold1/train/8698.png +../../data/yoloGtold1/train/8699.png +../../data/yoloGtold1/train/8700.png +../../data/yoloGtold1/train/8701.png +../../data/yoloGtold1/train/8702.png +../../data/yoloGtold1/train/8703.png +../../data/yoloGtold1/train/8704.png +../../data/yoloGtold1/train/8705.png +../../data/yoloGtold1/train/8706.png +../../data/yoloGtold1/train/8707.png +../../data/yoloGtold1/train/8708.png +../../data/yoloGtold1/train/8709.png +../../data/yoloGtold1/train/8710.png +../../data/yoloGtold1/train/8711.png +../../data/yoloGtold1/train/8712.png +../../data/yoloGtold1/train/8713.png +../../data/yoloGtold1/train/8714.png +../../data/yoloGtold1/train/8715.png +../../data/yoloGtold1/train/8716.png +../../data/yoloGtold1/train/8717.png +../../data/yoloGtold1/train/8718.png +../../data/yoloGtold1/train/8719.png +../../data/yoloGtold1/train/8720.png +../../data/yoloGtold1/train/8721.png +../../data/yoloGtold1/train/8722.png +../../data/yoloGtold1/train/8723.png +../../data/yoloGtold1/train/8724.png +../../data/yoloGtold1/train/8725.png +../../data/yoloGtold1/train/8726.png +../../data/yoloGtold1/train/8727.png +../../data/yoloGtold1/train/8728.png +../../data/yoloGtold1/train/8729.png +../../data/yoloGtold1/train/8730.png +../../data/yoloGtold1/train/8731.png +../../data/yoloGtold1/train/8732.png +../../data/yoloGtold1/train/8733.png +../../data/yoloGtold1/train/8734.png +../../data/yoloGtold1/train/8735.png +../../data/yoloGtold1/train/8736.png +../../data/yoloGtold1/train/8737.png +../../data/yoloGtold1/train/8738.png +../../data/yoloGtold1/train/8739.png +../../data/yoloGtold1/train/8740.png +../../data/yoloGtold1/train/8741.png +../../data/yoloGtold1/train/8742.png +../../data/yoloGtold1/train/8743.png +../../data/yoloGtold1/train/8744.png +../../data/yoloGtold1/train/8745.png +../../data/yoloGtold1/train/8746.png +../../data/yoloGtold1/train/8747.png +../../data/yoloGtold1/train/8748.png +../../data/yoloGtold1/train/8749.png +../../data/yoloGtold1/train/8750.png +../../data/yoloGtold1/train/8751.png +../../data/yoloGtold1/train/8752.png +../../data/yoloGtold1/train/8753.png +../../data/yoloGtold1/train/8754.png +../../data/yoloGtold1/train/8755.png +../../data/yoloGtold1/train/8756.png +../../data/yoloGtold1/train/8757.png +../../data/yoloGtold1/train/8758.png +../../data/yoloGtold1/train/8759.png +../../data/yoloGtold1/train/8760.png +../../data/yoloGtold1/train/8761.png +../../data/yoloGtold1/train/8762.png +../../data/yoloGtold1/train/8763.png +../../data/yoloGtold1/train/8764.png +../../data/yoloGtold1/train/8765.png +../../data/yoloGtold1/train/8766.png +../../data/yoloGtold1/train/8767.png +../../data/yoloGtold1/train/8768.png +../../data/yoloGtold1/train/8769.png +../../data/yoloGtold1/train/8770.png +../../data/yoloGtold1/train/8771.png +../../data/yoloGtold1/train/8772.png +../../data/yoloGtold1/train/8773.png +../../data/yoloGtold1/train/8774.png +../../data/yoloGtold1/train/8775.png +../../data/yoloGtold1/train/8776.png +../../data/yoloGtold1/train/8777.png +../../data/yoloGtold1/train/8778.png +../../data/yoloGtold1/train/8779.png +../../data/yoloGtold1/train/8780.png +../../data/yoloGtold1/train/8781.png +../../data/yoloGtold1/train/8782.png +../../data/yoloGtold1/train/8783.png +../../data/yoloGtold1/train/8784.png +../../data/yoloGtold1/train/8785.png +../../data/yoloGtold1/train/8786.png +../../data/yoloGtold1/train/8787.png +../../data/yoloGtold1/train/8788.png +../../data/yoloGtold1/train/8789.png +../../data/yoloGtold1/train/8790.png +../../data/yoloGtold1/train/8791.png +../../data/yoloGtold1/train/8792.png +../../data/yoloGtold1/train/8793.png +../../data/yoloGtold1/train/8794.png +../../data/yoloGtold1/train/8795.png +../../data/yoloGtold1/train/8796.png +../../data/yoloGtold1/train/8797.png +../../data/yoloGtold1/train/8798.png +../../data/yoloGtold1/train/8799.png +../../data/yoloGtold1/train/8800.png +../../data/yoloGtold1/train/8801.png +../../data/yoloGtold1/train/8802.png +../../data/yoloGtold1/train/8803.png +../../data/yoloGtold1/train/8804.png +../../data/yoloGtold1/train/8805.png +../../data/yoloGtold1/train/8806.png +../../data/yoloGtold1/train/8807.png +../../data/yoloGtold1/train/8808.png +../../data/yoloGtold1/train/8809.png +../../data/yoloGtold1/train/8810.png +../../data/yoloGtold1/train/8811.png +../../data/yoloGtold1/train/8812.png +../../data/yoloGtold1/train/8813.png +../../data/yoloGtold1/train/8814.png +../../data/yoloGtold1/train/8815.png +../../data/yoloGtold1/train/8816.png +../../data/yoloGtold1/train/8817.png +../../data/yoloGtold1/train/8818.png +../../data/yoloGtold1/train/8819.png +../../data/yoloGtold1/train/8820.png +../../data/yoloGtold1/train/8821.png +../../data/yoloGtold1/train/8822.png +../../data/yoloGtold1/train/8823.png +../../data/yoloGtold1/train/8824.png +../../data/yoloGtold1/train/8825.png +../../data/yoloGtold1/train/8826.png +../../data/yoloGtold1/train/8827.png +../../data/yoloGtold1/train/8828.png +../../data/yoloGtold1/train/8829.png +../../data/yoloGtold1/train/8830.png +../../data/yoloGtold1/train/8831.png +../../data/yoloGtold1/train/8832.png +../../data/yoloGtold1/train/8833.png +../../data/yoloGtold1/train/8834.png +../../data/yoloGtold1/train/8835.png +../../data/yoloGtold1/train/8836.png +../../data/yoloGtold1/train/8837.png +../../data/yoloGtold1/train/8838.png +../../data/yoloGtold1/train/8839.png +../../data/yoloGtold1/train/8840.png +../../data/yoloGtold1/train/8841.png +../../data/yoloGtold1/train/8842.png +../../data/yoloGtold1/train/8843.png +../../data/yoloGtold1/train/8844.png +../../data/yoloGtold1/train/8845.png +../../data/yoloGtold1/train/8846.png +../../data/yoloGtold1/train/8847.png +../../data/yoloGtold1/train/8848.png +../../data/yoloGtold1/train/8849.png +../../data/yoloGtold1/train/8850.png +../../data/yoloGtold1/train/8851.png +../../data/yoloGtold1/train/8852.png +../../data/yoloGtold1/train/8853.png +../../data/yoloGtold1/train/8854.png +../../data/yoloGtold1/train/8855.png +../../data/yoloGtold1/train/8856.png +../../data/yoloGtold1/train/8857.png +../../data/yoloGtold1/train/8858.png +../../data/yoloGtold1/train/8859.png +../../data/yoloGtold1/train/8860.png +../../data/yoloGtold1/train/8861.png +../../data/yoloGtold1/train/8862.png +../../data/yoloGtold1/train/8863.png +../../data/yoloGtold1/train/8864.png +../../data/yoloGtold1/train/8865.png +../../data/yoloGtold1/train/8866.png +../../data/yoloGtold1/train/8867.png +../../data/yoloGtold1/train/8868.png +../../data/yoloGtold1/train/8869.png +../../data/yoloGtold1/train/8870.png +../../data/yoloGtold1/train/8871.png +../../data/yoloGtold1/train/8872.png +../../data/yoloGtold1/train/8873.png +../../data/yoloGtold1/train/8874.png +../../data/yoloGtold1/train/8875.png +../../data/yoloGtold1/train/8876.png +../../data/yoloGtold1/train/8877.png +../../data/yoloGtold1/train/8878.png +../../data/yoloGtold1/train/8879.png +../../data/yoloGtold1/train/8880.png +../../data/yoloGtold1/train/8881.png +../../data/yoloGtold1/train/8882.png +../../data/yoloGtold1/train/8883.png +../../data/yoloGtold1/train/8884.png +../../data/yoloGtold1/train/8885.png +../../data/yoloGtold1/train/8886.png +../../data/yoloGtold1/train/8887.png +../../data/yoloGtold1/train/8888.png +../../data/yoloGtold1/train/8889.png +../../data/yoloGtold1/train/8890.png +../../data/yoloGtold1/train/8891.png +../../data/yoloGtold1/train/8892.png +../../data/yoloGtold1/train/8893.png +../../data/yoloGtold1/train/8894.png +../../data/yoloGtold1/train/8895.png +../../data/yoloGtold1/train/8896.png +../../data/yoloGtold1/train/8897.png +../../data/yoloGtold1/train/8898.png +../../data/yoloGtold1/train/8899.png +../../data/yoloGtold1/train/8900.png +../../data/yoloGtold1/train/8901.png +../../data/yoloGtold1/train/8902.png +../../data/yoloGtold1/train/8903.png +../../data/yoloGtold1/train/8904.png +../../data/yoloGtold1/train/8905.png +../../data/yoloGtold1/train/8906.png +../../data/yoloGtold1/train/8907.png +../../data/yoloGtold1/train/8908.png +../../data/yoloGtold1/train/8909.png +../../data/yoloGtold1/train/8910.png +../../data/yoloGtold1/train/8911.png +../../data/yoloGtold1/train/8912.png +../../data/yoloGtold1/train/8913.png +../../data/yoloGtold1/train/8914.png +../../data/yoloGtold1/train/8915.png +../../data/yoloGtold1/train/8916.png +../../data/yoloGtold1/train/8917.png +../../data/yoloGtold1/train/8918.png +../../data/yoloGtold1/train/8919.png +../../data/yoloGtold1/train/8920.png +../../data/yoloGtold1/train/8921.png +../../data/yoloGtold1/train/8922.png +../../data/yoloGtold1/train/8923.png +../../data/yoloGtold1/train/8924.png +../../data/yoloGtold1/train/8925.png +../../data/yoloGtold1/train/8926.png +../../data/yoloGtold1/train/8927.png +../../data/yoloGtold1/train/8928.png +../../data/yoloGtold1/train/8929.png +../../data/yoloGtold1/train/8930.png +../../data/yoloGtold1/train/8931.png +../../data/yoloGtold1/train/8932.png +../../data/yoloGtold1/train/8933.png +../../data/yoloGtold1/train/8934.png +../../data/yoloGtold1/train/8935.png +../../data/yoloGtold1/train/8936.png +../../data/yoloGtold1/train/8937.png +../../data/yoloGtold1/train/8938.png +../../data/yoloGtold1/train/8939.png +../../data/yoloGtold1/train/8940.png +../../data/yoloGtold1/train/8941.png +../../data/yoloGtold1/train/8942.png +../../data/yoloGtold1/train/8943.png +../../data/yoloGtold1/train/8944.png +../../data/yoloGtold1/train/8945.png +../../data/yoloGtold1/train/8946.png +../../data/yoloGtold1/train/8947.png +../../data/yoloGtold1/train/8948.png +../../data/yoloGtold1/train/8949.png +../../data/yoloGtold1/train/8950.png +../../data/yoloGtold1/train/8951.png +../../data/yoloGtold1/train/8952.png +../../data/yoloGtold1/train/8953.png +../../data/yoloGtold1/train/8954.png +../../data/yoloGtold1/train/8955.png +../../data/yoloGtold1/train/8956.png +../../data/yoloGtold1/train/8957.png +../../data/yoloGtold1/train/8958.png +../../data/yoloGtold1/train/8959.png +../../data/yoloGtold1/train/8960.png +../../data/yoloGtold1/train/8961.png +../../data/yoloGtold1/train/8962.png +../../data/yoloGtold1/train/8963.png +../../data/yoloGtold1/train/8964.png +../../data/yoloGtold1/train/8965.png +../../data/yoloGtold1/train/8966.png +../../data/yoloGtold1/train/8967.png +../../data/yoloGtold1/train/8968.png +../../data/yoloGtold1/train/8969.png +../../data/yoloGtold1/train/8970.png +../../data/yoloGtold1/train/8971.png +../../data/yoloGtold1/train/8972.png +../../data/yoloGtold1/train/8973.png +../../data/yoloGtold1/train/8974.png +../../data/yoloGtold1/train/8975.png +../../data/yoloGtold1/train/8976.png +../../data/yoloGtold1/train/8977.png +../../data/yoloGtold1/train/8978.png +../../data/yoloGtold1/train/8979.png +../../data/yoloGtold1/train/8980.png +../../data/yoloGtold1/train/8981.png +../../data/yoloGtold1/train/8982.png +../../data/yoloGtold1/train/8983.png +../../data/yoloGtold1/train/8984.png +../../data/yoloGtold1/train/8985.png +../../data/yoloGtold1/train/8986.png +../../data/yoloGtold1/train/8987.png +../../data/yoloGtold1/train/8988.png +../../data/yoloGtold1/train/8989.png +../../data/yoloGtold1/train/8990.png +../../data/yoloGtold1/train/8991.png +../../data/yoloGtold1/train/8992.png +../../data/yoloGtold1/train/8993.png +../../data/yoloGtold1/train/8994.png +../../data/yoloGtold1/train/8995.png +../../data/yoloGtold1/train/8996.png +../../data/yoloGtold1/train/8997.png +../../data/yoloGtold1/train/8998.png +../../data/yoloGtold1/train/8999.png +../../data/yoloGtold1/train/9000.png +../../data/yoloGtold1/train/9001.png +../../data/yoloGtold1/train/9002.png +../../data/yoloGtold1/train/9003.png +../../data/yoloGtold1/train/9004.png +../../data/yoloGtold1/train/9005.png +../../data/yoloGtold1/train/9006.png +../../data/yoloGtold1/train/9007.png +../../data/yoloGtold1/train/9008.png +../../data/yoloGtold1/train/9009.png +../../data/yoloGtold1/train/9010.png +../../data/yoloGtold1/train/9011.png +../../data/yoloGtold1/train/9012.png +../../data/yoloGtold1/train/9013.png +../../data/yoloGtold1/train/9014.png +../../data/yoloGtold1/train/9015.png +../../data/yoloGtold1/train/9016.png +../../data/yoloGtold1/train/9017.png +../../data/yoloGtold1/train/9018.png +../../data/yoloGtold1/train/9019.png +../../data/yoloGtold1/train/9020.png +../../data/yoloGtold1/train/9021.png +../../data/yoloGtold1/train/9022.png +../../data/yoloGtold1/train/9023.png +../../data/yoloGtold1/train/9024.png +../../data/yoloGtold1/train/9025.png +../../data/yoloGtold1/train/9026.png +../../data/yoloGtold1/train/9027.png +../../data/yoloGtold1/train/9028.png +../../data/yoloGtold1/train/9029.png +../../data/yoloGtold1/train/9030.png +../../data/yoloGtold1/train/9031.png +../../data/yoloGtold1/train/9032.png +../../data/yoloGtold1/train/9033.png +../../data/yoloGtold1/train/9034.png +../../data/yoloGtold1/train/9035.png +../../data/yoloGtold1/train/9036.png +../../data/yoloGtold1/train/9037.png +../../data/yoloGtold1/train/9038.png +../../data/yoloGtold1/train/9039.png +../../data/yoloGtold1/train/9040.png +../../data/yoloGtold1/train/9041.png +../../data/yoloGtold1/train/9042.png +../../data/yoloGtold1/train/9043.png +../../data/yoloGtold1/train/9044.png +../../data/yoloGtold1/train/9045.png +../../data/yoloGtold1/train/9046.png +../../data/yoloGtold1/train/9047.png +../../data/yoloGtold1/train/9048.png +../../data/yoloGtold1/train/9049.png +../../data/yoloGtold1/train/9050.png +../../data/yoloGtold1/train/9051.png +../../data/yoloGtold1/train/9052.png +../../data/yoloGtold1/train/9053.png +../../data/yoloGtold1/train/9054.png +../../data/yoloGtold1/train/9055.png +../../data/yoloGtold1/train/9056.png +../../data/yoloGtold1/train/9057.png +../../data/yoloGtold1/train/9058.png +../../data/yoloGtold1/train/9059.png +../../data/yoloGtold1/train/9060.png +../../data/yoloGtold1/train/9061.png +../../data/yoloGtold1/train/9062.png +../../data/yoloGtold1/train/9063.png +../../data/yoloGtold1/train/9064.png +../../data/yoloGtold1/train/9065.png +../../data/yoloGtold1/train/9066.png +../../data/yoloGtold1/train/9067.png +../../data/yoloGtold1/train/9068.png +../../data/yoloGtold1/train/9069.png +../../data/yoloGtold1/train/9070.png +../../data/yoloGtold1/train/9071.png +../../data/yoloGtold1/train/9072.png +../../data/yoloGtold1/train/9073.png +../../data/yoloGtold1/train/9074.png +../../data/yoloGtold1/train/9075.png +../../data/yoloGtold1/train/9076.png +../../data/yoloGtold1/train/9077.png +../../data/yoloGtold1/train/9078.png +../../data/yoloGtold1/train/9079.png +../../data/yoloGtold1/train/9080.png +../../data/yoloGtold1/train/9081.png +../../data/yoloGtold1/train/9082.png +../../data/yoloGtold1/train/9083.png +../../data/yoloGtold1/train/9084.png +../../data/yoloGtold1/train/9085.png +../../data/yoloGtold1/train/9086.png +../../data/yoloGtold1/train/9087.png +../../data/yoloGtold1/train/9088.png +../../data/yoloGtold1/train/9089.png +../../data/yoloGtold1/train/9090.png +../../data/yoloGtold1/train/9091.png +../../data/yoloGtold1/train/9092.png +../../data/yoloGtold1/train/9093.png +../../data/yoloGtold1/train/9094.png +../../data/yoloGtold1/train/9095.png +../../data/yoloGtold1/train/9096.png +../../data/yoloGtold1/train/9097.png +../../data/yoloGtold1/train/9098.png +../../data/yoloGtold1/train/9099.png +../../data/yoloGtold1/train/9100.png +../../data/yoloGtold1/train/9101.png +../../data/yoloGtold1/train/9102.png +../../data/yoloGtold1/train/9103.png +../../data/yoloGtold1/train/9104.png +../../data/yoloGtold1/train/9105.png +../../data/yoloGtold1/train/9106.png +../../data/yoloGtold1/train/9107.png +../../data/yoloGtold1/train/9108.png +../../data/yoloGtold1/train/9109.png +../../data/yoloGtold1/train/9110.png +../../data/yoloGtold1/train/9111.png +../../data/yoloGtold1/train/9112.png +../../data/yoloGtold1/train/9113.png +../../data/yoloGtold1/train/9114.png +../../data/yoloGtold1/train/9115.png +../../data/yoloGtold1/train/9116.png +../../data/yoloGtold1/train/9117.png +../../data/yoloGtold1/train/9118.png +../../data/yoloGtold1/train/9119.png +../../data/yoloGtold1/train/9120.png +../../data/yoloGtold1/train/9121.png +../../data/yoloGtold1/train/9122.png +../../data/yoloGtold1/train/9123.png +../../data/yoloGtold1/train/9124.png +../../data/yoloGtold1/train/9125.png +../../data/yoloGtold1/train/9126.png +../../data/yoloGtold1/train/9127.png +../../data/yoloGtold1/train/9128.png +../../data/yoloGtold1/train/9129.png +../../data/yoloGtold1/train/9130.png +../../data/yoloGtold1/train/9131.png +../../data/yoloGtold1/train/9132.png +../../data/yoloGtold1/train/9133.png +../../data/yoloGtold1/train/9134.png +../../data/yoloGtold1/train/9135.png +../../data/yoloGtold1/train/9136.png +../../data/yoloGtold1/train/9137.png +../../data/yoloGtold1/train/9138.png +../../data/yoloGtold1/train/9139.png +../../data/yoloGtold1/train/9140.png +../../data/yoloGtold1/train/9141.png +../../data/yoloGtold1/train/9142.png +../../data/yoloGtold1/train/9143.png +../../data/yoloGtold1/train/9144.png +../../data/yoloGtold1/train/9145.png +../../data/yoloGtold1/train/9146.png +../../data/yoloGtold1/train/9147.png +../../data/yoloGtold1/train/9148.png +../../data/yoloGtold1/train/9149.png +../../data/yoloGtold1/train/9150.png +../../data/yoloGtold1/train/9151.png +../../data/yoloGtold1/train/9152.png +../../data/yoloGtold1/train/9153.png +../../data/yoloGtold1/train/9154.png +../../data/yoloGtold1/train/9155.png +../../data/yoloGtold1/train/9156.png +../../data/yoloGtold1/train/9157.png +../../data/yoloGtold1/train/9158.png +../../data/yoloGtold1/train/9159.png +../../data/yoloGtold1/train/9160.png +../../data/yoloGtold1/train/9161.png +../../data/yoloGtold1/train/9162.png +../../data/yoloGtold1/train/9163.png +../../data/yoloGtold1/train/9164.png +../../data/yoloGtold1/train/9165.png +../../data/yoloGtold1/train/9166.png +../../data/yoloGtold1/train/9167.png +../../data/yoloGtold1/train/9168.png +../../data/yoloGtold1/train/9169.png +../../data/yoloGtold1/train/9170.png +../../data/yoloGtold1/train/9171.png +../../data/yoloGtold1/train/9172.png +../../data/yoloGtold1/train/9173.png +../../data/yoloGtold1/train/9174.png +../../data/yoloGtold1/train/9175.png +../../data/yoloGtold1/train/9176.png +../../data/yoloGtold1/train/9177.png +../../data/yoloGtold1/train/9178.png +../../data/yoloGtold1/train/9179.png +../../data/yoloGtold1/train/9180.png +../../data/yoloGtold1/train/9181.png +../../data/yoloGtold1/train/9182.png +../../data/yoloGtold1/train/9183.png +../../data/yoloGtold1/train/9184.png +../../data/yoloGtold1/train/9185.png +../../data/yoloGtold1/train/9186.png +../../data/yoloGtold1/train/9187.png +../../data/yoloGtold1/train/9188.png +../../data/yoloGtold1/train/9189.png +../../data/yoloGtold1/train/9190.png +../../data/yoloGtold1/train/9191.png +../../data/yoloGtold1/train/9192.png +../../data/yoloGtold1/train/9193.png +../../data/yoloGtold1/train/9194.png +../../data/yoloGtold1/train/9195.png +../../data/yoloGtold1/train/9196.png +../../data/yoloGtold1/train/9197.png +../../data/yoloGtold1/train/9198.png +../../data/yoloGtold1/train/9199.png +../../data/yoloGtold1/train/9200.png +../../data/yoloGtold1/train/9201.png +../../data/yoloGtold1/train/9202.png +../../data/yoloGtold1/train/9203.png +../../data/yoloGtold1/train/9204.png +../../data/yoloGtold1/train/9205.png +../../data/yoloGtold1/train/9206.png +../../data/yoloGtold1/train/9207.png +../../data/yoloGtold1/train/9208.png +../../data/yoloGtold1/train/9209.png +../../data/yoloGtold1/train/9210.png +../../data/yoloGtold1/train/9211.png +../../data/yoloGtold1/train/9212.png +../../data/yoloGtold1/train/9213.png +../../data/yoloGtold1/train/9214.png +../../data/yoloGtold1/train/9215.png +../../data/yoloGtold1/train/9216.png +../../data/yoloGtold1/train/9217.png +../../data/yoloGtold1/train/9218.png +../../data/yoloGtold1/train/9219.png +../../data/yoloGtold1/train/9220.png +../../data/yoloGtold1/train/9221.png +../../data/yoloGtold1/train/9222.png +../../data/yoloGtold1/train/9223.png +../../data/yoloGtold1/train/9224.png +../../data/yoloGtold1/train/9225.png +../../data/yoloGtold1/train/9226.png +../../data/yoloGtold1/train/9227.png +../../data/yoloGtold1/train/9228.png +../../data/yoloGtold1/train/9229.png +../../data/yoloGtold1/train/9230.png +../../data/yoloGtold1/train/9231.png +../../data/yoloGtold1/train/9232.png +../../data/yoloGtold1/train/9233.png +../../data/yoloGtold1/train/9234.png +../../data/yoloGtold1/train/9235.png +../../data/yoloGtold1/train/9236.png +../../data/yoloGtold1/train/9237.png +../../data/yoloGtold1/train/9238.png +../../data/yoloGtold1/train/9239.png +../../data/yoloGtold1/train/9240.png +../../data/yoloGtold1/train/9241.png +../../data/yoloGtold1/train/9242.png +../../data/yoloGtold1/train/9243.png +../../data/yoloGtold1/train/9244.png +../../data/yoloGtold1/train/9245.png +../../data/yoloGtold1/train/9246.png +../../data/yoloGtold1/train/9247.png +../../data/yoloGtold1/train/9248.png +../../data/yoloGtold1/train/9249.png +../../data/yoloGtold1/train/9250.png +../../data/yoloGtold1/train/9251.png +../../data/yoloGtold1/train/9252.png +../../data/yoloGtold1/train/9253.png +../../data/yoloGtold1/train/9254.png +../../data/yoloGtold1/train/9255.png +../../data/yoloGtold1/train/9256.png +../../data/yoloGtold1/train/9257.png +../../data/yoloGtold1/train/9258.png +../../data/yoloGtold1/train/9259.png +../../data/yoloGtold1/train/9260.png +../../data/yoloGtold1/train/9261.png +../../data/yoloGtold1/train/9262.png +../../data/yoloGtold1/train/9263.png +../../data/yoloGtold1/train/9264.png +../../data/yoloGtold1/train/9265.png +../../data/yoloGtold1/train/9266.png +../../data/yoloGtold1/train/9267.png +../../data/yoloGtold1/train/9268.png +../../data/yoloGtold1/train/9269.png +../../data/yoloGtold1/train/9270.png +../../data/yoloGtold1/train/9271.png +../../data/yoloGtold1/train/9272.png +../../data/yoloGtold1/train/9273.png +../../data/yoloGtold1/train/9274.png +../../data/yoloGtold1/train/9275.png +../../data/yoloGtold1/train/9276.png +../../data/yoloGtold1/train/9277.png +../../data/yoloGtold1/train/9278.png +../../data/yoloGtold1/train/9279.png +../../data/yoloGtold1/train/9280.png +../../data/yoloGtold1/train/9281.png +../../data/yoloGtold1/train/9282.png +../../data/yoloGtold1/train/9283.png +../../data/yoloGtold1/train/9284.png +../../data/yoloGtold1/train/9285.png +../../data/yoloGtold1/train/9286.png +../../data/yoloGtold1/train/9287.png +../../data/yoloGtold1/train/9288.png +../../data/yoloGtold1/train/9289.png +../../data/yoloGtold1/train/9290.png +../../data/yoloGtold1/train/9291.png +../../data/yoloGtold1/train/9292.png +../../data/yoloGtold1/train/9293.png +../../data/yoloGtold1/train/9294.png +../../data/yoloGtold1/train/9295.png +../../data/yoloGtold1/train/9296.png +../../data/yoloGtold1/train/9297.png +../../data/yoloGtold1/train/9298.png +../../data/yoloGtold1/train/9299.png +../../data/yoloGtold1/train/9300.png +../../data/yoloGtold1/train/9301.png +../../data/yoloGtold1/train/9302.png +../../data/yoloGtold1/train/9303.png +../../data/yoloGtold1/train/9304.png +../../data/yoloGtold1/train/9305.png +../../data/yoloGtold1/train/9306.png +../../data/yoloGtold1/train/9307.png +../../data/yoloGtold1/train/9308.png +../../data/yoloGtold1/train/9309.png +../../data/yoloGtold1/train/9310.png +../../data/yoloGtold1/train/9311.png +../../data/yoloGtold1/train/9312.png +../../data/yoloGtold1/train/9313.png +../../data/yoloGtold1/train/9314.png +../../data/yoloGtold1/train/9315.png +../../data/yoloGtold1/train/9316.png +../../data/yoloGtold1/train/9317.png +../../data/yoloGtold1/train/9318.png +../../data/yoloGtold1/train/9319.png +../../data/yoloGtold1/train/9320.png +../../data/yoloGtold1/train/9321.png +../../data/yoloGtold1/train/9322.png +../../data/yoloGtold1/train/9323.png +../../data/yoloGtold1/train/9324.png +../../data/yoloGtold1/train/9325.png +../../data/yoloGtold1/train/9326.png +../../data/yoloGtold1/train/9327.png +../../data/yoloGtold1/train/9328.png +../../data/yoloGtold1/train/9329.png +../../data/yoloGtold1/train/9330.png +../../data/yoloGtold1/train/9331.png +../../data/yoloGtold1/train/9332.png +../../data/yoloGtold1/train/9333.png +../../data/yoloGtold1/train/9334.png +../../data/yoloGtold1/train/9335.png +../../data/yoloGtold1/train/9336.png +../../data/yoloGtold1/train/9337.png +../../data/yoloGtold1/train/9338.png +../../data/yoloGtold1/train/9339.png +../../data/yoloGtold1/train/9340.png +../../data/yoloGtold1/train/9341.png +../../data/yoloGtold1/train/9342.png +../../data/yoloGtold1/train/9343.png +../../data/yoloGtold1/train/9344.png +../../data/yoloGtold1/train/9345.png +../../data/yoloGtold1/train/9346.png +../../data/yoloGtold1/train/9347.png +../../data/yoloGtold1/train/9348.png +../../data/yoloGtold1/train/9349.png +../../data/yoloGtold1/train/9350.png +../../data/yoloGtold1/train/9351.png +../../data/yoloGtold1/train/9352.png +../../data/yoloGtold1/train/9353.png +../../data/yoloGtold1/train/9354.png +../../data/yoloGtold1/train/9355.png +../../data/yoloGtold1/train/9356.png +../../data/yoloGtold1/train/9357.png +../../data/yoloGtold1/train/9358.png +../../data/yoloGtold1/train/9359.png +../../data/yoloGtold1/train/9360.png +../../data/yoloGtold1/train/9361.png +../../data/yoloGtold1/train/9362.png +../../data/yoloGtold1/train/9363.png +../../data/yoloGtold1/train/9364.png +../../data/yoloGtold1/train/9365.png +../../data/yoloGtold1/train/9366.png +../../data/yoloGtold1/train/9367.png +../../data/yoloGtold1/train/9368.png +../../data/yoloGtold1/train/9369.png +../../data/yoloGtold1/train/9370.png +../../data/yoloGtold1/train/9371.png +../../data/yoloGtold1/train/9372.png +../../data/yoloGtold1/train/9373.png +../../data/yoloGtold1/train/9374.png +../../data/yoloGtold1/train/9375.png +../../data/yoloGtold1/train/9376.png +../../data/yoloGtold1/train/9377.png +../../data/yoloGtold1/train/9378.png +../../data/yoloGtold1/train/9379.png +../../data/yoloGtold1/train/9380.png +../../data/yoloGtold1/train/9381.png +../../data/yoloGtold1/train/9382.png +../../data/yoloGtold1/train/9383.png +../../data/yoloGtold1/train/9384.png +../../data/yoloGtold1/train/9385.png +../../data/yoloGtold1/train/9386.png +../../data/yoloGtold1/train/9387.png +../../data/yoloGtold1/train/9388.png +../../data/yoloGtold1/train/9389.png +../../data/yoloGtold1/train/9390.png +../../data/yoloGtold1/train/9391.png +../../data/yoloGtold1/train/9392.png +../../data/yoloGtold1/train/9393.png +../../data/yoloGtold1/train/9394.png +../../data/yoloGtold1/train/9395.png +../../data/yoloGtold1/train/9396.png +../../data/yoloGtold1/train/9397.png +../../data/yoloGtold1/train/9398.png +../../data/yoloGtold1/train/9399.png +../../data/yoloGtold1/train/9400.png +../../data/yoloGtold1/train/9401.png +../../data/yoloGtold1/train/9402.png +../../data/yoloGtold1/train/9403.png +../../data/yoloGtold1/train/9404.png +../../data/yoloGtold1/train/9405.png +../../data/yoloGtold1/train/9406.png +../../data/yoloGtold1/train/9407.png +../../data/yoloGtold1/train/9408.png +../../data/yoloGtold1/train/9409.png +../../data/yoloGtold1/train/9410.png +../../data/yoloGtold1/train/9411.png +../../data/yoloGtold1/train/9412.png +../../data/yoloGtold1/train/9413.png +../../data/yoloGtold1/train/9414.png +../../data/yoloGtold1/train/9415.png +../../data/yoloGtold1/train/9416.png +../../data/yoloGtold1/train/9417.png +../../data/yoloGtold1/train/9418.png +../../data/yoloGtold1/train/9419.png +../../data/yoloGtold1/train/9420.png +../../data/yoloGtold1/train/9421.png +../../data/yoloGtold1/train/9422.png +../../data/yoloGtold1/train/9423.png +../../data/yoloGtold1/train/9424.png +../../data/yoloGtold1/train/9425.png +../../data/yoloGtold1/train/9426.png +../../data/yoloGtold1/train/9427.png +../../data/yoloGtold1/train/9428.png +../../data/yoloGtold1/train/9429.png +../../data/yoloGtold1/train/9430.png +../../data/yoloGtold1/train/9431.png +../../data/yoloGtold1/train/9432.png +../../data/yoloGtold1/train/9433.png +../../data/yoloGtold1/train/9434.png +../../data/yoloGtold1/train/9435.png +../../data/yoloGtold1/train/9436.png +../../data/yoloGtold1/train/9437.png +../../data/yoloGtold1/train/9438.png +../../data/yoloGtold1/train/9439.png +../../data/yoloGtold1/train/9440.png +../../data/yoloGtold1/train/9441.png +../../data/yoloGtold1/train/9442.png +../../data/yoloGtold1/train/9443.png +../../data/yoloGtold1/train/9444.png +../../data/yoloGtold1/train/9445.png +../../data/yoloGtold1/train/9446.png +../../data/yoloGtold1/train/9447.png +../../data/yoloGtold1/train/9448.png +../../data/yoloGtold1/train/9449.png +../../data/yoloGtold1/train/9450.png +../../data/yoloGtold1/train/9451.png +../../data/yoloGtold1/train/9452.png +../../data/yoloGtold1/train/9453.png +../../data/yoloGtold1/train/9454.png +../../data/yoloGtold1/train/9455.png +../../data/yoloGtold1/train/9456.png +../../data/yoloGtold1/train/9457.png +../../data/yoloGtold1/train/9458.png +../../data/yoloGtold1/train/9459.png +../../data/yoloGtold1/train/9460.png +../../data/yoloGtold1/train/9461.png +../../data/yoloGtold1/train/9462.png +../../data/yoloGtold1/train/9463.png +../../data/yoloGtold1/train/9464.png +../../data/yoloGtold1/train/9465.png +../../data/yoloGtold1/train/9466.png +../../data/yoloGtold1/train/9467.png +../../data/yoloGtold1/train/9468.png +../../data/yoloGtold1/train/9469.png +../../data/yoloGtold1/train/9470.png +../../data/yoloGtold1/train/9471.png +../../data/yoloGtold1/train/9472.png +../../data/yoloGtold1/train/9473.png +../../data/yoloGtold1/train/9474.png +../../data/yoloGtold1/train/9475.png +../../data/yoloGtold1/train/9476.png +../../data/yoloGtold1/train/9477.png +../../data/yoloGtold1/train/9478.png +../../data/yoloGtold1/train/9479.png +../../data/yoloGtold1/train/9480.png +../../data/yoloGtold1/train/9481.png +../../data/yoloGtold1/train/9482.png +../../data/yoloGtold1/train/9483.png +../../data/yoloGtold1/train/9484.png +../../data/yoloGtold1/train/9485.png +../../data/yoloGtold1/train/9486.png +../../data/yoloGtold1/train/9487.png +../../data/yoloGtold1/train/9488.png +../../data/yoloGtold1/train/9489.png +../../data/yoloGtold1/train/9490.png +../../data/yoloGtold1/train/9491.png +../../data/yoloGtold1/train/9492.png +../../data/yoloGtold1/train/9493.png +../../data/yoloGtold1/train/9494.png +../../data/yoloGtold1/train/9495.png +../../data/yoloGtold1/train/9496.png +../../data/yoloGtold1/train/9497.png +../../data/yoloGtold1/train/9498.png +../../data/yoloGtold1/train/9499.png +../../data/yoloGtold1/train/9500.png +../../data/yoloGtold1/train/9501.png +../../data/yoloGtold1/train/9502.png +../../data/yoloGtold1/train/9503.png +../../data/yoloGtold1/train/9504.png +../../data/yoloGtold1/train/9505.png +../../data/yoloGtold1/train/9506.png +../../data/yoloGtold1/train/9507.png +../../data/yoloGtold1/train/9508.png +../../data/yoloGtold1/train/9509.png +../../data/yoloGtold1/train/9510.png +../../data/yoloGtold1/train/9511.png +../../data/yoloGtold1/train/9512.png +../../data/yoloGtold1/train/9513.png +../../data/yoloGtold1/train/9514.png +../../data/yoloGtold1/train/9515.png +../../data/yoloGtold1/train/9516.png +../../data/yoloGtold1/train/9517.png +../../data/yoloGtold1/train/9518.png +../../data/yoloGtold1/train/9519.png +../../data/yoloGtold1/train/9520.png +../../data/yoloGtold1/train/9521.png +../../data/yoloGtold1/train/9522.png +../../data/yoloGtold1/train/9523.png +../../data/yoloGtold1/train/9524.png +../../data/yoloGtold1/train/9525.png +../../data/yoloGtold1/train/9526.png +../../data/yoloGtold1/train/9527.png +../../data/yoloGtold1/train/9528.png +../../data/yoloGtold1/train/9529.png +../../data/yoloGtold1/train/9530.png +../../data/yoloGtold1/train/9531.png +../../data/yoloGtold1/train/9532.png +../../data/yoloGtold1/train/9533.png +../../data/yoloGtold1/train/9534.png +../../data/yoloGtold1/train/9535.png +../../data/yoloGtold1/train/9536.png +../../data/yoloGtold1/train/9537.png +../../data/yoloGtold1/train/9538.png +../../data/yoloGtold1/train/9539.png +../../data/yoloGtold1/train/9540.png +../../data/yoloGtold1/train/9541.png +../../data/yoloGtold1/train/9542.png +../../data/yoloGtold1/train/9543.png +../../data/yoloGtold1/train/9544.png +../../data/yoloGtold1/train/9545.png +../../data/yoloGtold1/train/9546.png +../../data/yoloGtold1/train/9547.png +../../data/yoloGtold1/train/9548.png +../../data/yoloGtold1/train/9549.png +../../data/yoloGtold1/train/9550.png +../../data/yoloGtold1/train/9551.png +../../data/yoloGtold1/train/9552.png +../../data/yoloGtold1/train/9553.png +../../data/yoloGtold1/train/9554.png +../../data/yoloGtold1/train/9555.png +../../data/yoloGtold1/train/9556.png +../../data/yoloGtold1/train/9557.png +../../data/yoloGtold1/train/9558.png +../../data/yoloGtold1/train/9559.png +../../data/yoloGtold1/train/9560.png +../../data/yoloGtold1/train/9561.png +../../data/yoloGtold1/train/9562.png +../../data/yoloGtold1/train/9563.png +../../data/yoloGtold1/train/9564.png +../../data/yoloGtold1/train/9565.png +../../data/yoloGtold1/train/9566.png +../../data/yoloGtold1/train/9567.png +../../data/yoloGtold1/train/9568.png +../../data/yoloGtold1/train/9569.png +../../data/yoloGtold1/train/9570.png +../../data/yoloGtold1/train/9571.png +../../data/yoloGtold1/train/9572.png +../../data/yoloGtold1/train/9573.png +../../data/yoloGtold1/train/9574.png +../../data/yoloGtold1/train/9575.png +../../data/yoloGtold1/train/9576.png +../../data/yoloGtold1/train/9577.png +../../data/yoloGtold1/train/9578.png +../../data/yoloGtold1/train/9579.png +../../data/yoloGtold1/train/9580.png +../../data/yoloGtold1/train/9581.png +../../data/yoloGtold1/train/9582.png +../../data/yoloGtold1/train/9583.png +../../data/yoloGtold1/train/9584.png +../../data/yoloGtold1/train/9585.png +../../data/yoloGtold1/train/9586.png +../../data/yoloGtold1/train/9587.png +../../data/yoloGtold1/train/9588.png +../../data/yoloGtold1/train/9589.png +../../data/yoloGtold1/train/9590.png +../../data/yoloGtold1/train/9591.png +../../data/yoloGtold1/train/9592.png +../../data/yoloGtold1/train/9593.png +../../data/yoloGtold1/train/9594.png +../../data/yoloGtold1/train/9595.png +../../data/yoloGtold1/train/9596.png +../../data/yoloGtold1/train/9597.png +../../data/yoloGtold1/train/9598.png +../../data/yoloGtold1/train/9599.png +../../data/yoloGtold1/train/9600.png +../../data/yoloGtold1/train/9601.png +../../data/yoloGtold1/train/9602.png +../../data/yoloGtold1/train/9603.png +../../data/yoloGtold1/train/9604.png +../../data/yoloGtold1/train/9605.png +../../data/yoloGtold1/train/9606.png +../../data/yoloGtold1/train/9607.png +../../data/yoloGtold1/train/9608.png +../../data/yoloGtold1/train/9609.png +../../data/yoloGtold1/train/9610.png +../../data/yoloGtold1/train/9611.png +../../data/yoloGtold1/train/9612.png +../../data/yoloGtold1/train/9613.png +../../data/yoloGtold1/train/9614.png +../../data/yoloGtold1/train/9615.png +../../data/yoloGtold1/train/9616.png +../../data/yoloGtold1/train/9617.png +../../data/yoloGtold1/train/9618.png +../../data/yoloGtold1/train/9619.png +../../data/yoloGtold1/train/9620.png +../../data/yoloGtold1/train/9621.png +../../data/yoloGtold1/train/9622.png +../../data/yoloGtold1/train/9623.png +../../data/yoloGtold1/train/9624.png +../../data/yoloGtold1/train/9625.png +../../data/yoloGtold1/train/9626.png +../../data/yoloGtold1/train/9627.png +../../data/yoloGtold1/train/9628.png +../../data/yoloGtold1/train/9629.png +../../data/yoloGtold1/train/9630.png +../../data/yoloGtold1/train/9631.png +../../data/yoloGtold1/train/9632.png +../../data/yoloGtold1/train/9633.png +../../data/yoloGtold1/train/9634.png +../../data/yoloGtold1/train/9635.png +../../data/yoloGtold1/train/9636.png +../../data/yoloGtold1/train/9637.png +../../data/yoloGtold1/train/9638.png +../../data/yoloGtold1/train/9639.png +../../data/yoloGtold1/train/9640.png +../../data/yoloGtold1/train/9641.png +../../data/yoloGtold1/train/9642.png +../../data/yoloGtold1/train/9643.png +../../data/yoloGtold1/train/9644.png +../../data/yoloGtold1/train/9645.png +../../data/yoloGtold1/train/9646.png +../../data/yoloGtold1/train/9647.png +../../data/yoloGtold1/train/9648.png +../../data/yoloGtold1/train/9649.png +../../data/yoloGtold1/train/9650.png +../../data/yoloGtold1/train/9651.png +../../data/yoloGtold1/train/9652.png +../../data/yoloGtold1/train/9653.png +../../data/yoloGtold1/train/9654.png +../../data/yoloGtold1/train/9655.png +../../data/yoloGtold1/train/9656.png +../../data/yoloGtold1/train/9657.png +../../data/yoloGtold1/train/9658.png +../../data/yoloGtold1/train/9659.png +../../data/yoloGtold1/train/9660.png +../../data/yoloGtold1/train/9661.png +../../data/yoloGtold1/train/9662.png +../../data/yoloGtold1/train/9663.png +../../data/yoloGtold1/train/9664.png +../../data/yoloGtold1/train/9665.png +../../data/yoloGtold1/train/9666.png +../../data/yoloGtold1/train/9667.png +../../data/yoloGtold1/train/9668.png +../../data/yoloGtold1/train/9669.png +../../data/yoloGtold1/train/9670.png +../../data/yoloGtold1/train/9671.png +../../data/yoloGtold1/train/9672.png +../../data/yoloGtold1/train/9673.png +../../data/yoloGtold1/train/9674.png +../../data/yoloGtold1/train/9675.png +../../data/yoloGtold1/train/9676.png +../../data/yoloGtold1/train/9677.png +../../data/yoloGtold1/train/9678.png +../../data/yoloGtold1/train/9679.png +../../data/yoloGtold1/train/9680.png +../../data/yoloGtold1/train/9681.png +../../data/yoloGtold1/train/9682.png +../../data/yoloGtold1/train/9683.png +../../data/yoloGtold1/train/9684.png +../../data/yoloGtold1/train/9685.png +../../data/yoloGtold1/train/9686.png +../../data/yoloGtold1/train/9687.png +../../data/yoloGtold1/train/9688.png +../../data/yoloGtold1/train/9689.png +../../data/yoloGtold1/train/9690.png +../../data/yoloGtold1/train/9691.png +../../data/yoloGtold1/train/9692.png +../../data/yoloGtold1/train/9693.png +../../data/yoloGtold1/train/9694.png +../../data/yoloGtold1/train/9695.png +../../data/yoloGtold1/train/9696.png +../../data/yoloGtold1/train/9697.png +../../data/yoloGtold1/train/9698.png +../../data/yoloGtold1/train/9699.png +../../data/yoloGtold1/train/9700.png +../../data/yoloGtold1/train/9701.png +../../data/yoloGtold1/train/9702.png +../../data/yoloGtold1/train/9703.png +../../data/yoloGtold1/train/9704.png +../../data/yoloGtold1/train/9705.png +../../data/yoloGtold1/train/9706.png +../../data/yoloGtold1/train/9707.png +../../data/yoloGtold1/train/9708.png +../../data/yoloGtold1/train/9709.png +../../data/yoloGtold1/train/9710.png +../../data/yoloGtold1/train/9711.png +../../data/yoloGtold1/train/9712.png +../../data/yoloGtold1/train/9713.png +../../data/yoloGtold1/train/9714.png +../../data/yoloGtold1/train/9715.png +../../data/yoloGtold1/train/9716.png +../../data/yoloGtold1/train/9717.png +../../data/yoloGtold1/train/9718.png +../../data/yoloGtold1/train/9719.png +../../data/yoloGtold1/train/9720.png +../../data/yoloGtold1/train/9721.png +../../data/yoloGtold1/train/9722.png +../../data/yoloGtold1/train/9723.png +../../data/yoloGtold1/train/9724.png +../../data/yoloGtold1/train/9725.png +../../data/yoloGtold1/train/9726.png +../../data/yoloGtold1/train/9727.png +../../data/yoloGtold1/train/9728.png +../../data/yoloGtold1/train/9729.png +../../data/yoloGtold1/train/9730.png +../../data/yoloGtold1/train/9731.png +../../data/yoloGtold1/train/9732.png +../../data/yoloGtold1/train/9733.png +../../data/yoloGtold1/train/9734.png +../../data/yoloGtold1/train/9735.png +../../data/yoloGtold1/train/9736.png +../../data/yoloGtold1/train/9737.png +../../data/yoloGtold1/train/9738.png +../../data/yoloGtold1/train/9739.png +../../data/yoloGtold1/train/9740.png +../../data/yoloGtold1/train/9741.png +../../data/yoloGtold1/train/9742.png +../../data/yoloGtold1/train/9743.png +../../data/yoloGtold1/train/9744.png +../../data/yoloGtold1/train/9745.png +../../data/yoloGtold1/train/9746.png +../../data/yoloGtold1/train/9747.png +../../data/yoloGtold1/train/9748.png +../../data/yoloGtold1/train/9749.png +../../data/yoloGtold1/train/9750.png +../../data/yoloGtold1/train/9751.png +../../data/yoloGtold1/train/9752.png +../../data/yoloGtold1/train/9753.png +../../data/yoloGtold1/train/9754.png +../../data/yoloGtold1/train/9755.png +../../data/yoloGtold1/train/9756.png +../../data/yoloGtold1/train/9757.png +../../data/yoloGtold1/train/9758.png +../../data/yoloGtold1/train/9759.png +../../data/yoloGtold1/train/9760.png +../../data/yoloGtold1/train/9761.png +../../data/yoloGtold1/train/9762.png +../../data/yoloGtold1/train/9763.png +../../data/yoloGtold1/train/9764.png +../../data/yoloGtold1/train/9765.png +../../data/yoloGtold1/train/9766.png +../../data/yoloGtold1/train/9767.png +../../data/yoloGtold1/train/9768.png +../../data/yoloGtold1/train/9769.png +../../data/yoloGtold1/train/9770.png +../../data/yoloGtold1/train/9771.png +../../data/yoloGtold1/train/9772.png +../../data/yoloGtold1/train/9773.png +../../data/yoloGtold1/train/9774.png +../../data/yoloGtold1/train/9775.png +../../data/yoloGtold1/train/9776.png +../../data/yoloGtold1/train/9777.png +../../data/yoloGtold1/train/9778.png +../../data/yoloGtold1/train/9779.png +../../data/yoloGtold1/train/9780.png +../../data/yoloGtold1/train/9781.png +../../data/yoloGtold1/train/9782.png +../../data/yoloGtold1/train/9783.png +../../data/yoloGtold1/train/9784.png +../../data/yoloGtold1/train/9785.png +../../data/yoloGtold1/train/9786.png +../../data/yoloGtold1/train/9787.png +../../data/yoloGtold1/train/9788.png +../../data/yoloGtold1/train/9789.png +../../data/yoloGtold1/train/9790.png +../../data/yoloGtold1/train/9791.png +../../data/yoloGtold1/train/9792.png +../../data/yoloGtold1/train/9793.png +../../data/yoloGtold1/train/9794.png +../../data/yoloGtold1/train/9795.png +../../data/yoloGtold1/train/9796.png +../../data/yoloGtold1/train/9797.png +../../data/yoloGtold1/train/9798.png +../../data/yoloGtold1/train/9799.png +../../data/yoloGtold1/train/9800.png +../../data/yoloGtold1/train/9801.png +../../data/yoloGtold1/train/9802.png +../../data/yoloGtold1/train/9803.png +../../data/yoloGtold1/train/9804.png +../../data/yoloGtold1/train/9805.png +../../data/yoloGtold1/train/9806.png +../../data/yoloGtold1/train/9807.png +../../data/yoloGtold1/train/9808.png +../../data/yoloGtold1/train/9809.png +../../data/yoloGtold1/train/9810.png +../../data/yoloGtold1/train/9811.png +../../data/yoloGtold1/train/9812.png +../../data/yoloGtold1/train/9813.png +../../data/yoloGtold1/train/9814.png +../../data/yoloGtold1/train/9815.png +../../data/yoloGtold1/train/9816.png +../../data/yoloGtold1/train/9817.png +../../data/yoloGtold1/train/9818.png +../../data/yoloGtold1/train/9819.png +../../data/yoloGtold1/train/9820.png +../../data/yoloGtold1/train/9821.png +../../data/yoloGtold1/train/9822.png +../../data/yoloGtold1/train/9823.png +../../data/yoloGtold1/train/9824.png +../../data/yoloGtold1/train/9825.png +../../data/yoloGtold1/train/9826.png +../../data/yoloGtold1/train/9827.png +../../data/yoloGtold1/train/9828.png +../../data/yoloGtold1/train/9829.png +../../data/yoloGtold1/train/9830.png +../../data/yoloGtold1/train/9831.png +../../data/yoloGtold1/train/9832.png +../../data/yoloGtold1/train/9833.png +../../data/yoloGtold1/train/9834.png +../../data/yoloGtold1/train/9835.png +../../data/yoloGtold1/train/9836.png +../../data/yoloGtold1/train/9837.png +../../data/yoloGtold1/train/9838.png +../../data/yoloGtold1/train/9839.png +../../data/yoloGtold1/train/9840.png +../../data/yoloGtold1/train/9841.png +../../data/yoloGtold1/train/9842.png +../../data/yoloGtold1/train/9843.png +../../data/yoloGtold1/train/9844.png +../../data/yoloGtold1/train/9845.png +../../data/yoloGtold1/train/9846.png +../../data/yoloGtold1/train/9847.png +../../data/yoloGtold1/train/9848.png +../../data/yoloGtold1/train/9849.png +../../data/yoloGtold1/train/9850.png +../../data/yoloGtold1/train/9851.png +../../data/yoloGtold1/train/9852.png +../../data/yoloGtold1/train/9853.png +../../data/yoloGtold1/train/9854.png +../../data/yoloGtold1/train/9855.png +../../data/yoloGtold1/train/9856.png +../../data/yoloGtold1/train/9857.png +../../data/yoloGtold1/train/9858.png +../../data/yoloGtold1/train/9859.png +../../data/yoloGtold1/train/9860.png +../../data/yoloGtold1/train/9861.png +../../data/yoloGtold1/train/9862.png +../../data/yoloGtold1/train/9863.png +../../data/yoloGtold1/train/9864.png +../../data/yoloGtold1/train/9865.png +../../data/yoloGtold1/train/9866.png +../../data/yoloGtold1/train/9867.png +../../data/yoloGtold1/train/9868.png +../../data/yoloGtold1/train/9869.png +../../data/yoloGtold1/train/9870.png +../../data/yoloGtold1/train/9871.png +../../data/yoloGtold1/train/9872.png +../../data/yoloGtold1/train/9873.png +../../data/yoloGtold1/train/9874.png +../../data/yoloGtold1/train/9875.png +../../data/yoloGtold1/train/9876.png +../../data/yoloGtold1/train/9877.png +../../data/yoloGtold1/train/9878.png +../../data/yoloGtold1/train/9879.png +../../data/yoloGtold1/train/9880.png +../../data/yoloGtold1/train/9881.png +../../data/yoloGtold1/train/9882.png +../../data/yoloGtold1/train/9883.png +../../data/yoloGtold1/train/9884.png +../../data/yoloGtold1/train/9885.png +../../data/yoloGtold1/train/9886.png +../../data/yoloGtold1/train/9887.png +../../data/yoloGtold1/train/9888.png +../../data/yoloGtold1/train/9889.png +../../data/yoloGtold1/train/9890.png +../../data/yoloGtold1/train/9891.png +../../data/yoloGtold1/train/9892.png +../../data/yoloGtold1/train/9893.png +../../data/yoloGtold1/train/9894.png +../../data/yoloGtold1/train/9895.png +../../data/yoloGtold1/train/9896.png +../../data/yoloGtold1/train/9897.png +../../data/yoloGtold1/train/9898.png +../../data/yoloGtold1/train/9899.png +../../data/yoloGtold1/train/9900.png +../../data/yoloGtold1/train/9901.png +../../data/yoloGtold1/train/9902.png +../../data/yoloGtold1/train/9903.png +../../data/yoloGtold1/train/9904.png +../../data/yoloGtold1/train/9905.png +../../data/yoloGtold1/train/9906.png +../../data/yoloGtold1/train/9907.png +../../data/yoloGtold1/train/9908.png +../../data/yoloGtold1/train/9909.png +../../data/yoloGtold1/train/9910.png +../../data/yoloGtold1/train/9911.png +../../data/yoloGtold1/train/9912.png +../../data/yoloGtold1/train/9913.png +../../data/yoloGtold1/train/9914.png +../../data/yoloGtold1/train/9915.png +../../data/yoloGtold1/train/9916.png +../../data/yoloGtold1/train/9917.png +../../data/yoloGtold1/train/9918.png +../../data/yoloGtold1/train/9919.png +../../data/yoloGtold1/train/9920.png +../../data/yoloGtold1/train/9921.png +../../data/yoloGtold1/train/9922.png +../../data/yoloGtold1/train/9923.png +../../data/yoloGtold1/train/9924.png +../../data/yoloGtold1/train/9925.png +../../data/yoloGtold1/train/9926.png +../../data/yoloGtold1/train/9927.png +../../data/yoloGtold1/train/9928.png +../../data/yoloGtold1/train/9929.png +../../data/yoloGtold1/train/9930.png +../../data/yoloGtold1/train/9931.png +../../data/yoloGtold1/train/9932.png +../../data/yoloGtold1/train/9933.png +../../data/yoloGtold1/train/9934.png +../../data/yoloGtold1/train/9935.png +../../data/yoloGtold1/train/9936.png +../../data/yoloGtold1/train/9937.png +../../data/yoloGtold1/train/9938.png +../../data/yoloGtold1/train/9939.png +../../data/yoloGtold1/train/9940.png +../../data/yoloGtold1/train/9941.png +../../data/yoloGtold1/train/9942.png +../../data/yoloGtold1/train/9943.png +../../data/yoloGtold1/train/9944.png +../../data/yoloGtold1/train/9945.png +../../data/yoloGtold1/train/9946.png +../../data/yoloGtold1/train/9947.png +../../data/yoloGtold1/train/9948.png +../../data/yoloGtold1/train/9949.png +../../data/yoloGtold1/train/9950.png +../../data/yoloGtold1/train/9951.png +../../data/yoloGtold1/train/9952.png +../../data/yoloGtold1/train/9953.png +../../data/yoloGtold1/train/9954.png +../../data/yoloGtold1/train/9955.png +../../data/yoloGtold1/train/9956.png +../../data/yoloGtold1/train/9957.png +../../data/yoloGtold1/train/9958.png +../../data/yoloGtold1/train/9959.png +../../data/yoloGtold1/train/9960.png +../../data/yoloGtold1/train/9961.png +../../data/yoloGtold1/train/9962.png +../../data/yoloGtold1/train/9963.png +../../data/yoloGtold1/train/9964.png +../../data/yoloGtold1/train/9965.png +../../data/yoloGtold1/train/9966.png +../../data/yoloGtold1/train/9967.png +../../data/yoloGtold1/train/9968.png +../../data/yoloGtold1/train/9969.png +../../data/yoloGtold1/train/9970.png +../../data/yoloGtold1/train/9971.png +../../data/yoloGtold1/train/9972.png +../../data/yoloGtold1/train/9973.png +../../data/yoloGtold1/train/9974.png +../../data/yoloGtold1/train/9975.png +../../data/yoloGtold1/train/9976.png +../../data/yoloGtold1/train/9977.png +../../data/yoloGtold1/train/9978.png +../../data/yoloGtold1/train/9979.png +../../data/yoloGtold1/train/9980.png +../../data/yoloGtold1/train/9981.png +../../data/yoloGtold1/train/9982.png +../../data/yoloGtold1/train/9983.png +../../data/yoloGtold1/train/9984.png +../../data/yoloGtold1/train/9985.png +../../data/yoloGtold1/train/9986.png +../../data/yoloGtold1/train/9987.png +../../data/yoloGtold1/train/9988.png +../../data/yoloGtold1/train/9989.png +../../data/yoloGtold1/train/9990.png +../../data/yoloGtold1/train/9991.png +../../data/yoloGtold1/train/9992.png +../../data/yoloGtold1/train/9993.png +../../data/yoloGtold1/train/9994.png +../../data/yoloGtold1/train/9995.png +../../data/yoloGtold1/train/9996.png +../../data/yoloGtold1/train/9997.png +../../data/yoloGtold1/train/9998.png +../../data/yoloGtold1/train/9999.png +../../data/yoloGtold1/train/10000.png +../../data/yoloGtold1/train/10001.png +../../data/yoloGtold1/train/10002.png +../../data/yoloGtold1/train/10003.png +../../data/yoloGtold1/train/10004.png +../../data/yoloGtold1/train/10005.png +../../data/yoloGtold1/train/10006.png +../../data/yoloGtold1/train/10007.png +../../data/yoloGtold1/train/10008.png +../../data/yoloGtold1/train/10009.png +../../data/yoloGtold1/train/10010.png +../../data/yoloGtold1/train/10011.png +../../data/yoloGtold1/train/10012.png +../../data/yoloGtold1/train/10013.png +../../data/yoloGtold1/train/10014.png +../../data/yoloGtold1/train/10015.png +../../data/yoloGtold1/train/10016.png +../../data/yoloGtold1/train/10017.png +../../data/yoloGtold1/train/10018.png +../../data/yoloGtold1/train/10019.png +../../data/yoloGtold1/train/10020.png +../../data/yoloGtold1/train/10021.png +../../data/yoloGtold1/train/10022.png +../../data/yoloGtold1/train/10023.png +../../data/yoloGtold1/train/10024.png +../../data/yoloGtold1/train/10025.png +../../data/yoloGtold1/train/10026.png +../../data/yoloGtold1/train/10027.png +../../data/yoloGtold1/train/10028.png +../../data/yoloGtold1/train/10029.png +../../data/yoloGtold1/train/10030.png +../../data/yoloGtold1/train/10031.png +../../data/yoloGtold1/train/10032.png +../../data/yoloGtold1/train/10033.png +../../data/yoloGtold1/train/10034.png +../../data/yoloGtold1/train/10035.png +../../data/yoloGtold1/train/10036.png +../../data/yoloGtold1/train/10037.png +../../data/yoloGtold1/train/10038.png +../../data/yoloGtold1/train/10039.png +../../data/yoloGtold1/train/10040.png +../../data/yoloGtold1/train/10041.png +../../data/yoloGtold1/train/10042.png +../../data/yoloGtold1/train/10043.png +../../data/yoloGtold1/train/10044.png +../../data/yoloGtold1/train/10045.png +../../data/yoloGtold1/train/10046.png +../../data/yoloGtold1/train/10047.png +../../data/yoloGtold1/train/10048.png +../../data/yoloGtold1/train/10049.png +../../data/yoloGtold1/train/10050.png +../../data/yoloGtold1/train/10051.png +../../data/yoloGtold1/train/10052.png +../../data/yoloGtold1/train/10053.png +../../data/yoloGtold1/train/10054.png +../../data/yoloGtold1/train/10055.png +../../data/yoloGtold1/train/10056.png +../../data/yoloGtold1/train/10057.png +../../data/yoloGtold1/train/10058.png +../../data/yoloGtold1/train/10059.png +../../data/yoloGtold1/train/10060.png +../../data/yoloGtold1/train/10061.png +../../data/yoloGtold1/train/10062.png +../../data/yoloGtold1/train/10063.png +../../data/yoloGtold1/train/10064.png +../../data/yoloGtold1/train/10065.png +../../data/yoloGtold1/train/10066.png +../../data/yoloGtold1/train/10067.png +../../data/yoloGtold1/train/10068.png +../../data/yoloGtold1/train/10069.png +../../data/yoloGtold1/train/10070.png +../../data/yoloGtold1/train/10071.png +../../data/yoloGtold1/train/10072.png +../../data/yoloGtold1/train/10073.png +../../data/yoloGtold1/train/10074.png +../../data/yoloGtold1/train/10075.png +../../data/yoloGtold1/train/10076.png +../../data/yoloGtold1/train/10077.png +../../data/yoloGtold1/train/10078.png +../../data/yoloGtold1/train/10079.png +../../data/yoloGtold1/train/10080.png +../../data/yoloGtold1/train/10081.png +../../data/yoloGtold1/train/10082.png +../../data/yoloGtold1/train/10083.png +../../data/yoloGtold1/train/10084.png +../../data/yoloGtold1/train/10085.png +../../data/yoloGtold1/train/10086.png +../../data/yoloGtold1/train/10087.png +../../data/yoloGtold1/train/10088.png +../../data/yoloGtold1/train/10089.png +../../data/yoloGtold1/train/10090.png +../../data/yoloGtold1/train/10091.png +../../data/yoloGtold1/train/10092.png +../../data/yoloGtold1/train/10093.png +../../data/yoloGtold1/train/10094.png +../../data/yoloGtold1/train/10095.png +../../data/yoloGtold1/train/10096.png +../../data/yoloGtold1/train/10097.png +../../data/yoloGtold1/train/10098.png +../../data/yoloGtold1/train/10099.png +../../data/yoloGtold1/train/10100.png +../../data/yoloGtold1/train/10101.png +../../data/yoloGtold1/train/10102.png +../../data/yoloGtold1/train/10103.png +../../data/yoloGtold1/train/10104.png +../../data/yoloGtold1/train/10105.png +../../data/yoloGtold1/train/10106.png +../../data/yoloGtold1/train/10107.png +../../data/yoloGtold1/train/10108.png +../../data/yoloGtold1/train/10109.png +../../data/yoloGtold1/train/10110.png +../../data/yoloGtold1/train/10111.png +../../data/yoloGtold1/train/10112.png +../../data/yoloGtold1/train/10113.png +../../data/yoloGtold1/train/10114.png +../../data/yoloGtold1/train/10115.png +../../data/yoloGtold1/train/10116.png +../../data/yoloGtold1/train/10117.png +../../data/yoloGtold1/train/10118.png +../../data/yoloGtold1/train/10119.png +../../data/yoloGtold1/train/10120.png +../../data/yoloGtold1/train/10121.png +../../data/yoloGtold1/train/10122.png +../../data/yoloGtold1/train/10123.png +../../data/yoloGtold1/train/10124.png +../../data/yoloGtold1/train/10125.png +../../data/yoloGtold1/train/10126.png +../../data/yoloGtold1/train/10127.png +../../data/yoloGtold1/train/10128.png +../../data/yoloGtold1/train/10129.png +../../data/yoloGtold1/train/10130.png +../../data/yoloGtold1/train/10131.png +../../data/yoloGtold1/train/10132.png +../../data/yoloGtold1/train/10133.png +../../data/yoloGtold1/train/10134.png +../../data/yoloGtold1/train/10135.png +../../data/yoloGtold1/train/10136.png +../../data/yoloGtold1/train/10137.png +../../data/yoloGtold1/train/10138.png +../../data/yoloGtold1/train/10139.png +../../data/yoloGtold1/train/10140.png +../../data/yoloGtold1/train/10141.png +../../data/yoloGtold1/train/10142.png +../../data/yoloGtold1/train/10143.png +../../data/yoloGtold1/train/10144.png +../../data/yoloGtold1/train/10145.png +../../data/yoloGtold1/train/10146.png +../../data/yoloGtold1/train/10147.png +../../data/yoloGtold1/train/10148.png +../../data/yoloGtold1/train/10149.png +../../data/yoloGtold1/train/10150.png +../../data/yoloGtold1/train/10151.png +../../data/yoloGtold1/train/10152.png +../../data/yoloGtold1/train/10153.png +../../data/yoloGtold1/train/10154.png +../../data/yoloGtold1/train/10155.png +../../data/yoloGtold1/train/10156.png +../../data/yoloGtold1/train/10157.png +../../data/yoloGtold1/train/10158.png +../../data/yoloGtold1/train/10159.png +../../data/yoloGtold1/train/10160.png +../../data/yoloGtold1/train/10161.png +../../data/yoloGtold1/train/10162.png +../../data/yoloGtold1/train/10163.png +../../data/yoloGtold1/train/10164.png +../../data/yoloGtold1/train/10165.png +../../data/yoloGtold1/train/10166.png +../../data/yoloGtold1/train/10167.png +../../data/yoloGtold1/train/10168.png +../../data/yoloGtold1/train/10169.png +../../data/yoloGtold1/train/10170.png +../../data/yoloGtold1/train/10171.png +../../data/yoloGtold1/train/10172.png +../../data/yoloGtold1/train/10173.png +../../data/yoloGtold1/train/10174.png +../../data/yoloGtold1/train/10175.png +../../data/yoloGtold1/train/10176.png +../../data/yoloGtold1/train/10177.png +../../data/yoloGtold1/train/10178.png +../../data/yoloGtold1/train/10179.png +../../data/yoloGtold1/train/10180.png +../../data/yoloGtold1/train/10181.png +../../data/yoloGtold1/train/10182.png +../../data/yoloGtold1/train/10183.png +../../data/yoloGtold1/train/10184.png +../../data/yoloGtold1/train/10185.png +../../data/yoloGtold1/train/10186.png +../../data/yoloGtold1/train/10187.png +../../data/yoloGtold1/train/10188.png +../../data/yoloGtold1/train/10189.png +../../data/yoloGtold1/train/10190.png +../../data/yoloGtold1/train/10191.png +../../data/yoloGtold1/train/10192.png +../../data/yoloGtold1/train/10193.png +../../data/yoloGtold1/train/10194.png +../../data/yoloGtold1/train/10195.png +../../data/yoloGtold1/train/10196.png +../../data/yoloGtold1/train/10197.png +../../data/yoloGtold1/train/10198.png +../../data/yoloGtold1/train/10199.png +../../data/yoloGtold1/train/10200.png +../../data/yoloGtold1/train/10201.png +../../data/yoloGtold1/train/10202.png +../../data/yoloGtold1/train/10203.png +../../data/yoloGtold1/train/10204.png +../../data/yoloGtold1/train/10205.png +../../data/yoloGtold1/train/10206.png +../../data/yoloGtold1/train/10207.png +../../data/yoloGtold1/train/10208.png +../../data/yoloGtold1/train/10209.png +../../data/yoloGtold1/train/10210.png +../../data/yoloGtold1/train/10211.png +../../data/yoloGtold1/train/10212.png +../../data/yoloGtold1/train/10213.png +../../data/yoloGtold1/train/10214.png +../../data/yoloGtold1/train/10215.png +../../data/yoloGtold1/train/10216.png +../../data/yoloGtold1/train/10217.png +../../data/yoloGtold1/train/10218.png +../../data/yoloGtold1/train/10219.png +../../data/yoloGtold1/train/10220.png +../../data/yoloGtold1/train/10221.png +../../data/yoloGtold1/train/10222.png +../../data/yoloGtold1/train/10223.png +../../data/yoloGtold1/train/10224.png +../../data/yoloGtold1/train/10225.png +../../data/yoloGtold1/train/10226.png +../../data/yoloGtold1/train/10227.png +../../data/yoloGtold1/train/10228.png +../../data/yoloGtold1/train/10229.png +../../data/yoloGtold1/train/10230.png +../../data/yoloGtold1/train/10231.png +../../data/yoloGtold1/train/10232.png +../../data/yoloGtold1/train/10233.png +../../data/yoloGtold1/train/10234.png +../../data/yoloGtold1/train/10235.png +../../data/yoloGtold1/train/10236.png +../../data/yoloGtold1/train/10237.png +../../data/yoloGtold1/train/10238.png +../../data/yoloGtold1/train/10239.png +../../data/yoloGtold1/train/10240.png +../../data/yoloGtold1/train/10241.png +../../data/yoloGtold1/train/10242.png +../../data/yoloGtold1/train/10243.png +../../data/yoloGtold1/train/10244.png +../../data/yoloGtold1/train/10245.png +../../data/yoloGtold1/train/10246.png +../../data/yoloGtold1/train/10247.png +../../data/yoloGtold1/train/10248.png +../../data/yoloGtold1/train/10249.png +../../data/yoloGtold1/train/10250.png +../../data/yoloGtold1/train/10251.png +../../data/yoloGtold1/train/10252.png +../../data/yoloGtold1/train/10253.png +../../data/yoloGtold1/train/10254.png +../../data/yoloGtold1/train/10255.png +../../data/yoloGtold1/train/10256.png +../../data/yoloGtold1/train/10257.png +../../data/yoloGtold1/train/10258.png +../../data/yoloGtold1/train/10259.png +../../data/yoloGtold1/train/10260.png +../../data/yoloGtold1/train/10261.png +../../data/yoloGtold1/train/10262.png +../../data/yoloGtold1/train/10263.png +../../data/yoloGtold1/train/10264.png +../../data/yoloGtold1/train/10265.png +../../data/yoloGtold1/train/10266.png +../../data/yoloGtold1/train/10267.png +../../data/yoloGtold1/train/10268.png +../../data/yoloGtold1/train/10269.png +../../data/yoloGtold1/train/10270.png +../../data/yoloGtold1/train/10271.png +../../data/yoloGtold1/train/10272.png +../../data/yoloGtold1/train/10273.png +../../data/yoloGtold1/train/10274.png +../../data/yoloGtold1/train/10275.png +../../data/yoloGtold1/train/10276.png +../../data/yoloGtold1/train/10277.png +../../data/yoloGtold1/train/10278.png +../../data/yoloGtold1/train/10279.png +../../data/yoloGtold1/train/10280.png +../../data/yoloGtold1/train/10281.png +../../data/yoloGtold1/train/10282.png +../../data/yoloGtold1/train/10283.png +../../data/yoloGtold1/train/10284.png +../../data/yoloGtold1/train/10285.png +../../data/yoloGtold1/train/10286.png +../../data/yoloGtold1/train/10287.png +../../data/yoloGtold1/train/10288.png +../../data/yoloGtold1/train/10289.png +../../data/yoloGtold1/train/10290.png +../../data/yoloGtold1/train/10291.png +../../data/yoloGtold1/train/10292.png +../../data/yoloGtold1/train/10293.png +../../data/yoloGtold1/train/10294.png +../../data/yoloGtold1/train/10295.png +../../data/yoloGtold1/train/10296.png +../../data/yoloGtold1/train/10297.png +../../data/yoloGtold1/train/10298.png +../../data/yoloGtold1/train/10299.png +../../data/yoloGtold1/train/10300.png +../../data/yoloGtold1/train/10301.png +../../data/yoloGtold1/train/10302.png +../../data/yoloGtold1/train/10303.png +../../data/yoloGtold1/train/10304.png +../../data/yoloGtold1/train/10305.png +../../data/yoloGtold1/train/10306.png +../../data/yoloGtold1/train/10307.png +../../data/yoloGtold1/train/10308.png +../../data/yoloGtold1/train/10309.png +../../data/yoloGtold1/train/10310.png +../../data/yoloGtold1/train/10311.png +../../data/yoloGtold1/train/10312.png +../../data/yoloGtold1/train/10313.png +../../data/yoloGtold1/train/10314.png +../../data/yoloGtold1/train/10315.png +../../data/yoloGtold1/train/10316.png +../../data/yoloGtold1/train/10317.png +../../data/yoloGtold1/train/10318.png +../../data/yoloGtold1/train/10319.png +../../data/yoloGtold1/train/10320.png +../../data/yoloGtold1/train/10321.png +../../data/yoloGtold1/train/10322.png +../../data/yoloGtold1/train/10323.png +../../data/yoloGtold1/train/10324.png +../../data/yoloGtold1/train/10325.png +../../data/yoloGtold1/train/10326.png +../../data/yoloGtold1/train/10327.png +../../data/yoloGtold1/train/10328.png +../../data/yoloGtold1/train/10329.png +../../data/yoloGtold1/train/10330.png +../../data/yoloGtold1/train/10331.png +../../data/yoloGtold1/train/10332.png +../../data/yoloGtold1/train/10333.png +../../data/yoloGtold1/train/10334.png +../../data/yoloGtold1/train/10335.png +../../data/yoloGtold1/train/10336.png +../../data/yoloGtold1/train/10337.png +../../data/yoloGtold1/train/10338.png +../../data/yoloGtold1/train/10339.png +../../data/yoloGtold1/train/10340.png +../../data/yoloGtold1/train/10341.png +../../data/yoloGtold1/train/10342.png +../../data/yoloGtold1/train/10343.png +../../data/yoloGtold1/train/10344.png +../../data/yoloGtold1/train/10345.png +../../data/yoloGtold1/train/10346.png +../../data/yoloGtold1/train/10347.png +../../data/yoloGtold1/train/10348.png +../../data/yoloGtold1/train/10349.png +../../data/yoloGtold1/train/10350.png +../../data/yoloGtold1/train/10351.png +../../data/yoloGtold1/train/10352.png +../../data/yoloGtold1/train/10353.png +../../data/yoloGtold1/train/10354.png +../../data/yoloGtold1/train/10355.png +../../data/yoloGtold1/train/10356.png +../../data/yoloGtold1/train/10357.png +../../data/yoloGtold1/train/10358.png +../../data/yoloGtold1/train/10359.png +../../data/yoloGtold1/train/10360.png +../../data/yoloGtold1/train/10361.png +../../data/yoloGtold1/train/10362.png +../../data/yoloGtold1/train/10363.png +../../data/yoloGtold1/train/10364.png +../../data/yoloGtold1/train/10365.png +../../data/yoloGtold1/train/10366.png +../../data/yoloGtold1/train/10367.png +../../data/yoloGtold1/train/10368.png +../../data/yoloGtold1/train/10369.png +../../data/yoloGtold1/train/10370.png +../../data/yoloGtold1/train/10371.png +../../data/yoloGtold1/train/10372.png +../../data/yoloGtold1/train/10373.png +../../data/yoloGtold1/train/10374.png +../../data/yoloGtold1/train/10375.png +../../data/yoloGtold1/train/10376.png +../../data/yoloGtold1/train/10377.png +../../data/yoloGtold1/train/10378.png +../../data/yoloGtold1/train/10379.png +../../data/yoloGtold1/train/10380.png +../../data/yoloGtold1/train/10381.png +../../data/yoloGtold1/train/10382.png +../../data/yoloGtold1/train/10383.png +../../data/yoloGtold1/train/10384.png +../../data/yoloGtold1/train/10385.png +../../data/yoloGtold1/train/10386.png +../../data/yoloGtold1/train/10387.png +../../data/yoloGtold1/train/10388.png +../../data/yoloGtold1/train/10389.png +../../data/yoloGtold1/train/10390.png +../../data/yoloGtold1/train/10391.png +../../data/yoloGtold1/train/10392.png +../../data/yoloGtold1/train/10393.png +../../data/yoloGtold1/train/10394.png +../../data/yoloGtold1/train/10395.png +../../data/yoloGtold1/train/10396.png +../../data/yoloGtold1/train/10397.png +../../data/yoloGtold1/train/10398.png +../../data/yoloGtold1/train/10399.png +../../data/yoloGtold1/train/10400.png +../../data/yoloGtold1/train/10401.png +../../data/yoloGtold1/train/10402.png +../../data/yoloGtold1/train/10403.png +../../data/yoloGtold1/train/10404.png +../../data/yoloGtold1/train/10405.png +../../data/yoloGtold1/train/10406.png +../../data/yoloGtold1/train/10407.png +../../data/yoloGtold1/train/10408.png +../../data/yoloGtold1/train/10409.png +../../data/yoloGtold1/train/10410.png +../../data/yoloGtold1/train/10411.png +../../data/yoloGtold1/train/10412.png +../../data/yoloGtold1/train/10413.png +../../data/yoloGtold1/train/10414.png +../../data/yoloGtold1/train/10415.png +../../data/yoloGtold1/train/10416.png +../../data/yoloGtold1/train/10417.png +../../data/yoloGtold1/train/10418.png +../../data/yoloGtold1/train/10419.png +../../data/yoloGtold1/train/10420.png +../../data/yoloGtold1/train/10421.png +../../data/yoloGtold1/train/10422.png +../../data/yoloGtold1/train/10423.png +../../data/yoloGtold1/train/10424.png +../../data/yoloGtold1/train/10425.png +../../data/yoloGtold1/train/10426.png +../../data/yoloGtold1/train/10427.png +../../data/yoloGtold1/train/10428.png +../../data/yoloGtold1/train/10429.png +../../data/yoloGtold1/train/10430.png +../../data/yoloGtold1/train/10431.png +../../data/yoloGtold1/train/10432.png +../../data/yoloGtold1/train/10433.png +../../data/yoloGtold1/train/10434.png +../../data/yoloGtold1/train/10435.png +../../data/yoloGtold1/train/10436.png +../../data/yoloGtold1/train/10437.png +../../data/yoloGtold1/train/10438.png +../../data/yoloGtold1/train/10439.png +../../data/yoloGtold1/train/10440.png +../../data/yoloGtold1/train/10441.png +../../data/yoloGtold1/train/10442.png +../../data/yoloGtold1/train/10443.png +../../data/yoloGtold1/train/10444.png +../../data/yoloGtold1/train/10445.png +../../data/yoloGtold1/train/10446.png +../../data/yoloGtold1/train/10447.png +../../data/yoloGtold1/train/10448.png +../../data/yoloGtold1/train/10449.png +../../data/yoloGtold1/train/10450.png +../../data/yoloGtold1/train/10451.png +../../data/yoloGtold1/train/10452.png +../../data/yoloGtold1/train/10453.png +../../data/yoloGtold1/train/10454.png +../../data/yoloGtold1/train/10455.png +../../data/yoloGtold1/train/10456.png +../../data/yoloGtold1/train/10457.png +../../data/yoloGtold1/train/10458.png +../../data/yoloGtold1/train/10459.png +../../data/yoloGtold1/train/10460.png +../../data/yoloGtold1/train/10461.png +../../data/yoloGtold1/train/10462.png +../../data/yoloGtold1/train/10463.png +../../data/yoloGtold1/train/10464.png +../../data/yoloGtold1/train/10465.png +../../data/yoloGtold1/train/10466.png +../../data/yoloGtold1/train/10467.png +../../data/yoloGtold1/train/10468.png +../../data/yoloGtold1/train/10469.png +../../data/yoloGtold1/train/10470.png +../../data/yoloGtold1/train/10471.png +../../data/yoloGtold1/train/10472.png +../../data/yoloGtold1/train/10473.png +../../data/yoloGtold1/train/10474.png +../../data/yoloGtold1/train/10475.png +../../data/yoloGtold1/train/10476.png +../../data/yoloGtold1/train/10477.png +../../data/yoloGtold1/train/10478.png +../../data/yoloGtold1/train/10479.png +../../data/yoloGtold1/train/10480.png +../../data/yoloGtold1/train/10481.png +../../data/yoloGtold1/train/10482.png +../../data/yoloGtold1/train/10483.png +../../data/yoloGtold1/train/10484.png +../../data/yoloGtold1/train/10485.png +../../data/yoloGtold1/train/10486.png +../../data/yoloGtold1/train/10487.png +../../data/yoloGtold1/train/10488.png +../../data/yoloGtold1/train/10489.png +../../data/yoloGtold1/train/10490.png +../../data/yoloGtold1/train/10491.png +../../data/yoloGtold1/train/10492.png +../../data/yoloGtold1/train/10493.png +../../data/yoloGtold1/train/10494.png +../../data/yoloGtold1/train/10495.png +../../data/yoloGtold1/train/10496.png +../../data/yoloGtold1/train/10497.png +../../data/yoloGtold1/train/10498.png +../../data/yoloGtold1/train/10499.png +../../data/yoloGtold1/train/10500.png +../../data/yoloGtold1/train/10501.png +../../data/yoloGtold1/train/10502.png +../../data/yoloGtold1/train/10503.png +../../data/yoloGtold1/train/10504.png +../../data/yoloGtold1/train/10505.png +../../data/yoloGtold1/train/10506.png +../../data/yoloGtold1/train/10507.png +../../data/yoloGtold1/train/10508.png +../../data/yoloGtold1/train/10509.png +../../data/yoloGtold1/train/10510.png +../../data/yoloGtold1/train/10511.png +../../data/yoloGtold1/train/10512.png +../../data/yoloGtold1/train/10513.png +../../data/yoloGtold1/train/10514.png +../../data/yoloGtold1/train/10515.png +../../data/yoloGtold1/train/10516.png +../../data/yoloGtold1/train/10517.png +../../data/yoloGtold1/train/10518.png +../../data/yoloGtold1/train/10519.png +../../data/yoloGtold1/train/10520.png +../../data/yoloGtold1/train/10521.png +../../data/yoloGtold1/train/10522.png +../../data/yoloGtold1/train/10523.png +../../data/yoloGtold1/train/10524.png +../../data/yoloGtold1/train/10525.png +../../data/yoloGtold1/train/10526.png +../../data/yoloGtold1/train/10527.png +../../data/yoloGtold1/train/10528.png +../../data/yoloGtold1/train/10529.png +../../data/yoloGtold1/train/10530.png +../../data/yoloGtold1/train/10531.png +../../data/yoloGtold1/train/10532.png +../../data/yoloGtold1/train/10533.png +../../data/yoloGtold1/train/10534.png +../../data/yoloGtold1/train/10535.png +../../data/yoloGtold1/train/10536.png +../../data/yoloGtold1/train/10537.png +../../data/yoloGtold1/train/10538.png +../../data/yoloGtold1/train/10539.png +../../data/yoloGtold1/train/10540.png +../../data/yoloGtold1/train/10541.png +../../data/yoloGtold1/train/10542.png +../../data/yoloGtold1/train/10543.png +../../data/yoloGtold1/train/10544.png +../../data/yoloGtold1/train/10545.png +../../data/yoloGtold1/train/10546.png +../../data/yoloGtold1/train/10547.png +../../data/yoloGtold1/train/10548.png +../../data/yoloGtold1/train/10549.png +../../data/yoloGtold1/train/10550.png +../../data/yoloGtold1/train/10551.png +../../data/yoloGtold1/train/10552.png +../../data/yoloGtold1/train/10553.png +../../data/yoloGtold1/train/10554.png +../../data/yoloGtold1/train/10555.png +../../data/yoloGtold1/train/10556.png +../../data/yoloGtold1/train/10557.png +../../data/yoloGtold1/train/10558.png +../../data/yoloGtold1/train/10559.png +../../data/yoloGtold1/train/10560.png +../../data/yoloGtold1/train/10561.png +../../data/yoloGtold1/train/10562.png +../../data/yoloGtold1/train/10563.png +../../data/yoloGtold1/train/10564.png +../../data/yoloGtold1/train/10565.png +../../data/yoloGtold1/train/10566.png +../../data/yoloGtold1/train/10567.png +../../data/yoloGtold1/train/10568.png +../../data/yoloGtold1/train/10569.png +../../data/yoloGtold1/train/10570.png +../../data/yoloGtold1/train/10571.png +../../data/yoloGtold1/train/10572.png +../../data/yoloGtold1/train/10573.png +../../data/yoloGtold1/train/10574.png +../../data/yoloGtold1/train/10575.png +../../data/yoloGtold1/train/10576.png +../../data/yoloGtold1/train/10577.png +../../data/yoloGtold1/train/10578.png +../../data/yoloGtold1/train/10579.png +../../data/yoloGtold1/train/10580.png +../../data/yoloGtold1/train/10581.png +../../data/yoloGtold1/train/10582.png +../../data/yoloGtold1/train/10583.png +../../data/yoloGtold1/train/10584.png +../../data/yoloGtold1/train/10585.png +../../data/yoloGtold1/train/10586.png +../../data/yoloGtold1/train/10587.png +../../data/yoloGtold1/train/10588.png +../../data/yoloGtold1/train/10589.png +../../data/yoloGtold1/train/10590.png +../../data/yoloGtold1/train/10591.png +../../data/yoloGtold1/train/10592.png +../../data/yoloGtold1/train/10593.png +../../data/yoloGtold1/train/10594.png +../../data/yoloGtold1/train/10595.png +../../data/yoloGtold1/train/10596.png +../../data/yoloGtold1/train/10597.png +../../data/yoloGtold1/train/10598.png +../../data/yoloGtold1/train/10599.png +../../data/yoloGtold1/train/10600.png +../../data/yoloGtold1/train/10601.png +../../data/yoloGtold1/train/10602.png +../../data/yoloGtold1/train/10603.png +../../data/yoloGtold1/train/10604.png +../../data/yoloGtold1/train/10605.png +../../data/yoloGtold1/train/10606.png +../../data/yoloGtold1/train/10607.png +../../data/yoloGtold1/train/10608.png +../../data/yoloGtold1/train/10609.png +../../data/yoloGtold1/train/10610.png +../../data/yoloGtold1/train/10611.png +../../data/yoloGtold1/train/10612.png +../../data/yoloGtold1/train/10613.png +../../data/yoloGtold1/train/10614.png +../../data/yoloGtold1/train/10615.png +../../data/yoloGtold1/train/10616.png +../../data/yoloGtold1/train/10617.png +../../data/yoloGtold1/train/10618.png +../../data/yoloGtold1/train/10619.png +../../data/yoloGtold1/train/10620.png +../../data/yoloGtold1/train/10621.png +../../data/yoloGtold1/train/10622.png +../../data/yoloGtold1/train/10623.png +../../data/yoloGtold1/train/10624.png +../../data/yoloGtold1/train/10625.png +../../data/yoloGtold1/train/10626.png +../../data/yoloGtold1/train/10627.png +../../data/yoloGtold1/train/10628.png +../../data/yoloGtold1/train/10629.png +../../data/yoloGtold1/train/10630.png +../../data/yoloGtold1/train/10631.png +../../data/yoloGtold1/train/10632.png +../../data/yoloGtold1/train/10633.png +../../data/yoloGtold1/train/10634.png +../../data/yoloGtold1/train/10635.png +../../data/yoloGtold1/train/10636.png +../../data/yoloGtold1/train/10637.png +../../data/yoloGtold1/train/10638.png +../../data/yoloGtold1/train/10639.png +../../data/yoloGtold1/train/10640.png +../../data/yoloGtold1/train/10641.png +../../data/yoloGtold1/train/10642.png +../../data/yoloGtold1/train/10643.png +../../data/yoloGtold1/train/10644.png +../../data/yoloGtold1/train/10645.png +../../data/yoloGtold1/train/10646.png +../../data/yoloGtold1/train/10647.png +../../data/yoloGtold1/train/10648.png +../../data/yoloGtold1/train/10649.png +../../data/yoloGtold1/train/10650.png +../../data/yoloGtold1/train/10651.png +../../data/yoloGtold1/train/10652.png +../../data/yoloGtold1/train/10653.png +../../data/yoloGtold1/train/10654.png +../../data/yoloGtold1/train/10655.png +../../data/yoloGtold1/train/10656.png +../../data/yoloGtold1/train/10657.png +../../data/yoloGtold1/train/10658.png +../../data/yoloGtold1/train/10659.png +../../data/yoloGtold1/train/10660.png +../../data/yoloGtold1/train/10661.png +../../data/yoloGtold1/train/10662.png +../../data/yoloGtold1/train/10663.png +../../data/yoloGtold1/train/10664.png +../../data/yoloGtold1/train/10665.png +../../data/yoloGtold1/train/10666.png +../../data/yoloGtold1/train/10667.png +../../data/yoloGtold1/train/10668.png +../../data/yoloGtold1/train/10669.png +../../data/yoloGtold1/train/10670.png +../../data/yoloGtold1/train/10671.png +../../data/yoloGtold1/train/10672.png +../../data/yoloGtold1/train/10673.png +../../data/yoloGtold1/train/10674.png +../../data/yoloGtold1/train/10675.png +../../data/yoloGtold1/train/10676.png +../../data/yoloGtold1/train/10677.png +../../data/yoloGtold1/train/10678.png +../../data/yoloGtold1/train/10679.png +../../data/yoloGtold1/train/10680.png +../../data/yoloGtold1/train/10681.png +../../data/yoloGtold1/train/10682.png +../../data/yoloGtold1/train/10683.png +../../data/yoloGtold1/train/10684.png +../../data/yoloGtold1/train/10685.png +../../data/yoloGtold1/train/10686.png +../../data/yoloGtold1/train/10687.png +../../data/yoloGtold1/train/10688.png +../../data/yoloGtold1/train/10689.png +../../data/yoloGtold1/train/10690.png +../../data/yoloGtold1/train/10691.png +../../data/yoloGtold1/train/10692.png +../../data/yoloGtold1/train/10693.png +../../data/yoloGtold1/train/10694.png +../../data/yoloGtold1/train/10695.png +../../data/yoloGtold1/train/10696.png +../../data/yoloGtold1/train/10697.png +../../data/yoloGtold1/train/10698.png +../../data/yoloGtold1/train/10699.png +../../data/yoloGtold1/train/10700.png +../../data/yoloGtold1/train/10701.png +../../data/yoloGtold1/train/10702.png +../../data/yoloGtold1/train/10703.png +../../data/yoloGtold1/train/10704.png +../../data/yoloGtold1/train/10705.png +../../data/yoloGtold1/train/10706.png +../../data/yoloGtold1/train/10707.png +../../data/yoloGtold1/train/10708.png +../../data/yoloGtold1/train/10709.png +../../data/yoloGtold1/train/10710.png +../../data/yoloGtold1/train/10711.png +../../data/yoloGtold1/train/10712.png +../../data/yoloGtold1/train/10713.png +../../data/yoloGtold1/train/10714.png +../../data/yoloGtold1/train/10715.png +../../data/yoloGtold1/train/10716.png +../../data/yoloGtold1/train/10717.png +../../data/yoloGtold1/train/10718.png +../../data/yoloGtold1/train/10719.png +../../data/yoloGtold1/train/10720.png +../../data/yoloGtold1/train/10721.png +../../data/yoloGtold1/train/10722.png +../../data/yoloGtold1/train/10723.png +../../data/yoloGtold1/train/10724.png +../../data/yoloGtold1/train/10725.png +../../data/yoloGtold1/train/10726.png +../../data/yoloGtold1/train/10727.png +../../data/yoloGtold1/train/10728.png +../../data/yoloGtold1/train/10729.png +../../data/yoloGtold1/train/10730.png +../../data/yoloGtold1/train/10731.png +../../data/yoloGtold1/train/10732.png +../../data/yoloGtold1/train/10733.png +../../data/yoloGtold1/train/10734.png +../../data/yoloGtold1/train/10735.png +../../data/yoloGtold1/train/10736.png +../../data/yoloGtold1/train/10737.png +../../data/yoloGtold1/train/10738.png +../../data/yoloGtold1/train/10739.png +../../data/yoloGtold1/train/10740.png +../../data/yoloGtold1/train/10741.png +../../data/yoloGtold1/train/10742.png +../../data/yoloGtold1/train/10743.png +../../data/yoloGtold1/train/10744.png +../../data/yoloGtold1/train/10745.png +../../data/yoloGtold1/train/10746.png +../../data/yoloGtold1/train/10747.png +../../data/yoloGtold1/train/10748.png +../../data/yoloGtold1/train/10749.png +../../data/yoloGtold1/train/10750.png +../../data/yoloGtold1/train/10751.png +../../data/yoloGtold1/train/10752.png +../../data/yoloGtold1/train/10753.png +../../data/yoloGtold1/train/10754.png +../../data/yoloGtold1/train/10755.png +../../data/yoloGtold1/train/10756.png +../../data/yoloGtold1/train/10757.png +../../data/yoloGtold1/train/10758.png +../../data/yoloGtold1/train/10759.png +../../data/yoloGtold1/train/10760.png +../../data/yoloGtold1/train/10761.png +../../data/yoloGtold1/train/10762.png +../../data/yoloGtold1/train/10763.png +../../data/yoloGtold1/train/10764.png +../../data/yoloGtold1/train/10765.png +../../data/yoloGtold1/train/10766.png +../../data/yoloGtold1/train/10767.png +../../data/yoloGtold1/train/10768.png +../../data/yoloGtold1/train/10769.png +../../data/yoloGtold1/train/10770.png +../../data/yoloGtold1/train/10771.png +../../data/yoloGtold1/train/10772.png +../../data/yoloGtold1/train/10773.png +../../data/yoloGtold1/train/10774.png +../../data/yoloGtold1/train/10775.png +../../data/yoloGtold1/train/10776.png +../../data/yoloGtold1/train/10777.png +../../data/yoloGtold1/train/10778.png +../../data/yoloGtold1/train/10779.png +../../data/yoloGtold1/train/10780.png +../../data/yoloGtold1/train/10781.png +../../data/yoloGtold1/train/10782.png +../../data/yoloGtold1/train/10783.png +../../data/yoloGtold1/train/10784.png +../../data/yoloGtold1/train/10785.png +../../data/yoloGtold1/train/10786.png +../../data/yoloGtold1/train/10787.png +../../data/yoloGtold1/train/10788.png +../../data/yoloGtold1/train/10789.png +../../data/yoloGtold1/train/10790.png +../../data/yoloGtold1/train/10791.png +../../data/yoloGtold1/train/10792.png +../../data/yoloGtold1/train/10793.png +../../data/yoloGtold1/train/10794.png +../../data/yoloGtold1/train/10795.png +../../data/yoloGtold1/train/10796.png +../../data/yoloGtold1/train/10797.png +../../data/yoloGtold1/train/10798.png +../../data/yoloGtold1/train/10799.png +../../data/yoloGtold1/train/10800.png +../../data/yoloGtold1/train/10801.png +../../data/yoloGtold1/train/10802.png +../../data/yoloGtold1/train/10803.png +../../data/yoloGtold1/train/10804.png +../../data/yoloGtold1/train/10805.png +../../data/yoloGtold1/train/10806.png +../../data/yoloGtold1/train/10807.png +../../data/yoloGtold1/train/10808.png +../../data/yoloGtold1/train/10809.png +../../data/yoloGtold1/train/10810.png +../../data/yoloGtold1/train/10811.png +../../data/yoloGtold1/train/10812.png +../../data/yoloGtold1/train/10813.png +../../data/yoloGtold1/train/10814.png +../../data/yoloGtold1/train/10815.png +../../data/yoloGtold1/train/10816.png +../../data/yoloGtold1/train/10817.png +../../data/yoloGtold1/train/10818.png +../../data/yoloGtold1/train/10819.png +../../data/yoloGtold1/train/10820.png +../../data/yoloGtold1/train/10821.png +../../data/yoloGtold1/train/10822.png +../../data/yoloGtold1/train/10823.png +../../data/yoloGtold1/train/10824.png +../../data/yoloGtold1/train/10825.png +../../data/yoloGtold1/train/10826.png +../../data/yoloGtold1/train/10827.png +../../data/yoloGtold1/train/10828.png +../../data/yoloGtold1/train/10829.png +../../data/yoloGtold1/train/10830.png +../../data/yoloGtold1/train/10831.png +../../data/yoloGtold1/train/10832.png +../../data/yoloGtold1/train/10833.png +../../data/yoloGtold1/train/10834.png +../../data/yoloGtold1/train/10835.png +../../data/yoloGtold1/train/10836.png +../../data/yoloGtold1/train/10837.png +../../data/yoloGtold1/train/10838.png +../../data/yoloGtold1/train/10839.png +../../data/yoloGtold1/train/10840.png +../../data/yoloGtold1/train/10841.png +../../data/yoloGtold1/train/10842.png +../../data/yoloGtold1/train/10843.png +../../data/yoloGtold1/train/10844.png +../../data/yoloGtold1/train/10845.png +../../data/yoloGtold1/train/10846.png +../../data/yoloGtold1/train/10847.png +../../data/yoloGtold1/train/10848.png +../../data/yoloGtold1/train/10849.png +../../data/yoloGtold1/train/10850.png +../../data/yoloGtold1/train/10851.png +../../data/yoloGtold1/train/10852.png +../../data/yoloGtold1/train/10853.png +../../data/yoloGtold1/train/10854.png +../../data/yoloGtold1/train/10855.png +../../data/yoloGtold1/train/10856.png +../../data/yoloGtold1/train/10857.png +../../data/yoloGtold1/train/10858.png +../../data/yoloGtold1/train/10859.png +../../data/yoloGtold1/train/10860.png +../../data/yoloGtold1/train/10861.png +../../data/yoloGtold1/train/10862.png +../../data/yoloGtold1/train/10863.png +../../data/yoloGtold1/train/10864.png +../../data/yoloGtold1/train/10865.png +../../data/yoloGtold1/train/10866.png +../../data/yoloGtold1/train/10867.png +../../data/yoloGtold1/train/10868.png +../../data/yoloGtold1/train/10869.png +../../data/yoloGtold1/train/10870.png +../../data/yoloGtold1/train/10871.png +../../data/yoloGtold1/train/10872.png +../../data/yoloGtold1/train/10873.png +../../data/yoloGtold1/train/10874.png +../../data/yoloGtold1/train/10875.png +../../data/yoloGtold1/train/10876.png +../../data/yoloGtold1/train/10877.png +../../data/yoloGtold1/train/10878.png +../../data/yoloGtold1/train/10879.png +../../data/yoloGtold1/train/10880.png +../../data/yoloGtold1/train/10881.png +../../data/yoloGtold1/train/10882.png +../../data/yoloGtold1/train/10883.png +../../data/yoloGtold1/train/10884.png +../../data/yoloGtold1/train/10885.png +../../data/yoloGtold1/train/10886.png +../../data/yoloGtold1/train/10887.png +../../data/yoloGtold1/train/10888.png +../../data/yoloGtold1/train/10889.png +../../data/yoloGtold1/train/10890.png +../../data/yoloGtold1/train/10891.png +../../data/yoloGtold1/train/10892.png +../../data/yoloGtold1/train/10893.png +../../data/yoloGtold1/train/10894.png +../../data/yoloGtold1/train/10895.png +../../data/yoloGtold1/train/10896.png +../../data/yoloGtold1/train/10897.png +../../data/yoloGtold1/train/10898.png +../../data/yoloGtold1/train/10899.png +../../data/yoloGtold1/train/10900.png +../../data/yoloGtold1/train/10901.png +../../data/yoloGtold1/train/10902.png +../../data/yoloGtold1/train/10903.png +../../data/yoloGtold1/train/10904.png +../../data/yoloGtold1/train/10905.png +../../data/yoloGtold1/train/10906.png +../../data/yoloGtold1/train/10907.png +../../data/yoloGtold1/train/10908.png +../../data/yoloGtold1/train/10909.png +../../data/yoloGtold1/train/10910.png +../../data/yoloGtold1/train/10911.png +../../data/yoloGtold1/train/10912.png +../../data/yoloGtold1/train/10913.png +../../data/yoloGtold1/train/10914.png +../../data/yoloGtold1/train/10915.png +../../data/yoloGtold1/train/10916.png +../../data/yoloGtold1/train/10917.png +../../data/yoloGtold1/train/10918.png +../../data/yoloGtold1/train/10919.png +../../data/yoloGtold1/train/10920.png +../../data/yoloGtold1/train/10921.png +../../data/yoloGtold1/train/10922.png +../../data/yoloGtold1/train/10923.png +../../data/yoloGtold1/train/10924.png +../../data/yoloGtold1/train/10925.png +../../data/yoloGtold1/train/10926.png +../../data/yoloGtold1/train/10927.png +../../data/yoloGtold1/train/10928.png +../../data/yoloGtold1/train/10929.png +../../data/yoloGtold1/train/10930.png +../../data/yoloGtold1/train/10931.png +../../data/yoloGtold1/train/10932.png +../../data/yoloGtold1/train/10933.png +../../data/yoloGtold1/train/10934.png +../../data/yoloGtold1/train/10935.png +../../data/yoloGtold1/train/10936.png +../../data/yoloGtold1/train/10937.png +../../data/yoloGtold1/train/10938.png +../../data/yoloGtold1/train/10939.png +../../data/yoloGtold1/train/10940.png +../../data/yoloGtold1/train/10941.png +../../data/yoloGtold1/train/10942.png +../../data/yoloGtold1/train/10943.png +../../data/yoloGtold1/train/10944.png +../../data/yoloGtold1/train/10945.png +../../data/yoloGtold1/train/10946.png +../../data/yoloGtold1/train/10947.png +../../data/yoloGtold1/train/10948.png +../../data/yoloGtold1/train/10949.png +../../data/yoloGtold1/train/10950.png +../../data/yoloGtold1/train/10951.png +../../data/yoloGtold1/train/10952.png +../../data/yoloGtold1/train/10953.png +../../data/yoloGtold1/train/10954.png +../../data/yoloGtold1/train/10955.png +../../data/yoloGtold1/train/10956.png +../../data/yoloGtold1/train/10957.png +../../data/yoloGtold1/train/10958.png +../../data/yoloGtold1/train/10959.png +../../data/yoloGtold1/train/10960.png +../../data/yoloGtold1/train/10961.png +../../data/yoloGtold1/train/10962.png +../../data/yoloGtold1/train/10963.png +../../data/yoloGtold1/train/10964.png +../../data/yoloGtold1/train/10965.png +../../data/yoloGtold1/train/10966.png +../../data/yoloGtold1/train/10967.png +../../data/yoloGtold1/train/10968.png +../../data/yoloGtold1/train/10969.png +../../data/yoloGtold1/train/10970.png +../../data/yoloGtold1/train/10971.png +../../data/yoloGtold1/train/10972.png +../../data/yoloGtold1/train/10973.png +../../data/yoloGtold1/train/10974.png +../../data/yoloGtold1/train/10975.png +../../data/yoloGtold1/train/10976.png +../../data/yoloGtold1/train/10977.png +../../data/yoloGtold1/train/10978.png +../../data/yoloGtold1/train/10979.png +../../data/yoloGtold1/train/10980.png +../../data/yoloGtold1/train/10981.png +../../data/yoloGtold1/train/10982.png +../../data/yoloGtold1/train/10983.png +../../data/yoloGtold1/train/10984.png +../../data/yoloGtold1/train/10985.png +../../data/yoloGtold1/train/10986.png +../../data/yoloGtold1/train/10987.png +../../data/yoloGtold1/train/10988.png +../../data/yoloGtold1/train/10989.png +../../data/yoloGtold1/train/10990.png +../../data/yoloGtold1/train/10991.png +../../data/yoloGtold1/train/10992.png +../../data/yoloGtold1/train/10993.png +../../data/yoloGtold1/train/10994.png +../../data/yoloGtold1/train/10995.png +../../data/yoloGtold1/train/10996.png +../../data/yoloGtold1/train/10997.png +../../data/yoloGtold1/train/10998.png +../../data/yoloGtold1/train/10999.png +../../data/yoloGtold1/train/11000.png +../../data/yoloGtold1/train/11001.png +../../data/yoloGtold1/train/11002.png +../../data/yoloGtold1/train/11003.png +../../data/yoloGtold1/train/11004.png +../../data/yoloGtold1/train/11005.png +../../data/yoloGtold1/train/11006.png +../../data/yoloGtold1/train/11007.png +../../data/yoloGtold1/train/11008.png +../../data/yoloGtold1/train/11009.png +../../data/yoloGtold1/train/11010.png +../../data/yoloGtold1/train/11011.png +../../data/yoloGtold1/train/11012.png +../../data/yoloGtold1/train/11013.png +../../data/yoloGtold1/train/11014.png +../../data/yoloGtold1/train/11015.png +../../data/yoloGtold1/train/11016.png +../../data/yoloGtold1/train/11017.png +../../data/yoloGtold1/train/11018.png +../../data/yoloGtold1/train/11019.png +../../data/yoloGtold1/train/11020.png +../../data/yoloGtold1/train/11021.png +../../data/yoloGtold1/train/11022.png +../../data/yoloGtold1/train/11023.png +../../data/yoloGtold1/train/11024.png +../../data/yoloGtold1/train/11025.png +../../data/yoloGtold1/train/11026.png +../../data/yoloGtold1/train/11027.png +../../data/yoloGtold1/train/11028.png +../../data/yoloGtold1/train/11029.png +../../data/yoloGtold1/train/11030.png +../../data/yoloGtold1/train/11031.png +../../data/yoloGtold1/train/11032.png +../../data/yoloGtold1/train/11033.png +../../data/yoloGtold1/train/11034.png +../../data/yoloGtold1/train/11035.png +../../data/yoloGtold1/train/11036.png +../../data/yoloGtold1/train/11037.png +../../data/yoloGtold1/train/11038.png +../../data/yoloGtold1/train/11039.png +../../data/yoloGtold1/train/11040.png +../../data/yoloGtold1/train/11041.png +../../data/yoloGtold1/train/11042.png +../../data/yoloGtold1/train/11043.png +../../data/yoloGtold1/train/11044.png +../../data/yoloGtold1/train/11045.png +../../data/yoloGtold1/train/11046.png +../../data/yoloGtold1/train/11047.png +../../data/yoloGtold1/train/11048.png +../../data/yoloGtold1/train/11049.png +../../data/yoloGtold1/train/11050.png +../../data/yoloGtold1/train/11051.png +../../data/yoloGtold1/train/11052.png +../../data/yoloGtold1/train/11053.png +../../data/yoloGtold1/train/11054.png +../../data/yoloGtold1/train/11055.png +../../data/yoloGtold1/train/11056.png +../../data/yoloGtold1/train/11057.png +../../data/yoloGtold1/train/11058.png +../../data/yoloGtold1/train/11059.png +../../data/yoloGtold1/train/11060.png +../../data/yoloGtold1/train/11061.png +../../data/yoloGtold1/train/11062.png +../../data/yoloGtold1/train/11063.png +../../data/yoloGtold1/train/11064.png +../../data/yoloGtold1/train/11065.png +../../data/yoloGtold1/train/11066.png +../../data/yoloGtold1/train/11067.png +../../data/yoloGtold1/train/11068.png +../../data/yoloGtold1/train/11069.png +../../data/yoloGtold1/train/11070.png +../../data/yoloGtold1/train/11071.png +../../data/yoloGtold1/train/11072.png +../../data/yoloGtold1/train/11073.png +../../data/yoloGtold1/train/11074.png +../../data/yoloGtold1/train/11075.png +../../data/yoloGtold1/train/11076.png +../../data/yoloGtold1/train/11077.png +../../data/yoloGtold1/train/11078.png +../../data/yoloGtold1/train/11079.png +../../data/yoloGtold1/train/11080.png +../../data/yoloGtold1/train/11081.png +../../data/yoloGtold1/train/11082.png +../../data/yoloGtold1/train/11083.png +../../data/yoloGtold1/train/11084.png +../../data/yoloGtold1/train/11085.png +../../data/yoloGtold1/train/11086.png +../../data/yoloGtold1/train/11087.png +../../data/yoloGtold1/train/11088.png +../../data/yoloGtold1/train/11089.png +../../data/yoloGtold1/train/11090.png +../../data/yoloGtold1/train/11091.png +../../data/yoloGtold1/train/11092.png +../../data/yoloGtold1/train/11093.png +../../data/yoloGtold1/train/11094.png +../../data/yoloGtold1/train/11095.png +../../data/yoloGtold1/train/11096.png +../../data/yoloGtold1/train/11097.png +../../data/yoloGtold1/train/11098.png +../../data/yoloGtold1/train/11099.png +../../data/yoloGtold1/train/11100.png +../../data/yoloGtold1/train/11101.png +../../data/yoloGtold1/train/11102.png +../../data/yoloGtold1/train/11103.png +../../data/yoloGtold1/train/11104.png +../../data/yoloGtold1/train/11105.png +../../data/yoloGtold1/train/11106.png +../../data/yoloGtold1/train/11107.png +../../data/yoloGtold1/train/11108.png +../../data/yoloGtold1/train/11109.png +../../data/yoloGtold1/train/11110.png +../../data/yoloGtold1/train/11111.png +../../data/yoloGtold1/train/11112.png +../../data/yoloGtold1/train/11113.png +../../data/yoloGtold1/train/11114.png +../../data/yoloGtold1/train/11115.png +../../data/yoloGtold1/train/11116.png +../../data/yoloGtold1/train/11117.png +../../data/yoloGtold1/train/11118.png +../../data/yoloGtold1/train/11119.png +../../data/yoloGtold1/train/11120.png +../../data/yoloGtold1/train/11121.png +../../data/yoloGtold1/train/11122.png +../../data/yoloGtold1/train/11123.png +../../data/yoloGtold1/train/11124.png +../../data/yoloGtold1/train/11125.png +../../data/yoloGtold1/train/11126.png +../../data/yoloGtold1/train/11127.png +../../data/yoloGtold1/train/11128.png +../../data/yoloGtold1/train/11129.png +../../data/yoloGtold1/train/11130.png +../../data/yoloGtold1/train/11131.png +../../data/yoloGtold1/train/11132.png +../../data/yoloGtold1/train/11133.png +../../data/yoloGtold1/train/11134.png +../../data/yoloGtold1/train/11135.png +../../data/yoloGtold1/train/11136.png +../../data/yoloGtold1/train/11137.png +../../data/yoloGtold1/train/11138.png +../../data/yoloGtold1/train/11139.png +../../data/yoloGtold1/train/11140.png +../../data/yoloGtold1/train/11141.png +../../data/yoloGtold1/train/11142.png +../../data/yoloGtold1/train/11143.png +../../data/yoloGtold1/train/11144.png +../../data/yoloGtold1/train/11145.png +../../data/yoloGtold1/train/11146.png +../../data/yoloGtold1/train/11147.png +../../data/yoloGtold1/train/11148.png +../../data/yoloGtold1/train/11149.png +../../data/yoloGtold1/train/11150.png +../../data/yoloGtold1/train/11151.png +../../data/yoloGtold1/train/11152.png +../../data/yoloGtold1/train/11153.png +../../data/yoloGtold1/train/11154.png +../../data/yoloGtold1/train/11155.png +../../data/yoloGtold1/train/11156.png +../../data/yoloGtold1/train/11157.png +../../data/yoloGtold1/train/11158.png +../../data/yoloGtold1/train/11159.png +../../data/yoloGtold1/train/11160.png +../../data/yoloGtold1/train/11161.png +../../data/yoloGtold1/train/11162.png +../../data/yoloGtold1/train/11163.png +../../data/yoloGtold1/train/11164.png +../../data/yoloGtold1/train/11165.png +../../data/yoloGtold1/train/11166.png +../../data/yoloGtold1/train/11167.png +../../data/yoloGtold1/train/11168.png +../../data/yoloGtold1/train/11169.png +../../data/yoloGtold1/train/11170.png +../../data/yoloGtold1/train/11171.png +../../data/yoloGtold1/train/11172.png +../../data/yoloGtold1/train/11173.png +../../data/yoloGtold1/train/11174.png +../../data/yoloGtold1/train/11175.png +../../data/yoloGtold1/train/11176.png +../../data/yoloGtold1/train/11177.png +../../data/yoloGtold1/train/11178.png +../../data/yoloGtold1/train/11179.png +../../data/yoloGtold1/train/11180.png +../../data/yoloGtold1/train/11181.png +../../data/yoloGtold1/train/11182.png +../../data/yoloGtold1/train/11183.png +../../data/yoloGtold1/train/11184.png +../../data/yoloGtold1/train/11185.png +../../data/yoloGtold1/train/11186.png +../../data/yoloGtold1/train/11187.png +../../data/yoloGtold1/train/11188.png +../../data/yoloGtold1/train/11189.png +../../data/yoloGtold1/train/11190.png +../../data/yoloGtold1/train/11191.png +../../data/yoloGtold1/train/11192.png +../../data/yoloGtold1/train/11193.png +../../data/yoloGtold1/train/11194.png +../../data/yoloGtold1/train/11195.png +../../data/yoloGtold1/train/11196.png +../../data/yoloGtold1/train/11197.png +../../data/yoloGtold1/train/11198.png +../../data/yoloGtold1/train/11199.png +../../data/yoloGtold1/train/11200.png +../../data/yoloGtold1/train/11201.png +../../data/yoloGtold1/train/11202.png +../../data/yoloGtold1/train/11203.png +../../data/yoloGtold1/train/11204.png +../../data/yoloGtold1/train/11205.png +../../data/yoloGtold1/train/11206.png +../../data/yoloGtold1/train/11207.png +../../data/yoloGtold1/train/11208.png +../../data/yoloGtold1/train/11209.png +../../data/yoloGtold1/train/11210.png +../../data/yoloGtold1/train/11211.png +../../data/yoloGtold1/train/11212.png +../../data/yoloGtold1/train/11213.png +../../data/yoloGtold1/train/11214.png +../../data/yoloGtold1/train/11215.png +../../data/yoloGtold1/train/11216.png +../../data/yoloGtold1/train/11217.png +../../data/yoloGtold1/train/11218.png +../../data/yoloGtold1/train/11219.png +../../data/yoloGtold1/train/11220.png +../../data/yoloGtold1/train/11221.png +../../data/yoloGtold1/train/11222.png +../../data/yoloGtold1/train/11223.png +../../data/yoloGtold1/train/11224.png +../../data/yoloGtold1/train/11225.png +../../data/yoloGtold1/train/11226.png +../../data/yoloGtold1/train/11227.png +../../data/yoloGtold1/train/11228.png +../../data/yoloGtold1/train/11229.png +../../data/yoloGtold1/train/11230.png +../../data/yoloGtold1/train/11231.png +../../data/yoloGtold1/train/11232.png +../../data/yoloGtold1/train/11233.png +../../data/yoloGtold1/train/11234.png +../../data/yoloGtold1/train/11235.png +../../data/yoloGtold1/train/11236.png +../../data/yoloGtold1/train/11237.png +../../data/yoloGtold1/train/11238.png +../../data/yoloGtold1/train/11239.png +../../data/yoloGtold1/train/11240.png +../../data/yoloGtold1/train/11241.png +../../data/yoloGtold1/train/11242.png +../../data/yoloGtold1/train/11243.png +../../data/yoloGtold1/train/11244.png +../../data/yoloGtold1/train/11245.png +../../data/yoloGtold1/train/11246.png +../../data/yoloGtold1/train/11247.png +../../data/yoloGtold1/train/11248.png +../../data/yoloGtold1/train/11249.png +../../data/yoloGtold1/train/11250.png +../../data/yoloGtold1/train/11251.png +../../data/yoloGtold1/train/11252.png +../../data/yoloGtold1/train/11253.png +../../data/yoloGtold1/train/11254.png +../../data/yoloGtold1/train/11255.png +../../data/yoloGtold1/train/11256.png +../../data/yoloGtold1/train/11257.png +../../data/yoloGtold1/train/11258.png +../../data/yoloGtold1/train/11259.png +../../data/yoloGtold1/train/11260.png +../../data/yoloGtold1/train/11261.png +../../data/yoloGtold1/train/11262.png +../../data/yoloGtold1/train/11263.png +../../data/yoloGtold1/train/11264.png +../../data/yoloGtold1/train/11265.png +../../data/yoloGtold1/train/11266.png +../../data/yoloGtold1/train/11267.png +../../data/yoloGtold1/train/11268.png +../../data/yoloGtold1/train/11269.png +../../data/yoloGtold1/train/11270.png +../../data/yoloGtold1/train/11271.png +../../data/yoloGtold1/train/11272.png +../../data/yoloGtold1/train/11273.png +../../data/yoloGtold1/train/11274.png +../../data/yoloGtold1/train/11275.png +../../data/yoloGtold1/train/11276.png +../../data/yoloGtold1/train/11277.png +../../data/yoloGtold1/train/11278.png +../../data/yoloGtold1/train/11279.png +../../data/yoloGtold1/train/11280.png +../../data/yoloGtold1/train/11281.png +../../data/yoloGtold1/train/11282.png +../../data/yoloGtold1/train/11283.png +../../data/yoloGtold1/train/11284.png +../../data/yoloGtold1/train/11285.png +../../data/yoloGtold1/train/11286.png +../../data/yoloGtold1/train/11287.png +../../data/yoloGtold1/train/11288.png +../../data/yoloGtold1/train/11289.png +../../data/yoloGtold1/train/11290.png +../../data/yoloGtold1/train/11291.png +../../data/yoloGtold1/train/11292.png +../../data/yoloGtold1/train/11293.png +../../data/yoloGtold1/train/11294.png +../../data/yoloGtold1/train/11295.png +../../data/yoloGtold1/train/11296.png +../../data/yoloGtold1/train/11297.png +../../data/yoloGtold1/train/11298.png +../../data/yoloGtold1/train/11299.png +../../data/yoloGtold1/train/11300.png +../../data/yoloGtold1/train/11301.png +../../data/yoloGtold1/train/11302.png +../../data/yoloGtold1/train/11303.png +../../data/yoloGtold1/train/11304.png +../../data/yoloGtold1/train/11305.png +../../data/yoloGtold1/train/11306.png +../../data/yoloGtold1/train/11307.png +../../data/yoloGtold1/train/11308.png +../../data/yoloGtold1/train/11309.png +../../data/yoloGtold1/train/11310.png +../../data/yoloGtold1/train/11311.png +../../data/yoloGtold1/train/11312.png +../../data/yoloGtold1/train/11313.png +../../data/yoloGtold1/train/11314.png +../../data/yoloGtold1/train/11315.png +../../data/yoloGtold1/train/11316.png +../../data/yoloGtold1/train/11317.png +../../data/yoloGtold1/train/11318.png +../../data/yoloGtold1/train/11319.png +../../data/yoloGtold1/train/11320.png +../../data/yoloGtold1/train/11321.png +../../data/yoloGtold1/train/11322.png +../../data/yoloGtold1/train/11323.png +../../data/yoloGtold1/train/11324.png +../../data/yoloGtold1/train/11325.png +../../data/yoloGtold1/train/11326.png +../../data/yoloGtold1/train/11327.png +../../data/yoloGtold1/train/11328.png +../../data/yoloGtold1/train/11329.png +../../data/yoloGtold1/train/11330.png +../../data/yoloGtold1/train/11331.png +../../data/yoloGtold1/train/11332.png +../../data/yoloGtold1/train/11333.png +../../data/yoloGtold1/train/11334.png +../../data/yoloGtold1/train/11335.png +../../data/yoloGtold1/train/11336.png +../../data/yoloGtold1/train/11337.png +../../data/yoloGtold1/train/11338.png +../../data/yoloGtold1/train/11339.png +../../data/yoloGtold1/train/11340.png +../../data/yoloGtold1/train/11341.png +../../data/yoloGtold1/train/11342.png +../../data/yoloGtold1/train/11343.png +../../data/yoloGtold1/train/11344.png +../../data/yoloGtold1/train/11345.png +../../data/yoloGtold1/train/11346.png +../../data/yoloGtold1/train/11347.png +../../data/yoloGtold1/train/11348.png +../../data/yoloGtold1/train/11349.png +../../data/yoloGtold1/train/11350.png +../../data/yoloGtold1/train/11351.png +../../data/yoloGtold1/train/11352.png +../../data/yoloGtold1/train/11353.png +../../data/yoloGtold1/train/11354.png +../../data/yoloGtold1/train/11355.png +../../data/yoloGtold1/train/11356.png +../../data/yoloGtold1/train/11357.png +../../data/yoloGtold1/train/11358.png +../../data/yoloGtold1/train/11359.png +../../data/yoloGtold1/train/11360.png +../../data/yoloGtold1/train/11361.png +../../data/yoloGtold1/train/11362.png +../../data/yoloGtold1/train/11363.png +../../data/yoloGtold1/train/11364.png +../../data/yoloGtold1/train/11365.png +../../data/yoloGtold1/train/11366.png +../../data/yoloGtold1/train/11367.png +../../data/yoloGtold1/train/11368.png +../../data/yoloGtold1/train/11369.png +../../data/yoloGtold1/train/11370.png +../../data/yoloGtold1/train/11371.png +../../data/yoloGtold1/train/11372.png +../../data/yoloGtold1/train/11373.png +../../data/yoloGtold1/train/11374.png +../../data/yoloGtold1/train/11375.png +../../data/yoloGtold1/train/11376.png +../../data/yoloGtold1/train/11377.png +../../data/yoloGtold1/train/11378.png +../../data/yoloGtold1/train/11379.png +../../data/yoloGtold1/train/11380.png +../../data/yoloGtold1/train/11381.png +../../data/yoloGtold1/train/11382.png +../../data/yoloGtold1/train/11383.png +../../data/yoloGtold1/train/11384.png +../../data/yoloGtold1/train/11385.png +../../data/yoloGtold1/train/11386.png +../../data/yoloGtold1/train/11387.png +../../data/yoloGtold1/train/11388.png +../../data/yoloGtold1/train/11389.png +../../data/yoloGtold1/train/11390.png +../../data/yoloGtold1/train/11391.png +../../data/yoloGtold1/train/11392.png +../../data/yoloGtold1/train/11393.png +../../data/yoloGtold1/train/11394.png +../../data/yoloGtold1/train/11395.png +../../data/yoloGtold1/train/11396.png +../../data/yoloGtold1/train/11397.png +../../data/yoloGtold1/train/11398.png +../../data/yoloGtold1/train/11399.png +../../data/yoloGtold1/train/11400.png +../../data/yoloGtold1/train/11401.png +../../data/yoloGtold1/train/11402.png +../../data/yoloGtold1/train/11403.png +../../data/yoloGtold1/train/11404.png +../../data/yoloGtold1/train/11405.png +../../data/yoloGtold1/train/11406.png +../../data/yoloGtold1/train/11407.png +../../data/yoloGtold1/train/11408.png +../../data/yoloGtold1/train/11409.png +../../data/yoloGtold1/train/11410.png +../../data/yoloGtold1/train/11411.png +../../data/yoloGtold1/train/11412.png +../../data/yoloGtold1/train/11413.png +../../data/yoloGtold1/train/11414.png +../../data/yoloGtold1/train/11415.png +../../data/yoloGtold1/train/11416.png +../../data/yoloGtold1/train/11417.png +../../data/yoloGtold1/train/11418.png +../../data/yoloGtold1/train/11419.png +../../data/yoloGtold1/train/11420.png +../../data/yoloGtold1/train/11421.png +../../data/yoloGtold1/train/11422.png +../../data/yoloGtold1/train/11423.png +../../data/yoloGtold1/train/11424.png +../../data/yoloGtold1/train/11425.png +../../data/yoloGtold1/train/11426.png +../../data/yoloGtold1/train/11427.png +../../data/yoloGtold1/train/11428.png +../../data/yoloGtold1/train/11429.png +../../data/yoloGtold1/train/11430.png +../../data/yoloGtold1/train/11431.png +../../data/yoloGtold1/train/11432.png +../../data/yoloGtold1/train/11433.png +../../data/yoloGtold1/train/11434.png +../../data/yoloGtold1/train/11435.png +../../data/yoloGtold1/train/11436.png +../../data/yoloGtold1/train/11437.png +../../data/yoloGtold1/train/11438.png +../../data/yoloGtold1/train/11439.png +../../data/yoloGtold1/train/11440.png +../../data/yoloGtold1/train/11441.png +../../data/yoloGtold1/train/11442.png +../../data/yoloGtold1/train/11443.png +../../data/yoloGtold1/train/11444.png +../../data/yoloGtold1/train/11445.png +../../data/yoloGtold1/train/11446.png +../../data/yoloGtold1/train/11447.png +../../data/yoloGtold1/train/11448.png +../../data/yoloGtold1/train/11449.png +../../data/yoloGtold1/train/11450.png +../../data/yoloGtold1/train/11451.png +../../data/yoloGtold1/train/11452.png +../../data/yoloGtold1/train/11453.png +../../data/yoloGtold1/train/11454.png +../../data/yoloGtold1/train/11455.png +../../data/yoloGtold1/train/11456.png +../../data/yoloGtold1/train/11457.png +../../data/yoloGtold1/train/11458.png +../../data/yoloGtold1/train/11459.png +../../data/yoloGtold1/train/11460.png +../../data/yoloGtold1/train/11461.png +../../data/yoloGtold1/train/11462.png +../../data/yoloGtold1/train/11463.png +../../data/yoloGtold1/train/11464.png +../../data/yoloGtold1/train/11465.png +../../data/yoloGtold1/train/11466.png +../../data/yoloGtold1/train/11467.png +../../data/yoloGtold1/train/11468.png +../../data/yoloGtold1/train/11469.png +../../data/yoloGtold1/train/11470.png +../../data/yoloGtold1/train/11471.png +../../data/yoloGtold1/train/11472.png +../../data/yoloGtold1/train/11473.png +../../data/yoloGtold1/train/11474.png +../../data/yoloGtold1/train/11475.png +../../data/yoloGtold1/train/11476.png +../../data/yoloGtold1/train/11477.png +../../data/yoloGtold1/train/11478.png +../../data/yoloGtold1/train/11479.png +../../data/yoloGtold1/train/11480.png +../../data/yoloGtold1/train/11481.png +../../data/yoloGtold1/train/11482.png +../../data/yoloGtold1/train/11483.png +../../data/yoloGtold1/train/11484.png +../../data/yoloGtold1/train/11485.png +../../data/yoloGtold1/train/11486.png +../../data/yoloGtold1/train/11487.png +../../data/yoloGtold1/train/11488.png +../../data/yoloGtold1/train/11489.png +../../data/yoloGtold1/train/11490.png +../../data/yoloGtold1/train/11491.png +../../data/yoloGtold1/train/11492.png +../../data/yoloGtold1/train/11493.png +../../data/yoloGtold1/train/11494.png +../../data/yoloGtold1/train/11495.png +../../data/yoloGtold1/train/11496.png +../../data/yoloGtold1/train/11497.png +../../data/yoloGtold1/train/11498.png +../../data/yoloGtold1/train/11499.png +../../data/yoloGtold1/train/11500.png +../../data/yoloGtold1/train/11501.png +../../data/yoloGtold1/train/11502.png +../../data/yoloGtold1/train/11503.png +../../data/yoloGtold1/train/11504.png +../../data/yoloGtold1/train/11505.png +../../data/yoloGtold1/train/11506.png +../../data/yoloGtold1/train/11507.png +../../data/yoloGtold1/train/11508.png +../../data/yoloGtold1/train/11509.png +../../data/yoloGtold1/train/11510.png +../../data/yoloGtold1/train/11511.png +../../data/yoloGtold1/train/11512.png +../../data/yoloGtold1/train/11513.png +../../data/yoloGtold1/train/11514.png +../../data/yoloGtold1/train/11515.png +../../data/yoloGtold1/train/11516.png +../../data/yoloGtold1/train/11517.png +../../data/yoloGtold1/train/11518.png +../../data/yoloGtold1/train/11519.png +../../data/yoloGtold1/train/11520.png +../../data/yoloGtold1/train/11521.png +../../data/yoloGtold1/train/11522.png +../../data/yoloGtold1/train/11523.png +../../data/yoloGtold1/train/11524.png +../../data/yoloGtold1/train/11525.png +../../data/yoloGtold1/train/11526.png +../../data/yoloGtold1/train/11527.png +../../data/yoloGtold1/train/11528.png +../../data/yoloGtold1/train/11529.png +../../data/yoloGtold1/train/11530.png +../../data/yoloGtold1/train/11531.png +../../data/yoloGtold1/train/11532.png +../../data/yoloGtold1/train/11533.png +../../data/yoloGtold1/train/11534.png +../../data/yoloGtold1/train/11535.png +../../data/yoloGtold1/train/11536.png +../../data/yoloGtold1/train/11537.png +../../data/yoloGtold1/train/11538.png +../../data/yoloGtold1/train/11539.png +../../data/yoloGtold1/train/11540.png +../../data/yoloGtold1/train/11541.png +../../data/yoloGtold1/train/11542.png +../../data/yoloGtold1/train/11543.png +../../data/yoloGtold1/train/11544.png +../../data/yoloGtold1/train/11545.png +../../data/yoloGtold1/train/11546.png +../../data/yoloGtold1/train/11547.png +../../data/yoloGtold1/train/11548.png +../../data/yoloGtold1/train/11549.png +../../data/yoloGtold1/train/11550.png +../../data/yoloGtold1/train/11551.png +../../data/yoloGtold1/train/11552.png +../../data/yoloGtold1/train/11553.png +../../data/yoloGtold1/train/11554.png +../../data/yoloGtold1/train/11555.png +../../data/yoloGtold1/train/11556.png +../../data/yoloGtold1/train/11557.png +../../data/yoloGtold1/train/11558.png +../../data/yoloGtold1/train/11559.png +../../data/yoloGtold1/train/11560.png +../../data/yoloGtold1/train/11561.png +../../data/yoloGtold1/train/11562.png +../../data/yoloGtold1/train/11563.png +../../data/yoloGtold1/train/11564.png +../../data/yoloGtold1/train/11565.png +../../data/yoloGtold1/train/11566.png +../../data/yoloGtold1/train/11567.png +../../data/yoloGtold1/train/11568.png +../../data/yoloGtold1/train/11569.png +../../data/yoloGtold1/train/11570.png +../../data/yoloGtold1/train/11571.png +../../data/yoloGtold1/train/11572.png +../../data/yoloGtold1/train/11573.png +../../data/yoloGtold1/train/11574.png +../../data/yoloGtold1/train/11575.png +../../data/yoloGtold1/train/11576.png +../../data/yoloGtold1/train/11577.png +../../data/yoloGtold1/train/11578.png +../../data/yoloGtold1/train/11579.png +../../data/yoloGtold1/train/11580.png +../../data/yoloGtold1/train/11581.png +../../data/yoloGtold1/train/11582.png +../../data/yoloGtold1/train/11583.png +../../data/yoloGtold1/train/11584.png +../../data/yoloGtold1/train/11585.png +../../data/yoloGtold1/train/11586.png +../../data/yoloGtold1/train/11587.png +../../data/yoloGtold1/train/11588.png +../../data/yoloGtold1/train/11589.png +../../data/yoloGtold1/train/11590.png +../../data/yoloGtold1/train/11591.png +../../data/yoloGtold1/train/11592.png +../../data/yoloGtold1/train/11593.png +../../data/yoloGtold1/train/11594.png +../../data/yoloGtold1/train/11595.png +../../data/yoloGtold1/train/11596.png +../../data/yoloGtold1/train/11597.png +../../data/yoloGtold1/train/11598.png +../../data/yoloGtold1/train/11599.png +../../data/yoloGtold1/train/11600.png +../../data/yoloGtold1/train/11601.png +../../data/yoloGtold1/train/11602.png +../../data/yoloGtold1/train/11603.png +../../data/yoloGtold1/train/11604.png +../../data/yoloGtold1/train/11605.png +../../data/yoloGtold1/train/11606.png +../../data/yoloGtold1/train/11607.png +../../data/yoloGtold1/train/11608.png +../../data/yoloGtold1/train/11609.png +../../data/yoloGtold1/train/11610.png +../../data/yoloGtold1/train/11611.png +../../data/yoloGtold1/train/11612.png +../../data/yoloGtold1/train/11613.png +../../data/yoloGtold1/train/11614.png +../../data/yoloGtold1/train/11615.png +../../data/yoloGtold1/train/11616.png +../../data/yoloGtold1/train/11617.png +../../data/yoloGtold1/train/11618.png +../../data/yoloGtold1/train/11619.png +../../data/yoloGtold1/train/11620.png +../../data/yoloGtold1/train/11621.png +../../data/yoloGtold1/train/11622.png +../../data/yoloGtold1/train/11623.png +../../data/yoloGtold1/train/11624.png +../../data/yoloGtold1/train/11625.png +../../data/yoloGtold1/train/11626.png +../../data/yoloGtold1/train/11627.png +../../data/yoloGtold1/train/11628.png +../../data/yoloGtold1/train/11629.png +../../data/yoloGtold1/train/11630.png +../../data/yoloGtold1/train/11631.png +../../data/yoloGtold1/train/11632.png +../../data/yoloGtold1/train/11633.png +../../data/yoloGtold1/train/11634.png +../../data/yoloGtold1/train/11635.png +../../data/yoloGtold1/train/11636.png +../../data/yoloGtold1/train/11637.png +../../data/yoloGtold1/train/11638.png +../../data/yoloGtold1/train/11639.png +../../data/yoloGtold1/train/11640.png +../../data/yoloGtold1/train/11641.png +../../data/yoloGtold1/train/11642.png +../../data/yoloGtold1/train/11643.png +../../data/yoloGtold1/train/11644.png +../../data/yoloGtold1/train/11645.png +../../data/yoloGtold1/train/11646.png +../../data/yoloGtold1/train/11647.png +../../data/yoloGtold1/train/11648.png +../../data/yoloGtold1/train/11649.png +../../data/yoloGtold1/train/11650.png +../../data/yoloGtold1/train/11651.png +../../data/yoloGtold1/train/11652.png +../../data/yoloGtold1/train/11653.png +../../data/yoloGtold1/train/11654.png +../../data/yoloGtold1/train/11655.png +../../data/yoloGtold1/train/11656.png +../../data/yoloGtold1/train/11657.png +../../data/yoloGtold1/train/11658.png +../../data/yoloGtold1/train/11659.png +../../data/yoloGtold1/train/11660.png +../../data/yoloGtold1/train/11661.png +../../data/yoloGtold1/train/11662.png +../../data/yoloGtold1/train/11663.png +../../data/yoloGtold1/train/11664.png +../../data/yoloGtold1/train/11665.png +../../data/yoloGtold1/train/11666.png +../../data/yoloGtold1/train/11667.png +../../data/yoloGtold1/train/11668.png +../../data/yoloGtold1/train/11669.png +../../data/yoloGtold1/train/11670.png +../../data/yoloGtold1/train/11671.png +../../data/yoloGtold1/train/11672.png +../../data/yoloGtold1/train/11673.png +../../data/yoloGtold1/train/11674.png +../../data/yoloGtold1/train/11675.png +../../data/yoloGtold1/train/11676.png +../../data/yoloGtold1/train/11677.png +../../data/yoloGtold1/train/11678.png +../../data/yoloGtold1/train/11679.png +../../data/yoloGtold1/train/11680.png +../../data/yoloGtold1/train/11681.png +../../data/yoloGtold1/train/11682.png +../../data/yoloGtold1/train/11683.png +../../data/yoloGtold1/train/11684.png +../../data/yoloGtold1/train/11685.png +../../data/yoloGtold1/train/11686.png +../../data/yoloGtold1/train/11687.png +../../data/yoloGtold1/train/11688.png +../../data/yoloGtold1/train/11689.png +../../data/yoloGtold1/train/11690.png +../../data/yoloGtold1/train/11691.png +../../data/yoloGtold1/train/11692.png +../../data/yoloGtold1/train/11693.png +../../data/yoloGtold1/train/11694.png +../../data/yoloGtold1/train/11695.png +../../data/yoloGtold1/train/11696.png +../../data/yoloGtold1/train/11697.png +../../data/yoloGtold1/train/11698.png +../../data/yoloGtold1/train/11699.png +../../data/yoloGtold1/train/11700.png +../../data/yoloGtold1/train/11701.png +../../data/yoloGtold1/train/11702.png +../../data/yoloGtold1/train/11703.png +../../data/yoloGtold1/train/11704.png +../../data/yoloGtold1/train/11705.png +../../data/yoloGtold1/train/11706.png +../../data/yoloGtold1/train/11707.png +../../data/yoloGtold1/train/11708.png +../../data/yoloGtold1/train/11709.png +../../data/yoloGtold1/train/11710.png +../../data/yoloGtold1/train/11711.png +../../data/yoloGtold1/train/11712.png +../../data/yoloGtold1/train/11713.png +../../data/yoloGtold1/train/11714.png +../../data/yoloGtold1/train/11715.png +../../data/yoloGtold1/train/11716.png +../../data/yoloGtold1/train/11717.png +../../data/yoloGtold1/train/11718.png +../../data/yoloGtold1/train/11719.png +../../data/yoloGtold1/train/11720.png +../../data/yoloGtold1/train/11721.png +../../data/yoloGtold1/train/11722.png +../../data/yoloGtold1/train/11723.png +../../data/yoloGtold1/train/11724.png +../../data/yoloGtold1/train/11725.png +../../data/yoloGtold1/train/11726.png +../../data/yoloGtold1/train/11727.png +../../data/yoloGtold1/train/11728.png +../../data/yoloGtold1/train/11729.png +../../data/yoloGtold1/train/11730.png +../../data/yoloGtold1/train/11731.png +../../data/yoloGtold1/train/11732.png +../../data/yoloGtold1/train/11733.png +../../data/yoloGtold1/train/11734.png +../../data/yoloGtold1/train/11735.png +../../data/yoloGtold1/train/11736.png +../../data/yoloGtold1/train/11737.png +../../data/yoloGtold1/train/11738.png +../../data/yoloGtold1/train/11739.png +../../data/yoloGtold1/train/11740.png +../../data/yoloGtold1/train/11741.png +../../data/yoloGtold1/train/11742.png +../../data/yoloGtold1/train/11743.png +../../data/yoloGtold1/train/11744.png +../../data/yoloGtold1/train/11745.png +../../data/yoloGtold1/train/11746.png +../../data/yoloGtold1/train/11747.png +../../data/yoloGtold1/train/11748.png +../../data/yoloGtold1/train/11749.png +../../data/yoloGtold1/train/11750.png +../../data/yoloGtold1/train/11751.png +../../data/yoloGtold1/train/11752.png +../../data/yoloGtold1/train/11753.png +../../data/yoloGtold1/train/11754.png +../../data/yoloGtold1/train/11755.png +../../data/yoloGtold1/train/11756.png +../../data/yoloGtold1/train/11757.png +../../data/yoloGtold1/train/11758.png +../../data/yoloGtold1/train/11759.png +../../data/yoloGtold1/train/11760.png +../../data/yoloGtold1/train/11761.png +../../data/yoloGtold1/train/11762.png +../../data/yoloGtold1/train/11763.png +../../data/yoloGtold1/train/11764.png +../../data/yoloGtold1/train/11765.png +../../data/yoloGtold1/train/11766.png +../../data/yoloGtold1/train/11767.png +../../data/yoloGtold1/train/11768.png +../../data/yoloGtold1/train/11769.png +../../data/yoloGtold1/train/11770.png +../../data/yoloGtold1/train/11771.png +../../data/yoloGtold1/train/11772.png +../../data/yoloGtold1/train/11773.png +../../data/yoloGtold1/train/11774.png +../../data/yoloGtold1/train/11775.png +../../data/yoloGtold1/train/11776.png +../../data/yoloGtold1/train/11777.png +../../data/yoloGtold1/train/11778.png +../../data/yoloGtold1/train/11779.png +../../data/yoloGtold1/train/11780.png +../../data/yoloGtold1/train/11781.png +../../data/yoloGtold1/train/11782.png +../../data/yoloGtold1/train/11783.png +../../data/yoloGtold1/train/11784.png +../../data/yoloGtold1/train/11785.png +../../data/yoloGtold1/train/11786.png +../../data/yoloGtold1/train/11787.png +../../data/yoloGtold1/train/11788.png +../../data/yoloGtold1/train/11789.png +../../data/yoloGtold1/train/11790.png +../../data/yoloGtold1/train/11791.png +../../data/yoloGtold1/train/11792.png +../../data/yoloGtold1/train/11793.png +../../data/yoloGtold1/train/11794.png +../../data/yoloGtold1/train/11795.png +../../data/yoloGtold1/train/11796.png +../../data/yoloGtold1/train/11797.png +../../data/yoloGtold1/train/11798.png +../../data/yoloGtold1/train/11799.png +../../data/yoloGtold1/train/11800.png +../../data/yoloGtold1/train/11801.png +../../data/yoloGtold1/train/11802.png +../../data/yoloGtold1/train/11803.png +../../data/yoloGtold1/train/11804.png +../../data/yoloGtold1/train/11805.png +../../data/yoloGtold1/train/11806.png +../../data/yoloGtold1/train/11807.png +../../data/yoloGtold1/train/11808.png +../../data/yoloGtold1/train/11809.png +../../data/yoloGtold1/train/11810.png +../../data/yoloGtold1/train/11811.png +../../data/yoloGtold1/train/11812.png +../../data/yoloGtold1/train/11813.png +../../data/yoloGtold1/train/11814.png +../../data/yoloGtold1/train/11815.png +../../data/yoloGtold1/train/11816.png +../../data/yoloGtold1/train/11817.png +../../data/yoloGtold1/train/11818.png +../../data/yoloGtold1/train/11819.png +../../data/yoloGtold1/train/11820.png +../../data/yoloGtold1/train/11821.png +../../data/yoloGtold1/train/11822.png +../../data/yoloGtold1/train/11823.png +../../data/yoloGtold1/train/11824.png +../../data/yoloGtold1/train/11825.png +../../data/yoloGtold1/train/11826.png +../../data/yoloGtold1/train/11827.png +../../data/yoloGtold1/train/11828.png +../../data/yoloGtold1/train/11829.png +../../data/yoloGtold1/train/11830.png +../../data/yoloGtold1/train/11831.png +../../data/yoloGtold1/train/11832.png +../../data/yoloGtold1/train/11833.png +../../data/yoloGtold1/train/11834.png +../../data/yoloGtold1/train/11835.png +../../data/yoloGtold1/train/11836.png +../../data/yoloGtold1/train/11837.png +../../data/yoloGtold1/train/11838.png +../../data/yoloGtold1/train/11839.png +../../data/yoloGtold1/train/11840.png +../../data/yoloGtold1/train/11841.png +../../data/yoloGtold1/train/11842.png +../../data/yoloGtold1/train/11843.png +../../data/yoloGtold1/train/11844.png +../../data/yoloGtold1/train/11845.png +../../data/yoloGtold1/train/11846.png +../../data/yoloGtold1/train/11847.png +../../data/yoloGtold1/train/11848.png +../../data/yoloGtold1/train/11849.png +../../data/yoloGtold1/train/11850.png +../../data/yoloGtold1/train/11851.png +../../data/yoloGtold1/train/11852.png +../../data/yoloGtold1/train/11853.png +../../data/yoloGtold1/train/11854.png +../../data/yoloGtold1/train/11855.png +../../data/yoloGtold1/train/11856.png +../../data/yoloGtold1/train/11857.png +../../data/yoloGtold1/train/11858.png +../../data/yoloGtold1/train/11859.png +../../data/yoloGtold1/train/11860.png +../../data/yoloGtold1/train/11861.png +../../data/yoloGtold1/train/11862.png +../../data/yoloGtold1/train/11863.png +../../data/yoloGtold1/train/11864.png +../../data/yoloGtold1/train/11865.png +../../data/yoloGtold1/train/11866.png +../../data/yoloGtold1/train/11867.png +../../data/yoloGtold1/train/11868.png +../../data/yoloGtold1/train/11869.png +../../data/yoloGtold1/train/11870.png +../../data/yoloGtold1/train/11871.png +../../data/yoloGtold1/train/11872.png +../../data/yoloGtold1/train/11873.png +../../data/yoloGtold1/train/11874.png +../../data/yoloGtold1/train/11875.png +../../data/yoloGtold1/train/11876.png +../../data/yoloGtold1/train/11877.png +../../data/yoloGtold1/train/11878.png +../../data/yoloGtold1/train/11879.png +../../data/yoloGtold1/train/11880.png +../../data/yoloGtold1/train/11881.png +../../data/yoloGtold1/train/11882.png +../../data/yoloGtold1/train/11883.png +../../data/yoloGtold1/train/11884.png +../../data/yoloGtold1/train/11885.png +../../data/yoloGtold1/train/11886.png +../../data/yoloGtold1/train/11887.png +../../data/yoloGtold1/train/11888.png +../../data/yoloGtold1/train/11889.png +../../data/yoloGtold1/train/11890.png +../../data/yoloGtold1/train/11891.png +../../data/yoloGtold1/train/11892.png +../../data/yoloGtold1/train/11893.png +../../data/yoloGtold1/train/11894.png +../../data/yoloGtold1/train/11895.png +../../data/yoloGtold1/train/11896.png +../../data/yoloGtold1/train/11897.png +../../data/yoloGtold1/train/11898.png +../../data/yoloGtold1/train/11899.png +../../data/yoloGtold1/train/11900.png +../../data/yoloGtold1/train/11901.png +../../data/yoloGtold1/train/11902.png +../../data/yoloGtold1/train/11903.png +../../data/yoloGtold1/train/11904.png +../../data/yoloGtold1/train/11905.png +../../data/yoloGtold1/train/11906.png +../../data/yoloGtold1/train/11907.png +../../data/yoloGtold1/train/11908.png +../../data/yoloGtold1/train/11909.png +../../data/yoloGtold1/train/11910.png +../../data/yoloGtold1/train/11911.png +../../data/yoloGtold1/train/11912.png +../../data/yoloGtold1/train/11913.png +../../data/yoloGtold1/train/11914.png +../../data/yoloGtold1/train/11915.png +../../data/yoloGtold1/train/11916.png +../../data/yoloGtold1/train/11917.png +../../data/yoloGtold1/train/11918.png +../../data/yoloGtold1/train/11919.png +../../data/yoloGtold1/train/11920.png +../../data/yoloGtold1/train/11921.png +../../data/yoloGtold1/train/11922.png +../../data/yoloGtold1/train/11923.png +../../data/yoloGtold1/train/11924.png +../../data/yoloGtold1/train/11925.png +../../data/yoloGtold1/train/11926.png +../../data/yoloGtold1/train/11927.png +../../data/yoloGtold1/train/11928.png +../../data/yoloGtold1/train/11929.png +../../data/yoloGtold1/train/11930.png +../../data/yoloGtold1/train/11931.png +../../data/yoloGtold1/train/11932.png +../../data/yoloGtold1/train/11933.png +../../data/yoloGtold1/train/11934.png +../../data/yoloGtold1/train/11935.png +../../data/yoloGtold1/train/11936.png +../../data/yoloGtold1/train/11937.png +../../data/yoloGtold1/train/11938.png +../../data/yoloGtold1/train/11939.png +../../data/yoloGtold1/train/11940.png +../../data/yoloGtold1/train/11941.png +../../data/yoloGtold1/train/11942.png +../../data/yoloGtold1/train/11943.png +../../data/yoloGtold1/train/11944.png +../../data/yoloGtold1/train/11945.png +../../data/yoloGtold1/train/11946.png +../../data/yoloGtold1/train/11947.png +../../data/yoloGtold1/train/11948.png +../../data/yoloGtold1/train/11949.png +../../data/yoloGtold1/train/11950.png +../../data/yoloGtold1/train/11951.png +../../data/yoloGtold1/train/11952.png +../../data/yoloGtold1/train/11953.png +../../data/yoloGtold1/train/11954.png +../../data/yoloGtold1/train/11955.png +../../data/yoloGtold1/train/11956.png +../../data/yoloGtold1/train/11957.png +../../data/yoloGtold1/train/11958.png +../../data/yoloGtold1/train/11959.png +../../data/yoloGtold1/train/11960.png +../../data/yoloGtold1/train/11961.png +../../data/yoloGtold1/train/11962.png +../../data/yoloGtold1/train/11963.png +../../data/yoloGtold1/train/11964.png +../../data/yoloGtold1/train/11965.png +../../data/yoloGtold1/train/11966.png +../../data/yoloGtold1/train/11967.png +../../data/yoloGtold1/train/11968.png +../../data/yoloGtold1/train/11969.png +../../data/yoloGtold1/train/11970.png +../../data/yoloGtold1/train/11971.png +../../data/yoloGtold1/train/11972.png +../../data/yoloGtold1/train/11973.png +../../data/yoloGtold1/train/11974.png +../../data/yoloGtold1/train/11975.png +../../data/yoloGtold1/train/11976.png +../../data/yoloGtold1/train/11977.png +../../data/yoloGtold1/train/11978.png +../../data/yoloGtold1/train/11979.png +../../data/yoloGtold1/train/11980.png +../../data/yoloGtold1/train/11981.png +../../data/yoloGtold1/train/11982.png +../../data/yoloGtold1/train/11983.png +../../data/yoloGtold1/train/11984.png +../../data/yoloGtold1/train/11985.png +../../data/yoloGtold1/train/11986.png +../../data/yoloGtold1/train/11987.png +../../data/yoloGtold1/train/11988.png +../../data/yoloGtold1/train/11989.png +../../data/yoloGtold1/train/11990.png +../../data/yoloGtold1/train/11991.png +../../data/yoloGtold1/train/11992.png +../../data/yoloGtold1/train/11993.png +../../data/yoloGtold1/train/11994.png +../../data/yoloGtold1/train/11995.png +../../data/yoloGtold1/train/11996.png +../../data/yoloGtold1/train/11997.png +../../data/yoloGtold1/train/11998.png +../../data/yoloGtold1/train/11999.png +../../data/yoloGtold1/train/12000.png +../../data/yoloGtold1/train/12001.png +../../data/yoloGtold1/train/12002.png +../../data/yoloGtold1/train/12003.png +../../data/yoloGtold1/train/12004.png +../../data/yoloGtold1/train/12005.png +../../data/yoloGtold1/train/12006.png +../../data/yoloGtold1/train/12007.png +../../data/yoloGtold1/train/12008.png +../../data/yoloGtold1/train/12009.png +../../data/yoloGtold1/train/12010.png +../../data/yoloGtold1/train/12011.png +../../data/yoloGtold1/train/12012.png +../../data/yoloGtold1/train/12013.png +../../data/yoloGtold1/train/12014.png +../../data/yoloGtold1/train/12015.png +../../data/yoloGtold1/train/12016.png +../../data/yoloGtold1/train/12017.png +../../data/yoloGtold1/train/12018.png +../../data/yoloGtold1/train/12019.png +../../data/yoloGtold1/train/12020.png +../../data/yoloGtold1/train/12021.png +../../data/yoloGtold1/train/12022.png +../../data/yoloGtold1/train/12023.png +../../data/yoloGtold1/train/12024.png +../../data/yoloGtold1/train/12025.png +../../data/yoloGtold1/train/12026.png +../../data/yoloGtold1/train/12027.png +../../data/yoloGtold1/train/12028.png +../../data/yoloGtold1/train/12029.png +../../data/yoloGtold1/train/12030.png +../../data/yoloGtold1/train/12031.png +../../data/yoloGtold1/train/12032.png +../../data/yoloGtold1/train/12033.png +../../data/yoloGtold1/train/12034.png +../../data/yoloGtold1/train/12035.png +../../data/yoloGtold1/train/12036.png +../../data/yoloGtold1/train/12037.png +../../data/yoloGtold1/train/12038.png +../../data/yoloGtold1/train/12039.png +../../data/yoloGtold1/train/12040.png +../../data/yoloGtold1/train/12041.png +../../data/yoloGtold1/train/12042.png +../../data/yoloGtold1/train/12043.png +../../data/yoloGtold1/train/12044.png +../../data/yoloGtold1/train/12045.png +../../data/yoloGtold1/train/12046.png +../../data/yoloGtold1/train/12047.png +../../data/yoloGtold1/train/12048.png +../../data/yoloGtold1/train/12049.png +../../data/yoloGtold1/train/12050.png +../../data/yoloGtold1/train/12051.png +../../data/yoloGtold1/train/12052.png +../../data/yoloGtold1/train/12053.png +../../data/yoloGtold1/train/12054.png +../../data/yoloGtold1/train/12055.png +../../data/yoloGtold1/train/12056.png +../../data/yoloGtold1/train/12057.png +../../data/yoloGtold1/train/12058.png +../../data/yoloGtold1/train/12059.png +../../data/yoloGtold1/train/12060.png +../../data/yoloGtold1/train/12061.png +../../data/yoloGtold1/train/12062.png +../../data/yoloGtold1/train/12063.png +../../data/yoloGtold1/train/12064.png +../../data/yoloGtold1/train/12065.png +../../data/yoloGtold1/train/12066.png +../../data/yoloGtold1/train/12067.png +../../data/yoloGtold1/train/12068.png +../../data/yoloGtold1/train/12069.png +../../data/yoloGtold1/train/12070.png +../../data/yoloGtold1/train/12071.png +../../data/yoloGtold1/train/12072.png +../../data/yoloGtold1/train/12073.png +../../data/yoloGtold1/train/12074.png +../../data/yoloGtold1/train/12075.png +../../data/yoloGtold1/train/12076.png +../../data/yoloGtold1/train/12077.png +../../data/yoloGtold1/train/12078.png +../../data/yoloGtold1/train/12079.png +../../data/yoloGtold1/train/12080.png +../../data/yoloGtold1/train/12081.png +../../data/yoloGtold1/train/12082.png +../../data/yoloGtold1/train/12083.png +../../data/yoloGtold1/train/12084.png +../../data/yoloGtold1/train/12085.png +../../data/yoloGtold1/train/12086.png +../../data/yoloGtold1/train/12087.png +../../data/yoloGtold1/train/12088.png +../../data/yoloGtold1/train/12089.png +../../data/yoloGtold1/train/12090.png +../../data/yoloGtold1/train/12091.png +../../data/yoloGtold1/train/12092.png +../../data/yoloGtold1/train/12093.png +../../data/yoloGtold1/train/12094.png +../../data/yoloGtold1/train/12095.png +../../data/yoloGtold1/train/12096.png +../../data/yoloGtold1/train/12097.png +../../data/yoloGtold1/train/12098.png +../../data/yoloGtold1/train/12099.png +../../data/yoloGtold1/train/12100.png +../../data/yoloGtold1/train/12101.png +../../data/yoloGtold1/train/12102.png +../../data/yoloGtold1/train/12103.png +../../data/yoloGtold1/train/12104.png +../../data/yoloGtold1/train/12105.png +../../data/yoloGtold1/train/12106.png +../../data/yoloGtold1/train/12107.png +../../data/yoloGtold1/train/12108.png +../../data/yoloGtold1/train/12109.png +../../data/yoloGtold1/train/12110.png +../../data/yoloGtold1/train/12111.png +../../data/yoloGtold1/train/12112.png +../../data/yoloGtold1/train/12113.png +../../data/yoloGtold1/train/12114.png +../../data/yoloGtold1/train/12115.png +../../data/yoloGtold1/train/12116.png +../../data/yoloGtold1/train/12117.png +../../data/yoloGtold1/train/12118.png +../../data/yoloGtold1/train/12119.png +../../data/yoloGtold1/train/12120.png +../../data/yoloGtold1/train/12121.png +../../data/yoloGtold1/train/12122.png +../../data/yoloGtold1/train/12123.png +../../data/yoloGtold1/train/12124.png +../../data/yoloGtold1/train/12125.png +../../data/yoloGtold1/train/12126.png +../../data/yoloGtold1/train/12127.png +../../data/yoloGtold1/train/12128.png +../../data/yoloGtold1/train/12129.png +../../data/yoloGtold1/train/12130.png +../../data/yoloGtold1/train/12131.png +../../data/yoloGtold1/train/12132.png +../../data/yoloGtold1/train/12133.png +../../data/yoloGtold1/train/12134.png +../../data/yoloGtold1/train/12135.png +../../data/yoloGtold1/train/12136.png +../../data/yoloGtold1/train/12137.png +../../data/yoloGtold1/train/12138.png +../../data/yoloGtold1/train/12139.png +../../data/yoloGtold1/train/12140.png +../../data/yoloGtold1/train/12141.png +../../data/yoloGtold1/train/12142.png +../../data/yoloGtold1/train/12143.png +../../data/yoloGtold1/train/12144.png +../../data/yoloGtold1/train/12145.png +../../data/yoloGtold1/train/12146.png +../../data/yoloGtold1/train/12147.png +../../data/yoloGtold1/train/12148.png +../../data/yoloGtold1/train/12149.png +../../data/yoloGtold1/train/12150.png +../../data/yoloGtold1/train/12151.png +../../data/yoloGtold1/train/12152.png +../../data/yoloGtold1/train/12153.png +../../data/yoloGtold1/train/12154.png +../../data/yoloGtold1/train/12155.png +../../data/yoloGtold1/train/12156.png +../../data/yoloGtold1/train/12157.png +../../data/yoloGtold1/train/12158.png +../../data/yoloGtold1/train/12159.png +../../data/yoloGtold1/train/12160.png +../../data/yoloGtold1/train/12161.png +../../data/yoloGtold1/train/12162.png +../../data/yoloGtold1/train/12163.png +../../data/yoloGtold1/train/12164.png +../../data/yoloGtold1/train/12165.png +../../data/yoloGtold1/train/12166.png +../../data/yoloGtold1/train/12167.png +../../data/yoloGtold1/train/12168.png +../../data/yoloGtold1/train/12169.png +../../data/yoloGtold1/train/12170.png +../../data/yoloGtold1/train/12171.png +../../data/yoloGtold1/train/12172.png +../../data/yoloGtold1/train/12173.png +../../data/yoloGtold1/train/12174.png +../../data/yoloGtold1/train/12175.png +../../data/yoloGtold1/train/12176.png +../../data/yoloGtold1/train/12177.png +../../data/yoloGtold1/train/12178.png +../../data/yoloGtold1/train/12179.png +../../data/yoloGtold1/train/12180.png +../../data/yoloGtold1/train/12181.png +../../data/yoloGtold1/train/12182.png +../../data/yoloGtold1/train/12183.png +../../data/yoloGtold1/train/12184.png +../../data/yoloGtold1/train/12185.png +../../data/yoloGtold1/train/12186.png +../../data/yoloGtold1/train/12187.png +../../data/yoloGtold1/train/12188.png +../../data/yoloGtold1/train/12189.png +../../data/yoloGtold1/train/12190.png +../../data/yoloGtold1/train/12191.png +../../data/yoloGtold1/train/12192.png +../../data/yoloGtold1/train/12193.png +../../data/yoloGtold1/train/12194.png +../../data/yoloGtold1/train/12195.png +../../data/yoloGtold1/train/12196.png +../../data/yoloGtold1/train/12197.png +../../data/yoloGtold1/train/12198.png +../../data/yoloGtold1/train/12199.png +../../data/yoloGtold1/train/12200.png +../../data/yoloGtold1/train/12201.png +../../data/yoloGtold1/train/12202.png +../../data/yoloGtold1/train/12203.png +../../data/yoloGtold1/train/12204.png +../../data/yoloGtold1/train/12205.png +../../data/yoloGtold1/train/12206.png +../../data/yoloGtold1/train/12207.png +../../data/yoloGtold1/train/12208.png +../../data/yoloGtold1/train/12209.png +../../data/yoloGtold1/train/12210.png +../../data/yoloGtold1/train/12211.png +../../data/yoloGtold1/train/12212.png +../../data/yoloGtold1/train/12213.png +../../data/yoloGtold1/train/12214.png +../../data/yoloGtold1/train/12215.png +../../data/yoloGtold1/train/12216.png +../../data/yoloGtold1/train/12217.png +../../data/yoloGtold1/train/12218.png +../../data/yoloGtold1/train/12219.png +../../data/yoloGtold1/train/12220.png +../../data/yoloGtold1/train/12221.png +../../data/yoloGtold1/train/12222.png +../../data/yoloGtold1/train/12223.png +../../data/yoloGtold1/train/12224.png +../../data/yoloGtold1/train/12225.png +../../data/yoloGtold1/train/12226.png +../../data/yoloGtold1/train/12227.png +../../data/yoloGtold1/train/12228.png +../../data/yoloGtold1/train/12229.png +../../data/yoloGtold1/train/12230.png +../../data/yoloGtold1/train/12231.png +../../data/yoloGtold1/train/12232.png +../../data/yoloGtold1/train/12233.png +../../data/yoloGtold1/train/12234.png +../../data/yoloGtold1/train/12235.png +../../data/yoloGtold1/train/12236.png +../../data/yoloGtold1/train/12237.png +../../data/yoloGtold1/train/12238.png +../../data/yoloGtold1/train/12239.png +../../data/yoloGtold1/train/12240.png +../../data/yoloGtold1/train/12241.png +../../data/yoloGtold1/train/12242.png +../../data/yoloGtold1/train/12243.png +../../data/yoloGtold1/train/12244.png +../../data/yoloGtold1/train/12245.png +../../data/yoloGtold1/train/12246.png +../../data/yoloGtold1/train/12247.png +../../data/yoloGtold1/train/12248.png +../../data/yoloGtold1/train/12249.png +../../data/yoloGtold1/train/12250.png +../../data/yoloGtold1/train/12251.png +../../data/yoloGtold1/train/12252.png +../../data/yoloGtold1/train/12253.png +../../data/yoloGtold1/train/12254.png +../../data/yoloGtold1/train/12255.png +../../data/yoloGtold1/train/12256.png +../../data/yoloGtold1/train/12257.png +../../data/yoloGtold1/train/12258.png +../../data/yoloGtold1/train/12259.png +../../data/yoloGtold1/train/12260.png +../../data/yoloGtold1/train/12261.png +../../data/yoloGtold1/train/12262.png +../../data/yoloGtold1/train/12263.png +../../data/yoloGtold1/train/12264.png +../../data/yoloGtold1/train/12265.png +../../data/yoloGtold1/train/12266.png +../../data/yoloGtold1/train/12267.png +../../data/yoloGtold1/train/12268.png +../../data/yoloGtold1/train/12269.png +../../data/yoloGtold1/train/12270.png +../../data/yoloGtold1/train/12271.png +../../data/yoloGtold1/train/12272.png +../../data/yoloGtold1/train/12273.png +../../data/yoloGtold1/train/12274.png +../../data/yoloGtold1/train/12275.png +../../data/yoloGtold1/train/12276.png +../../data/yoloGtold1/train/12277.png +../../data/yoloGtold1/train/12278.png +../../data/yoloGtold1/train/12279.png +../../data/yoloGtold1/train/12280.png +../../data/yoloGtold1/train/12281.png +../../data/yoloGtold1/train/12282.png +../../data/yoloGtold1/train/12283.png +../../data/yoloGtold1/train/12284.png +../../data/yoloGtold1/train/12285.png +../../data/yoloGtold1/train/12286.png +../../data/yoloGtold1/train/12287.png +../../data/yoloGtold1/train/12288.png +../../data/yoloGtold1/train/12289.png +../../data/yoloGtold1/train/12290.png +../../data/yoloGtold1/train/12291.png +../../data/yoloGtold1/train/12292.png +../../data/yoloGtold1/train/12293.png +../../data/yoloGtold1/train/12294.png +../../data/yoloGtold1/train/12295.png +../../data/yoloGtold1/train/12296.png +../../data/yoloGtold1/train/12297.png +../../data/yoloGtold1/train/12298.png +../../data/yoloGtold1/train/12299.png +../../data/yoloGtold1/train/12300.png +../../data/yoloGtold1/train/12301.png +../../data/yoloGtold1/train/12302.png +../../data/yoloGtold1/train/12303.png +../../data/yoloGtold1/train/12304.png +../../data/yoloGtold1/train/12305.png +../../data/yoloGtold1/train/12306.png +../../data/yoloGtold1/train/12307.png +../../data/yoloGtold1/train/12308.png +../../data/yoloGtold1/train/12309.png +../../data/yoloGtold1/train/12310.png +../../data/yoloGtold1/train/12311.png +../../data/yoloGtold1/train/12312.png +../../data/yoloGtold1/train/12313.png +../../data/yoloGtold1/train/12314.png +../../data/yoloGtold1/train/12315.png +../../data/yoloGtold1/train/12316.png +../../data/yoloGtold1/train/12317.png +../../data/yoloGtold1/train/12318.png +../../data/yoloGtold1/train/12319.png +../../data/yoloGtold1/train/12320.png +../../data/yoloGtold1/train/12321.png +../../data/yoloGtold1/train/12322.png +../../data/yoloGtold1/train/12323.png +../../data/yoloGtold1/train/12324.png +../../data/yoloGtold1/train/12325.png +../../data/yoloGtold1/train/12326.png +../../data/yoloGtold1/train/12327.png +../../data/yoloGtold1/train/12328.png +../../data/yoloGtold1/train/12329.png +../../data/yoloGtold1/train/12330.png +../../data/yoloGtold1/train/12331.png +../../data/yoloGtold1/train/12332.png +../../data/yoloGtold1/train/12333.png +../../data/yoloGtold1/train/12334.png +../../data/yoloGtold1/train/12335.png +../../data/yoloGtold1/train/12336.png +../../data/yoloGtold1/train/12337.png +../../data/yoloGtold1/train/12338.png +../../data/yoloGtold1/train/12339.png +../../data/yoloGtold1/train/12340.png +../../data/yoloGtold1/train/12341.png +../../data/yoloGtold1/train/12342.png +../../data/yoloGtold1/train/12343.png +../../data/yoloGtold1/train/12344.png +../../data/yoloGtold1/train/12345.png +../../data/yoloGtold1/train/12346.png +../../data/yoloGtold1/train/12347.png +../../data/yoloGtold1/train/12348.png +../../data/yoloGtold1/train/12349.png +../../data/yoloGtold1/train/12350.png +../../data/yoloGtold1/train/12351.png +../../data/yoloGtold1/train/12352.png +../../data/yoloGtold1/train/12353.png +../../data/yoloGtold1/train/12354.png +../../data/yoloGtold1/train/12355.png +../../data/yoloGtold1/train/12356.png +../../data/yoloGtold1/train/12357.png +../../data/yoloGtold1/train/12358.png +../../data/yoloGtold1/train/12359.png +../../data/yoloGtold1/train/12360.png +../../data/yoloGtold1/train/12361.png +../../data/yoloGtold1/train/12362.png +../../data/yoloGtold1/train/12363.png +../../data/yoloGtold1/train/12364.png +../../data/yoloGtold1/train/12365.png +../../data/yoloGtold1/train/12366.png +../../data/yoloGtold1/train/12367.png +../../data/yoloGtold1/train/12368.png +../../data/yoloGtold1/train/12369.png +../../data/yoloGtold1/train/12370.png +../../data/yoloGtold1/train/12371.png +../../data/yoloGtold1/train/12372.png +../../data/yoloGtold1/train/12373.png +../../data/yoloGtold1/train/12374.png +../../data/yoloGtold1/train/12375.png +../../data/yoloGtold1/train/12376.png +../../data/yoloGtold1/train/12377.png +../../data/yoloGtold1/train/12378.png +../../data/yoloGtold1/train/12379.png +../../data/yoloGtold1/train/12380.png +../../data/yoloGtold1/train/12381.png +../../data/yoloGtold1/train/12382.png +../../data/yoloGtold1/train/12383.png +../../data/yoloGtold1/train/12384.png +../../data/yoloGtold1/train/12385.png +../../data/yoloGtold1/train/12386.png +../../data/yoloGtold1/train/12387.png +../../data/yoloGtold1/train/12388.png +../../data/yoloGtold1/train/12389.png +../../data/yoloGtold1/train/12390.png +../../data/yoloGtold1/train/12391.png +../../data/yoloGtold1/train/12392.png +../../data/yoloGtold1/train/12393.png +../../data/yoloGtold1/train/12394.png +../../data/yoloGtold1/train/12395.png +../../data/yoloGtold1/train/12396.png +../../data/yoloGtold1/train/12397.png +../../data/yoloGtold1/train/12398.png +../../data/yoloGtold1/train/12399.png +../../data/yoloGtold1/train/12400.png +../../data/yoloGtold1/train/12401.png +../../data/yoloGtold1/train/12402.png +../../data/yoloGtold1/train/12403.png +../../data/yoloGtold1/train/12404.png +../../data/yoloGtold1/train/12405.png +../../data/yoloGtold1/train/12406.png +../../data/yoloGtold1/train/12407.png +../../data/yoloGtold1/train/12408.png +../../data/yoloGtold1/train/12409.png +../../data/yoloGtold1/train/12410.png +../../data/yoloGtold1/train/12411.png +../../data/yoloGtold1/train/12412.png +../../data/yoloGtold1/train/12413.png +../../data/yoloGtold1/train/12414.png +../../data/yoloGtold1/train/12415.png +../../data/yoloGtold1/train/12416.png +../../data/yoloGtold1/train/12417.png +../../data/yoloGtold1/train/12418.png +../../data/yoloGtold1/train/12419.png +../../data/yoloGtold1/train/12420.png +../../data/yoloGtold1/train/12421.png +../../data/yoloGtold1/train/12422.png +../../data/yoloGtold1/train/12423.png +../../data/yoloGtold1/train/12424.png +../../data/yoloGtold1/train/12425.png +../../data/yoloGtold1/train/12426.png +../../data/yoloGtold1/train/12427.png +../../data/yoloGtold1/train/12428.png +../../data/yoloGtold1/train/12429.png +../../data/yoloGtold1/train/12430.png +../../data/yoloGtold1/train/12431.png +../../data/yoloGtold1/train/12432.png +../../data/yoloGtold1/train/12433.png +../../data/yoloGtold1/train/12434.png +../../data/yoloGtold1/train/12435.png +../../data/yoloGtold1/train/12436.png +../../data/yoloGtold1/train/12437.png +../../data/yoloGtold1/train/12438.png +../../data/yoloGtold1/train/12439.png +../../data/yoloGtold1/train/12440.png +../../data/yoloGtold1/train/12441.png +../../data/yoloGtold1/train/12442.png +../../data/yoloGtold1/train/12443.png +../../data/yoloGtold1/train/12444.png +../../data/yoloGtold1/train/12445.png +../../data/yoloGtold1/train/12446.png +../../data/yoloGtold1/train/12447.png +../../data/yoloGtold1/train/12448.png +../../data/yoloGtold1/train/12449.png +../../data/yoloGtold1/train/12450.png +../../data/yoloGtold1/train/12451.png +../../data/yoloGtold1/train/12452.png +../../data/yoloGtold1/train/12453.png +../../data/yoloGtold1/train/12454.png +../../data/yoloGtold1/train/12455.png +../../data/yoloGtold1/train/12456.png +../../data/yoloGtold1/train/12457.png +../../data/yoloGtold1/train/12458.png +../../data/yoloGtold1/train/12459.png +../../data/yoloGtold1/train/12460.png +../../data/yoloGtold1/train/12461.png +../../data/yoloGtold1/train/12462.png +../../data/yoloGtold1/train/12463.png +../../data/yoloGtold1/train/12464.png +../../data/yoloGtold1/train/12465.png +../../data/yoloGtold1/train/12466.png +../../data/yoloGtold1/train/12467.png +../../data/yoloGtold1/train/12468.png +../../data/yoloGtold1/train/12469.png +../../data/yoloGtold1/train/12470.png +../../data/yoloGtold1/train/12471.png +../../data/yoloGtold1/train/12472.png +../../data/yoloGtold1/train/12473.png +../../data/yoloGtold1/train/12474.png +../../data/yoloGtold1/train/12475.png +../../data/yoloGtold1/train/12476.png +../../data/yoloGtold1/train/12477.png +../../data/yoloGtold1/train/12478.png +../../data/yoloGtold1/train/12479.png +../../data/yoloGtold1/train/12480.png +../../data/yoloGtold1/train/12481.png +../../data/yoloGtold1/train/12482.png +../../data/yoloGtold1/train/12483.png +../../data/yoloGtold1/train/12484.png +../../data/yoloGtold1/train/12485.png +../../data/yoloGtold1/train/12486.png +../../data/yoloGtold1/train/12487.png +../../data/yoloGtold1/train/12488.png +../../data/yoloGtold1/train/12489.png +../../data/yoloGtold1/train/12490.png +../../data/yoloGtold1/train/12491.png +../../data/yoloGtold1/train/12492.png +../../data/yoloGtold1/train/12493.png +../../data/yoloGtold1/train/12494.png +../../data/yoloGtold1/train/12495.png +../../data/yoloGtold1/train/12496.png +../../data/yoloGtold1/train/12497.png +../../data/yoloGtold1/train/12498.png +../../data/yoloGtold1/train/12499.png +../../data/yoloGtold1/train/12500.png +../../data/yoloGtold1/train/12501.png +../../data/yoloGtold1/train/12502.png +../../data/yoloGtold1/train/12503.png +../../data/yoloGtold1/train/12504.png +../../data/yoloGtold1/train/12505.png +../../data/yoloGtold1/train/12506.png +../../data/yoloGtold1/train/12507.png +../../data/yoloGtold1/train/12508.png +../../data/yoloGtold1/train/12509.png +../../data/yoloGtold1/train/12510.png +../../data/yoloGtold1/train/12511.png +../../data/yoloGtold1/train/12512.png +../../data/yoloGtold1/train/12513.png +../../data/yoloGtold1/train/12514.png +../../data/yoloGtold1/train/12515.png +../../data/yoloGtold1/train/12516.png +../../data/yoloGtold1/train/12517.png +../../data/yoloGtold1/train/12518.png +../../data/yoloGtold1/train/12519.png +../../data/yoloGtold1/train/12520.png +../../data/yoloGtold1/train/12521.png +../../data/yoloGtold1/train/12522.png +../../data/yoloGtold1/train/12523.png +../../data/yoloGtold1/train/12524.png +../../data/yoloGtold1/train/12525.png +../../data/yoloGtold1/train/12526.png +../../data/yoloGtold1/train/12527.png +../../data/yoloGtold1/train/12528.png +../../data/yoloGtold1/train/12529.png +../../data/yoloGtold1/train/12530.png +../../data/yoloGtold1/train/12531.png +../../data/yoloGtold1/train/12532.png +../../data/yoloGtold1/train/12533.png +../../data/yoloGtold1/train/12534.png +../../data/yoloGtold1/train/12535.png +../../data/yoloGtold1/train/12536.png +../../data/yoloGtold1/train/12537.png +../../data/yoloGtold1/train/12538.png +../../data/yoloGtold1/train/12539.png +../../data/yoloGtold1/train/12540.png +../../data/yoloGtold1/train/12541.png +../../data/yoloGtold1/train/12542.png +../../data/yoloGtold1/train/12543.png +../../data/yoloGtold1/train/12544.png +../../data/yoloGtold1/train/12545.png +../../data/yoloGtold1/train/12546.png +../../data/yoloGtold1/train/12547.png +../../data/yoloGtold1/train/12548.png +../../data/yoloGtold1/train/12549.png +../../data/yoloGtold1/train/12550.png +../../data/yoloGtold1/train/12551.png +../../data/yoloGtold1/train/12552.png +../../data/yoloGtold1/train/12553.png +../../data/yoloGtold1/train/12554.png +../../data/yoloGtold1/train/12555.png +../../data/yoloGtold1/train/12556.png +../../data/yoloGtold1/train/12557.png +../../data/yoloGtold1/train/12558.png +../../data/yoloGtold1/train/12559.png +../../data/yoloGtold1/train/12560.png +../../data/yoloGtold1/train/12561.png +../../data/yoloGtold1/train/12562.png +../../data/yoloGtold1/train/12563.png +../../data/yoloGtold1/train/12564.png +../../data/yoloGtold1/train/12565.png +../../data/yoloGtold1/train/12566.png +../../data/yoloGtold1/train/12567.png +../../data/yoloGtold1/train/12568.png +../../data/yoloGtold1/train/12569.png +../../data/yoloGtold1/train/12570.png +../../data/yoloGtold1/train/12571.png +../../data/yoloGtold1/train/12572.png +../../data/yoloGtold1/train/12573.png +../../data/yoloGtold1/train/12574.png +../../data/yoloGtold1/train/12575.png +../../data/yoloGtold1/train/12576.png +../../data/yoloGtold1/train/12577.png +../../data/yoloGtold1/train/12578.png +../../data/yoloGtold1/train/12579.png +../../data/yoloGtold1/train/12580.png +../../data/yoloGtold1/train/12581.png +../../data/yoloGtold1/train/12582.png +../../data/yoloGtold1/train/12583.png +../../data/yoloGtold1/train/12584.png +../../data/yoloGtold1/train/12585.png +../../data/yoloGtold1/train/12586.png +../../data/yoloGtold1/train/12587.png +../../data/yoloGtold1/train/12588.png +../../data/yoloGtold1/train/12589.png +../../data/yoloGtold1/train/12590.png +../../data/yoloGtold1/train/12591.png +../../data/yoloGtold1/train/12592.png +../../data/yoloGtold1/train/12593.png +../../data/yoloGtold1/train/12594.png +../../data/yoloGtold1/train/12595.png +../../data/yoloGtold1/train/12596.png +../../data/yoloGtold1/train/12597.png +../../data/yoloGtold1/train/12598.png +../../data/yoloGtold1/train/12599.png +../../data/yoloGtold1/train/12600.png +../../data/yoloGtold1/train/12601.png +../../data/yoloGtold1/train/12602.png +../../data/yoloGtold1/train/12603.png +../../data/yoloGtold1/train/12604.png +../../data/yoloGtold1/train/12605.png +../../data/yoloGtold1/train/12606.png +../../data/yoloGtold1/train/12607.png +../../data/yoloGtold1/train/12608.png +../../data/yoloGtold1/train/12609.png +../../data/yoloGtold1/train/12610.png +../../data/yoloGtold1/train/12611.png +../../data/yoloGtold1/train/12612.png +../../data/yoloGtold1/train/12613.png +../../data/yoloGtold1/train/12614.png +../../data/yoloGtold1/train/12615.png +../../data/yoloGtold1/train/12616.png +../../data/yoloGtold1/train/12617.png +../../data/yoloGtold1/train/12618.png +../../data/yoloGtold1/train/12619.png +../../data/yoloGtold1/train/12620.png +../../data/yoloGtold1/train/12621.png +../../data/yoloGtold1/train/12622.png +../../data/yoloGtold1/train/12623.png +../../data/yoloGtold1/train/12624.png +../../data/yoloGtold1/train/12625.png +../../data/yoloGtold1/train/12626.png +../../data/yoloGtold1/train/12627.png +../../data/yoloGtold1/train/12628.png +../../data/yoloGtold1/train/12629.png +../../data/yoloGtold1/train/12630.png +../../data/yoloGtold1/train/12631.png +../../data/yoloGtold1/train/12632.png +../../data/yoloGtold1/train/12633.png +../../data/yoloGtold1/train/12634.png +../../data/yoloGtold1/train/12635.png +../../data/yoloGtold1/train/12636.png +../../data/yoloGtold1/train/12637.png +../../data/yoloGtold1/train/12638.png +../../data/yoloGtold1/train/12639.png +../../data/yoloGtold1/train/12640.png +../../data/yoloGtold1/train/12641.png +../../data/yoloGtold1/train/12642.png +../../data/yoloGtold1/train/12643.png +../../data/yoloGtold1/train/12644.png +../../data/yoloGtold1/train/12645.png +../../data/yoloGtold1/train/12646.png +../../data/yoloGtold1/train/12647.png +../../data/yoloGtold1/train/12648.png +../../data/yoloGtold1/train/12649.png +../../data/yoloGtold1/train/12650.png +../../data/yoloGtold1/train/12651.png +../../data/yoloGtold1/train/12652.png +../../data/yoloGtold1/train/12653.png +../../data/yoloGtold1/train/12654.png +../../data/yoloGtold1/train/12655.png +../../data/yoloGtold1/train/12656.png +../../data/yoloGtold1/train/12657.png +../../data/yoloGtold1/train/12658.png +../../data/yoloGtold1/train/12659.png +../../data/yoloGtold1/train/12660.png +../../data/yoloGtold1/train/12661.png +../../data/yoloGtold1/train/12662.png +../../data/yoloGtold1/train/12663.png +../../data/yoloGtold1/train/12664.png +../../data/yoloGtold1/train/12665.png +../../data/yoloGtold1/train/12666.png +../../data/yoloGtold1/train/12667.png +../../data/yoloGtold1/train/12668.png +../../data/yoloGtold1/train/12669.png +../../data/yoloGtold1/train/12670.png +../../data/yoloGtold1/train/12671.png +../../data/yoloGtold1/train/12672.png +../../data/yoloGtold1/train/12673.png +../../data/yoloGtold1/train/12674.png +../../data/yoloGtold1/train/12675.png +../../data/yoloGtold1/train/12676.png +../../data/yoloGtold1/train/12677.png +../../data/yoloGtold1/train/12678.png +../../data/yoloGtold1/train/12679.png +../../data/yoloGtold1/train/12680.png +../../data/yoloGtold1/train/12681.png +../../data/yoloGtold1/train/12682.png +../../data/yoloGtold1/train/12683.png +../../data/yoloGtold1/train/12684.png +../../data/yoloGtold1/train/12685.png +../../data/yoloGtold1/train/12686.png +../../data/yoloGtold1/train/12687.png +../../data/yoloGtold1/train/12688.png +../../data/yoloGtold1/train/12689.png +../../data/yoloGtold1/train/12690.png +../../data/yoloGtold1/train/12691.png +../../data/yoloGtold1/train/12692.png +../../data/yoloGtold1/train/12693.png +../../data/yoloGtold1/train/12694.png +../../data/yoloGtold1/train/12695.png +../../data/yoloGtold1/train/12696.png +../../data/yoloGtold1/train/12697.png +../../data/yoloGtold1/train/12698.png +../../data/yoloGtold1/train/12699.png +../../data/yoloGtold1/train/12700.png +../../data/yoloGtold1/train/12701.png +../../data/yoloGtold1/train/12702.png +../../data/yoloGtold1/train/12703.png +../../data/yoloGtold1/train/12704.png +../../data/yoloGtold1/train/12705.png +../../data/yoloGtold1/train/12706.png +../../data/yoloGtold1/train/12707.png +../../data/yoloGtold1/train/12708.png +../../data/yoloGtold1/train/12709.png +../../data/yoloGtold1/train/12710.png +../../data/yoloGtold1/train/12711.png +../../data/yoloGtold1/train/12712.png +../../data/yoloGtold1/train/12713.png +../../data/yoloGtold1/train/12714.png +../../data/yoloGtold1/train/12715.png +../../data/yoloGtold1/train/12716.png +../../data/yoloGtold1/train/12717.png +../../data/yoloGtold1/train/12718.png +../../data/yoloGtold1/train/12719.png +../../data/yoloGtold1/train/12720.png +../../data/yoloGtold1/train/12721.png +../../data/yoloGtold1/train/12722.png +../../data/yoloGtold1/train/12723.png +../../data/yoloGtold1/train/12724.png +../../data/yoloGtold1/train/12725.png +../../data/yoloGtold1/train/12726.png +../../data/yoloGtold1/train/12727.png +../../data/yoloGtold1/train/12728.png +../../data/yoloGtold1/train/12729.png +../../data/yoloGtold1/train/12730.png +../../data/yoloGtold1/train/12731.png +../../data/yoloGtold1/train/12732.png +../../data/yoloGtold1/train/12733.png +../../data/yoloGtold1/train/12734.png +../../data/yoloGtold1/train/12735.png +../../data/yoloGtold1/train/12736.png +../../data/yoloGtold1/train/12737.png +../../data/yoloGtold1/train/12738.png +../../data/yoloGtold1/train/12739.png +../../data/yoloGtold1/train/12740.png +../../data/yoloGtold1/train/12741.png +../../data/yoloGtold1/train/12742.png +../../data/yoloGtold1/train/12743.png +../../data/yoloGtold1/train/12744.png +../../data/yoloGtold1/train/12745.png +../../data/yoloGtold1/train/12746.png +../../data/yoloGtold1/train/12747.png +../../data/yoloGtold1/train/12748.png +../../data/yoloGtold1/train/12749.png +../../data/yoloGtold1/train/12750.png +../../data/yoloGtold1/train/12751.png +../../data/yoloGtold1/train/12752.png +../../data/yoloGtold1/train/12753.png +../../data/yoloGtold1/train/12754.png +../../data/yoloGtold1/train/12755.png +../../data/yoloGtold1/train/12756.png +../../data/yoloGtold1/train/12757.png +../../data/yoloGtold1/train/12758.png +../../data/yoloGtold1/train/12759.png +../../data/yoloGtold1/train/12760.png +../../data/yoloGtold1/train/12761.png +../../data/yoloGtold1/train/12762.png +../../data/yoloGtold1/train/12763.png +../../data/yoloGtold1/train/12764.png +../../data/yoloGtold1/train/12765.png +../../data/yoloGtold1/train/12766.png +../../data/yoloGtold1/train/12767.png +../../data/yoloGtold1/train/12768.png +../../data/yoloGtold1/train/12769.png +../../data/yoloGtold1/train/12770.png +../../data/yoloGtold1/train/12771.png +../../data/yoloGtold1/train/12772.png +../../data/yoloGtold1/train/12773.png +../../data/yoloGtold1/train/12774.png +../../data/yoloGtold1/train/12775.png +../../data/yoloGtold1/train/12776.png +../../data/yoloGtold1/train/12777.png +../../data/yoloGtold1/train/12778.png +../../data/yoloGtold1/train/12779.png +../../data/yoloGtold1/train/12780.png +../../data/yoloGtold1/train/12781.png +../../data/yoloGtold1/train/12782.png +../../data/yoloGtold1/train/12783.png +../../data/yoloGtold1/train/12784.png +../../data/yoloGtold1/train/12785.png +../../data/yoloGtold1/train/12786.png +../../data/yoloGtold1/train/12787.png +../../data/yoloGtold1/train/12788.png +../../data/yoloGtold1/train/12789.png +../../data/yoloGtold1/train/12790.png +../../data/yoloGtold1/train/12791.png +../../data/yoloGtold1/train/12792.png +../../data/yoloGtold1/train/12793.png +../../data/yoloGtold1/train/12794.png +../../data/yoloGtold1/train/12795.png +../../data/yoloGtold1/train/12796.png +../../data/yoloGtold1/train/12797.png +../../data/yoloGtold1/train/12798.png +../../data/yoloGtold1/train/12799.png +../../data/yoloGtold1/train/12800.png +../../data/yoloGtold1/train/12801.png +../../data/yoloGtold1/train/12802.png +../../data/yoloGtold1/train/12803.png +../../data/yoloGtold1/train/12804.png +../../data/yoloGtold1/train/12805.png +../../data/yoloGtold1/train/12806.png +../../data/yoloGtold1/train/12807.png +../../data/yoloGtold1/train/12808.png +../../data/yoloGtold1/train/12809.png +../../data/yoloGtold1/train/12810.png +../../data/yoloGtold1/train/12811.png +../../data/yoloGtold1/train/12812.png +../../data/yoloGtold1/train/12813.png +../../data/yoloGtold1/train/12814.png +../../data/yoloGtold1/train/12815.png +../../data/yoloGtold1/train/12816.png +../../data/yoloGtold1/train/12817.png +../../data/yoloGtold1/train/12818.png +../../data/yoloGtold1/train/12819.png +../../data/yoloGtold1/train/12820.png +../../data/yoloGtold1/train/12821.png +../../data/yoloGtold1/train/12822.png +../../data/yoloGtold1/train/12823.png +../../data/yoloGtold1/train/12824.png +../../data/yoloGtold1/train/12825.png +../../data/yoloGtold1/train/12826.png +../../data/yoloGtold1/train/12827.png +../../data/yoloGtold1/train/12828.png +../../data/yoloGtold1/train/12829.png +../../data/yoloGtold1/train/12830.png +../../data/yoloGtold1/train/12831.png +../../data/yoloGtold1/train/12832.png +../../data/yoloGtold1/train/12833.png +../../data/yoloGtold1/train/12834.png +../../data/yoloGtold1/train/12835.png +../../data/yoloGtold1/train/12836.png +../../data/yoloGtold1/train/12837.png +../../data/yoloGtold1/train/12838.png +../../data/yoloGtold1/train/12839.png +../../data/yoloGtold1/train/12840.png +../../data/yoloGtold1/train/12841.png +../../data/yoloGtold1/train/12842.png +../../data/yoloGtold1/train/12843.png +../../data/yoloGtold1/train/12844.png +../../data/yoloGtold1/train/12845.png +../../data/yoloGtold1/train/12846.png +../../data/yoloGtold1/train/12847.png +../../data/yoloGtold1/train/12848.png +../../data/yoloGtold1/train/12849.png +../../data/yoloGtold1/train/12850.png +../../data/yoloGtold1/train/12851.png +../../data/yoloGtold1/train/12852.png +../../data/yoloGtold1/train/12853.png +../../data/yoloGtold1/train/12854.png +../../data/yoloGtold1/train/12855.png +../../data/yoloGtold1/train/12856.png +../../data/yoloGtold1/train/12857.png +../../data/yoloGtold1/train/12858.png +../../data/yoloGtold1/train/12859.png +../../data/yoloGtold1/train/12860.png +../../data/yoloGtold1/train/12861.png +../../data/yoloGtold1/train/12862.png +../../data/yoloGtold1/train/12863.png +../../data/yoloGtold1/train/12864.png +../../data/yoloGtold1/train/12865.png +../../data/yoloGtold1/train/12866.png +../../data/yoloGtold1/train/12867.png +../../data/yoloGtold1/train/12868.png +../../data/yoloGtold1/train/12869.png +../../data/yoloGtold1/train/12870.png +../../data/yoloGtold1/train/12871.png +../../data/yoloGtold1/train/12872.png +../../data/yoloGtold1/train/12873.png +../../data/yoloGtold1/train/12874.png +../../data/yoloGtold1/train/12875.png +../../data/yoloGtold1/train/12876.png +../../data/yoloGtold1/train/12877.png +../../data/yoloGtold1/train/12878.png +../../data/yoloGtold1/train/12879.png +../../data/yoloGtold1/train/12880.png +../../data/yoloGtold1/train/12881.png +../../data/yoloGtold1/train/12882.png +../../data/yoloGtold1/train/12883.png +../../data/yoloGtold1/train/12884.png +../../data/yoloGtold1/train/12885.png +../../data/yoloGtold1/train/12886.png +../../data/yoloGtold1/train/12887.png +../../data/yoloGtold1/train/12888.png +../../data/yoloGtold1/train/12889.png +../../data/yoloGtold1/train/12890.png +../../data/yoloGtold1/train/12891.png +../../data/yoloGtold1/train/12892.png +../../data/yoloGtold1/train/12893.png +../../data/yoloGtold1/train/12894.png +../../data/yoloGtold1/train/12895.png +../../data/yoloGtold1/train/12896.png +../../data/yoloGtold1/train/12897.png +../../data/yoloGtold1/train/12898.png +../../data/yoloGtold1/train/12899.png +../../data/yoloGtold1/train/12900.png +../../data/yoloGtold1/train/12901.png +../../data/yoloGtold1/train/12902.png +../../data/yoloGtold1/train/12903.png +../../data/yoloGtold1/train/12904.png +../../data/yoloGtold1/train/12905.png +../../data/yoloGtold1/train/12906.png +../../data/yoloGtold1/train/12907.png +../../data/yoloGtold1/train/12908.png +../../data/yoloGtold1/train/12909.png +../../data/yoloGtold1/train/12910.png +../../data/yoloGtold1/train/12911.png +../../data/yoloGtold1/train/12912.png +../../data/yoloGtold1/train/12913.png +../../data/yoloGtold1/train/12914.png +../../data/yoloGtold1/train/12915.png +../../data/yoloGtold1/train/12916.png +../../data/yoloGtold1/train/12917.png +../../data/yoloGtold1/train/12918.png +../../data/yoloGtold1/train/12919.png +../../data/yoloGtold1/train/12920.png +../../data/yoloGtold1/train/12921.png +../../data/yoloGtold1/train/12922.png +../../data/yoloGtold1/train/12923.png +../../data/yoloGtold1/train/12924.png +../../data/yoloGtold1/train/12925.png +../../data/yoloGtold1/train/12926.png +../../data/yoloGtold1/train/12927.png +../../data/yoloGtold1/train/12928.png +../../data/yoloGtold1/train/12929.png +../../data/yoloGtold1/train/12930.png +../../data/yoloGtold1/train/12931.png +../../data/yoloGtold1/train/12932.png +../../data/yoloGtold1/train/12933.png +../../data/yoloGtold1/train/12934.png +../../data/yoloGtold1/train/12935.png +../../data/yoloGtold1/train/12936.png +../../data/yoloGtold1/train/12937.png +../../data/yoloGtold1/train/12938.png +../../data/yoloGtold1/train/12939.png +../../data/yoloGtold1/train/12940.png +../../data/yoloGtold1/train/12941.png +../../data/yoloGtold1/train/12942.png +../../data/yoloGtold1/train/12943.png +../../data/yoloGtold1/train/12944.png +../../data/yoloGtold1/train/12945.png +../../data/yoloGtold1/train/12946.png +../../data/yoloGtold1/train/12947.png +../../data/yoloGtold1/train/12948.png +../../data/yoloGtold1/train/12949.png +../../data/yoloGtold1/train/12950.png +../../data/yoloGtold1/train/12951.png +../../data/yoloGtold1/train/12952.png +../../data/yoloGtold1/train/12953.png +../../data/yoloGtold1/train/12954.png +../../data/yoloGtold1/train/12955.png +../../data/yoloGtold1/train/12956.png +../../data/yoloGtold1/train/12957.png +../../data/yoloGtold1/train/12958.png +../../data/yoloGtold1/train/12959.png +../../data/yoloGtold1/train/12960.png +../../data/yoloGtold1/train/12961.png +../../data/yoloGtold1/train/12962.png +../../data/yoloGtold1/train/12963.png +../../data/yoloGtold1/train/12964.png +../../data/yoloGtold1/train/12965.png +../../data/yoloGtold1/train/12966.png +../../data/yoloGtold1/train/12967.png +../../data/yoloGtold1/train/12968.png +../../data/yoloGtold1/train/12969.png +../../data/yoloGtold1/train/12970.png +../../data/yoloGtold1/train/12971.png +../../data/yoloGtold1/train/12972.png +../../data/yoloGtold1/train/12973.png +../../data/yoloGtold1/train/12974.png +../../data/yoloGtold1/train/12975.png +../../data/yoloGtold1/train/12976.png +../../data/yoloGtold1/train/12977.png +../../data/yoloGtold1/train/12978.png +../../data/yoloGtold1/train/12979.png +../../data/yoloGtold1/train/12980.png +../../data/yoloGtold1/train/12981.png +../../data/yoloGtold1/train/12982.png +../../data/yoloGtold1/train/12983.png +../../data/yoloGtold1/train/12984.png +../../data/yoloGtold1/train/12985.png +../../data/yoloGtold1/train/12986.png +../../data/yoloGtold1/train/12987.png +../../data/yoloGtold1/train/12988.png +../../data/yoloGtold1/train/12989.png +../../data/yoloGtold1/train/12990.png +../../data/yoloGtold1/train/12991.png +../../data/yoloGtold1/train/12992.png +../../data/yoloGtold1/train/12993.png +../../data/yoloGtold1/train/12994.png +../../data/yoloGtold1/train/12995.png +../../data/yoloGtold1/train/12996.png +../../data/yoloGtold1/train/12997.png +../../data/yoloGtold1/train/12998.png +../../data/yoloGtold1/train/12999.png +../../data/yoloGtold1/train/13000.png +../../data/yoloGtold1/train/13001.png +../../data/yoloGtold1/train/13002.png +../../data/yoloGtold1/train/13003.png +../../data/yoloGtold1/train/13004.png +../../data/yoloGtold1/train/13005.png +../../data/yoloGtold1/train/13006.png +../../data/yoloGtold1/train/13007.png +../../data/yoloGtold1/train/13008.png +../../data/yoloGtold1/train/13009.png +../../data/yoloGtold1/train/13010.png +../../data/yoloGtold1/train/13011.png +../../data/yoloGtold1/train/13012.png +../../data/yoloGtold1/train/13013.png +../../data/yoloGtold1/train/13014.png +../../data/yoloGtold1/train/13015.png +../../data/yoloGtold1/train/13016.png +../../data/yoloGtold1/train/13017.png +../../data/yoloGtold1/train/13018.png +../../data/yoloGtold1/train/13019.png +../../data/yoloGtold1/train/13020.png +../../data/yoloGtold1/train/13021.png +../../data/yoloGtold1/train/13022.png +../../data/yoloGtold1/train/13023.png +../../data/yoloGtold1/train/13024.png +../../data/yoloGtold1/train/13025.png +../../data/yoloGtold1/train/13026.png +../../data/yoloGtold1/train/13027.png +../../data/yoloGtold1/train/13028.png +../../data/yoloGtold1/train/13029.png +../../data/yoloGtold1/train/13030.png +../../data/yoloGtold1/train/13031.png +../../data/yoloGtold1/train/13032.png +../../data/yoloGtold1/train/13033.png +../../data/yoloGtold1/train/13034.png +../../data/yoloGtold1/train/13035.png +../../data/yoloGtold1/train/13036.png +../../data/yoloGtold1/train/13037.png +../../data/yoloGtold1/train/13038.png +../../data/yoloGtold1/train/13039.png +../../data/yoloGtold1/train/13040.png +../../data/yoloGtold1/train/13041.png +../../data/yoloGtold1/train/13042.png +../../data/yoloGtold1/train/13043.png +../../data/yoloGtold1/train/13044.png +../../data/yoloGtold1/train/13045.png +../../data/yoloGtold1/train/13046.png +../../data/yoloGtold1/train/13047.png +../../data/yoloGtold1/train/13048.png +../../data/yoloGtold1/train/13049.png +../../data/yoloGtold1/train/13050.png +../../data/yoloGtold1/train/13051.png +../../data/yoloGtold1/train/13052.png +../../data/yoloGtold1/train/13053.png +../../data/yoloGtold1/train/13054.png +../../data/yoloGtold1/train/13055.png +../../data/yoloGtold1/train/13056.png +../../data/yoloGtold1/train/13057.png +../../data/yoloGtold1/train/13058.png +../../data/yoloGtold1/train/13059.png +../../data/yoloGtold1/train/13060.png +../../data/yoloGtold1/train/13061.png +../../data/yoloGtold1/train/13062.png +../../data/yoloGtold1/train/13063.png +../../data/yoloGtold1/train/13064.png +../../data/yoloGtold1/train/13065.png +../../data/yoloGtold1/train/13066.png +../../data/yoloGtold1/train/13067.png +../../data/yoloGtold1/train/13068.png +../../data/yoloGtold1/train/13069.png +../../data/yoloGtold1/train/13070.png +../../data/yoloGtold1/train/13071.png +../../data/yoloGtold1/train/13072.png +../../data/yoloGtold1/train/13073.png +../../data/yoloGtold1/train/13074.png +../../data/yoloGtold1/train/13075.png +../../data/yoloGtold1/train/13076.png +../../data/yoloGtold1/train/13077.png +../../data/yoloGtold1/train/13078.png +../../data/yoloGtold1/train/13079.png +../../data/yoloGtold1/train/13080.png +../../data/yoloGtold1/train/13081.png +../../data/yoloGtold1/train/13082.png +../../data/yoloGtold1/train/13083.png +../../data/yoloGtold1/train/13084.png +../../data/yoloGtold1/train/13085.png +../../data/yoloGtold1/train/13086.png +../../data/yoloGtold1/train/13087.png +../../data/yoloGtold1/train/13088.png +../../data/yoloGtold1/train/13089.png +../../data/yoloGtold1/train/13090.png +../../data/yoloGtold1/train/13091.png +../../data/yoloGtold1/train/13092.png +../../data/yoloGtold1/train/13093.png +../../data/yoloGtold1/train/13094.png +../../data/yoloGtold1/train/13095.png +../../data/yoloGtold1/train/13096.png +../../data/yoloGtold1/train/13097.png +../../data/yoloGtold1/train/13098.png +../../data/yoloGtold1/train/13099.png +../../data/yoloGtold1/train/13100.png +../../data/yoloGtold1/train/13101.png +../../data/yoloGtold1/train/13102.png +../../data/yoloGtold1/train/13103.png +../../data/yoloGtold1/train/13104.png +../../data/yoloGtold1/train/13105.png +../../data/yoloGtold1/train/13106.png +../../data/yoloGtold1/train/13107.png +../../data/yoloGtold1/train/13108.png +../../data/yoloGtold1/train/13109.png +../../data/yoloGtold1/train/13110.png +../../data/yoloGtold1/train/13111.png +../../data/yoloGtold1/train/13112.png +../../data/yoloGtold1/train/13113.png +../../data/yoloGtold1/train/13114.png +../../data/yoloGtold1/train/13115.png +../../data/yoloGtold1/train/13116.png +../../data/yoloGtold1/train/13117.png +../../data/yoloGtold1/train/13118.png +../../data/yoloGtold1/train/13119.png +../../data/yoloGtold1/train/13120.png +../../data/yoloGtold1/train/13121.png +../../data/yoloGtold1/train/13122.png +../../data/yoloGtold1/train/13123.png +../../data/yoloGtold1/train/13124.png +../../data/yoloGtold1/train/13125.png +../../data/yoloGtold1/train/13126.png +../../data/yoloGtold1/train/13127.png +../../data/yoloGtold1/train/13128.png +../../data/yoloGtold1/train/13129.png +../../data/yoloGtold1/train/13130.png +../../data/yoloGtold1/train/13131.png +../../data/yoloGtold1/train/13132.png +../../data/yoloGtold1/train/13133.png +../../data/yoloGtold1/train/13134.png +../../data/yoloGtold1/train/13135.png +../../data/yoloGtold1/train/13136.png +../../data/yoloGtold1/train/13137.png +../../data/yoloGtold1/train/13138.png +../../data/yoloGtold1/train/13139.png +../../data/yoloGtold1/train/13140.png +../../data/yoloGtold1/train/13141.png +../../data/yoloGtold1/train/13142.png +../../data/yoloGtold1/train/13143.png +../../data/yoloGtold1/train/13144.png +../../data/yoloGtold1/train/13145.png +../../data/yoloGtold1/train/13146.png +../../data/yoloGtold1/train/13147.png +../../data/yoloGtold1/train/13148.png +../../data/yoloGtold1/train/13149.png +../../data/yoloGtold1/train/13150.png +../../data/yoloGtold1/train/13151.png +../../data/yoloGtold1/train/13152.png +../../data/yoloGtold1/train/13153.png +../../data/yoloGtold1/train/13154.png +../../data/yoloGtold1/train/13155.png +../../data/yoloGtold1/train/13156.png +../../data/yoloGtold1/train/13157.png +../../data/yoloGtold1/train/13158.png +../../data/yoloGtold1/train/13159.png +../../data/yoloGtold1/train/13160.png +../../data/yoloGtold1/train/13161.png +../../data/yoloGtold1/train/13162.png +../../data/yoloGtold1/train/13163.png +../../data/yoloGtold1/train/13164.png +../../data/yoloGtold1/train/13165.png +../../data/yoloGtold1/train/13166.png +../../data/yoloGtold1/train/13167.png +../../data/yoloGtold1/train/13168.png +../../data/yoloGtold1/train/13169.png +../../data/yoloGtold1/train/13170.png +../../data/yoloGtold1/train/13171.png +../../data/yoloGtold1/train/13172.png +../../data/yoloGtold1/train/13173.png +../../data/yoloGtold1/train/13174.png +../../data/yoloGtold1/train/13175.png +../../data/yoloGtold1/train/13176.png +../../data/yoloGtold1/train/13177.png +../../data/yoloGtold1/train/13178.png +../../data/yoloGtold1/train/13179.png +../../data/yoloGtold1/train/13180.png +../../data/yoloGtold1/train/13181.png +../../data/yoloGtold1/train/13182.png +../../data/yoloGtold1/train/13183.png +../../data/yoloGtold1/train/13184.png +../../data/yoloGtold1/train/13185.png +../../data/yoloGtold1/train/13186.png +../../data/yoloGtold1/train/13187.png +../../data/yoloGtold1/train/13188.png +../../data/yoloGtold1/train/13189.png +../../data/yoloGtold1/train/13190.png +../../data/yoloGtold1/train/13191.png +../../data/yoloGtold1/train/13192.png +../../data/yoloGtold1/train/13193.png +../../data/yoloGtold1/train/13194.png +../../data/yoloGtold1/train/13195.png +../../data/yoloGtold1/train/13196.png +../../data/yoloGtold1/train/13197.png +../../data/yoloGtold1/train/13198.png +../../data/yoloGtold1/train/13199.png +../../data/yoloGtold1/train/13200.png +../../data/yoloGtold1/train/13201.png +../../data/yoloGtold1/train/13202.png +../../data/yoloGtold1/train/13203.png +../../data/yoloGtold1/train/13204.png +../../data/yoloGtold1/train/13205.png +../../data/yoloGtold1/train/13206.png +../../data/yoloGtold1/train/13207.png +../../data/yoloGtold1/train/13208.png +../../data/yoloGtold1/train/13209.png +../../data/yoloGtold1/train/13210.png +../../data/yoloGtold1/train/13211.png +../../data/yoloGtold1/train/13212.png +../../data/yoloGtold1/train/13213.png +../../data/yoloGtold1/train/13214.png +../../data/yoloGtold1/train/13215.png +../../data/yoloGtold1/train/13216.png +../../data/yoloGtold1/train/13217.png +../../data/yoloGtold1/train/13218.png +../../data/yoloGtold1/train/13219.png +../../data/yoloGtold1/train/13220.png +../../data/yoloGtold1/train/13221.png +../../data/yoloGtold1/train/13222.png +../../data/yoloGtold1/train/13223.png +../../data/yoloGtold1/train/13224.png +../../data/yoloGtold1/train/13225.png +../../data/yoloGtold1/train/13226.png +../../data/yoloGtold1/train/13227.png +../../data/yoloGtold1/train/13228.png +../../data/yoloGtold1/train/13229.png +../../data/yoloGtold1/train/13230.png +../../data/yoloGtold1/train/13231.png +../../data/yoloGtold1/train/13232.png +../../data/yoloGtold1/train/13233.png +../../data/yoloGtold1/train/13234.png +../../data/yoloGtold1/train/13235.png +../../data/yoloGtold1/train/13236.png +../../data/yoloGtold1/train/13237.png +../../data/yoloGtold1/train/13238.png +../../data/yoloGtold1/train/13239.png +../../data/yoloGtold1/train/13240.png +../../data/yoloGtold1/train/13241.png +../../data/yoloGtold1/train/13242.png +../../data/yoloGtold1/train/13243.png +../../data/yoloGtold1/train/13244.png +../../data/yoloGtold1/train/13245.png +../../data/yoloGtold1/train/13246.png +../../data/yoloGtold1/train/13247.png +../../data/yoloGtold1/train/13248.png +../../data/yoloGtold1/train/13249.png +../../data/yoloGtold1/train/13250.png +../../data/yoloGtold1/train/13251.png +../../data/yoloGtold1/train/13252.png +../../data/yoloGtold1/train/13253.png +../../data/yoloGtold1/train/13254.png +../../data/yoloGtold1/train/13255.png +../../data/yoloGtold1/train/13256.png +../../data/yoloGtold1/train/13257.png +../../data/yoloGtold1/train/13258.png +../../data/yoloGtold1/train/13259.png +../../data/yoloGtold1/train/13260.png +../../data/yoloGtold1/train/13261.png +../../data/yoloGtold1/train/13262.png +../../data/yoloGtold1/train/13263.png +../../data/yoloGtold1/train/13264.png +../../data/yoloGtold1/train/13265.png +../../data/yoloGtold1/train/13266.png +../../data/yoloGtold1/train/13267.png +../../data/yoloGtold1/train/13268.png +../../data/yoloGtold1/train/13269.png +../../data/yoloGtold1/train/13270.png +../../data/yoloGtold1/train/13271.png +../../data/yoloGtold1/train/13272.png +../../data/yoloGtold1/train/13273.png +../../data/yoloGtold1/train/13274.png +../../data/yoloGtold1/train/13275.png +../../data/yoloGtold1/train/13276.png +../../data/yoloGtold1/train/13277.png +../../data/yoloGtold1/train/13278.png +../../data/yoloGtold1/train/13279.png +../../data/yoloGtold1/train/13280.png +../../data/yoloGtold1/train/13281.png +../../data/yoloGtold1/train/13282.png +../../data/yoloGtold1/train/13283.png +../../data/yoloGtold1/train/13284.png +../../data/yoloGtold1/train/13285.png +../../data/yoloGtold1/train/13286.png +../../data/yoloGtold1/train/13287.png +../../data/yoloGtold1/train/13288.png +../../data/yoloGtold1/train/13289.png +../../data/yoloGtold1/train/13290.png +../../data/yoloGtold1/train/13291.png +../../data/yoloGtold1/train/13292.png +../../data/yoloGtold1/train/13293.png +../../data/yoloGtold1/train/13294.png +../../data/yoloGtold1/train/13295.png +../../data/yoloGtold1/train/13296.png +../../data/yoloGtold1/train/13297.png +../../data/yoloGtold1/train/13298.png +../../data/yoloGtold1/train/13299.png +../../data/yoloGtold1/train/13300.png +../../data/yoloGtold1/train/13301.png +../../data/yoloGtold1/train/13302.png +../../data/yoloGtold1/train/13303.png +../../data/yoloGtold1/train/13304.png +../../data/yoloGtold1/train/13305.png +../../data/yoloGtold1/train/13306.png +../../data/yoloGtold1/train/13307.png +../../data/yoloGtold1/train/13308.png +../../data/yoloGtold1/train/13309.png +../../data/yoloGtold1/train/13310.png +../../data/yoloGtold1/train/13311.png +../../data/yoloGtold1/train/13312.png +../../data/yoloGtold1/train/13313.png +../../data/yoloGtold1/train/13314.png +../../data/yoloGtold1/train/13315.png +../../data/yoloGtold1/train/13316.png +../../data/yoloGtold1/train/13317.png +../../data/yoloGtold1/train/13318.png +../../data/yoloGtold1/train/13319.png +../../data/yoloGtold1/train/13320.png +../../data/yoloGtold1/train/13321.png +../../data/yoloGtold1/train/13322.png +../../data/yoloGtold1/train/13323.png +../../data/yoloGtold1/train/13324.png +../../data/yoloGtold1/train/13325.png +../../data/yoloGtold1/train/13326.png +../../data/yoloGtold1/train/13327.png +../../data/yoloGtold1/train/13328.png +../../data/yoloGtold1/train/13329.png +../../data/yoloGtold1/train/13330.png +../../data/yoloGtold1/train/13331.png +../../data/yoloGtold1/train/13332.png +../../data/yoloGtold1/train/13333.png +../../data/yoloGtold1/train/13334.png +../../data/yoloGtold1/train/13335.png +../../data/yoloGtold1/train/13336.png +../../data/yoloGtold1/train/13337.png +../../data/yoloGtold1/train/13338.png +../../data/yoloGtold1/train/13339.png +../../data/yoloGtold1/train/13340.png +../../data/yoloGtold1/train/13341.png +../../data/yoloGtold1/train/13342.png +../../data/yoloGtold1/train/13343.png +../../data/yoloGtold1/train/13344.png +../../data/yoloGtold1/train/13345.png +../../data/yoloGtold1/train/13346.png +../../data/yoloGtold1/train/13347.png +../../data/yoloGtold1/train/13348.png +../../data/yoloGtold1/train/13349.png +../../data/yoloGtold1/train/13350.png +../../data/yoloGtold1/train/13351.png +../../data/yoloGtold1/train/13352.png +../../data/yoloGtold1/train/13353.png +../../data/yoloGtold1/train/13354.png +../../data/yoloGtold1/train/13355.png +../../data/yoloGtold1/train/13356.png +../../data/yoloGtold1/train/13357.png +../../data/yoloGtold1/train/13358.png +../../data/yoloGtold1/train/13359.png +../../data/yoloGtold1/train/13360.png +../../data/yoloGtold1/train/13361.png +../../data/yoloGtold1/train/13362.png +../../data/yoloGtold1/train/13363.png +../../data/yoloGtold1/train/13364.png +../../data/yoloGtold1/train/13365.png +../../data/yoloGtold1/train/13366.png +../../data/yoloGtold1/train/13367.png +../../data/yoloGtold1/train/13368.png +../../data/yoloGtold1/train/13369.png +../../data/yoloGtold1/train/13370.png +../../data/yoloGtold1/train/13371.png +../../data/yoloGtold1/train/13372.png +../../data/yoloGtold1/train/13373.png +../../data/yoloGtold1/train/13374.png +../../data/yoloGtold1/train/13375.png +../../data/yoloGtold1/train/13376.png +../../data/yoloGtold1/train/13377.png +../../data/yoloGtold1/train/13378.png +../../data/yoloGtold1/train/13379.png +../../data/yoloGtold1/train/13380.png +../../data/yoloGtold1/train/13381.png +../../data/yoloGtold1/train/13382.png +../../data/yoloGtold1/train/13383.png +../../data/yoloGtold1/train/13384.png +../../data/yoloGtold1/train/13385.png +../../data/yoloGtold1/train/13386.png +../../data/yoloGtold1/train/13387.png +../../data/yoloGtold1/train/13388.png +../../data/yoloGtold1/train/13389.png +../../data/yoloGtold1/train/13390.png +../../data/yoloGtold1/train/13391.png +../../data/yoloGtold1/train/13392.png +../../data/yoloGtold1/train/13393.png +../../data/yoloGtold1/train/13394.png +../../data/yoloGtold1/train/13395.png +../../data/yoloGtold1/train/13396.png +../../data/yoloGtold1/train/13397.png +../../data/yoloGtold1/train/13398.png +../../data/yoloGtold1/train/13399.png +../../data/yoloGtold1/train/13400.png +../../data/yoloGtold1/train/13401.png +../../data/yoloGtold1/train/13402.png +../../data/yoloGtold1/train/13403.png +../../data/yoloGtold1/train/13404.png +../../data/yoloGtold1/train/13405.png +../../data/yoloGtold1/train/13406.png +../../data/yoloGtold1/train/13407.png +../../data/yoloGtold1/train/13408.png +../../data/yoloGtold1/train/13409.png +../../data/yoloGtold1/train/13410.png +../../data/yoloGtold1/train/13411.png +../../data/yoloGtold1/train/13412.png +../../data/yoloGtold1/train/13413.png +../../data/yoloGtold1/train/13414.png +../../data/yoloGtold1/train/13415.png +../../data/yoloGtold1/train/13416.png +../../data/yoloGtold1/train/13417.png +../../data/yoloGtold1/train/13418.png +../../data/yoloGtold1/train/13419.png +../../data/yoloGtold1/train/13420.png +../../data/yoloGtold1/train/13421.png +../../data/yoloGtold1/train/13422.png +../../data/yoloGtold1/train/13423.png +../../data/yoloGtold1/train/13424.png +../../data/yoloGtold1/train/13425.png +../../data/yoloGtold1/train/13426.png +../../data/yoloGtold1/train/13427.png +../../data/yoloGtold1/train/13428.png +../../data/yoloGtold1/train/13429.png +../../data/yoloGtold1/train/13430.png +../../data/yoloGtold1/train/13431.png +../../data/yoloGtold1/train/13432.png +../../data/yoloGtold1/train/13433.png +../../data/yoloGtold1/train/13434.png +../../data/yoloGtold1/train/13435.png +../../data/yoloGtold1/train/13436.png +../../data/yoloGtold1/train/13437.png +../../data/yoloGtold1/train/13438.png +../../data/yoloGtold1/train/13439.png +../../data/yoloGtold1/train/13440.png +../../data/yoloGtold1/train/13441.png +../../data/yoloGtold1/train/13442.png +../../data/yoloGtold1/train/13443.png +../../data/yoloGtold1/train/13444.png +../../data/yoloGtold1/train/13445.png +../../data/yoloGtold1/train/13446.png +../../data/yoloGtold1/train/13447.png +../../data/yoloGtold1/train/13448.png +../../data/yoloGtold1/train/13449.png +../../data/yoloGtold1/train/13450.png +../../data/yoloGtold1/train/13451.png +../../data/yoloGtold1/train/13452.png +../../data/yoloGtold1/train/13453.png +../../data/yoloGtold1/train/13454.png +../../data/yoloGtold1/train/13455.png +../../data/yoloGtold1/train/13456.png +../../data/yoloGtold1/train/13457.png +../../data/yoloGtold1/train/13458.png +../../data/yoloGtold1/train/13459.png +../../data/yoloGtold1/train/13460.png +../../data/yoloGtold1/train/13461.png +../../data/yoloGtold1/train/13462.png +../../data/yoloGtold1/train/13463.png +../../data/yoloGtold1/train/13464.png +../../data/yoloGtold1/train/13465.png +../../data/yoloGtold1/train/13466.png +../../data/yoloGtold1/train/13467.png +../../data/yoloGtold1/train/13468.png +../../data/yoloGtold1/train/13469.png +../../data/yoloGtold1/train/13470.png +../../data/yoloGtold1/train/13471.png +../../data/yoloGtold1/train/13472.png +../../data/yoloGtold1/train/13473.png +../../data/yoloGtold1/train/13474.png +../../data/yoloGtold1/train/13475.png +../../data/yoloGtold1/train/13476.png +../../data/yoloGtold1/train/13477.png +../../data/yoloGtold1/train/13478.png +../../data/yoloGtold1/train/13479.png +../../data/yoloGtold1/train/13480.png +../../data/yoloGtold1/train/13481.png +../../data/yoloGtold1/train/13482.png +../../data/yoloGtold1/train/13483.png +../../data/yoloGtold1/train/13484.png +../../data/yoloGtold1/train/13485.png +../../data/yoloGtold1/train/13486.png +../../data/yoloGtold1/train/13487.png +../../data/yoloGtold1/train/13488.png +../../data/yoloGtold1/train/13489.png +../../data/yoloGtold1/train/13490.png +../../data/yoloGtold1/train/13491.png +../../data/yoloGtold1/train/13492.png +../../data/yoloGtold1/train/13493.png +../../data/yoloGtold1/train/13494.png +../../data/yoloGtold1/train/13495.png +../../data/yoloGtold1/train/13496.png +../../data/yoloGtold1/train/13497.png +../../data/yoloGtold1/train/13498.png +../../data/yoloGtold1/train/13499.png +../../data/yoloGtold1/train/13500.png +../../data/yoloGtold1/train/13501.png +../../data/yoloGtold1/train/13502.png +../../data/yoloGtold1/train/13503.png +../../data/yoloGtold1/train/13504.png +../../data/yoloGtold1/train/13505.png +../../data/yoloGtold1/train/13506.png +../../data/yoloGtold1/train/13507.png +../../data/yoloGtold1/train/13508.png +../../data/yoloGtold1/train/13509.png +../../data/yoloGtold1/train/13510.png +../../data/yoloGtold1/train/13511.png +../../data/yoloGtold1/train/13512.png +../../data/yoloGtold1/train/13513.png +../../data/yoloGtold1/train/13514.png +../../data/yoloGtold1/train/13515.png +../../data/yoloGtold1/train/13516.png +../../data/yoloGtold1/train/13517.png +../../data/yoloGtold1/train/13518.png +../../data/yoloGtold1/train/13519.png +../../data/yoloGtold1/train/13520.png +../../data/yoloGtold1/train/13521.png +../../data/yoloGtold1/train/13522.png +../../data/yoloGtold1/train/13523.png +../../data/yoloGtold1/train/13524.png +../../data/yoloGtold1/train/13525.png +../../data/yoloGtold1/train/13526.png +../../data/yoloGtold1/train/13527.png +../../data/yoloGtold1/train/13528.png +../../data/yoloGtold1/train/13529.png +../../data/yoloGtold1/train/13530.png +../../data/yoloGtold1/train/13531.png +../../data/yoloGtold1/train/13532.png +../../data/yoloGtold1/train/13533.png +../../data/yoloGtold1/train/13534.png +../../data/yoloGtold1/train/13535.png +../../data/yoloGtold1/train/13536.png +../../data/yoloGtold1/train/13537.png +../../data/yoloGtold1/train/13538.png +../../data/yoloGtold1/train/13539.png +../../data/yoloGtold1/train/13540.png +../../data/yoloGtold1/train/13541.png +../../data/yoloGtold1/train/13542.png +../../data/yoloGtold1/train/13543.png +../../data/yoloGtold1/train/13544.png +../../data/yoloGtold1/train/13545.png +../../data/yoloGtold1/train/13546.png +../../data/yoloGtold1/train/13547.png +../../data/yoloGtold1/train/13548.png +../../data/yoloGtold1/train/13549.png +../../data/yoloGtold1/train/13550.png +../../data/yoloGtold1/train/13551.png +../../data/yoloGtold1/train/13552.png +../../data/yoloGtold1/train/13553.png +../../data/yoloGtold1/train/13554.png +../../data/yoloGtold1/train/13555.png +../../data/yoloGtold1/train/13556.png +../../data/yoloGtold1/train/13557.png +../../data/yoloGtold1/train/13558.png +../../data/yoloGtold1/train/13559.png +../../data/yoloGtold1/train/13560.png +../../data/yoloGtold1/train/13561.png +../../data/yoloGtold1/train/13562.png +../../data/yoloGtold1/train/13563.png +../../data/yoloGtold1/train/13564.png +../../data/yoloGtold1/train/13565.png +../../data/yoloGtold1/train/13566.png +../../data/yoloGtold1/train/13567.png +../../data/yoloGtold1/train/13568.png +../../data/yoloGtold1/train/13569.png +../../data/yoloGtold1/train/13570.png +../../data/yoloGtold1/train/13571.png +../../data/yoloGtold1/train/13572.png +../../data/yoloGtold1/train/13573.png +../../data/yoloGtold1/train/13574.png +../../data/yoloGtold1/train/13575.png +../../data/yoloGtold1/train/13576.png +../../data/yoloGtold1/train/13577.png +../../data/yoloGtold1/train/13578.png +../../data/yoloGtold1/train/13579.png +../../data/yoloGtold1/train/13580.png +../../data/yoloGtold1/train/13581.png +../../data/yoloGtold1/train/13582.png +../../data/yoloGtold1/train/13583.png +../../data/yoloGtold1/train/13584.png +../../data/yoloGtold1/train/13585.png +../../data/yoloGtold1/train/13586.png +../../data/yoloGtold1/train/13587.png +../../data/yoloGtold1/train/13588.png +../../data/yoloGtold1/train/13589.png +../../data/yoloGtold1/train/13590.png +../../data/yoloGtold1/train/13591.png +../../data/yoloGtold1/train/13592.png +../../data/yoloGtold1/train/13593.png +../../data/yoloGtold1/train/13594.png +../../data/yoloGtold1/train/13595.png +../../data/yoloGtold1/train/13596.png +../../data/yoloGtold1/train/13597.png +../../data/yoloGtold1/train/13598.png +../../data/yoloGtold1/train/13599.png +../../data/yoloGtold1/train/13600.png +../../data/yoloGtold1/train/13601.png +../../data/yoloGtold1/train/13602.png +../../data/yoloGtold1/train/13603.png +../../data/yoloGtold1/train/13604.png +../../data/yoloGtold1/train/13605.png +../../data/yoloGtold1/train/13606.png +../../data/yoloGtold1/train/13607.png +../../data/yoloGtold1/train/13608.png +../../data/yoloGtold1/train/13609.png +../../data/yoloGtold1/train/13610.png +../../data/yoloGtold1/train/13611.png +../../data/yoloGtold1/train/13612.png +../../data/yoloGtold1/train/13613.png +../../data/yoloGtold1/train/13614.png +../../data/yoloGtold1/train/13615.png +../../data/yoloGtold1/train/13616.png +../../data/yoloGtold1/train/13617.png +../../data/yoloGtold1/train/13618.png +../../data/yoloGtold1/train/13619.png +../../data/yoloGtold1/train/13620.png +../../data/yoloGtold1/train/13621.png +../../data/yoloGtold1/train/13622.png +../../data/yoloGtold1/train/13623.png +../../data/yoloGtold1/train/13624.png +../../data/yoloGtold1/train/13625.png +../../data/yoloGtold1/train/13626.png +../../data/yoloGtold1/train/13627.png +../../data/yoloGtold1/train/13628.png +../../data/yoloGtold1/train/13629.png +../../data/yoloGtold1/train/13630.png +../../data/yoloGtold1/train/13631.png +../../data/yoloGtold1/train/13632.png +../../data/yoloGtold1/train/13633.png +../../data/yoloGtold1/train/13634.png +../../data/yoloGtold1/train/13635.png +../../data/yoloGtold1/train/13636.png +../../data/yoloGtold1/train/13637.png +../../data/yoloGtold1/train/13638.png +../../data/yoloGtold1/train/13639.png +../../data/yoloGtold1/train/13640.png +../../data/yoloGtold1/train/13641.png +../../data/yoloGtold1/train/13642.png +../../data/yoloGtold1/train/13643.png +../../data/yoloGtold1/train/13644.png +../../data/yoloGtold1/train/13645.png +../../data/yoloGtold1/train/13646.png +../../data/yoloGtold1/train/13647.png +../../data/yoloGtold1/train/13648.png +../../data/yoloGtold1/train/13649.png +../../data/yoloGtold1/train/13650.png +../../data/yoloGtold1/train/13651.png +../../data/yoloGtold1/train/13652.png +../../data/yoloGtold1/train/13653.png +../../data/yoloGtold1/train/13654.png +../../data/yoloGtold1/train/13655.png +../../data/yoloGtold1/train/13656.png +../../data/yoloGtold1/train/13657.png +../../data/yoloGtold1/train/13658.png +../../data/yoloGtold1/train/13659.png +../../data/yoloGtold1/train/13660.png +../../data/yoloGtold1/train/13661.png +../../data/yoloGtold1/train/13662.png +../../data/yoloGtold1/train/13663.png +../../data/yoloGtold1/train/13664.png +../../data/yoloGtold1/train/13665.png +../../data/yoloGtold1/train/13666.png +../../data/yoloGtold1/train/13667.png +../../data/yoloGtold1/train/13668.png +../../data/yoloGtold1/train/13669.png +../../data/yoloGtold1/train/13670.png +../../data/yoloGtold1/train/13671.png +../../data/yoloGtold1/train/13672.png +../../data/yoloGtold1/train/13673.png +../../data/yoloGtold1/train/13674.png +../../data/yoloGtold1/train/13675.png +../../data/yoloGtold1/train/13676.png +../../data/yoloGtold1/train/13677.png +../../data/yoloGtold1/train/13678.png +../../data/yoloGtold1/train/13679.png +../../data/yoloGtold1/train/13680.png +../../data/yoloGtold1/train/13681.png +../../data/yoloGtold1/train/13682.png +../../data/yoloGtold1/train/13683.png +../../data/yoloGtold1/train/13684.png +../../data/yoloGtold1/train/13685.png +../../data/yoloGtold1/train/13686.png +../../data/yoloGtold1/train/13687.png +../../data/yoloGtold1/train/13688.png +../../data/yoloGtold1/train/13689.png +../../data/yoloGtold1/train/13690.png +../../data/yoloGtold1/train/13691.png +../../data/yoloGtold1/train/13692.png +../../data/yoloGtold1/train/13693.png +../../data/yoloGtold1/train/13694.png +../../data/yoloGtold1/train/13695.png +../../data/yoloGtold1/train/13696.png +../../data/yoloGtold1/train/13697.png +../../data/yoloGtold1/train/13698.png +../../data/yoloGtold1/train/13699.png +../../data/yoloGtold1/train/13700.png +../../data/yoloGtold1/train/13701.png +../../data/yoloGtold1/train/13702.png +../../data/yoloGtold1/train/13703.png +../../data/yoloGtold1/train/13704.png +../../data/yoloGtold1/train/13705.png +../../data/yoloGtold1/train/13706.png +../../data/yoloGtold1/train/13707.png +../../data/yoloGtold1/train/13708.png +../../data/yoloGtold1/train/13709.png +../../data/yoloGtold1/train/13710.png +../../data/yoloGtold1/train/13711.png +../../data/yoloGtold1/train/13712.png +../../data/yoloGtold1/train/13713.png +../../data/yoloGtold1/train/13714.png +../../data/yoloGtold1/train/13715.png +../../data/yoloGtold1/train/13716.png +../../data/yoloGtold1/train/13717.png +../../data/yoloGtold1/train/13718.png +../../data/yoloGtold1/train/13719.png +../../data/yoloGtold1/train/13720.png +../../data/yoloGtold1/train/13721.png +../../data/yoloGtold1/train/13722.png +../../data/yoloGtold1/train/13723.png +../../data/yoloGtold1/train/13724.png +../../data/yoloGtold1/train/13725.png +../../data/yoloGtold1/train/13726.png +../../data/yoloGtold1/train/13727.png +../../data/yoloGtold1/train/13728.png +../../data/yoloGtold1/train/13729.png +../../data/yoloGtold1/train/13730.png +../../data/yoloGtold1/train/13731.png +../../data/yoloGtold1/train/13732.png +../../data/yoloGtold1/train/13733.png +../../data/yoloGtold1/train/13734.png +../../data/yoloGtold1/train/13735.png +../../data/yoloGtold1/train/13736.png +../../data/yoloGtold1/train/13737.png +../../data/yoloGtold1/train/13738.png +../../data/yoloGtold1/train/13739.png +../../data/yoloGtold1/train/13740.png +../../data/yoloGtold1/train/13741.png +../../data/yoloGtold1/train/13742.png +../../data/yoloGtold1/train/13743.png +../../data/yoloGtold1/train/13744.png +../../data/yoloGtold1/train/13745.png +../../data/yoloGtold1/train/13746.png +../../data/yoloGtold1/train/13747.png +../../data/yoloGtold1/train/13748.png +../../data/yoloGtold1/train/13749.png +../../data/yoloGtold1/train/13750.png +../../data/yoloGtold1/train/13751.png +../../data/yoloGtold1/train/13752.png +../../data/yoloGtold1/train/13753.png +../../data/yoloGtold1/train/13754.png +../../data/yoloGtold1/train/13755.png +../../data/yoloGtold1/train/13756.png +../../data/yoloGtold1/train/13757.png +../../data/yoloGtold1/train/13758.png +../../data/yoloGtold1/train/13759.png +../../data/yoloGtold1/train/13760.png +../../data/yoloGtold1/train/13761.png +../../data/yoloGtold1/train/13762.png +../../data/yoloGtold1/train/13763.png +../../data/yoloGtold1/train/13764.png +../../data/yoloGtold1/train/13765.png +../../data/yoloGtold1/train/13766.png +../../data/yoloGtold1/train/13767.png +../../data/yoloGtold1/train/13768.png +../../data/yoloGtold1/train/13769.png +../../data/yoloGtold1/train/13770.png +../../data/yoloGtold1/train/13771.png +../../data/yoloGtold1/train/13772.png +../../data/yoloGtold1/train/13773.png +../../data/yoloGtold1/train/13774.png +../../data/yoloGtold1/train/13775.png +../../data/yoloGtold1/train/13776.png +../../data/yoloGtold1/train/13777.png +../../data/yoloGtold1/train/13778.png +../../data/yoloGtold1/train/13779.png +../../data/yoloGtold1/train/13780.png +../../data/yoloGtold1/train/13781.png +../../data/yoloGtold1/train/13782.png +../../data/yoloGtold1/train/13783.png +../../data/yoloGtold1/train/13784.png +../../data/yoloGtold1/train/13785.png +../../data/yoloGtold1/train/13786.png +../../data/yoloGtold1/train/13787.png +../../data/yoloGtold1/train/13788.png +../../data/yoloGtold1/train/13789.png +../../data/yoloGtold1/train/13790.png +../../data/yoloGtold1/train/13791.png +../../data/yoloGtold1/train/13792.png +../../data/yoloGtold1/train/13793.png +../../data/yoloGtold1/train/13794.png +../../data/yoloGtold1/train/13795.png +../../data/yoloGtold1/train/13796.png +../../data/yoloGtold1/train/13797.png +../../data/yoloGtold1/train/13798.png +../../data/yoloGtold1/train/13799.png +../../data/yoloGtold1/train/13800.png +../../data/yoloGtold1/train/13801.png +../../data/yoloGtold1/train/13802.png +../../data/yoloGtold1/train/13803.png +../../data/yoloGtold1/train/13804.png +../../data/yoloGtold1/train/13805.png +../../data/yoloGtold1/train/13806.png +../../data/yoloGtold1/train/13807.png +../../data/yoloGtold1/train/13808.png +../../data/yoloGtold1/train/13809.png +../../data/yoloGtold1/train/13810.png +../../data/yoloGtold1/train/13811.png +../../data/yoloGtold1/train/13812.png +../../data/yoloGtold1/train/13813.png +../../data/yoloGtold1/train/13814.png +../../data/yoloGtold1/train/13815.png +../../data/yoloGtold1/train/13816.png +../../data/yoloGtold1/train/13817.png +../../data/yoloGtold1/train/13818.png +../../data/yoloGtold1/train/13819.png +../../data/yoloGtold1/train/13820.png +../../data/yoloGtold1/train/13821.png +../../data/yoloGtold1/train/13822.png +../../data/yoloGtold1/train/13823.png +../../data/yoloGtold1/train/13824.png +../../data/yoloGtold1/train/13825.png +../../data/yoloGtold1/train/13826.png +../../data/yoloGtold1/train/13827.png +../../data/yoloGtold1/train/13828.png +../../data/yoloGtold1/train/13829.png +../../data/yoloGtold1/train/13830.png +../../data/yoloGtold1/train/13831.png +../../data/yoloGtold1/train/13832.png +../../data/yoloGtold1/train/13833.png +../../data/yoloGtold1/train/13834.png +../../data/yoloGtold1/train/13835.png +../../data/yoloGtold1/train/13836.png +../../data/yoloGtold1/train/13837.png +../../data/yoloGtold1/train/13838.png +../../data/yoloGtold1/train/13839.png +../../data/yoloGtold1/train/13840.png +../../data/yoloGtold1/train/13841.png +../../data/yoloGtold1/train/13842.png +../../data/yoloGtold1/train/13843.png +../../data/yoloGtold1/train/13844.png +../../data/yoloGtold1/train/13845.png +../../data/yoloGtold1/train/13846.png +../../data/yoloGtold1/train/13847.png +../../data/yoloGtold1/train/13848.png +../../data/yoloGtold1/train/13849.png +../../data/yoloGtold1/train/13850.png +../../data/yoloGtold1/train/13851.png +../../data/yoloGtold1/train/13852.png +../../data/yoloGtold1/train/13853.png +../../data/yoloGtold1/train/13854.png +../../data/yoloGtold1/train/13855.png +../../data/yoloGtold1/train/13856.png +../../data/yoloGtold1/train/13857.png +../../data/yoloGtold1/train/13858.png +../../data/yoloGtold1/train/13859.png +../../data/yoloGtold1/train/13860.png +../../data/yoloGtold1/train/13861.png +../../data/yoloGtold1/train/13862.png +../../data/yoloGtold1/train/13863.png +../../data/yoloGtold1/train/13864.png +../../data/yoloGtold1/train/13865.png +../../data/yoloGtold1/train/13866.png +../../data/yoloGtold1/train/13867.png +../../data/yoloGtold1/train/13868.png +../../data/yoloGtold1/train/13869.png +../../data/yoloGtold1/train/13870.png +../../data/yoloGtold1/train/13871.png +../../data/yoloGtold1/train/13872.png +../../data/yoloGtold1/train/13873.png +../../data/yoloGtold1/train/13874.png +../../data/yoloGtold1/train/13875.png +../../data/yoloGtold1/train/13876.png +../../data/yoloGtold1/train/13877.png +../../data/yoloGtold1/train/13878.png +../../data/yoloGtold1/train/13879.png +../../data/yoloGtold1/train/13880.png +../../data/yoloGtold1/train/13881.png +../../data/yoloGtold1/train/13882.png +../../data/yoloGtold1/train/13883.png +../../data/yoloGtold1/train/13884.png +../../data/yoloGtold1/train/13885.png +../../data/yoloGtold1/train/13886.png +../../data/yoloGtold1/train/13887.png +../../data/yoloGtold1/train/13888.png +../../data/yoloGtold1/train/13889.png +../../data/yoloGtold1/train/13890.png +../../data/yoloGtold1/train/13891.png +../../data/yoloGtold1/train/13892.png +../../data/yoloGtold1/train/13893.png +../../data/yoloGtold1/train/13894.png +../../data/yoloGtold1/train/13895.png +../../data/yoloGtold1/train/13896.png +../../data/yoloGtold1/train/13897.png +../../data/yoloGtold1/train/13898.png +../../data/yoloGtold1/train/13899.png +../../data/yoloGtold1/train/13900.png +../../data/yoloGtold1/train/13901.png +../../data/yoloGtold1/train/13902.png +../../data/yoloGtold1/train/13903.png +../../data/yoloGtold1/train/13904.png +../../data/yoloGtold1/train/13905.png +../../data/yoloGtold1/train/13906.png +../../data/yoloGtold1/train/13907.png +../../data/yoloGtold1/train/13908.png +../../data/yoloGtold1/train/13909.png +../../data/yoloGtold1/train/13910.png +../../data/yoloGtold1/train/13911.png +../../data/yoloGtold1/train/13912.png +../../data/yoloGtold1/train/13913.png +../../data/yoloGtold1/train/13914.png +../../data/yoloGtold1/train/13915.png +../../data/yoloGtold1/train/13916.png +../../data/yoloGtold1/train/13917.png +../../data/yoloGtold1/train/13918.png +../../data/yoloGtold1/train/13919.png +../../data/yoloGtold1/train/13920.png +../../data/yoloGtold1/train/13921.png +../../data/yoloGtold1/train/13922.png +../../data/yoloGtold1/train/13923.png +../../data/yoloGtold1/train/13924.png +../../data/yoloGtold1/train/13925.png +../../data/yoloGtold1/train/13926.png +../../data/yoloGtold1/train/13927.png +../../data/yoloGtold1/train/13928.png +../../data/yoloGtold1/train/13929.png +../../data/yoloGtold1/train/13930.png +../../data/yoloGtold1/train/13931.png +../../data/yoloGtold1/train/13932.png +../../data/yoloGtold1/train/13933.png +../../data/yoloGtold1/train/13934.png +../../data/yoloGtold1/train/13935.png +../../data/yoloGtold1/train/13936.png +../../data/yoloGtold1/train/13937.png +../../data/yoloGtold1/train/13938.png +../../data/yoloGtold1/train/13939.png +../../data/yoloGtold1/train/13940.png +../../data/yoloGtold1/train/13941.png +../../data/yoloGtold1/train/13942.png +../../data/yoloGtold1/train/13943.png +../../data/yoloGtold1/train/13944.png +../../data/yoloGtold1/train/13945.png +../../data/yoloGtold1/train/13946.png +../../data/yoloGtold1/train/13947.png +../../data/yoloGtold1/train/13948.png +../../data/yoloGtold1/train/13949.png +../../data/yoloGtold1/train/13950.png +../../data/yoloGtold1/train/13951.png +../../data/yoloGtold1/train/13952.png +../../data/yoloGtold1/train/13953.png +../../data/yoloGtold1/train/13954.png +../../data/yoloGtold1/train/13955.png +../../data/yoloGtold1/train/13956.png +../../data/yoloGtold1/train/13957.png +../../data/yoloGtold1/train/13958.png +../../data/yoloGtold1/train/13959.png +../../data/yoloGtold1/train/13960.png +../../data/yoloGtold1/train/13961.png +../../data/yoloGtold1/train/13962.png +../../data/yoloGtold1/train/13963.png +../../data/yoloGtold1/train/13964.png +../../data/yoloGtold1/train/13965.png +../../data/yoloGtold1/train/13966.png +../../data/yoloGtold1/train/13967.png +../../data/yoloGtold1/train/13968.png +../../data/yoloGtold1/train/13969.png +../../data/yoloGtold1/train/13970.png +../../data/yoloGtold1/train/13971.png +../../data/yoloGtold1/train/13972.png +../../data/yoloGtold1/train/13973.png +../../data/yoloGtold1/train/13974.png +../../data/yoloGtold1/train/13975.png +../../data/yoloGtold1/train/13976.png +../../data/yoloGtold1/train/13977.png +../../data/yoloGtold1/train/13978.png +../../data/yoloGtold1/train/13979.png +../../data/yoloGtold1/train/13980.png +../../data/yoloGtold1/train/13981.png +../../data/yoloGtold1/train/13982.png +../../data/yoloGtold1/train/13983.png +../../data/yoloGtold1/train/13984.png +../../data/yoloGtold1/train/13985.png +../../data/yoloGtold1/train/13986.png +../../data/yoloGtold1/train/13987.png +../../data/yoloGtold1/train/13988.png +../../data/yoloGtold1/train/13989.png +../../data/yoloGtold1/train/13990.png +../../data/yoloGtold1/train/13991.png +../../data/yoloGtold1/train/13992.png +../../data/yoloGtold1/train/13993.png +../../data/yoloGtold1/train/13994.png +../../data/yoloGtold1/train/13995.png +../../data/yoloGtold1/train/13996.png +../../data/yoloGtold1/train/13997.png +../../data/yoloGtold1/train/13998.png +../../data/yoloGtold1/train/13999.png +../../data/yoloGtold1/train/14000.png +../../data/yoloGtold1/train/14001.png +../../data/yoloGtold1/train/14002.png +../../data/yoloGtold1/train/14003.png +../../data/yoloGtold1/train/14004.png +../../data/yoloGtold1/train/14005.png +../../data/yoloGtold1/train/14006.png +../../data/yoloGtold1/train/14007.png +../../data/yoloGtold1/train/14008.png +../../data/yoloGtold1/train/14009.png +../../data/yoloGtold1/train/14010.png +../../data/yoloGtold1/train/14011.png +../../data/yoloGtold1/train/14012.png +../../data/yoloGtold1/train/14013.png +../../data/yoloGtold1/train/14014.png +../../data/yoloGtold1/train/14015.png +../../data/yoloGtold1/train/14016.png +../../data/yoloGtold1/train/14017.png +../../data/yoloGtold1/train/14018.png +../../data/yoloGtold1/train/14019.png +../../data/yoloGtold1/train/14020.png +../../data/yoloGtold1/train/14021.png +../../data/yoloGtold1/train/14022.png +../../data/yoloGtold1/train/14023.png +../../data/yoloGtold1/train/14024.png +../../data/yoloGtold1/train/14025.png +../../data/yoloGtold1/train/14026.png +../../data/yoloGtold1/train/14027.png +../../data/yoloGtold1/train/14028.png +../../data/yoloGtold1/train/14029.png +../../data/yoloGtold1/train/14030.png +../../data/yoloGtold1/train/14031.png +../../data/yoloGtold1/train/14032.png +../../data/yoloGtold1/train/14033.png +../../data/yoloGtold1/train/14034.png +../../data/yoloGtold1/train/14035.png +../../data/yoloGtold1/train/14036.png +../../data/yoloGtold1/train/14037.png +../../data/yoloGtold1/train/14038.png +../../data/yoloGtold1/train/14039.png +../../data/yoloGtold1/train/14040.png +../../data/yoloGtold1/train/14041.png +../../data/yoloGtold1/train/14042.png +../../data/yoloGtold1/train/14043.png +../../data/yoloGtold1/train/14044.png +../../data/yoloGtold1/train/14045.png +../../data/yoloGtold1/train/14046.png +../../data/yoloGtold1/train/14047.png +../../data/yoloGtold1/train/14048.png +../../data/yoloGtold1/train/14049.png +../../data/yoloGtold1/train/14050.png +../../data/yoloGtold1/train/14051.png +../../data/yoloGtold1/train/14052.png +../../data/yoloGtold1/train/14053.png +../../data/yoloGtold1/train/14054.png +../../data/yoloGtold1/train/14055.png +../../data/yoloGtold1/train/14056.png +../../data/yoloGtold1/train/14057.png +../../data/yoloGtold1/train/14058.png +../../data/yoloGtold1/train/14059.png +../../data/yoloGtold1/train/14060.png +../../data/yoloGtold1/train/14061.png +../../data/yoloGtold1/train/14062.png +../../data/yoloGtold1/train/14063.png +../../data/yoloGtold1/train/14064.png +../../data/yoloGtold1/train/14065.png +../../data/yoloGtold1/train/14066.png +../../data/yoloGtold1/train/14067.png +../../data/yoloGtold1/train/14068.png +../../data/yoloGtold1/train/14069.png +../../data/yoloGtold1/train/14070.png +../../data/yoloGtold1/train/14071.png +../../data/yoloGtold1/train/14072.png +../../data/yoloGtold1/train/14073.png +../../data/yoloGtold1/train/14074.png +../../data/yoloGtold1/train/14075.png +../../data/yoloGtold1/train/14076.png +../../data/yoloGtold1/train/14077.png +../../data/yoloGtold1/train/14078.png +../../data/yoloGtold1/train/14079.png +../../data/yoloGtold1/train/14080.png +../../data/yoloGtold1/train/14081.png +../../data/yoloGtold1/train/14082.png +../../data/yoloGtold1/train/14083.png +../../data/yoloGtold1/train/14084.png +../../data/yoloGtold1/train/14085.png +../../data/yoloGtold1/train/14086.png +../../data/yoloGtold1/train/14087.png +../../data/yoloGtold1/train/14088.png +../../data/yoloGtold1/train/14089.png +../../data/yoloGtold1/train/14090.png +../../data/yoloGtold1/train/14091.png +../../data/yoloGtold1/train/14092.png +../../data/yoloGtold1/train/14093.png +../../data/yoloGtold1/train/14094.png +../../data/yoloGtold1/train/14095.png +../../data/yoloGtold1/train/14096.png +../../data/yoloGtold1/train/14097.png +../../data/yoloGtold1/train/14098.png +../../data/yoloGtold1/train/14099.png +../../data/yoloGtold1/train/14100.png +../../data/yoloGtold1/train/14101.png +../../data/yoloGtold1/train/14102.png +../../data/yoloGtold1/train/14103.png +../../data/yoloGtold1/train/14104.png +../../data/yoloGtold1/train/14105.png +../../data/yoloGtold1/train/14106.png +../../data/yoloGtold1/train/14107.png +../../data/yoloGtold1/train/14108.png +../../data/yoloGtold1/train/14109.png +../../data/yoloGtold1/train/14110.png +../../data/yoloGtold1/train/14111.png +../../data/yoloGtold1/train/14112.png +../../data/yoloGtold1/train/14113.png +../../data/yoloGtold1/train/14114.png +../../data/yoloGtold1/train/14115.png +../../data/yoloGtold1/train/14116.png +../../data/yoloGtold1/train/14117.png +../../data/yoloGtold1/train/14118.png +../../data/yoloGtold1/train/14119.png +../../data/yoloGtold1/train/14120.png +../../data/yoloGtold1/train/14121.png +../../data/yoloGtold1/train/14122.png +../../data/yoloGtold1/train/14123.png +../../data/yoloGtold1/train/14124.png +../../data/yoloGtold1/train/14125.png +../../data/yoloGtold1/train/14126.png +../../data/yoloGtold1/train/14127.png +../../data/yoloGtold1/train/14128.png +../../data/yoloGtold1/train/14129.png +../../data/yoloGtold1/train/14130.png +../../data/yoloGtold1/train/14131.png +../../data/yoloGtold1/train/14132.png +../../data/yoloGtold1/train/14133.png +../../data/yoloGtold1/train/14134.png +../../data/yoloGtold1/train/14135.png +../../data/yoloGtold1/train/14136.png +../../data/yoloGtold1/train/14137.png +../../data/yoloGtold1/train/14138.png +../../data/yoloGtold1/train/14139.png +../../data/yoloGtold1/train/14140.png +../../data/yoloGtold1/train/14141.png +../../data/yoloGtold1/train/14142.png +../../data/yoloGtold1/train/14143.png +../../data/yoloGtold1/train/14144.png +../../data/yoloGtold1/train/14145.png +../../data/yoloGtold1/train/14146.png +../../data/yoloGtold1/train/14147.png +../../data/yoloGtold1/train/14148.png +../../data/yoloGtold1/train/14149.png +../../data/yoloGtold1/train/14150.png +../../data/yoloGtold1/train/14151.png +../../data/yoloGtold1/train/14152.png +../../data/yoloGtold1/train/14153.png +../../data/yoloGtold1/train/14154.png +../../data/yoloGtold1/train/14155.png +../../data/yoloGtold1/train/14156.png +../../data/yoloGtold1/train/14157.png +../../data/yoloGtold1/train/14158.png +../../data/yoloGtold1/train/14159.png +../../data/yoloGtold1/train/14160.png +../../data/yoloGtold1/train/14161.png +../../data/yoloGtold1/train/14162.png +../../data/yoloGtold1/train/14163.png +../../data/yoloGtold1/train/14164.png +../../data/yoloGtold1/train/14165.png +../../data/yoloGtold1/train/14166.png +../../data/yoloGtold1/train/14167.png +../../data/yoloGtold1/train/14168.png +../../data/yoloGtold1/train/14169.png +../../data/yoloGtold1/train/14170.png +../../data/yoloGtold1/train/14171.png +../../data/yoloGtold1/train/14172.png +../../data/yoloGtold1/train/14173.png +../../data/yoloGtold1/train/14174.png +../../data/yoloGtold1/train/14175.png +../../data/yoloGtold1/train/14176.png +../../data/yoloGtold1/train/14177.png +../../data/yoloGtold1/train/14178.png +../../data/yoloGtold1/train/14179.png +../../data/yoloGtold1/train/14180.png +../../data/yoloGtold1/train/14181.png +../../data/yoloGtold1/train/14182.png +../../data/yoloGtold1/train/14183.png +../../data/yoloGtold1/train/14184.png +../../data/yoloGtold1/train/14185.png +../../data/yoloGtold1/train/14186.png +../../data/yoloGtold1/train/14187.png +../../data/yoloGtold1/train/14188.png +../../data/yoloGtold1/train/14189.png +../../data/yoloGtold1/train/14190.png +../../data/yoloGtold1/train/14191.png +../../data/yoloGtold1/train/14192.png +../../data/yoloGtold1/train/14193.png +../../data/yoloGtold1/train/14194.png +../../data/yoloGtold1/train/14195.png +../../data/yoloGtold1/train/14196.png +../../data/yoloGtold1/train/14197.png +../../data/yoloGtold1/train/14198.png +../../data/yoloGtold1/train/14199.png +../../data/yoloGtold1/train/14200.png +../../data/yoloGtold1/train/14201.png +../../data/yoloGtold1/train/14202.png +../../data/yoloGtold1/train/14203.png +../../data/yoloGtold1/train/14204.png +../../data/yoloGtold1/train/14205.png +../../data/yoloGtold1/train/14206.png +../../data/yoloGtold1/train/14207.png +../../data/yoloGtold1/train/14208.png +../../data/yoloGtold1/train/14209.png +../../data/yoloGtold1/train/14210.png +../../data/yoloGtold1/train/14211.png +../../data/yoloGtold1/train/14212.png +../../data/yoloGtold1/train/14213.png +../../data/yoloGtold1/train/14214.png +../../data/yoloGtold1/train/14215.png +../../data/yoloGtold1/train/14216.png +../../data/yoloGtold1/train/14217.png +../../data/yoloGtold1/train/14218.png +../../data/yoloGtold1/train/14219.png +../../data/yoloGtold1/train/14220.png +../../data/yoloGtold1/train/14221.png +../../data/yoloGtold1/train/14222.png +../../data/yoloGtold1/train/14223.png +../../data/yoloGtold1/train/14224.png +../../data/yoloGtold1/train/14225.png +../../data/yoloGtold1/train/14226.png +../../data/yoloGtold1/train/14227.png +../../data/yoloGtold1/train/14228.png +../../data/yoloGtold1/train/14229.png +../../data/yoloGtold1/train/14230.png +../../data/yoloGtold1/train/14231.png +../../data/yoloGtold1/train/14232.png +../../data/yoloGtold1/train/14233.png +../../data/yoloGtold1/train/14234.png +../../data/yoloGtold1/train/14235.png +../../data/yoloGtold1/train/14236.png +../../data/yoloGtold1/train/14237.png +../../data/yoloGtold1/train/14238.png +../../data/yoloGtold1/train/14239.png +../../data/yoloGtold1/train/14240.png +../../data/yoloGtold1/train/14241.png +../../data/yoloGtold1/train/14242.png +../../data/yoloGtold1/train/14243.png +../../data/yoloGtold1/train/14244.png +../../data/yoloGtold1/train/14245.png +../../data/yoloGtold1/train/14246.png +../../data/yoloGtold1/train/14247.png +../../data/yoloGtold1/train/14248.png +../../data/yoloGtold1/train/14249.png +../../data/yoloGtold1/train/14250.png +../../data/yoloGtold1/train/14251.png +../../data/yoloGtold1/train/14252.png +../../data/yoloGtold1/train/14253.png +../../data/yoloGtold1/train/14254.png +../../data/yoloGtold1/train/14255.png +../../data/yoloGtold1/train/14256.png +../../data/yoloGtold1/train/14257.png +../../data/yoloGtold1/train/14258.png +../../data/yoloGtold1/train/14259.png +../../data/yoloGtold1/train/14260.png +../../data/yoloGtold1/train/14261.png +../../data/yoloGtold1/train/14262.png +../../data/yoloGtold1/train/14263.png +../../data/yoloGtold1/train/14264.png +../../data/yoloGtold1/train/14265.png +../../data/yoloGtold1/train/14266.png +../../data/yoloGtold1/train/14267.png +../../data/yoloGtold1/train/14268.png +../../data/yoloGtold1/train/14269.png +../../data/yoloGtold1/train/14270.png +../../data/yoloGtold1/train/14271.png +../../data/yoloGtold1/train/14272.png +../../data/yoloGtold1/train/14273.png +../../data/yoloGtold1/train/14274.png +../../data/yoloGtold1/train/14275.png +../../data/yoloGtold1/train/14276.png +../../data/yoloGtold1/train/14277.png +../../data/yoloGtold1/train/14278.png +../../data/yoloGtold1/train/14279.png +../../data/yoloGtold1/train/14280.png +../../data/yoloGtold1/train/14281.png +../../data/yoloGtold1/train/14282.png +../../data/yoloGtold1/train/14283.png +../../data/yoloGtold1/train/14284.png +../../data/yoloGtold1/train/14285.png +../../data/yoloGtold1/train/14286.png +../../data/yoloGtold1/train/14287.png +../../data/yoloGtold1/train/14288.png +../../data/yoloGtold1/train/14289.png +../../data/yoloGtold1/train/14290.png +../../data/yoloGtold1/train/14291.png +../../data/yoloGtold1/train/14292.png +../../data/yoloGtold1/train/14293.png +../../data/yoloGtold1/train/14294.png +../../data/yoloGtold1/train/14295.png +../../data/yoloGtold1/train/14296.png +../../data/yoloGtold1/train/14297.png +../../data/yoloGtold1/train/14298.png +../../data/yoloGtold1/train/14299.png +../../data/yoloGtold1/train/14300.png +../../data/yoloGtold1/train/14301.png +../../data/yoloGtold1/train/14302.png +../../data/yoloGtold1/train/14303.png +../../data/yoloGtold1/train/14304.png +../../data/yoloGtold1/train/14305.png +../../data/yoloGtold1/train/14306.png +../../data/yoloGtold1/train/14307.png +../../data/yoloGtold1/train/14308.png +../../data/yoloGtold1/train/14309.png +../../data/yoloGtold1/train/14310.png +../../data/yoloGtold1/train/14311.png +../../data/yoloGtold1/train/14312.png +../../data/yoloGtold1/train/14313.png +../../data/yoloGtold1/train/14314.png +../../data/yoloGtold1/train/14315.png +../../data/yoloGtold1/train/14316.png +../../data/yoloGtold1/train/14317.png +../../data/yoloGtold1/train/14318.png +../../data/yoloGtold1/train/14319.png +../../data/yoloGtold1/train/14320.png +../../data/yoloGtold1/train/14321.png +../../data/yoloGtold1/train/14322.png +../../data/yoloGtold1/train/14323.png +../../data/yoloGtold1/train/14324.png +../../data/yoloGtold1/train/14325.png +../../data/yoloGtold1/train/14326.png +../../data/yoloGtold1/train/14327.png +../../data/yoloGtold1/train/14328.png +../../data/yoloGtold1/train/14329.png +../../data/yoloGtold1/train/14330.png +../../data/yoloGtold1/train/14331.png +../../data/yoloGtold1/train/14332.png +../../data/yoloGtold1/train/14333.png +../../data/yoloGtold1/train/14334.png +../../data/yoloGtold1/train/14335.png +../../data/yoloGtold1/train/14336.png +../../data/yoloGtold1/train/14337.png +../../data/yoloGtold1/train/14338.png +../../data/yoloGtold1/train/14339.png +../../data/yoloGtold1/train/14340.png +../../data/yoloGtold1/train/14341.png +../../data/yoloGtold1/train/14342.png +../../data/yoloGtold1/train/14343.png +../../data/yoloGtold1/train/14344.png +../../data/yoloGtold1/train/14345.png +../../data/yoloGtold1/train/14346.png +../../data/yoloGtold1/train/14347.png +../../data/yoloGtold1/train/14348.png +../../data/yoloGtold1/train/14349.png +../../data/yoloGtold1/train/14350.png +../../data/yoloGtold1/train/14351.png +../../data/yoloGtold1/train/14352.png +../../data/yoloGtold1/train/14353.png +../../data/yoloGtold1/train/14354.png +../../data/yoloGtold1/train/14355.png +../../data/yoloGtold1/train/14356.png +../../data/yoloGtold1/train/14357.png +../../data/yoloGtold1/train/14358.png +../../data/yoloGtold1/train/14359.png +../../data/yoloGtold1/train/14360.png +../../data/yoloGtold1/train/14361.png +../../data/yoloGtold1/train/14362.png +../../data/yoloGtold1/train/14363.png +../../data/yoloGtold1/train/14364.png +../../data/yoloGtold1/train/14365.png +../../data/yoloGtold1/train/14366.png +../../data/yoloGtold1/train/14367.png +../../data/yoloGtold1/train/14368.png +../../data/yoloGtold1/train/14369.png +../../data/yoloGtold1/train/14370.png +../../data/yoloGtold1/train/14371.png +../../data/yoloGtold1/train/14372.png +../../data/yoloGtold1/train/14373.png +../../data/yoloGtold1/train/14374.png +../../data/yoloGtold1/train/14375.png +../../data/yoloGtold1/train/14376.png +../../data/yoloGtold1/train/14377.png +../../data/yoloGtold1/train/14378.png +../../data/yoloGtold1/train/14379.png +../../data/yoloGtold1/train/14380.png +../../data/yoloGtold1/train/14381.png +../../data/yoloGtold1/train/14382.png +../../data/yoloGtold1/train/14383.png +../../data/yoloGtold1/train/14384.png +../../data/yoloGtold1/train/14385.png +../../data/yoloGtold1/train/14386.png +../../data/yoloGtold1/train/14387.png +../../data/yoloGtold1/train/14388.png +../../data/yoloGtold1/train/14389.png +../../data/yoloGtold1/train/14390.png +../../data/yoloGtold1/train/14391.png +../../data/yoloGtold1/train/14392.png +../../data/yoloGtold1/train/14393.png +../../data/yoloGtold1/train/14394.png +../../data/yoloGtold1/train/14395.png +../../data/yoloGtold1/train/14396.png +../../data/yoloGtold1/train/14397.png +../../data/yoloGtold1/train/14398.png +../../data/yoloGtold1/train/14399.png +../../data/yoloGtold1/train/14400.png +../../data/yoloGtold1/train/14401.png +../../data/yoloGtold1/train/14402.png +../../data/yoloGtold1/train/14403.png +../../data/yoloGtold1/train/14404.png +../../data/yoloGtold1/train/14405.png +../../data/yoloGtold1/train/14406.png +../../data/yoloGtold1/train/14407.png +../../data/yoloGtold1/train/14408.png +../../data/yoloGtold1/train/14409.png +../../data/yoloGtold1/train/14410.png +../../data/yoloGtold1/train/14411.png +../../data/yoloGtold1/train/14412.png +../../data/yoloGtold1/train/14413.png +../../data/yoloGtold1/train/14414.png +../../data/yoloGtold1/train/14415.png +../../data/yoloGtold1/train/14416.png +../../data/yoloGtold1/train/14417.png +../../data/yoloGtold1/train/14418.png +../../data/yoloGtold1/train/14419.png +../../data/yoloGtold1/train/14420.png +../../data/yoloGtold1/train/14421.png +../../data/yoloGtold1/train/14422.png +../../data/yoloGtold1/train/14423.png +../../data/yoloGtold1/train/14424.png +../../data/yoloGtold1/train/14425.png +../../data/yoloGtold1/train/14426.png +../../data/yoloGtold1/train/14427.png +../../data/yoloGtold1/train/14428.png +../../data/yoloGtold1/train/14429.png +../../data/yoloGtold1/train/14430.png +../../data/yoloGtold1/train/14431.png +../../data/yoloGtold1/train/14432.png +../../data/yoloGtold1/train/14433.png +../../data/yoloGtold1/train/14434.png +../../data/yoloGtold1/train/14435.png +../../data/yoloGtold1/train/14436.png +../../data/yoloGtold1/train/14437.png +../../data/yoloGtold1/train/14438.png +../../data/yoloGtold1/train/14439.png +../../data/yoloGtold1/train/14440.png +../../data/yoloGtold1/train/14441.png +../../data/yoloGtold1/train/14442.png +../../data/yoloGtold1/train/14443.png +../../data/yoloGtold1/train/14444.png +../../data/yoloGtold1/train/14445.png +../../data/yoloGtold1/train/14446.png +../../data/yoloGtold1/train/14447.png +../../data/yoloGtold1/train/14448.png +../../data/yoloGtold1/train/14449.png +../../data/yoloGtold1/train/14450.png +../../data/yoloGtold1/train/14451.png +../../data/yoloGtold1/train/14452.png +../../data/yoloGtold1/train/14453.png +../../data/yoloGtold1/train/14454.png +../../data/yoloGtold1/train/14455.png +../../data/yoloGtold1/train/14456.png +../../data/yoloGtold1/train/14457.png +../../data/yoloGtold1/train/14458.png +../../data/yoloGtold1/train/14459.png +../../data/yoloGtold1/train/14460.png +../../data/yoloGtold1/train/14461.png +../../data/yoloGtold1/train/14462.png +../../data/yoloGtold1/train/14463.png +../../data/yoloGtold1/train/14464.png +../../data/yoloGtold1/train/14465.png +../../data/yoloGtold1/train/14466.png +../../data/yoloGtold1/train/14467.png +../../data/yoloGtold1/train/14468.png +../../data/yoloGtold1/train/14469.png +../../data/yoloGtold1/train/14470.png +../../data/yoloGtold1/train/14471.png +../../data/yoloGtold1/train/14472.png +../../data/yoloGtold1/train/14473.png +../../data/yoloGtold1/train/14474.png +../../data/yoloGtold1/train/14475.png +../../data/yoloGtold1/train/14476.png +../../data/yoloGtold1/train/14477.png +../../data/yoloGtold1/train/14478.png +../../data/yoloGtold1/train/14479.png +../../data/yoloGtold1/train/14480.png +../../data/yoloGtold1/train/14481.png +../../data/yoloGtold1/train/14482.png +../../data/yoloGtold1/train/14483.png +../../data/yoloGtold1/train/14484.png +../../data/yoloGtold1/train/14485.png +../../data/yoloGtold1/train/14486.png +../../data/yoloGtold1/train/14487.png +../../data/yoloGtold1/train/14488.png +../../data/yoloGtold1/train/14489.png +../../data/yoloGtold1/train/14490.png +../../data/yoloGtold1/train/14491.png +../../data/yoloGtold1/train/14492.png +../../data/yoloGtold1/train/14493.png +../../data/yoloGtold1/train/14494.png +../../data/yoloGtold1/train/14495.png +../../data/yoloGtold1/train/14496.png +../../data/yoloGtold1/train/14497.png +../../data/yoloGtold1/train/14498.png +../../data/yoloGtold1/train/14499.png +../../data/yoloGtold1/train/14500.png +../../data/yoloGtold1/train/14501.png +../../data/yoloGtold1/train/14502.png +../../data/yoloGtold1/train/14503.png +../../data/yoloGtold1/train/14504.png +../../data/yoloGtold1/train/14505.png +../../data/yoloGtold1/train/14506.png +../../data/yoloGtold1/train/14507.png +../../data/yoloGtold1/train/14508.png +../../data/yoloGtold1/train/14509.png +../../data/yoloGtold1/train/14510.png +../../data/yoloGtold1/train/14511.png +../../data/yoloGtold1/train/14512.png +../../data/yoloGtold1/train/14513.png +../../data/yoloGtold1/train/14514.png +../../data/yoloGtold1/train/14515.png +../../data/yoloGtold1/train/14516.png +../../data/yoloGtold1/train/14517.png +../../data/yoloGtold1/train/14518.png +../../data/yoloGtold1/train/14519.png +../../data/yoloGtold1/train/14520.png +../../data/yoloGtold1/train/14521.png +../../data/yoloGtold1/train/14522.png +../../data/yoloGtold1/train/14523.png +../../data/yoloGtold1/train/14524.png +../../data/yoloGtold1/train/14525.png +../../data/yoloGtold1/train/14526.png +../../data/yoloGtold1/train/14527.png +../../data/yoloGtold1/train/14528.png +../../data/yoloGtold1/train/14529.png +../../data/yoloGtold1/train/14530.png +../../data/yoloGtold1/train/14531.png +../../data/yoloGtold1/train/14532.png +../../data/yoloGtold1/train/14533.png +../../data/yoloGtold1/train/14534.png +../../data/yoloGtold1/train/14535.png +../../data/yoloGtold1/train/14536.png +../../data/yoloGtold1/train/14537.png +../../data/yoloGtold1/train/14538.png +../../data/yoloGtold1/train/14539.png +../../data/yoloGtold1/train/14540.png +../../data/yoloGtold1/train/14541.png +../../data/yoloGtold1/train/14542.png +../../data/yoloGtold1/train/14543.png +../../data/yoloGtold1/train/14544.png +../../data/yoloGtold1/train/14545.png +../../data/yoloGtold1/train/14546.png +../../data/yoloGtold1/train/14547.png +../../data/yoloGtold1/train/14548.png +../../data/yoloGtold1/train/14549.png +../../data/yoloGtold1/train/14550.png +../../data/yoloGtold1/train/14551.png +../../data/yoloGtold1/train/14552.png +../../data/yoloGtold1/train/14553.png +../../data/yoloGtold1/train/14554.png +../../data/yoloGtold1/train/14555.png +../../data/yoloGtold1/train/14556.png +../../data/yoloGtold1/train/14557.png +../../data/yoloGtold1/train/14558.png +../../data/yoloGtold1/train/14559.png +../../data/yoloGtold1/train/14560.png +../../data/yoloGtold1/train/14561.png +../../data/yoloGtold1/train/14562.png +../../data/yoloGtold1/train/14563.png +../../data/yoloGtold1/train/14564.png +../../data/yoloGtold1/train/14565.png +../../data/yoloGtold1/train/14566.png +../../data/yoloGtold1/train/14567.png +../../data/yoloGtold1/train/14568.png +../../data/yoloGtold1/train/14569.png +../../data/yoloGtold1/train/14570.png +../../data/yoloGtold1/train/14571.png +../../data/yoloGtold1/train/14572.png +../../data/yoloGtold1/train/14573.png +../../data/yoloGtold1/train/14574.png +../../data/yoloGtold1/train/14575.png +../../data/yoloGtold1/train/14576.png +../../data/yoloGtold1/train/14577.png +../../data/yoloGtold1/train/14578.png +../../data/yoloGtold1/train/14579.png +../../data/yoloGtold1/train/14580.png +../../data/yoloGtold1/train/14581.png +../../data/yoloGtold1/train/14582.png +../../data/yoloGtold1/train/14583.png +../../data/yoloGtold1/train/14584.png +../../data/yoloGtold1/train/14585.png +../../data/yoloGtold1/train/14586.png +../../data/yoloGtold1/train/14587.png +../../data/yoloGtold1/train/14588.png +../../data/yoloGtold1/train/14589.png +../../data/yoloGtold1/train/14590.png +../../data/yoloGtold1/train/14591.png +../../data/yoloGtold1/train/14592.png +../../data/yoloGtold1/train/14593.png +../../data/yoloGtold1/train/14594.png +../../data/yoloGtold1/train/14595.png +../../data/yoloGtold1/train/14596.png +../../data/yoloGtold1/train/14597.png +../../data/yoloGtold1/train/14598.png +../../data/yoloGtold1/train/14599.png +../../data/yoloGtold1/train/14600.png +../../data/yoloGtold1/train/14601.png +../../data/yoloGtold1/train/14602.png +../../data/yoloGtold1/train/14603.png +../../data/yoloGtold1/train/14604.png +../../data/yoloGtold1/train/14605.png +../../data/yoloGtold1/train/14606.png +../../data/yoloGtold1/train/14607.png +../../data/yoloGtold1/train/14608.png +../../data/yoloGtold1/train/14609.png +../../data/yoloGtold1/train/14610.png +../../data/yoloGtold1/train/14611.png +../../data/yoloGtold1/train/14612.png +../../data/yoloGtold1/train/14613.png +../../data/yoloGtold1/train/14614.png +../../data/yoloGtold1/train/14615.png +../../data/yoloGtold1/train/14616.png +../../data/yoloGtold1/train/14617.png +../../data/yoloGtold1/train/14618.png +../../data/yoloGtold1/train/14619.png +../../data/yoloGtold1/train/14620.png +../../data/yoloGtold1/train/14621.png +../../data/yoloGtold1/train/14622.png +../../data/yoloGtold1/train/14623.png +../../data/yoloGtold1/train/14624.png +../../data/yoloGtold1/train/14625.png +../../data/yoloGtold1/train/14626.png +../../data/yoloGtold1/train/14627.png +../../data/yoloGtold1/train/14628.png +../../data/yoloGtold1/train/14629.png +../../data/yoloGtold1/train/14630.png +../../data/yoloGtold1/train/14631.png +../../data/yoloGtold1/train/14632.png +../../data/yoloGtold1/train/14633.png +../../data/yoloGtold1/train/14634.png +../../data/yoloGtold1/train/14635.png +../../data/yoloGtold1/train/14636.png +../../data/yoloGtold1/train/14637.png +../../data/yoloGtold1/train/14638.png +../../data/yoloGtold1/train/14639.png +../../data/yoloGtold1/train/14640.png +../../data/yoloGtold1/train/14641.png +../../data/yoloGtold1/train/14642.png +../../data/yoloGtold1/train/14643.png +../../data/yoloGtold1/train/14644.png +../../data/yoloGtold1/train/14645.png +../../data/yoloGtold1/train/14646.png +../../data/yoloGtold1/train/14647.png +../../data/yoloGtold1/train/14648.png +../../data/yoloGtold1/train/14649.png +../../data/yoloGtold1/train/14650.png +../../data/yoloGtold1/train/14651.png +../../data/yoloGtold1/train/14652.png +../../data/yoloGtold1/train/14653.png +../../data/yoloGtold1/train/14654.png +../../data/yoloGtold1/train/14655.png +../../data/yoloGtold1/train/14656.png +../../data/yoloGtold1/train/14657.png +../../data/yoloGtold1/train/14658.png +../../data/yoloGtold1/train/14659.png +../../data/yoloGtold1/train/14660.png +../../data/yoloGtold1/train/14661.png +../../data/yoloGtold1/train/14662.png +../../data/yoloGtold1/train/14663.png +../../data/yoloGtold1/train/14664.png +../../data/yoloGtold1/train/14665.png +../../data/yoloGtold1/train/14666.png +../../data/yoloGtold1/train/14667.png +../../data/yoloGtold1/train/14668.png +../../data/yoloGtold1/train/14669.png +../../data/yoloGtold1/train/14670.png +../../data/yoloGtold1/train/14671.png +../../data/yoloGtold1/train/14672.png +../../data/yoloGtold1/train/14673.png +../../data/yoloGtold1/train/14674.png +../../data/yoloGtold1/train/14675.png +../../data/yoloGtold1/train/14676.png +../../data/yoloGtold1/train/14677.png +../../data/yoloGtold1/train/14678.png +../../data/yoloGtold1/train/14679.png +../../data/yoloGtold1/train/14680.png +../../data/yoloGtold1/train/14681.png +../../data/yoloGtold1/train/14682.png +../../data/yoloGtold1/train/14683.png +../../data/yoloGtold1/train/14684.png +../../data/yoloGtold1/train/14685.png +../../data/yoloGtold1/train/14686.png +../../data/yoloGtold1/train/14687.png +../../data/yoloGtold1/train/14688.png +../../data/yoloGtold1/train/14689.png +../../data/yoloGtold1/train/14690.png +../../data/yoloGtold1/train/14691.png +../../data/yoloGtold1/train/14692.png +../../data/yoloGtold1/train/14693.png +../../data/yoloGtold1/train/14694.png +../../data/yoloGtold1/train/14695.png +../../data/yoloGtold1/train/14696.png +../../data/yoloGtold1/train/14697.png +../../data/yoloGtold1/train/14698.png +../../data/yoloGtold1/train/14699.png +../../data/yoloGtold1/train/14700.png +../../data/yoloGtold1/train/14701.png +../../data/yoloGtold1/train/14702.png +../../data/yoloGtold1/train/14703.png +../../data/yoloGtold1/train/14704.png +../../data/yoloGtold1/train/14705.png +../../data/yoloGtold1/train/14706.png +../../data/yoloGtold1/train/14707.png +../../data/yoloGtold1/train/14708.png +../../data/yoloGtold1/train/14709.png +../../data/yoloGtold1/train/14710.png +../../data/yoloGtold1/train/14711.png +../../data/yoloGtold1/train/14712.png +../../data/yoloGtold1/train/14713.png +../../data/yoloGtold1/train/14714.png +../../data/yoloGtold1/train/14715.png +../../data/yoloGtold1/train/14716.png +../../data/yoloGtold1/train/14717.png +../../data/yoloGtold1/train/14718.png +../../data/yoloGtold1/train/14719.png +../../data/yoloGtold1/train/14720.png +../../data/yoloGtold1/train/14721.png +../../data/yoloGtold1/train/14722.png +../../data/yoloGtold1/train/14723.png +../../data/yoloGtold1/train/14724.png +../../data/yoloGtold1/train/14725.png +../../data/yoloGtold1/train/14726.png +../../data/yoloGtold1/train/14727.png +../../data/yoloGtold1/train/14728.png +../../data/yoloGtold1/train/14729.png +../../data/yoloGtold1/train/14730.png +../../data/yoloGtold1/train/14731.png +../../data/yoloGtold1/train/14732.png +../../data/yoloGtold1/train/14733.png +../../data/yoloGtold1/train/14734.png +../../data/yoloGtold1/train/14735.png +../../data/yoloGtold1/train/14736.png +../../data/yoloGtold1/train/14737.png +../../data/yoloGtold1/train/14738.png +../../data/yoloGtold1/train/14739.png +../../data/yoloGtold1/train/14740.png +../../data/yoloGtold1/train/14741.png +../../data/yoloGtold1/train/14742.png +../../data/yoloGtold1/train/14743.png +../../data/yoloGtold1/train/14744.png +../../data/yoloGtold1/train/14745.png +../../data/yoloGtold1/train/14746.png +../../data/yoloGtold1/train/14747.png +../../data/yoloGtold1/train/14748.png +../../data/yoloGtold1/train/14749.png +../../data/yoloGtold1/train/14750.png +../../data/yoloGtold1/train/14751.png +../../data/yoloGtold1/train/14752.png +../../data/yoloGtold1/train/14753.png +../../data/yoloGtold1/train/14754.png +../../data/yoloGtold1/train/14755.png +../../data/yoloGtold1/train/14756.png +../../data/yoloGtold1/train/14757.png +../../data/yoloGtold1/train/14758.png +../../data/yoloGtold1/train/14759.png +../../data/yoloGtold1/train/14760.png +../../data/yoloGtold1/train/14761.png +../../data/yoloGtold1/train/14762.png +../../data/yoloGtold1/train/14763.png +../../data/yoloGtold1/train/14764.png +../../data/yoloGtold1/train/14765.png +../../data/yoloGtold1/train/14766.png +../../data/yoloGtold1/train/14767.png +../../data/yoloGtold1/train/14768.png +../../data/yoloGtold1/train/14769.png +../../data/yoloGtold1/train/14770.png +../../data/yoloGtold1/train/14771.png +../../data/yoloGtold1/train/14772.png +../../data/yoloGtold1/train/14773.png +../../data/yoloGtold1/train/14774.png +../../data/yoloGtold1/train/14775.png +../../data/yoloGtold1/train/14776.png +../../data/yoloGtold1/train/14777.png +../../data/yoloGtold1/train/14778.png +../../data/yoloGtold1/train/14779.png +../../data/yoloGtold1/train/14780.png +../../data/yoloGtold1/train/14781.png +../../data/yoloGtold1/train/14782.png +../../data/yoloGtold1/train/14783.png +../../data/yoloGtold1/train/14784.png +../../data/yoloGtold1/train/14785.png +../../data/yoloGtold1/train/14786.png +../../data/yoloGtold1/train/14787.png +../../data/yoloGtold1/train/14788.png +../../data/yoloGtold1/train/14789.png +../../data/yoloGtold1/train/14790.png +../../data/yoloGtold1/train/14791.png +../../data/yoloGtold1/train/14792.png +../../data/yoloGtold1/train/14793.png +../../data/yoloGtold1/train/14794.png +../../data/yoloGtold1/train/14795.png +../../data/yoloGtold1/train/14796.png +../../data/yoloGtold1/train/14797.png +../../data/yoloGtold1/train/14798.png +../../data/yoloGtold1/train/14799.png +../../data/yoloGtold1/train/14800.png +../../data/yoloGtold1/train/14801.png +../../data/yoloGtold1/train/14802.png +../../data/yoloGtold1/train/14803.png +../../data/yoloGtold1/train/14804.png +../../data/yoloGtold1/train/14805.png +../../data/yoloGtold1/train/14806.png +../../data/yoloGtold1/train/14807.png +../../data/yoloGtold1/train/14808.png +../../data/yoloGtold1/train/14809.png +../../data/yoloGtold1/train/14810.png +../../data/yoloGtold1/train/14811.png +../../data/yoloGtold1/train/14812.png +../../data/yoloGtold1/train/14813.png +../../data/yoloGtold1/train/14814.png +../../data/yoloGtold1/train/14815.png +../../data/yoloGtold1/train/14816.png +../../data/yoloGtold1/train/14817.png +../../data/yoloGtold1/train/14818.png +../../data/yoloGtold1/train/14819.png +../../data/yoloGtold1/train/14820.png +../../data/yoloGtold1/train/14821.png +../../data/yoloGtold1/train/14822.png +../../data/yoloGtold1/train/14823.png +../../data/yoloGtold1/train/14824.png +../../data/yoloGtold1/train/14825.png +../../data/yoloGtold1/train/14826.png +../../data/yoloGtold1/train/14827.png +../../data/yoloGtold1/train/14828.png +../../data/yoloGtold1/train/14829.png +../../data/yoloGtold1/train/14830.png +../../data/yoloGtold1/train/14831.png +../../data/yoloGtold1/train/14832.png +../../data/yoloGtold1/train/14833.png +../../data/yoloGtold1/train/14834.png +../../data/yoloGtold1/train/14835.png +../../data/yoloGtold1/train/14836.png +../../data/yoloGtold1/train/14837.png +../../data/yoloGtold1/train/14838.png +../../data/yoloGtold1/train/14839.png +../../data/yoloGtold1/train/14840.png +../../data/yoloGtold1/train/14841.png +../../data/yoloGtold1/train/14842.png +../../data/yoloGtold1/train/14843.png +../../data/yoloGtold1/train/14844.png +../../data/yoloGtold1/train/14845.png +../../data/yoloGtold1/train/14846.png +../../data/yoloGtold1/train/14847.png +../../data/yoloGtold1/train/14848.png +../../data/yoloGtold1/train/14849.png +../../data/yoloGtold1/train/14850.png +../../data/yoloGtold1/train/14851.png +../../data/yoloGtold1/train/14852.png +../../data/yoloGtold1/train/14853.png +../../data/yoloGtold1/train/14854.png +../../data/yoloGtold1/train/14855.png +../../data/yoloGtold1/train/14856.png +../../data/yoloGtold1/train/14857.png +../../data/yoloGtold1/train/14858.png +../../data/yoloGtold1/train/14859.png +../../data/yoloGtold1/train/14860.png +../../data/yoloGtold1/train/14861.png +../../data/yoloGtold1/train/14862.png +../../data/yoloGtold1/train/14863.png +../../data/yoloGtold1/train/14864.png +../../data/yoloGtold1/train/14865.png +../../data/yoloGtold1/train/14866.png +../../data/yoloGtold1/train/14867.png +../../data/yoloGtold1/train/14868.png +../../data/yoloGtold1/train/14869.png +../../data/yoloGtold1/train/14870.png +../../data/yoloGtold1/train/14871.png +../../data/yoloGtold1/train/14872.png +../../data/yoloGtold1/train/14873.png +../../data/yoloGtold1/train/14874.png +../../data/yoloGtold1/train/14875.png +../../data/yoloGtold1/train/14876.png +../../data/yoloGtold1/train/14877.png +../../data/yoloGtold1/train/14878.png +../../data/yoloGtold1/train/14879.png +../../data/yoloGtold1/train/14880.png +../../data/yoloGtold1/train/14881.png +../../data/yoloGtold1/train/14882.png +../../data/yoloGtold1/train/14883.png +../../data/yoloGtold1/train/14884.png +../../data/yoloGtold1/train/14885.png +../../data/yoloGtold1/train/14886.png +../../data/yoloGtold1/train/14887.png +../../data/yoloGtold1/train/14888.png +../../data/yoloGtold1/train/14889.png +../../data/yoloGtold1/train/14890.png +../../data/yoloGtold1/train/14891.png +../../data/yoloGtold1/train/14892.png +../../data/yoloGtold1/train/14893.png +../../data/yoloGtold1/train/14894.png +../../data/yoloGtold1/train/14895.png +../../data/yoloGtold1/train/14896.png +../../data/yoloGtold1/train/14897.png +../../data/yoloGtold1/train/14898.png +../../data/yoloGtold1/train/14899.png +../../data/yoloGtold1/train/14900.png +../../data/yoloGtold1/train/14901.png +../../data/yoloGtold1/train/14902.png +../../data/yoloGtold1/train/14903.png +../../data/yoloGtold1/train/14904.png +../../data/yoloGtold1/train/14905.png +../../data/yoloGtold1/train/14906.png +../../data/yoloGtold1/train/14907.png +../../data/yoloGtold1/train/14908.png +../../data/yoloGtold1/train/14909.png +../../data/yoloGtold1/train/14910.png +../../data/yoloGtold1/train/14911.png +../../data/yoloGtold1/train/14912.png +../../data/yoloGtold1/train/14913.png +../../data/yoloGtold1/train/14914.png +../../data/yoloGtold1/train/14915.png +../../data/yoloGtold1/train/14916.png +../../data/yoloGtold1/train/14917.png +../../data/yoloGtold1/train/14918.png +../../data/yoloGtold1/train/14919.png +../../data/yoloGtold1/train/14920.png +../../data/yoloGtold1/train/14921.png +../../data/yoloGtold1/train/14922.png +../../data/yoloGtold1/train/14923.png +../../data/yoloGtold1/train/14924.png +../../data/yoloGtold1/train/14925.png +../../data/yoloGtold1/train/14926.png +../../data/yoloGtold1/train/14927.png +../../data/yoloGtold1/train/14928.png +../../data/yoloGtold1/train/14929.png +../../data/yoloGtold1/train/14930.png +../../data/yoloGtold1/train/14931.png +../../data/yoloGtold1/train/14932.png +../../data/yoloGtold1/train/14933.png +../../data/yoloGtold1/train/14934.png +../../data/yoloGtold1/train/14935.png +../../data/yoloGtold1/train/14936.png +../../data/yoloGtold1/train/14937.png +../../data/yoloGtold1/train/14938.png +../../data/yoloGtold1/train/14939.png +../../data/yoloGtold1/train/14940.png +../../data/yoloGtold1/train/14941.png +../../data/yoloGtold1/train/14942.png +../../data/yoloGtold1/train/14943.png +../../data/yoloGtold1/train/14944.png +../../data/yoloGtold1/train/14945.png +../../data/yoloGtold1/train/14946.png +../../data/yoloGtold1/train/14947.png +../../data/yoloGtold1/train/14948.png +../../data/yoloGtold1/train/14949.png +../../data/yoloGtold1/train/14950.png +../../data/yoloGtold1/train/14951.png +../../data/yoloGtold1/train/14952.png +../../data/yoloGtold1/train/14953.png +../../data/yoloGtold1/train/14954.png +../../data/yoloGtold1/train/14955.png +../../data/yoloGtold1/train/14956.png +../../data/yoloGtold1/train/14957.png +../../data/yoloGtold1/train/14958.png +../../data/yoloGtold1/train/14959.png +../../data/yoloGtold1/train/14960.png +../../data/yoloGtold1/train/14961.png +../../data/yoloGtold1/train/14962.png +../../data/yoloGtold1/train/14963.png +../../data/yoloGtold1/train/14964.png +../../data/yoloGtold1/train/14965.png +../../data/yoloGtold1/train/14966.png +../../data/yoloGtold1/train/14967.png +../../data/yoloGtold1/train/14968.png +../../data/yoloGtold1/train/14969.png +../../data/yoloGtold1/train/14970.png +../../data/yoloGtold1/train/14971.png +../../data/yoloGtold1/train/14972.png +../../data/yoloGtold1/train/14973.png +../../data/yoloGtold1/train/14974.png +../../data/yoloGtold1/train/14975.png +../../data/yoloGtold1/train/14976.png +../../data/yoloGtold1/train/14977.png +../../data/yoloGtold1/train/14978.png +../../data/yoloGtold1/train/14979.png +../../data/yoloGtold1/train/14980.png +../../data/yoloGtold1/train/14981.png +../../data/yoloGtold1/train/14982.png +../../data/yoloGtold1/train/14983.png +../../data/yoloGtold1/train/14984.png +../../data/yoloGtold1/train/14985.png +../../data/yoloGtold1/train/14986.png +../../data/yoloGtold1/train/14987.png +../../data/yoloGtold1/train/14988.png +../../data/yoloGtold1/train/14989.png +../../data/yoloGtold1/train/14990.png +../../data/yoloGtold1/train/14991.png +../../data/yoloGtold1/train/14992.png +../../data/yoloGtold1/train/14993.png +../../data/yoloGtold1/train/14994.png +../../data/yoloGtold1/train/14995.png +../../data/yoloGtold1/train/14996.png +../../data/yoloGtold1/train/14997.png +../../data/yoloGtold1/train/14998.png +../../data/yoloGtold1/train/14999.png +../../data/yoloGtold1/train/15000.png +../../data/yoloGtold1/train/15001.png +../../data/yoloGtold1/train/15002.png +../../data/yoloGtold1/train/15003.png +../../data/yoloGtold1/train/15004.png +../../data/yoloGtold1/train/15005.png +../../data/yoloGtold1/train/15006.png +../../data/yoloGtold1/train/15007.png +../../data/yoloGtold1/train/15008.png +../../data/yoloGtold1/train/15009.png +../../data/yoloGtold1/train/15010.png +../../data/yoloGtold1/train/15011.png +../../data/yoloGtold1/train/15012.png +../../data/yoloGtold1/train/15013.png +../../data/yoloGtold1/train/15014.png +../../data/yoloGtold1/train/15015.png +../../data/yoloGtold1/train/15016.png +../../data/yoloGtold1/train/15017.png +../../data/yoloGtold1/train/15018.png +../../data/yoloGtold1/train/15019.png +../../data/yoloGtold1/train/15020.png +../../data/yoloGtold1/train/15021.png +../../data/yoloGtold1/train/15022.png +../../data/yoloGtold1/train/15023.png +../../data/yoloGtold1/train/15024.png +../../data/yoloGtold1/train/15025.png +../../data/yoloGtold1/train/15026.png +../../data/yoloGtold1/train/15027.png +../../data/yoloGtold1/train/15028.png +../../data/yoloGtold1/train/15029.png +../../data/yoloGtold1/train/15030.png +../../data/yoloGtold1/train/15031.png +../../data/yoloGtold1/train/15032.png +../../data/yoloGtold1/train/15033.png +../../data/yoloGtold1/train/15034.png +../../data/yoloGtold1/train/15035.png +../../data/yoloGtold1/train/15036.png +../../data/yoloGtold1/train/15037.png +../../data/yoloGtold1/train/15038.png +../../data/yoloGtold1/train/15039.png +../../data/yoloGtold1/train/15040.png +../../data/yoloGtold1/train/15041.png +../../data/yoloGtold1/train/15042.png +../../data/yoloGtold1/train/15043.png +../../data/yoloGtold1/train/15044.png +../../data/yoloGtold1/train/15045.png +../../data/yoloGtold1/train/15046.png +../../data/yoloGtold1/train/15047.png +../../data/yoloGtold1/train/15048.png +../../data/yoloGtold1/train/15049.png +../../data/yoloGtold1/train/15050.png +../../data/yoloGtold1/train/15051.png +../../data/yoloGtold1/train/15052.png +../../data/yoloGtold1/train/15053.png +../../data/yoloGtold1/train/15054.png +../../data/yoloGtold1/train/15055.png +../../data/yoloGtold1/train/15056.png +../../data/yoloGtold1/train/15057.png +../../data/yoloGtold1/train/15058.png +../../data/yoloGtold1/train/15059.png +../../data/yoloGtold1/train/15060.png +../../data/yoloGtold1/train/15061.png +../../data/yoloGtold1/train/15062.png +../../data/yoloGtold1/train/15063.png +../../data/yoloGtold1/train/15064.png +../../data/yoloGtold1/train/15065.png +../../data/yoloGtold1/train/15066.png +../../data/yoloGtold1/train/15067.png +../../data/yoloGtold1/train/15068.png +../../data/yoloGtold1/train/15069.png +../../data/yoloGtold1/train/15070.png +../../data/yoloGtold1/train/15071.png +../../data/yoloGtold1/train/15072.png +../../data/yoloGtold1/train/15073.png +../../data/yoloGtold1/train/15074.png +../../data/yoloGtold1/train/15075.png +../../data/yoloGtold1/train/15076.png +../../data/yoloGtold1/train/15077.png +../../data/yoloGtold1/train/15078.png +../../data/yoloGtold1/train/15079.png +../../data/yoloGtold1/train/15080.png +../../data/yoloGtold1/train/15081.png +../../data/yoloGtold1/train/15082.png +../../data/yoloGtold1/train/15083.png +../../data/yoloGtold1/train/15084.png +../../data/yoloGtold1/train/15085.png +../../data/yoloGtold1/train/15086.png +../../data/yoloGtold1/train/15087.png +../../data/yoloGtold1/train/15088.png +../../data/yoloGtold1/train/15089.png +../../data/yoloGtold1/train/15090.png +../../data/yoloGtold1/train/15091.png +../../data/yoloGtold1/train/15092.png +../../data/yoloGtold1/train/15093.png +../../data/yoloGtold1/train/15094.png +../../data/yoloGtold1/train/15095.png +../../data/yoloGtold1/train/15096.png +../../data/yoloGtold1/train/15097.png +../../data/yoloGtold1/train/15098.png +../../data/yoloGtold1/train/15099.png +../../data/yoloGtold1/train/15100.png +../../data/yoloGtold1/train/15101.png +../../data/yoloGtold1/train/15102.png +../../data/yoloGtold1/train/15103.png +../../data/yoloGtold1/train/15104.png +../../data/yoloGtold1/train/15105.png +../../data/yoloGtold1/train/15106.png +../../data/yoloGtold1/train/15107.png +../../data/yoloGtold1/train/15108.png +../../data/yoloGtold1/train/15109.png +../../data/yoloGtold1/train/15110.png +../../data/yoloGtold1/train/15111.png +../../data/yoloGtold1/train/15112.png +../../data/yoloGtold1/train/15113.png +../../data/yoloGtold1/train/15114.png +../../data/yoloGtold1/train/15115.png +../../data/yoloGtold1/train/15116.png +../../data/yoloGtold1/train/15117.png +../../data/yoloGtold1/train/15118.png +../../data/yoloGtold1/train/15119.png +../../data/yoloGtold1/train/15120.png +../../data/yoloGtold1/train/15121.png +../../data/yoloGtold1/train/15122.png +../../data/yoloGtold1/train/15123.png +../../data/yoloGtold1/train/15124.png +../../data/yoloGtold1/train/15125.png +../../data/yoloGtold1/train/15126.png +../../data/yoloGtold1/train/15127.png +../../data/yoloGtold1/train/15128.png +../../data/yoloGtold1/train/15129.png +../../data/yoloGtold1/train/15130.png +../../data/yoloGtold1/train/15131.png +../../data/yoloGtold1/train/15132.png +../../data/yoloGtold1/train/15133.png +../../data/yoloGtold1/train/15134.png +../../data/yoloGtold1/train/15135.png +../../data/yoloGtold1/train/15136.png +../../data/yoloGtold1/train/15137.png +../../data/yoloGtold1/train/15138.png +../../data/yoloGtold1/train/15139.png +../../data/yoloGtold1/train/15140.png +../../data/yoloGtold1/train/15141.png +../../data/yoloGtold1/train/15142.png +../../data/yoloGtold1/train/15143.png +../../data/yoloGtold1/train/15144.png +../../data/yoloGtold1/train/15145.png +../../data/yoloGtold1/train/15146.png +../../data/yoloGtold1/train/15147.png +../../data/yoloGtold1/train/15148.png +../../data/yoloGtold1/train/15149.png +../../data/yoloGtold1/train/15150.png +../../data/yoloGtold1/train/15151.png +../../data/yoloGtold1/train/15152.png +../../data/yoloGtold1/train/15153.png +../../data/yoloGtold1/train/15154.png +../../data/yoloGtold1/train/15155.png +../../data/yoloGtold1/train/15156.png +../../data/yoloGtold1/train/15157.png +../../data/yoloGtold1/train/15158.png +../../data/yoloGtold1/train/15159.png +../../data/yoloGtold1/train/15160.png +../../data/yoloGtold1/train/15161.png +../../data/yoloGtold1/train/15162.png +../../data/yoloGtold1/train/15163.png +../../data/yoloGtold1/train/15164.png +../../data/yoloGtold1/train/15165.png +../../data/yoloGtold1/train/15166.png +../../data/yoloGtold1/train/15167.png +../../data/yoloGtold1/train/15168.png +../../data/yoloGtold1/train/15169.png +../../data/yoloGtold1/train/15170.png +../../data/yoloGtold1/train/15171.png +../../data/yoloGtold1/train/15172.png +../../data/yoloGtold1/train/15173.png +../../data/yoloGtold1/train/15174.png +../../data/yoloGtold1/train/15175.png +../../data/yoloGtold1/train/15176.png +../../data/yoloGtold1/train/15177.png +../../data/yoloGtold1/train/15178.png +../../data/yoloGtold1/train/15179.png +../../data/yoloGtold1/train/15180.png +../../data/yoloGtold1/train/15181.png +../../data/yoloGtold1/train/15182.png +../../data/yoloGtold1/train/15183.png +../../data/yoloGtold1/train/15184.png +../../data/yoloGtold1/train/15185.png +../../data/yoloGtold1/train/15186.png +../../data/yoloGtold1/train/15187.png +../../data/yoloGtold1/train/15188.png +../../data/yoloGtold1/train/15189.png +../../data/yoloGtold1/train/15190.png +../../data/yoloGtold1/train/15191.png +../../data/yoloGtold1/train/15192.png +../../data/yoloGtold1/train/15193.png +../../data/yoloGtold1/train/15194.png +../../data/yoloGtold1/train/15195.png +../../data/yoloGtold1/train/15196.png +../../data/yoloGtold1/train/15197.png +../../data/yoloGtold1/train/15198.png +../../data/yoloGtold1/train/15199.png +../../data/yoloGtold1/train/15200.png +../../data/yoloGtold1/train/15201.png +../../data/yoloGtold1/train/15202.png +../../data/yoloGtold1/train/15203.png +../../data/yoloGtold1/train/15204.png +../../data/yoloGtold1/train/15205.png +../../data/yoloGtold1/train/15206.png +../../data/yoloGtold1/train/15207.png +../../data/yoloGtold1/train/15208.png +../../data/yoloGtold1/train/15209.png +../../data/yoloGtold1/train/15210.png +../../data/yoloGtold1/train/15211.png +../../data/yoloGtold1/train/15212.png +../../data/yoloGtold1/train/15213.png +../../data/yoloGtold1/train/15214.png +../../data/yoloGtold1/train/15215.png +../../data/yoloGtold1/train/15216.png +../../data/yoloGtold1/train/15217.png +../../data/yoloGtold1/train/15218.png +../../data/yoloGtold1/train/15219.png +../../data/yoloGtold1/train/15220.png +../../data/yoloGtold1/train/15221.png +../../data/yoloGtold1/train/15222.png +../../data/yoloGtold1/train/15223.png +../../data/yoloGtold1/train/15224.png +../../data/yoloGtold1/train/15225.png +../../data/yoloGtold1/train/15226.png +../../data/yoloGtold1/train/15227.png +../../data/yoloGtold1/train/15228.png +../../data/yoloGtold1/train/15229.png +../../data/yoloGtold1/train/15230.png +../../data/yoloGtold1/train/15231.png +../../data/yoloGtold1/train/15232.png +../../data/yoloGtold1/train/15233.png +../../data/yoloGtold1/train/15234.png +../../data/yoloGtold1/train/15235.png +../../data/yoloGtold1/train/15236.png +../../data/yoloGtold1/train/15237.png +../../data/yoloGtold1/train/15238.png +../../data/yoloGtold1/train/15239.png +../../data/yoloGtold1/train/15240.png +../../data/yoloGtold1/train/15241.png +../../data/yoloGtold1/train/15242.png +../../data/yoloGtold1/train/15243.png +../../data/yoloGtold1/train/15244.png +../../data/yoloGtold1/train/15245.png +../../data/yoloGtold1/train/15246.png +../../data/yoloGtold1/train/15247.png +../../data/yoloGtold1/train/15248.png +../../data/yoloGtold1/train/15249.png +../../data/yoloGtold1/train/15250.png +../../data/yoloGtold1/train/15251.png +../../data/yoloGtold1/train/15252.png +../../data/yoloGtold1/train/15253.png +../../data/yoloGtold1/train/15254.png +../../data/yoloGtold1/train/15255.png +../../data/yoloGtold1/train/15256.png +../../data/yoloGtold1/train/15257.png +../../data/yoloGtold1/train/15258.png +../../data/yoloGtold1/train/15259.png +../../data/yoloGtold1/train/15260.png +../../data/yoloGtold1/train/15261.png +../../data/yoloGtold1/train/15262.png +../../data/yoloGtold1/train/15263.png +../../data/yoloGtold1/train/15264.png +../../data/yoloGtold1/train/15265.png +../../data/yoloGtold1/train/15266.png +../../data/yoloGtold1/train/15267.png +../../data/yoloGtold1/train/15268.png +../../data/yoloGtold1/train/15269.png +../../data/yoloGtold1/train/15270.png +../../data/yoloGtold1/train/15271.png +../../data/yoloGtold1/train/15272.png +../../data/yoloGtold1/train/15273.png +../../data/yoloGtold1/train/15274.png +../../data/yoloGtold1/train/15275.png +../../data/yoloGtold1/train/15276.png +../../data/yoloGtold1/train/15277.png +../../data/yoloGtold1/train/15278.png +../../data/yoloGtold1/train/15279.png +../../data/yoloGtold1/train/15280.png +../../data/yoloGtold1/train/15281.png +../../data/yoloGtold1/train/15282.png +../../data/yoloGtold1/train/15283.png +../../data/yoloGtold1/train/15284.png +../../data/yoloGtold1/train/15285.png +../../data/yoloGtold1/train/15286.png +../../data/yoloGtold1/train/15287.png +../../data/yoloGtold1/train/15288.png +../../data/yoloGtold1/train/15289.png +../../data/yoloGtold1/train/15290.png +../../data/yoloGtold1/train/15291.png +../../data/yoloGtold1/train/15292.png +../../data/yoloGtold1/train/15293.png +../../data/yoloGtold1/train/15294.png +../../data/yoloGtold1/train/15295.png +../../data/yoloGtold1/train/15296.png +../../data/yoloGtold1/train/15297.png +../../data/yoloGtold1/train/15298.png +../../data/yoloGtold1/train/15299.png +../../data/yoloGtold1/train/15300.png +../../data/yoloGtold1/train/15301.png +../../data/yoloGtold1/train/15302.png +../../data/yoloGtold1/train/15303.png +../../data/yoloGtold1/train/15304.png +../../data/yoloGtold1/train/15305.png +../../data/yoloGtold1/train/15306.png +../../data/yoloGtold1/train/15307.png +../../data/yoloGtold1/train/15308.png +../../data/yoloGtold1/train/15309.png +../../data/yoloGtold1/train/15310.png +../../data/yoloGtold1/train/15311.png +../../data/yoloGtold1/train/15312.png +../../data/yoloGtold1/train/15313.png +../../data/yoloGtold1/train/15314.png +../../data/yoloGtold1/train/15315.png +../../data/yoloGtold1/train/15316.png +../../data/yoloGtold1/train/15317.png +../../data/yoloGtold1/train/15318.png +../../data/yoloGtold1/train/15319.png +../../data/yoloGtold1/train/15320.png +../../data/yoloGtold1/train/15321.png +../../data/yoloGtold1/train/15322.png +../../data/yoloGtold1/train/15323.png +../../data/yoloGtold1/train/15324.png +../../data/yoloGtold1/train/15325.png +../../data/yoloGtold1/train/15326.png +../../data/yoloGtold1/train/15327.png +../../data/yoloGtold1/train/15328.png +../../data/yoloGtold1/train/15329.png +../../data/yoloGtold1/train/15330.png +../../data/yoloGtold1/train/15331.png +../../data/yoloGtold1/train/15332.png +../../data/yoloGtold1/train/15333.png +../../data/yoloGtold1/train/15334.png +../../data/yoloGtold1/train/15335.png +../../data/yoloGtold1/train/15336.png +../../data/yoloGtold1/train/15337.png +../../data/yoloGtold1/train/15338.png +../../data/yoloGtold1/train/15339.png +../../data/yoloGtold1/train/15340.png +../../data/yoloGtold1/train/15341.png +../../data/yoloGtold1/train/15342.png +../../data/yoloGtold1/train/15343.png +../../data/yoloGtold1/train/15344.png +../../data/yoloGtold1/train/15345.png +../../data/yoloGtold1/train/15346.png +../../data/yoloGtold1/train/15347.png +../../data/yoloGtold1/train/15348.png +../../data/yoloGtold1/train/15349.png +../../data/yoloGtold1/train/15350.png +../../data/yoloGtold1/train/15351.png +../../data/yoloGtold1/train/15352.png +../../data/yoloGtold1/train/15353.png +../../data/yoloGtold1/train/15354.png +../../data/yoloGtold1/train/15355.png +../../data/yoloGtold1/train/15356.png +../../data/yoloGtold1/train/15357.png +../../data/yoloGtold1/train/15358.png +../../data/yoloGtold1/train/15359.png +../../data/yoloGtold1/train/15360.png +../../data/yoloGtold1/train/15361.png +../../data/yoloGtold1/train/15362.png +../../data/yoloGtold1/train/15363.png +../../data/yoloGtold1/train/15364.png +../../data/yoloGtold1/train/15365.png +../../data/yoloGtold1/train/15366.png +../../data/yoloGtold1/train/15367.png +../../data/yoloGtold1/train/15368.png +../../data/yoloGtold1/train/15369.png +../../data/yoloGtold1/train/15370.png +../../data/yoloGtold1/train/15371.png +../../data/yoloGtold1/train/15372.png +../../data/yoloGtold1/train/15373.png +../../data/yoloGtold1/train/15374.png +../../data/yoloGtold1/train/15375.png +../../data/yoloGtold1/train/15376.png +../../data/yoloGtold1/train/15377.png +../../data/yoloGtold1/train/15378.png +../../data/yoloGtold1/train/15379.png +../../data/yoloGtold1/train/15380.png +../../data/yoloGtold1/train/15381.png +../../data/yoloGtold1/train/15382.png +../../data/yoloGtold1/train/15383.png +../../data/yoloGtold1/train/15384.png +../../data/yoloGtold1/train/15385.png +../../data/yoloGtold1/train/15386.png +../../data/yoloGtold1/train/15387.png +../../data/yoloGtold1/train/15388.png +../../data/yoloGtold1/train/15389.png +../../data/yoloGtold1/train/15390.png +../../data/yoloGtold1/train/15391.png +../../data/yoloGtold1/train/15392.png +../../data/yoloGtold1/train/15393.png +../../data/yoloGtold1/train/15394.png +../../data/yoloGtold1/train/15395.png +../../data/yoloGtold1/train/15396.png +../../data/yoloGtold1/train/15397.png +../../data/yoloGtold1/train/15398.png +../../data/yoloGtold1/train/15399.png +../../data/yoloGtold1/train/15400.png +../../data/yoloGtold1/train/15401.png +../../data/yoloGtold1/train/15402.png +../../data/yoloGtold1/train/15403.png +../../data/yoloGtold1/train/15404.png +../../data/yoloGtold1/train/15405.png +../../data/yoloGtold1/train/15406.png +../../data/yoloGtold1/train/15407.png +../../data/yoloGtold1/train/15408.png +../../data/yoloGtold1/train/15409.png +../../data/yoloGtold1/train/15410.png +../../data/yoloGtold1/train/15411.png +../../data/yoloGtold1/train/15412.png +../../data/yoloGtold1/train/15413.png +../../data/yoloGtold1/train/15414.png +../../data/yoloGtold1/train/15415.png +../../data/yoloGtold1/train/15416.png +../../data/yoloGtold1/train/15417.png +../../data/yoloGtold1/train/15418.png +../../data/yoloGtold1/train/15419.png +../../data/yoloGtold1/train/15420.png +../../data/yoloGtold1/train/15421.png +../../data/yoloGtold1/train/15422.png +../../data/yoloGtold1/train/15423.png +../../data/yoloGtold1/train/15424.png +../../data/yoloGtold1/train/15425.png +../../data/yoloGtold1/train/15426.png +../../data/yoloGtold1/train/15427.png +../../data/yoloGtold1/train/15428.png +../../data/yoloGtold1/train/15429.png +../../data/yoloGtold1/train/15430.png +../../data/yoloGtold1/train/15431.png +../../data/yoloGtold1/train/15432.png +../../data/yoloGtold1/train/15433.png +../../data/yoloGtold1/train/15434.png +../../data/yoloGtold1/train/15435.png +../../data/yoloGtold1/train/15436.png +../../data/yoloGtold1/train/15437.png +../../data/yoloGtold1/train/15438.png +../../data/yoloGtold1/train/15439.png +../../data/yoloGtold1/train/15440.png +../../data/yoloGtold1/train/15441.png +../../data/yoloGtold1/train/15442.png +../../data/yoloGtold1/train/15443.png +../../data/yoloGtold1/train/15444.png +../../data/yoloGtold1/train/15445.png +../../data/yoloGtold1/train/15446.png +../../data/yoloGtold1/train/15447.png +../../data/yoloGtold1/train/15448.png +../../data/yoloGtold1/train/15449.png +../../data/yoloGtold1/train/15450.png +../../data/yoloGtold1/train/15451.png +../../data/yoloGtold1/train/15452.png +../../data/yoloGtold1/train/15453.png +../../data/yoloGtold1/train/15454.png +../../data/yoloGtold1/train/15455.png +../../data/yoloGtold1/train/15456.png +../../data/yoloGtold1/train/15457.png +../../data/yoloGtold1/train/15458.png +../../data/yoloGtold1/train/15459.png +../../data/yoloGtold1/train/15460.png +../../data/yoloGtold1/train/15461.png +../../data/yoloGtold1/train/15462.png +../../data/yoloGtold1/train/15463.png +../../data/yoloGtold1/train/15464.png +../../data/yoloGtold1/train/15465.png +../../data/yoloGtold1/train/15466.png +../../data/yoloGtold1/train/15467.png +../../data/yoloGtold1/train/15468.png +../../data/yoloGtold1/train/15469.png +../../data/yoloGtold1/train/15470.png +../../data/yoloGtold1/train/15471.png +../../data/yoloGtold1/train/15472.png +../../data/yoloGtold1/train/15473.png +../../data/yoloGtold1/train/15474.png +../../data/yoloGtold1/train/15475.png +../../data/yoloGtold1/train/15476.png +../../data/yoloGtold1/train/15477.png +../../data/yoloGtold1/train/15478.png +../../data/yoloGtold1/train/15479.png +../../data/yoloGtold1/train/15480.png +../../data/yoloGtold1/train/15481.png +../../data/yoloGtold1/train/15482.png +../../data/yoloGtold1/train/15483.png +../../data/yoloGtold1/train/15484.png +../../data/yoloGtold1/train/15485.png +../../data/yoloGtold1/train/15486.png +../../data/yoloGtold1/train/15487.png +../../data/yoloGtold1/train/15488.png +../../data/yoloGtold1/train/15489.png +../../data/yoloGtold1/train/15490.png +../../data/yoloGtold1/train/15491.png +../../data/yoloGtold1/train/15492.png +../../data/yoloGtold1/train/15493.png +../../data/yoloGtold1/train/15494.png +../../data/yoloGtold1/train/15495.png +../../data/yoloGtold1/train/15496.png +../../data/yoloGtold1/train/15497.png +../../data/yoloGtold1/train/15498.png +../../data/yoloGtold1/train/15499.png +../../data/yoloGtold1/train/15500.png +../../data/yoloGtold1/train/15501.png +../../data/yoloGtold1/train/15502.png +../../data/yoloGtold1/train/15503.png +../../data/yoloGtold1/train/15504.png +../../data/yoloGtold1/train/15505.png +../../data/yoloGtold1/train/15506.png +../../data/yoloGtold1/train/15507.png +../../data/yoloGtold1/train/15508.png +../../data/yoloGtold1/train/15509.png +../../data/yoloGtold1/train/15510.png +../../data/yoloGtold1/train/15511.png +../../data/yoloGtold1/train/15512.png +../../data/yoloGtold1/train/15513.png +../../data/yoloGtold1/train/15514.png +../../data/yoloGtold1/train/15515.png +../../data/yoloGtold1/train/15516.png +../../data/yoloGtold1/train/15517.png +../../data/yoloGtold1/train/15518.png +../../data/yoloGtold1/train/15519.png +../../data/yoloGtold1/train/15520.png +../../data/yoloGtold1/train/15521.png +../../data/yoloGtold1/train/15522.png +../../data/yoloGtold1/train/15523.png +../../data/yoloGtold1/train/15524.png +../../data/yoloGtold1/train/15525.png +../../data/yoloGtold1/train/15526.png +../../data/yoloGtold1/train/15527.png +../../data/yoloGtold1/train/15528.png +../../data/yoloGtold1/train/15529.png +../../data/yoloGtold1/train/15530.png +../../data/yoloGtold1/train/15531.png +../../data/yoloGtold1/train/15532.png +../../data/yoloGtold1/train/15533.png +../../data/yoloGtold1/train/15534.png +../../data/yoloGtold1/train/15535.png +../../data/yoloGtold1/train/15536.png +../../data/yoloGtold1/train/15537.png +../../data/yoloGtold1/train/15538.png +../../data/yoloGtold1/train/15539.png +../../data/yoloGtold1/train/15540.png +../../data/yoloGtold1/train/15541.png +../../data/yoloGtold1/train/15542.png +../../data/yoloGtold1/train/15543.png +../../data/yoloGtold1/train/15544.png +../../data/yoloGtold1/train/15545.png +../../data/yoloGtold1/train/15546.png +../../data/yoloGtold1/train/15547.png +../../data/yoloGtold1/train/15548.png +../../data/yoloGtold1/train/15549.png +../../data/yoloGtold1/train/15550.png +../../data/yoloGtold1/train/15551.png +../../data/yoloGtold1/train/15552.png +../../data/yoloGtold1/train/15553.png +../../data/yoloGtold1/train/15554.png +../../data/yoloGtold1/train/15555.png +../../data/yoloGtold1/train/15556.png +../../data/yoloGtold1/train/15557.png +../../data/yoloGtold1/train/15558.png +../../data/yoloGtold1/train/15559.png +../../data/yoloGtold1/train/15560.png +../../data/yoloGtold1/train/15561.png +../../data/yoloGtold1/train/15562.png +../../data/yoloGtold1/train/15563.png +../../data/yoloGtold1/train/15564.png +../../data/yoloGtold1/train/15565.png +../../data/yoloGtold1/train/15566.png +../../data/yoloGtold1/train/15567.png +../../data/yoloGtold1/train/15568.png +../../data/yoloGtold1/train/15569.png +../../data/yoloGtold1/train/15570.png +../../data/yoloGtold1/train/15571.png +../../data/yoloGtold1/train/15572.png +../../data/yoloGtold1/train/15573.png +../../data/yoloGtold1/train/15574.png +../../data/yoloGtold1/train/15575.png +../../data/yoloGtold1/train/15576.png +../../data/yoloGtold1/train/15577.png +../../data/yoloGtold1/train/15578.png +../../data/yoloGtold1/train/15579.png +../../data/yoloGtold1/train/15580.png +../../data/yoloGtold1/train/15581.png +../../data/yoloGtold1/train/15582.png +../../data/yoloGtold1/train/15583.png +../../data/yoloGtold1/train/15584.png +../../data/yoloGtold1/train/15585.png +../../data/yoloGtold1/train/15586.png +../../data/yoloGtold1/train/15587.png +../../data/yoloGtold1/train/15588.png +../../data/yoloGtold1/train/15589.png +../../data/yoloGtold1/train/15590.png +../../data/yoloGtold1/train/15591.png +../../data/yoloGtold1/train/15592.png +../../data/yoloGtold1/train/15593.png +../../data/yoloGtold1/train/15594.png +../../data/yoloGtold1/train/15595.png +../../data/yoloGtold1/train/15596.png +../../data/yoloGtold1/train/15597.png +../../data/yoloGtold1/train/15598.png +../../data/yoloGtold1/train/15599.png +../../data/yoloGtold1/train/15600.png +../../data/yoloGtold1/train/15601.png +../../data/yoloGtold1/train/15602.png +../../data/yoloGtold1/train/15603.png +../../data/yoloGtold1/train/15604.png +../../data/yoloGtold1/train/15605.png +../../data/yoloGtold1/train/15606.png +../../data/yoloGtold1/train/15607.png +../../data/yoloGtold1/train/15608.png +../../data/yoloGtold1/train/15609.png +../../data/yoloGtold1/train/15610.png +../../data/yoloGtold1/train/15611.png +../../data/yoloGtold1/train/15612.png +../../data/yoloGtold1/train/15613.png +../../data/yoloGtold1/train/15614.png +../../data/yoloGtold1/train/15615.png +../../data/yoloGtold1/train/15616.png +../../data/yoloGtold1/train/15617.png +../../data/yoloGtold1/train/15618.png +../../data/yoloGtold1/train/15619.png +../../data/yoloGtold1/train/15620.png +../../data/yoloGtold1/train/15621.png +../../data/yoloGtold1/train/15622.png +../../data/yoloGtold1/train/15623.png +../../data/yoloGtold1/train/15624.png +../../data/yoloGtold1/train/15625.png +../../data/yoloGtold1/train/15626.png +../../data/yoloGtold1/train/15627.png +../../data/yoloGtold1/train/15628.png +../../data/yoloGtold1/train/15629.png +../../data/yoloGtold1/train/15630.png +../../data/yoloGtold1/train/15631.png +../../data/yoloGtold1/train/15632.png +../../data/yoloGtold1/train/15633.png +../../data/yoloGtold1/train/15634.png +../../data/yoloGtold1/train/15635.png +../../data/yoloGtold1/train/15636.png +../../data/yoloGtold1/train/15637.png +../../data/yoloGtold1/train/15638.png +../../data/yoloGtold1/train/15639.png +../../data/yoloGtold1/train/15640.png +../../data/yoloGtold1/train/15641.png +../../data/yoloGtold1/train/15642.png +../../data/yoloGtold1/train/15643.png +../../data/yoloGtold1/train/15644.png +../../data/yoloGtold1/train/15645.png +../../data/yoloGtold1/train/15646.png +../../data/yoloGtold1/train/15647.png +../../data/yoloGtold1/train/15648.png +../../data/yoloGtold1/train/15649.png +../../data/yoloGtold1/train/15650.png +../../data/yoloGtold1/train/15651.png +../../data/yoloGtold1/train/15652.png +../../data/yoloGtold1/train/15653.png +../../data/yoloGtold1/train/15654.png +../../data/yoloGtold1/train/15655.png +../../data/yoloGtold1/train/15656.png +../../data/yoloGtold1/train/15657.png +../../data/yoloGtold1/train/15658.png +../../data/yoloGtold1/train/15659.png +../../data/yoloGtold1/train/15660.png +../../data/yoloGtold1/train/15661.png +../../data/yoloGtold1/train/15662.png +../../data/yoloGtold1/train/15663.png +../../data/yoloGtold1/train/15664.png +../../data/yoloGtold1/train/15665.png +../../data/yoloGtold1/train/15666.png +../../data/yoloGtold1/train/15667.png +../../data/yoloGtold1/train/15668.png +../../data/yoloGtold1/train/15669.png +../../data/yoloGtold1/train/15670.png +../../data/yoloGtold1/train/15671.png +../../data/yoloGtold1/train/15672.png +../../data/yoloGtold1/train/15673.png +../../data/yoloGtold1/train/15674.png +../../data/yoloGtold1/train/15675.png +../../data/yoloGtold1/train/15676.png +../../data/yoloGtold1/train/15677.png +../../data/yoloGtold1/train/15678.png +../../data/yoloGtold1/train/15679.png +../../data/yoloGtold1/train/15680.png +../../data/yoloGtold1/train/15681.png +../../data/yoloGtold1/train/15682.png +../../data/yoloGtold1/train/15683.png +../../data/yoloGtold1/train/15684.png +../../data/yoloGtold1/train/15685.png +../../data/yoloGtold1/train/15686.png +../../data/yoloGtold1/train/15687.png +../../data/yoloGtold1/train/15688.png +../../data/yoloGtold1/train/15689.png +../../data/yoloGtold1/train/15690.png +../../data/yoloGtold1/train/15691.png +../../data/yoloGtold1/train/15692.png +../../data/yoloGtold1/train/15693.png +../../data/yoloGtold1/train/15694.png +../../data/yoloGtold1/train/15695.png +../../data/yoloGtold1/train/15696.png +../../data/yoloGtold1/train/15697.png +../../data/yoloGtold1/train/15698.png +../../data/yoloGtold1/train/15699.png +../../data/yoloGtold1/train/15700.png +../../data/yoloGtold1/train/15701.png +../../data/yoloGtold1/train/15702.png +../../data/yoloGtold1/train/15703.png +../../data/yoloGtold1/train/15704.png +../../data/yoloGtold1/train/15705.png +../../data/yoloGtold1/train/15706.png +../../data/yoloGtold1/train/15707.png +../../data/yoloGtold1/train/15708.png +../../data/yoloGtold1/train/15709.png +../../data/yoloGtold1/train/15710.png +../../data/yoloGtold1/train/15711.png +../../data/yoloGtold1/train/15712.png +../../data/yoloGtold1/train/15713.png +../../data/yoloGtold1/train/15714.png +../../data/yoloGtold1/train/15715.png +../../data/yoloGtold1/train/15716.png +../../data/yoloGtold1/train/15717.png +../../data/yoloGtold1/train/15718.png +../../data/yoloGtold1/train/15719.png +../../data/yoloGtold1/train/15720.png +../../data/yoloGtold1/train/15721.png +../../data/yoloGtold1/train/15722.png +../../data/yoloGtold1/train/15723.png +../../data/yoloGtold1/train/15724.png +../../data/yoloGtold1/train/15725.png +../../data/yoloGtold1/train/15726.png +../../data/yoloGtold1/train/15727.png +../../data/yoloGtold1/train/15728.png +../../data/yoloGtold1/train/15729.png +../../data/yoloGtold1/train/15730.png +../../data/yoloGtold1/train/15731.png +../../data/yoloGtold1/train/15732.png +../../data/yoloGtold1/train/15733.png +../../data/yoloGtold1/train/15734.png +../../data/yoloGtold1/train/15735.png +../../data/yoloGtold1/train/15736.png +../../data/yoloGtold1/train/15737.png +../../data/yoloGtold1/train/15738.png +../../data/yoloGtold1/train/15739.png +../../data/yoloGtold1/train/15740.png +../../data/yoloGtold1/train/15741.png +../../data/yoloGtold1/train/15742.png +../../data/yoloGtold1/train/15743.png +../../data/yoloGtold1/train/15744.png +../../data/yoloGtold1/train/15745.png +../../data/yoloGtold1/train/15746.png +../../data/yoloGtold1/train/15747.png +../../data/yoloGtold1/train/15748.png +../../data/yoloGtold1/train/15749.png +../../data/yoloGtold1/train/15750.png +../../data/yoloGtold1/train/15751.png +../../data/yoloGtold1/train/15752.png +../../data/yoloGtold1/train/15753.png +../../data/yoloGtold1/train/15754.png +../../data/yoloGtold1/train/15755.png +../../data/yoloGtold1/train/15756.png +../../data/yoloGtold1/train/15757.png +../../data/yoloGtold1/train/15758.png +../../data/yoloGtold1/train/15759.png +../../data/yoloGtold1/train/15760.png +../../data/yoloGtold1/train/15761.png +../../data/yoloGtold1/train/15762.png +../../data/yoloGtold1/train/15763.png +../../data/yoloGtold1/train/15764.png +../../data/yoloGtold1/train/15765.png +../../data/yoloGtold1/train/15766.png +../../data/yoloGtold1/train/15767.png +../../data/yoloGtold1/train/15768.png +../../data/yoloGtold1/train/15769.png +../../data/yoloGtold1/train/15770.png +../../data/yoloGtold1/train/15771.png +../../data/yoloGtold1/train/15772.png +../../data/yoloGtold1/train/15773.png +../../data/yoloGtold1/train/15774.png +../../data/yoloGtold1/train/15775.png +../../data/yoloGtold1/train/15776.png +../../data/yoloGtold1/train/15777.png +../../data/yoloGtold1/train/15778.png +../../data/yoloGtold1/train/15779.png +../../data/yoloGtold1/train/15780.png +../../data/yoloGtold1/train/15781.png +../../data/yoloGtold1/train/15782.png +../../data/yoloGtold1/train/15783.png +../../data/yoloGtold1/train/15784.png +../../data/yoloGtold1/train/15785.png +../../data/yoloGtold1/train/15786.png +../../data/yoloGtold1/train/15787.png +../../data/yoloGtold1/train/15788.png +../../data/yoloGtold1/train/15789.png +../../data/yoloGtold1/train/15790.png +../../data/yoloGtold1/train/15791.png +../../data/yoloGtold1/train/15792.png +../../data/yoloGtold1/train/15793.png +../../data/yoloGtold1/train/15794.png +../../data/yoloGtold1/train/15795.png +../../data/yoloGtold1/train/15796.png +../../data/yoloGtold1/train/15797.png +../../data/yoloGtold1/train/15798.png +../../data/yoloGtold1/train/15799.png +../../data/yoloGtold1/train/15800.png +../../data/yoloGtold1/train/15801.png +../../data/yoloGtold1/train/15802.png +../../data/yoloGtold1/train/15803.png +../../data/yoloGtold1/train/15804.png +../../data/yoloGtold1/train/15805.png +../../data/yoloGtold1/train/15806.png +../../data/yoloGtold1/train/15807.png +../../data/yoloGtold1/train/15808.png +../../data/yoloGtold1/train/15809.png +../../data/yoloGtold1/train/15810.png +../../data/yoloGtold1/train/15811.png +../../data/yoloGtold1/train/15812.png +../../data/yoloGtold1/train/15813.png +../../data/yoloGtold1/train/15814.png +../../data/yoloGtold1/train/15815.png +../../data/yoloGtold1/train/15816.png +../../data/yoloGtold1/train/15817.png +../../data/yoloGtold1/train/15818.png +../../data/yoloGtold1/train/15819.png +../../data/yoloGtold1/train/15820.png +../../data/yoloGtold1/train/15821.png +../../data/yoloGtold1/train/15822.png +../../data/yoloGtold1/train/15823.png +../../data/yoloGtold1/train/15824.png +../../data/yoloGtold1/train/15825.png +../../data/yoloGtold1/train/15826.png +../../data/yoloGtold1/train/15827.png +../../data/yoloGtold1/train/15828.png +../../data/yoloGtold1/train/15829.png +../../data/yoloGtold1/train/15830.png +../../data/yoloGtold1/train/15831.png +../../data/yoloGtold1/train/15832.png +../../data/yoloGtold1/train/15833.png +../../data/yoloGtold1/train/15834.png +../../data/yoloGtold1/train/15835.png +../../data/yoloGtold1/train/15836.png +../../data/yoloGtold1/train/15837.png +../../data/yoloGtold1/train/15838.png +../../data/yoloGtold1/train/15839.png +../../data/yoloGtold1/train/15840.png +../../data/yoloGtold1/train/15841.png +../../data/yoloGtold1/train/15842.png +../../data/yoloGtold1/train/15843.png +../../data/yoloGtold1/train/15844.png +../../data/yoloGtold1/train/15845.png +../../data/yoloGtold1/train/15846.png +../../data/yoloGtold1/train/15847.png +../../data/yoloGtold1/train/15848.png +../../data/yoloGtold1/train/15849.png +../../data/yoloGtold1/train/15850.png +../../data/yoloGtold1/train/15851.png +../../data/yoloGtold1/train/15852.png +../../data/yoloGtold1/train/15853.png +../../data/yoloGtold1/train/15854.png +../../data/yoloGtold1/train/15855.png +../../data/yoloGtold1/train/15856.png +../../data/yoloGtold1/train/15857.png +../../data/yoloGtold1/train/15858.png +../../data/yoloGtold1/train/15859.png +../../data/yoloGtold1/train/15860.png +../../data/yoloGtold1/train/15861.png +../../data/yoloGtold1/train/15862.png +../../data/yoloGtold1/train/15863.png +../../data/yoloGtold1/train/15864.png +../../data/yoloGtold1/train/15865.png +../../data/yoloGtold1/train/15866.png +../../data/yoloGtold1/train/15867.png +../../data/yoloGtold1/train/15868.png +../../data/yoloGtold1/train/15869.png +../../data/yoloGtold1/train/15870.png +../../data/yoloGtold1/train/15871.png +../../data/yoloGtold1/train/15872.png +../../data/yoloGtold1/train/15873.png +../../data/yoloGtold1/train/15874.png +../../data/yoloGtold1/train/15875.png +../../data/yoloGtold1/train/15876.png +../../data/yoloGtold1/train/15877.png +../../data/yoloGtold1/train/15878.png +../../data/yoloGtold1/train/15879.png +../../data/yoloGtold1/train/15880.png +../../data/yoloGtold1/train/15881.png +../../data/yoloGtold1/train/15882.png +../../data/yoloGtold1/train/15883.png +../../data/yoloGtold1/train/15884.png +../../data/yoloGtold1/train/15885.png +../../data/yoloGtold1/train/15886.png +../../data/yoloGtold1/train/15887.png +../../data/yoloGtold1/train/15888.png +../../data/yoloGtold1/train/15889.png +../../data/yoloGtold1/train/15890.png +../../data/yoloGtold1/train/15891.png +../../data/yoloGtold1/train/15892.png +../../data/yoloGtold1/train/15893.png +../../data/yoloGtold1/train/15894.png +../../data/yoloGtold1/train/15895.png +../../data/yoloGtold1/train/15896.png +../../data/yoloGtold1/train/15897.png +../../data/yoloGtold1/train/15898.png +../../data/yoloGtold1/train/15899.png +../../data/yoloGtold1/train/15900.png +../../data/yoloGtold1/train/15901.png +../../data/yoloGtold1/train/15902.png +../../data/yoloGtold1/train/15903.png +../../data/yoloGtold1/train/15904.png +../../data/yoloGtold1/train/15905.png +../../data/yoloGtold1/train/15906.png +../../data/yoloGtold1/train/15907.png +../../data/yoloGtold1/train/15908.png +../../data/yoloGtold1/train/15909.png +../../data/yoloGtold1/train/15910.png +../../data/yoloGtold1/train/15911.png +../../data/yoloGtold1/train/15912.png +../../data/yoloGtold1/train/15913.png +../../data/yoloGtold1/train/15914.png +../../data/yoloGtold1/train/15915.png +../../data/yoloGtold1/train/15916.png +../../data/yoloGtold1/train/15917.png +../../data/yoloGtold1/train/15918.png +../../data/yoloGtold1/train/15919.png +../../data/yoloGtold1/train/15920.png +../../data/yoloGtold1/train/15921.png +../../data/yoloGtold1/train/15922.png +../../data/yoloGtold1/train/15923.png +../../data/yoloGtold1/train/15924.png +../../data/yoloGtold1/train/15925.png +../../data/yoloGtold1/train/15926.png +../../data/yoloGtold1/train/15927.png +../../data/yoloGtold1/train/15928.png +../../data/yoloGtold1/train/15929.png +../../data/yoloGtold1/train/15930.png +../../data/yoloGtold1/train/15931.png +../../data/yoloGtold1/train/15932.png +../../data/yoloGtold1/train/15933.png +../../data/yoloGtold1/train/15934.png +../../data/yoloGtold1/train/15935.png +../../data/yoloGtold1/train/15936.png +../../data/yoloGtold1/train/15937.png +../../data/yoloGtold1/train/15938.png +../../data/yoloGtold1/train/15939.png +../../data/yoloGtold1/train/15940.png +../../data/yoloGtold1/train/15941.png +../../data/yoloGtold1/train/15942.png +../../data/yoloGtold1/train/15943.png +../../data/yoloGtold1/train/15944.png +../../data/yoloGtold1/train/15945.png +../../data/yoloGtold1/train/15946.png +../../data/yoloGtold1/train/15947.png +../../data/yoloGtold1/train/15948.png +../../data/yoloGtold1/train/15949.png +../../data/yoloGtold1/train/15950.png +../../data/yoloGtold1/train/15951.png +../../data/yoloGtold1/train/15952.png +../../data/yoloGtold1/train/15953.png +../../data/yoloGtold1/train/15954.png +../../data/yoloGtold1/train/15955.png +../../data/yoloGtold1/train/15956.png +../../data/yoloGtold1/train/15957.png +../../data/yoloGtold1/train/15958.png +../../data/yoloGtold1/train/15959.png +../../data/yoloGtold1/train/15960.png +../../data/yoloGtold1/train/15961.png +../../data/yoloGtold1/train/15962.png +../../data/yoloGtold1/train/15963.png +../../data/yoloGtold1/train/15964.png +../../data/yoloGtold1/train/15965.png +../../data/yoloGtold1/train/15966.png +../../data/yoloGtold1/train/15967.png +../../data/yoloGtold1/train/15968.png +../../data/yoloGtold1/train/15969.png +../../data/yoloGtold1/train/15970.png +../../data/yoloGtold1/train/15971.png +../../data/yoloGtold1/train/15972.png +../../data/yoloGtold1/train/15973.png +../../data/yoloGtold1/train/15974.png +../../data/yoloGtold1/train/15975.png +../../data/yoloGtold1/train/15976.png +../../data/yoloGtold1/train/15977.png +../../data/yoloGtold1/train/15978.png +../../data/yoloGtold1/train/15979.png +../../data/yoloGtold1/train/15980.png +../../data/yoloGtold1/train/15981.png +../../data/yoloGtold1/train/15982.png +../../data/yoloGtold1/train/15983.png +../../data/yoloGtold1/train/15984.png +../../data/yoloGtold1/train/15985.png +../../data/yoloGtold1/train/15986.png +../../data/yoloGtold1/train/15987.png +../../data/yoloGtold1/train/15988.png +../../data/yoloGtold1/train/15989.png +../../data/yoloGtold1/train/15990.png +../../data/yoloGtold1/train/15991.png +../../data/yoloGtold1/train/15992.png +../../data/yoloGtold1/train/15993.png +../../data/yoloGtold1/train/15994.png +../../data/yoloGtold1/train/15995.png +../../data/yoloGtold1/train/15996.png +../../data/yoloGtold1/train/15997.png +../../data/yoloGtold1/train/15998.png +../../data/yoloGtold1/train/15999.png +../../data/yoloGtold1/train/16000.png +../../data/yoloGtold1/train/16001.png +../../data/yoloGtold1/train/16002.png +../../data/yoloGtold1/train/16003.png +../../data/yoloGtold1/train/16004.png +../../data/yoloGtold1/train/16005.png +../../data/yoloGtold1/train/16006.png +../../data/yoloGtold1/train/16007.png +../../data/yoloGtold1/train/16008.png +../../data/yoloGtold1/train/16009.png +../../data/yoloGtold1/train/16010.png +../../data/yoloGtold1/train/16011.png +../../data/yoloGtold1/train/16012.png +../../data/yoloGtold1/train/16013.png +../../data/yoloGtold1/train/16014.png +../../data/yoloGtold1/train/16015.png +../../data/yoloGtold1/train/16016.png +../../data/yoloGtold1/train/16017.png +../../data/yoloGtold1/train/16018.png +../../data/yoloGtold1/train/16019.png +../../data/yoloGtold1/train/16020.png +../../data/yoloGtold1/train/16021.png +../../data/yoloGtold1/train/16022.png +../../data/yoloGtold1/train/16023.png +../../data/yoloGtold1/train/16024.png +../../data/yoloGtold1/train/16025.png +../../data/yoloGtold1/train/16026.png +../../data/yoloGtold1/train/16027.png +../../data/yoloGtold1/train/16028.png +../../data/yoloGtold1/train/16029.png +../../data/yoloGtold1/train/16030.png +../../data/yoloGtold1/train/16031.png +../../data/yoloGtold1/train/16032.png +../../data/yoloGtold1/train/16033.png +../../data/yoloGtold1/train/16034.png +../../data/yoloGtold1/train/16035.png +../../data/yoloGtold1/train/16036.png +../../data/yoloGtold1/train/16037.png +../../data/yoloGtold1/train/16038.png +../../data/yoloGtold1/train/16039.png +../../data/yoloGtold1/train/16040.png +../../data/yoloGtold1/train/16041.png +../../data/yoloGtold1/train/16042.png +../../data/yoloGtold1/train/16043.png +../../data/yoloGtold1/train/16044.png +../../data/yoloGtold1/train/16045.png +../../data/yoloGtold1/train/16046.png +../../data/yoloGtold1/train/16047.png +../../data/yoloGtold1/train/16048.png +../../data/yoloGtold1/train/16049.png +../../data/yoloGtold1/train/16050.png +../../data/yoloGtold1/train/16051.png +../../data/yoloGtold1/train/16052.png +../../data/yoloGtold1/train/16053.png +../../data/yoloGtold1/train/16054.png +../../data/yoloGtold1/train/16055.png +../../data/yoloGtold1/train/16056.png +../../data/yoloGtold1/train/16057.png +../../data/yoloGtold1/train/16058.png +../../data/yoloGtold1/train/16059.png +../../data/yoloGtold1/train/16060.png +../../data/yoloGtold1/train/16061.png +../../data/yoloGtold1/train/16062.png +../../data/yoloGtold1/train/16063.png +../../data/yoloGtold1/train/16064.png +../../data/yoloGtold1/train/16065.png +../../data/yoloGtold1/train/16066.png +../../data/yoloGtold1/train/16067.png +../../data/yoloGtold1/train/16068.png +../../data/yoloGtold1/train/16069.png +../../data/yoloGtold1/train/16070.png +../../data/yoloGtold1/train/16071.png +../../data/yoloGtold1/train/16072.png +../../data/yoloGtold1/train/16073.png +../../data/yoloGtold1/train/16074.png +../../data/yoloGtold1/train/16075.png +../../data/yoloGtold1/train/16076.png +../../data/yoloGtold1/train/16077.png +../../data/yoloGtold1/train/16078.png +../../data/yoloGtold1/train/16079.png +../../data/yoloGtold1/train/16080.png +../../data/yoloGtold1/train/16081.png +../../data/yoloGtold1/train/16082.png +../../data/yoloGtold1/train/16083.png +../../data/yoloGtold1/train/16084.png +../../data/yoloGtold1/train/16085.png +../../data/yoloGtold1/train/16086.png +../../data/yoloGtold1/train/16087.png +../../data/yoloGtold1/train/16088.png +../../data/yoloGtold1/train/16089.png +../../data/yoloGtold1/train/16090.png +../../data/yoloGtold1/train/16091.png +../../data/yoloGtold1/train/16092.png +../../data/yoloGtold1/train/16093.png +../../data/yoloGtold1/train/16094.png +../../data/yoloGtold1/train/16095.png +../../data/yoloGtold1/train/16096.png +../../data/yoloGtold1/train/16097.png +../../data/yoloGtold1/train/16098.png +../../data/yoloGtold1/train/16099.png +../../data/yoloGtold1/train/16100.png +../../data/yoloGtold1/train/16101.png +../../data/yoloGtold1/train/16102.png +../../data/yoloGtold1/train/16103.png +../../data/yoloGtold1/train/16104.png +../../data/yoloGtold1/train/16105.png +../../data/yoloGtold1/train/16106.png +../../data/yoloGtold1/train/16107.png +../../data/yoloGtold1/train/16108.png +../../data/yoloGtold1/train/16109.png +../../data/yoloGtold1/train/16110.png +../../data/yoloGtold1/train/16111.png +../../data/yoloGtold1/train/16112.png +../../data/yoloGtold1/train/16113.png +../../data/yoloGtold1/train/16114.png +../../data/yoloGtold1/train/16115.png +../../data/yoloGtold1/train/16116.png +../../data/yoloGtold1/train/16117.png +../../data/yoloGtold1/train/16118.png +../../data/yoloGtold1/train/16119.png +../../data/yoloGtold1/train/16120.png +../../data/yoloGtold1/train/16121.png +../../data/yoloGtold1/train/16122.png +../../data/yoloGtold1/train/16123.png +../../data/yoloGtold1/train/16124.png +../../data/yoloGtold1/train/16125.png +../../data/yoloGtold1/train/16126.png +../../data/yoloGtold1/train/16127.png +../../data/yoloGtold1/train/16128.png +../../data/yoloGtold1/train/16129.png +../../data/yoloGtold1/train/16130.png +../../data/yoloGtold1/train/16131.png +../../data/yoloGtold1/train/16132.png +../../data/yoloGtold1/train/16133.png +../../data/yoloGtold1/train/16134.png +../../data/yoloGtold1/train/16135.png +../../data/yoloGtold1/train/16136.png +../../data/yoloGtold1/train/16137.png +../../data/yoloGtold1/train/16138.png +../../data/yoloGtold1/train/16139.png +../../data/yoloGtold1/train/16140.png +../../data/yoloGtold1/train/16141.png +../../data/yoloGtold1/train/16142.png +../../data/yoloGtold1/train/16143.png +../../data/yoloGtold1/train/16144.png +../../data/yoloGtold1/train/16145.png +../../data/yoloGtold1/train/16146.png +../../data/yoloGtold1/train/16147.png +../../data/yoloGtold1/train/16148.png +../../data/yoloGtold1/train/16149.png +../../data/yoloGtold1/train/16150.png +../../data/yoloGtold1/train/16151.png +../../data/yoloGtold1/train/16152.png +../../data/yoloGtold1/train/16153.png +../../data/yoloGtold1/train/16154.png +../../data/yoloGtold1/train/16155.png +../../data/yoloGtold1/train/16156.png +../../data/yoloGtold1/train/16157.png +../../data/yoloGtold1/train/16158.png +../../data/yoloGtold1/train/16159.png +../../data/yoloGtold1/train/16160.png +../../data/yoloGtold1/train/16161.png +../../data/yoloGtold1/train/16162.png +../../data/yoloGtold1/train/16163.png +../../data/yoloGtold1/train/16164.png +../../data/yoloGtold1/train/16165.png +../../data/yoloGtold1/train/16166.png +../../data/yoloGtold1/train/16167.png +../../data/yoloGtold1/train/16168.png +../../data/yoloGtold1/train/16169.png +../../data/yoloGtold1/train/16170.png +../../data/yoloGtold1/train/16171.png +../../data/yoloGtold1/train/16172.png +../../data/yoloGtold1/train/16173.png +../../data/yoloGtold1/train/16174.png +../../data/yoloGtold1/train/16175.png +../../data/yoloGtold1/train/16176.png +../../data/yoloGtold1/train/16177.png +../../data/yoloGtold1/train/16178.png +../../data/yoloGtold1/train/16179.png +../../data/yoloGtold1/train/16180.png +../../data/yoloGtold1/train/16181.png +../../data/yoloGtold1/train/16182.png +../../data/yoloGtold1/train/16183.png +../../data/yoloGtold1/train/16184.png +../../data/yoloGtold1/train/16185.png +../../data/yoloGtold1/train/16186.png +../../data/yoloGtold1/train/16187.png +../../data/yoloGtold1/train/16188.png +../../data/yoloGtold1/train/16189.png +../../data/yoloGtold1/train/16190.png +../../data/yoloGtold1/train/16191.png +../../data/yoloGtold1/train/16192.png +../../data/yoloGtold1/train/16193.png +../../data/yoloGtold1/train/16194.png +../../data/yoloGtold1/train/16195.png +../../data/yoloGtold1/train/16196.png +../../data/yoloGtold1/train/16197.png +../../data/yoloGtold1/train/16198.png +../../data/yoloGtold1/train/16199.png +../../data/yoloGtold1/train/16200.png +../../data/yoloGtold1/train/16201.png +../../data/yoloGtold1/train/16202.png +../../data/yoloGtold1/train/16203.png +../../data/yoloGtold1/train/16204.png +../../data/yoloGtold1/train/16205.png +../../data/yoloGtold1/train/16206.png +../../data/yoloGtold1/train/16207.png +../../data/yoloGtold1/train/16208.png +../../data/yoloGtold1/train/16209.png +../../data/yoloGtold1/train/16210.png +../../data/yoloGtold1/train/16211.png +../../data/yoloGtold1/train/16212.png +../../data/yoloGtold1/train/16213.png +../../data/yoloGtold1/train/16214.png +../../data/yoloGtold1/train/16215.png +../../data/yoloGtold1/train/16216.png +../../data/yoloGtold1/train/16217.png +../../data/yoloGtold1/train/16218.png +../../data/yoloGtold1/train/16219.png +../../data/yoloGtold1/train/16220.png +../../data/yoloGtold1/train/16221.png +../../data/yoloGtold1/train/16222.png +../../data/yoloGtold1/train/16223.png +../../data/yoloGtold1/train/16224.png +../../data/yoloGtold1/train/16225.png +../../data/yoloGtold1/train/16226.png +../../data/yoloGtold1/train/16227.png +../../data/yoloGtold1/train/16228.png +../../data/yoloGtold1/train/16229.png +../../data/yoloGtold1/train/16230.png +../../data/yoloGtold1/train/16231.png +../../data/yoloGtold1/train/16232.png +../../data/yoloGtold1/train/16233.png +../../data/yoloGtold1/train/16234.png +../../data/yoloGtold1/train/16235.png +../../data/yoloGtold1/train/16236.png +../../data/yoloGtold1/train/16237.png +../../data/yoloGtold1/train/16238.png +../../data/yoloGtold1/train/16239.png +../../data/yoloGtold1/train/16240.png +../../data/yoloGtold1/train/16241.png +../../data/yoloGtold1/train/16242.png +../../data/yoloGtold1/train/16243.png +../../data/yoloGtold1/train/16244.png +../../data/yoloGtold1/train/16245.png +../../data/yoloGtold1/train/16246.png +../../data/yoloGtold1/train/16247.png +../../data/yoloGtold1/train/16248.png +../../data/yoloGtold1/train/16249.png +../../data/yoloGtold1/train/16250.png +../../data/yoloGtold1/train/16251.png +../../data/yoloGtold1/train/16252.png +../../data/yoloGtold1/train/16253.png +../../data/yoloGtold1/train/16254.png +../../data/yoloGtold1/train/16255.png +../../data/yoloGtold1/train/16256.png +../../data/yoloGtold1/train/16257.png +../../data/yoloGtold1/train/16258.png +../../data/yoloGtold1/train/16259.png +../../data/yoloGtold1/train/16260.png +../../data/yoloGtold1/train/16261.png +../../data/yoloGtold1/train/16262.png +../../data/yoloGtold1/train/16263.png +../../data/yoloGtold1/train/16264.png +../../data/yoloGtold1/train/16265.png +../../data/yoloGtold1/train/16266.png +../../data/yoloGtold1/train/16267.png +../../data/yoloGtold1/train/16268.png +../../data/yoloGtold1/train/16269.png +../../data/yoloGtold1/train/16270.png +../../data/yoloGtold1/train/16271.png +../../data/yoloGtold1/train/16272.png +../../data/yoloGtold1/train/16273.png +../../data/yoloGtold1/train/16274.png +../../data/yoloGtold1/train/16275.png +../../data/yoloGtold1/train/16276.png +../../data/yoloGtold1/train/16277.png +../../data/yoloGtold1/train/16278.png +../../data/yoloGtold1/train/16279.png +../../data/yoloGtold1/train/16280.png +../../data/yoloGtold1/train/16281.png +../../data/yoloGtold1/train/16282.png +../../data/yoloGtold1/train/16283.png +../../data/yoloGtold1/train/16284.png +../../data/yoloGtold1/train/16285.png +../../data/yoloGtold1/train/16286.png +../../data/yoloGtold1/train/16287.png +../../data/yoloGtold1/train/16288.png +../../data/yoloGtold1/train/16289.png +../../data/yoloGtold1/train/16290.png +../../data/yoloGtold1/train/16291.png +../../data/yoloGtold1/train/16292.png +../../data/yoloGtold1/train/16293.png +../../data/yoloGtold1/train/16294.png +../../data/yoloGtold1/train/16295.png +../../data/yoloGtold1/train/16296.png +../../data/yoloGtold1/train/16297.png +../../data/yoloGtold1/train/16298.png +../../data/yoloGtold1/train/16299.png +../../data/yoloGtold1/train/16300.png +../../data/yoloGtold1/train/16301.png +../../data/yoloGtold1/train/16302.png +../../data/yoloGtold1/train/16303.png +../../data/yoloGtold1/train/16304.png +../../data/yoloGtold1/train/16305.png +../../data/yoloGtold1/train/16306.png +../../data/yoloGtold1/train/16307.png +../../data/yoloGtold1/train/16308.png +../../data/yoloGtold1/train/16309.png +../../data/yoloGtold1/train/16310.png +../../data/yoloGtold1/train/16311.png +../../data/yoloGtold1/train/16312.png +../../data/yoloGtold1/train/16313.png +../../data/yoloGtold1/train/16314.png +../../data/yoloGtold1/train/16315.png +../../data/yoloGtold1/train/16316.png +../../data/yoloGtold1/train/16317.png +../../data/yoloGtold1/train/16318.png +../../data/yoloGtold1/train/16319.png +../../data/yoloGtold1/train/16320.png +../../data/yoloGtold1/train/16321.png +../../data/yoloGtold1/train/16322.png +../../data/yoloGtold1/train/16323.png +../../data/yoloGtold1/train/16324.png +../../data/yoloGtold1/train/16325.png +../../data/yoloGtold1/train/16326.png +../../data/yoloGtold1/train/16327.png +../../data/yoloGtold1/train/16328.png +../../data/yoloGtold1/train/16329.png +../../data/yoloGtold1/train/16330.png +../../data/yoloGtold1/train/16331.png +../../data/yoloGtold1/train/16332.png +../../data/yoloGtold1/train/16333.png +../../data/yoloGtold1/train/16334.png +../../data/yoloGtold1/train/16335.png +../../data/yoloGtold1/train/16336.png +../../data/yoloGtold1/train/16337.png +../../data/yoloGtold1/train/16338.png +../../data/yoloGtold1/train/16339.png +../../data/yoloGtold1/train/16340.png +../../data/yoloGtold1/train/16341.png +../../data/yoloGtold1/train/16342.png +../../data/yoloGtold1/train/16343.png +../../data/yoloGtold1/train/16344.png +../../data/yoloGtold1/train/16345.png +../../data/yoloGtold1/train/16346.png +../../data/yoloGtold1/train/16347.png +../../data/yoloGtold1/train/16348.png +../../data/yoloGtold1/train/16349.png +../../data/yoloGtold1/train/16350.png +../../data/yoloGtold1/train/16351.png +../../data/yoloGtold1/train/16352.png +../../data/yoloGtold1/train/16353.png +../../data/yoloGtold1/train/16354.png +../../data/yoloGtold1/train/16355.png +../../data/yoloGtold1/train/16356.png +../../data/yoloGtold1/train/16357.png +../../data/yoloGtold1/train/16358.png +../../data/yoloGtold1/train/16359.png +../../data/yoloGtold1/train/16360.png +../../data/yoloGtold1/train/16361.png +../../data/yoloGtold1/train/16362.png +../../data/yoloGtold1/train/16363.png +../../data/yoloGtold1/train/16364.png +../../data/yoloGtold1/train/16365.png +../../data/yoloGtold1/train/16366.png +../../data/yoloGtold1/train/16367.png +../../data/yoloGtold1/train/16368.png +../../data/yoloGtold1/train/16369.png +../../data/yoloGtold1/train/16370.png +../../data/yoloGtold1/train/16371.png +../../data/yoloGtold1/train/16372.png +../../data/yoloGtold1/train/16373.png +../../data/yoloGtold1/train/16374.png +../../data/yoloGtold1/train/16375.png +../../data/yoloGtold1/train/16376.png +../../data/yoloGtold1/train/16377.png +../../data/yoloGtold1/train/16378.png +../../data/yoloGtold1/train/16379.png +../../data/yoloGtold1/train/16380.png +../../data/yoloGtold1/train/16381.png +../../data/yoloGtold1/train/16382.png +../../data/yoloGtold1/train/16383.png +../../data/yoloGtold1/train/16384.png +../../data/yoloGtold1/train/16385.png +../../data/yoloGtold1/train/16386.png +../../data/yoloGtold1/train/16387.png +../../data/yoloGtold1/train/16388.png +../../data/yoloGtold1/train/16389.png +../../data/yoloGtold1/train/16390.png +../../data/yoloGtold1/train/16391.png +../../data/yoloGtold1/train/16392.png +../../data/yoloGtold1/train/16393.png +../../data/yoloGtold1/train/16394.png +../../data/yoloGtold1/train/16395.png +../../data/yoloGtold1/train/16396.png +../../data/yoloGtold1/train/16397.png +../../data/yoloGtold1/train/16398.png +../../data/yoloGtold1/train/16399.png +../../data/yoloGtold1/train/16400.png +../../data/yoloGtold1/train/16401.png +../../data/yoloGtold1/train/16402.png +../../data/yoloGtold1/train/16403.png +../../data/yoloGtold1/train/16404.png +../../data/yoloGtold1/train/16405.png +../../data/yoloGtold1/train/16406.png +../../data/yoloGtold1/train/16407.png +../../data/yoloGtold1/train/16408.png +../../data/yoloGtold1/train/16409.png +../../data/yoloGtold1/train/16410.png +../../data/yoloGtold1/train/16411.png +../../data/yoloGtold1/train/16412.png +../../data/yoloGtold1/train/16413.png +../../data/yoloGtold1/train/16414.png +../../data/yoloGtold1/train/16415.png +../../data/yoloGtold1/train/16416.png +../../data/yoloGtold1/train/16417.png +../../data/yoloGtold1/train/16418.png +../../data/yoloGtold1/train/16419.png +../../data/yoloGtold1/train/16420.png +../../data/yoloGtold1/train/16421.png +../../data/yoloGtold1/train/16422.png +../../data/yoloGtold1/train/16423.png +../../data/yoloGtold1/train/16424.png +../../data/yoloGtold1/train/16425.png +../../data/yoloGtold1/train/16426.png +../../data/yoloGtold1/train/16427.png +../../data/yoloGtold1/train/16428.png +../../data/yoloGtold1/train/16429.png +../../data/yoloGtold1/train/16430.png +../../data/yoloGtold1/train/16431.png +../../data/yoloGtold1/train/16432.png +../../data/yoloGtold1/train/16433.png +../../data/yoloGtold1/train/16434.png +../../data/yoloGtold1/train/16435.png +../../data/yoloGtold1/train/16436.png +../../data/yoloGtold1/train/16437.png +../../data/yoloGtold1/train/16438.png +../../data/yoloGtold1/train/16439.png +../../data/yoloGtold1/train/16440.png +../../data/yoloGtold1/train/16441.png +../../data/yoloGtold1/train/16442.png +../../data/yoloGtold1/train/16443.png +../../data/yoloGtold1/train/16444.png +../../data/yoloGtold1/train/16445.png +../../data/yoloGtold1/train/16446.png +../../data/yoloGtold1/train/16447.png +../../data/yoloGtold1/train/16448.png +../../data/yoloGtold1/train/16449.png +../../data/yoloGtold1/train/16450.png +../../data/yoloGtold1/train/16451.png +../../data/yoloGtold1/train/16452.png +../../data/yoloGtold1/train/16453.png +../../data/yoloGtold1/train/16454.png +../../data/yoloGtold1/train/16455.png +../../data/yoloGtold1/train/16456.png +../../data/yoloGtold1/train/16457.png +../../data/yoloGtold1/train/16458.png +../../data/yoloGtold1/train/16459.png +../../data/yoloGtold1/train/16460.png +../../data/yoloGtold1/train/16461.png +../../data/yoloGtold1/train/16462.png +../../data/yoloGtold1/train/16463.png +../../data/yoloGtold1/train/16464.png +../../data/yoloGtold1/train/16465.png +../../data/yoloGtold1/train/16466.png +../../data/yoloGtold1/train/16467.png +../../data/yoloGtold1/train/16468.png +../../data/yoloGtold1/train/16469.png +../../data/yoloGtold1/train/16470.png +../../data/yoloGtold1/train/16471.png +../../data/yoloGtold1/train/16472.png +../../data/yoloGtold1/train/16473.png +../../data/yoloGtold1/train/16474.png +../../data/yoloGtold1/train/16475.png +../../data/yoloGtold1/train/16476.png +../../data/yoloGtold1/train/16477.png +../../data/yoloGtold1/train/16478.png +../../data/yoloGtold1/train/16479.png +../../data/yoloGtold1/train/16480.png +../../data/yoloGtold1/train/16481.png +../../data/yoloGtold1/train/16482.png +../../data/yoloGtold1/train/16483.png +../../data/yoloGtold1/train/16484.png +../../data/yoloGtold1/train/16485.png +../../data/yoloGtold1/train/16486.png +../../data/yoloGtold1/train/16487.png +../../data/yoloGtold1/train/16488.png +../../data/yoloGtold1/train/16489.png +../../data/yoloGtold1/train/16490.png +../../data/yoloGtold1/train/16491.png +../../data/yoloGtold1/train/16492.png +../../data/yoloGtold1/train/16493.png +../../data/yoloGtold1/train/16494.png +../../data/yoloGtold1/train/16495.png +../../data/yoloGtold1/train/16496.png +../../data/yoloGtold1/train/16497.png +../../data/yoloGtold1/train/16498.png +../../data/yoloGtold1/train/16499.png +../../data/yoloGtold1/train/16500.png +../../data/yoloGtold1/train/16501.png +../../data/yoloGtold1/train/16502.png +../../data/yoloGtold1/train/16503.png +../../data/yoloGtold1/train/16504.png +../../data/yoloGtold1/train/16505.png +../../data/yoloGtold1/train/16506.png +../../data/yoloGtold1/train/16507.png +../../data/yoloGtold1/train/16508.png +../../data/yoloGtold1/train/16509.png +../../data/yoloGtold1/train/16510.png +../../data/yoloGtold1/train/16511.png +../../data/yoloGtold1/train/16512.png +../../data/yoloGtold1/train/16513.png +../../data/yoloGtold1/train/16514.png +../../data/yoloGtold1/train/16515.png +../../data/yoloGtold1/train/16516.png +../../data/yoloGtold1/train/16517.png +../../data/yoloGtold1/train/16518.png +../../data/yoloGtold1/train/16519.png +../../data/yoloGtold1/train/16520.png +../../data/yoloGtold1/train/16521.png +../../data/yoloGtold1/train/16522.png +../../data/yoloGtold1/train/16523.png +../../data/yoloGtold1/train/16524.png +../../data/yoloGtold1/train/16525.png +../../data/yoloGtold1/train/16526.png +../../data/yoloGtold1/train/16527.png +../../data/yoloGtold1/train/16528.png +../../data/yoloGtold1/train/16529.png +../../data/yoloGtold1/train/16530.png +../../data/yoloGtold1/train/16531.png +../../data/yoloGtold1/train/16532.png +../../data/yoloGtold1/train/16533.png +../../data/yoloGtold1/train/16534.png +../../data/yoloGtold1/train/16535.png +../../data/yoloGtold1/train/16536.png +../../data/yoloGtold1/train/16537.png +../../data/yoloGtold1/train/16538.png +../../data/yoloGtold1/train/16539.png +../../data/yoloGtold1/train/16540.png +../../data/yoloGtold1/train/16541.png +../../data/yoloGtold1/train/16542.png +../../data/yoloGtold1/train/16543.png +../../data/yoloGtold1/train/16544.png +../../data/yoloGtold1/train/16545.png +../../data/yoloGtold1/train/16546.png +../../data/yoloGtold1/train/16547.png +../../data/yoloGtold1/train/16548.png +../../data/yoloGtold1/train/16549.png +../../data/yoloGtold1/train/16550.png +../../data/yoloGtold1/train/16551.png +../../data/yoloGtold1/train/16552.png +../../data/yoloGtold1/train/16553.png +../../data/yoloGtold1/train/16554.png +../../data/yoloGtold1/train/16555.png +../../data/yoloGtold1/train/16556.png +../../data/yoloGtold1/train/16557.png +../../data/yoloGtold1/train/16558.png +../../data/yoloGtold1/train/16559.png +../../data/yoloGtold1/train/16560.png +../../data/yoloGtold1/train/16561.png +../../data/yoloGtold1/train/16562.png +../../data/yoloGtold1/train/16563.png +../../data/yoloGtold1/train/16564.png +../../data/yoloGtold1/train/16565.png +../../data/yoloGtold1/train/16566.png +../../data/yoloGtold1/train/16567.png +../../data/yoloGtold1/train/16568.png +../../data/yoloGtold1/train/16569.png +../../data/yoloGtold1/train/16570.png +../../data/yoloGtold1/train/16571.png +../../data/yoloGtold1/train/16572.png +../../data/yoloGtold1/train/16573.png +../../data/yoloGtold1/train/16574.png +../../data/yoloGtold1/train/16575.png +../../data/yoloGtold1/train/16576.png +../../data/yoloGtold1/train/16577.png +../../data/yoloGtold1/train/16578.png +../../data/yoloGtold1/train/16579.png +../../data/yoloGtold1/train/16580.png +../../data/yoloGtold1/train/16581.png +../../data/yoloGtold1/train/16582.png +../../data/yoloGtold1/train/16583.png +../../data/yoloGtold1/train/16584.png +../../data/yoloGtold1/train/16585.png +../../data/yoloGtold1/train/16586.png +../../data/yoloGtold1/train/16587.png +../../data/yoloGtold1/train/16588.png +../../data/yoloGtold1/train/16589.png +../../data/yoloGtold1/train/16590.png +../../data/yoloGtold1/train/16591.png +../../data/yoloGtold1/train/16592.png +../../data/yoloGtold1/train/16593.png +../../data/yoloGtold1/train/16594.png +../../data/yoloGtold1/train/16595.png +../../data/yoloGtold1/train/16596.png +../../data/yoloGtold1/train/16597.png +../../data/yoloGtold1/train/16598.png +../../data/yoloGtold1/train/16599.png +../../data/yoloGtold1/train/16600.png +../../data/yoloGtold1/train/16601.png +../../data/yoloGtold1/train/16602.png +../../data/yoloGtold1/train/16603.png +../../data/yoloGtold1/train/16604.png +../../data/yoloGtold1/train/16605.png +../../data/yoloGtold1/train/16606.png +../../data/yoloGtold1/train/16607.png +../../data/yoloGtold1/train/16608.png +../../data/yoloGtold1/train/16609.png +../../data/yoloGtold1/train/16610.png +../../data/yoloGtold1/train/16611.png +../../data/yoloGtold1/train/16612.png +../../data/yoloGtold1/train/16613.png +../../data/yoloGtold1/train/16614.png +../../data/yoloGtold1/train/16615.png +../../data/yoloGtold1/train/16616.png +../../data/yoloGtold1/train/16617.png +../../data/yoloGtold1/train/16618.png +../../data/yoloGtold1/train/16619.png +../../data/yoloGtold1/train/16620.png +../../data/yoloGtold1/train/16621.png +../../data/yoloGtold1/train/16622.png +../../data/yoloGtold1/train/16623.png +../../data/yoloGtold1/train/16624.png +../../data/yoloGtold1/train/16625.png +../../data/yoloGtold1/train/16626.png +../../data/yoloGtold1/train/16627.png +../../data/yoloGtold1/train/16628.png +../../data/yoloGtold1/train/16629.png +../../data/yoloGtold1/train/16630.png +../../data/yoloGtold1/train/16631.png +../../data/yoloGtold1/train/16632.png +../../data/yoloGtold1/train/16633.png +../../data/yoloGtold1/train/16634.png +../../data/yoloGtold1/train/16635.png +../../data/yoloGtold1/train/16636.png +../../data/yoloGtold1/train/16637.png +../../data/yoloGtold1/train/16638.png +../../data/yoloGtold1/train/16639.png +../../data/yoloGtold1/train/16640.png +../../data/yoloGtold1/train/16641.png +../../data/yoloGtold1/train/16642.png +../../data/yoloGtold1/train/16643.png +../../data/yoloGtold1/train/16644.png +../../data/yoloGtold1/train/16645.png +../../data/yoloGtold1/train/16646.png +../../data/yoloGtold1/train/16647.png +../../data/yoloGtold1/train/16648.png +../../data/yoloGtold1/train/16649.png +../../data/yoloGtold1/train/16650.png +../../data/yoloGtold1/train/16651.png +../../data/yoloGtold1/train/16652.png +../../data/yoloGtold1/train/16653.png +../../data/yoloGtold1/train/16654.png +../../data/yoloGtold1/train/16655.png +../../data/yoloGtold1/train/16656.png +../../data/yoloGtold1/train/16657.png +../../data/yoloGtold1/train/16658.png +../../data/yoloGtold1/train/16659.png +../../data/yoloGtold1/train/16660.png +../../data/yoloGtold1/train/16661.png +../../data/yoloGtold1/train/16662.png +../../data/yoloGtold1/train/16663.png +../../data/yoloGtold1/train/16664.png +../../data/yoloGtold1/train/16665.png +../../data/yoloGtold1/train/16666.png +../../data/yoloGtold1/train/16667.png +../../data/yoloGtold1/train/16668.png +../../data/yoloGtold1/train/16669.png +../../data/yoloGtold1/train/16670.png +../../data/yoloGtold1/train/16671.png +../../data/yoloGtold1/train/16672.png +../../data/yoloGtold1/train/16673.png +../../data/yoloGtold1/train/16674.png +../../data/yoloGtold1/train/16675.png +../../data/yoloGtold1/train/16676.png +../../data/yoloGtold1/train/16677.png +../../data/yoloGtold1/train/16678.png +../../data/yoloGtold1/train/16679.png +../../data/yoloGtold1/train/16680.png +../../data/yoloGtold1/train/16681.png +../../data/yoloGtold1/train/16682.png +../../data/yoloGtold1/train/16683.png +../../data/yoloGtold1/train/16684.png +../../data/yoloGtold1/train/16685.png +../../data/yoloGtold1/train/16686.png +../../data/yoloGtold1/train/16687.png +../../data/yoloGtold1/train/16688.png +../../data/yoloGtold1/train/16689.png +../../data/yoloGtold1/train/16690.png +../../data/yoloGtold1/train/16691.png +../../data/yoloGtold1/train/16692.png +../../data/yoloGtold1/train/16693.png +../../data/yoloGtold1/train/16694.png +../../data/yoloGtold1/train/16695.png +../../data/yoloGtold1/train/16696.png +../../data/yoloGtold1/train/16697.png +../../data/yoloGtold1/train/16698.png +../../data/yoloGtold1/train/16699.png +../../data/yoloGtold1/train/16700.png +../../data/yoloGtold1/train/16701.png +../../data/yoloGtold1/train/16702.png +../../data/yoloGtold1/train/16703.png +../../data/yoloGtold1/train/16704.png +../../data/yoloGtold1/train/16705.png +../../data/yoloGtold1/train/16706.png +../../data/yoloGtold1/train/16707.png +../../data/yoloGtold1/train/16708.png +../../data/yoloGtold1/train/16709.png +../../data/yoloGtold1/train/16710.png +../../data/yoloGtold1/train/16711.png +../../data/yoloGtold1/train/16712.png +../../data/yoloGtold1/train/16713.png +../../data/yoloGtold1/train/16714.png +../../data/yoloGtold1/train/16715.png +../../data/yoloGtold1/train/16716.png +../../data/yoloGtold1/train/16717.png +../../data/yoloGtold1/train/16718.png +../../data/yoloGtold1/train/16719.png +../../data/yoloGtold1/train/16720.png +../../data/yoloGtold1/train/16721.png +../../data/yoloGtold1/train/16722.png +../../data/yoloGtold1/train/16723.png +../../data/yoloGtold1/train/16724.png +../../data/yoloGtold1/train/16725.png +../../data/yoloGtold1/train/16726.png +../../data/yoloGtold1/train/16727.png +../../data/yoloGtold1/train/16728.png +../../data/yoloGtold1/train/16729.png +../../data/yoloGtold1/train/16730.png +../../data/yoloGtold1/train/16731.png +../../data/yoloGtold1/train/16732.png +../../data/yoloGtold1/train/16733.png +../../data/yoloGtold1/train/16734.png +../../data/yoloGtold1/train/16735.png +../../data/yoloGtold1/train/16736.png +../../data/yoloGtold1/train/16737.png +../../data/yoloGtold1/train/16738.png +../../data/yoloGtold1/train/16739.png +../../data/yoloGtold1/train/16740.png +../../data/yoloGtold1/train/16741.png +../../data/yoloGtold1/train/16742.png +../../data/yoloGtold1/train/16743.png +../../data/yoloGtold1/train/16744.png +../../data/yoloGtold1/train/16745.png +../../data/yoloGtold1/train/16746.png +../../data/yoloGtold1/train/16747.png +../../data/yoloGtold1/train/16748.png +../../data/yoloGtold1/train/16749.png +../../data/yoloGtold1/train/16750.png +../../data/yoloGtold1/train/16751.png +../../data/yoloGtold1/train/16752.png +../../data/yoloGtold1/train/16753.png +../../data/yoloGtold1/train/16754.png +../../data/yoloGtold1/train/16755.png +../../data/yoloGtold1/train/16756.png +../../data/yoloGtold1/train/16757.png +../../data/yoloGtold1/train/16758.png +../../data/yoloGtold1/train/16759.png +../../data/yoloGtold1/train/16760.png +../../data/yoloGtold1/train/16761.png +../../data/yoloGtold1/train/16762.png +../../data/yoloGtold1/train/16763.png +../../data/yoloGtold1/train/16764.png +../../data/yoloGtold1/train/16765.png +../../data/yoloGtold1/train/16766.png +../../data/yoloGtold1/train/16767.png +../../data/yoloGtold1/train/16768.png +../../data/yoloGtold1/train/16769.png +../../data/yoloGtold1/train/16770.png +../../data/yoloGtold1/train/16771.png +../../data/yoloGtold1/train/16772.png +../../data/yoloGtold1/train/16773.png +../../data/yoloGtold1/train/16774.png +../../data/yoloGtold1/train/16775.png +../../data/yoloGtold1/train/16776.png +../../data/yoloGtold1/train/16777.png +../../data/yoloGtold1/train/16778.png +../../data/yoloGtold1/train/16779.png +../../data/yoloGtold1/train/16780.png +../../data/yoloGtold1/train/16781.png +../../data/yoloGtold1/train/16782.png +../../data/yoloGtold1/train/16783.png +../../data/yoloGtold1/train/16784.png +../../data/yoloGtold1/train/16785.png +../../data/yoloGtold1/train/16786.png +../../data/yoloGtold1/train/16787.png +../../data/yoloGtold1/train/16788.png +../../data/yoloGtold1/train/16789.png +../../data/yoloGtold1/train/16790.png +../../data/yoloGtold1/train/16791.png +../../data/yoloGtold1/train/16792.png +../../data/yoloGtold1/train/16793.png +../../data/yoloGtold1/train/16794.png +../../data/yoloGtold1/train/16795.png +../../data/yoloGtold1/train/16796.png +../../data/yoloGtold1/train/16797.png +../../data/yoloGtold1/train/16798.png +../../data/yoloGtold1/train/16799.png +../../data/yoloGtold1/train/16800.png +../../data/yoloGtold1/train/16801.png +../../data/yoloGtold1/train/16802.png +../../data/yoloGtold1/train/16803.png +../../data/yoloGtold1/train/16804.png +../../data/yoloGtold1/train/16805.png +../../data/yoloGtold1/train/16806.png +../../data/yoloGtold1/train/16807.png +../../data/yoloGtold1/train/16808.png +../../data/yoloGtold1/train/16809.png +../../data/yoloGtold1/train/16810.png +../../data/yoloGtold1/train/16811.png +../../data/yoloGtold1/train/16812.png +../../data/yoloGtold1/train/16813.png +../../data/yoloGtold1/train/16814.png +../../data/yoloGtold1/train/16815.png +../../data/yoloGtold1/train/16816.png +../../data/yoloGtold1/train/16817.png +../../data/yoloGtold1/train/16818.png +../../data/yoloGtold1/train/16819.png +../../data/yoloGtold1/train/16820.png +../../data/yoloGtold1/train/16821.png +../../data/yoloGtold1/train/16822.png +../../data/yoloGtold1/train/16823.png +../../data/yoloGtold1/train/16824.png +../../data/yoloGtold1/train/16825.png +../../data/yoloGtold1/train/16826.png +../../data/yoloGtold1/train/16827.png +../../data/yoloGtold1/train/16828.png +../../data/yoloGtold1/train/16829.png +../../data/yoloGtold1/train/16830.png +../../data/yoloGtold1/train/16831.png +../../data/yoloGtold1/train/16832.png +../../data/yoloGtold1/train/16833.png +../../data/yoloGtold1/train/16834.png +../../data/yoloGtold1/train/16835.png +../../data/yoloGtold1/train/16836.png +../../data/yoloGtold1/train/16837.png +../../data/yoloGtold1/train/16838.png +../../data/yoloGtold1/train/16839.png +../../data/yoloGtold1/train/16840.png +../../data/yoloGtold1/train/16841.png +../../data/yoloGtold1/train/16842.png +../../data/yoloGtold1/train/16843.png +../../data/yoloGtold1/train/16844.png +../../data/yoloGtold1/train/16845.png +../../data/yoloGtold1/train/16846.png +../../data/yoloGtold1/train/16847.png +../../data/yoloGtold1/train/16848.png +../../data/yoloGtold1/train/16849.png +../../data/yoloGtold1/train/16850.png +../../data/yoloGtold1/train/16851.png +../../data/yoloGtold1/train/16852.png +../../data/yoloGtold1/train/16853.png +../../data/yoloGtold1/train/16854.png +../../data/yoloGtold1/train/16855.png +../../data/yoloGtold1/train/16856.png +../../data/yoloGtold1/train/16857.png +../../data/yoloGtold1/train/16858.png +../../data/yoloGtold1/train/16859.png +../../data/yoloGtold1/train/16860.png +../../data/yoloGtold1/train/16861.png +../../data/yoloGtold1/train/16862.png +../../data/yoloGtold1/train/16863.png +../../data/yoloGtold1/train/16864.png +../../data/yoloGtold1/train/16865.png +../../data/yoloGtold1/train/16866.png +../../data/yoloGtold1/train/16867.png +../../data/yoloGtold1/train/16868.png +../../data/yoloGtold1/train/16869.png +../../data/yoloGtold1/train/16870.png +../../data/yoloGtold1/train/16871.png +../../data/yoloGtold1/train/16872.png +../../data/yoloGtold1/train/16873.png +../../data/yoloGtold1/train/16874.png +../../data/yoloGtold1/train/16875.png +../../data/yoloGtold1/train/16876.png +../../data/yoloGtold1/train/16877.png +../../data/yoloGtold1/train/16878.png +../../data/yoloGtold1/train/16879.png +../../data/yoloGtold1/train/16880.png +../../data/yoloGtold1/train/16881.png +../../data/yoloGtold1/train/16882.png +../../data/yoloGtold1/train/16883.png +../../data/yoloGtold1/train/16884.png +../../data/yoloGtold1/train/16885.png +../../data/yoloGtold1/train/16886.png +../../data/yoloGtold1/train/16887.png +../../data/yoloGtold1/train/16888.png +../../data/yoloGtold1/train/16889.png +../../data/yoloGtold1/train/16890.png +../../data/yoloGtold1/train/16891.png +../../data/yoloGtold1/train/16892.png +../../data/yoloGtold1/train/16893.png +../../data/yoloGtold1/train/16894.png +../../data/yoloGtold1/train/16895.png +../../data/yoloGtold1/train/16896.png +../../data/yoloGtold1/train/16897.png +../../data/yoloGtold1/train/16898.png +../../data/yoloGtold1/train/16899.png +../../data/yoloGtold1/train/16900.png +../../data/yoloGtold1/train/16901.png +../../data/yoloGtold1/train/16902.png +../../data/yoloGtold1/train/16903.png +../../data/yoloGtold1/train/16904.png +../../data/yoloGtold1/train/16905.png +../../data/yoloGtold1/train/16906.png +../../data/yoloGtold1/train/16907.png +../../data/yoloGtold1/train/16908.png +../../data/yoloGtold1/train/16909.png +../../data/yoloGtold1/train/16910.png +../../data/yoloGtold1/train/16911.png +../../data/yoloGtold1/train/16912.png +../../data/yoloGtold1/train/16913.png +../../data/yoloGtold1/train/16914.png +../../data/yoloGtold1/train/16915.png +../../data/yoloGtold1/train/16916.png +../../data/yoloGtold1/train/16917.png +../../data/yoloGtold1/train/16918.png +../../data/yoloGtold1/train/16919.png +../../data/yoloGtold1/train/16920.png +../../data/yoloGtold1/train/16921.png +../../data/yoloGtold1/train/16922.png +../../data/yoloGtold1/train/16923.png +../../data/yoloGtold1/train/16924.png +../../data/yoloGtold1/train/16925.png +../../data/yoloGtold1/train/16926.png +../../data/yoloGtold1/train/16927.png +../../data/yoloGtold1/train/16928.png +../../data/yoloGtold1/train/16929.png +../../data/yoloGtold1/train/16930.png +../../data/yoloGtold1/train/16931.png +../../data/yoloGtold1/train/16932.png +../../data/yoloGtold1/train/16933.png +../../data/yoloGtold1/train/16934.png +../../data/yoloGtold1/train/16935.png +../../data/yoloGtold1/train/16936.png +../../data/yoloGtold1/train/16937.png +../../data/yoloGtold1/train/16938.png +../../data/yoloGtold1/train/16939.png +../../data/yoloGtold1/train/16940.png +../../data/yoloGtold1/train/16941.png +../../data/yoloGtold1/train/16942.png +../../data/yoloGtold1/train/16943.png +../../data/yoloGtold1/train/16944.png +../../data/yoloGtold1/train/16945.png +../../data/yoloGtold1/train/16946.png +../../data/yoloGtold1/train/16947.png +../../data/yoloGtold1/train/16948.png +../../data/yoloGtold1/train/16949.png +../../data/yoloGtold1/train/16950.png +../../data/yoloGtold1/train/16951.png +../../data/yoloGtold1/train/16952.png +../../data/yoloGtold1/train/16953.png +../../data/yoloGtold1/train/16954.png +../../data/yoloGtold1/train/16955.png +../../data/yoloGtold1/train/16956.png +../../data/yoloGtold1/train/16957.png +../../data/yoloGtold1/train/16958.png +../../data/yoloGtold1/train/16959.png +../../data/yoloGtold1/train/16960.png +../../data/yoloGtold1/train/16961.png +../../data/yoloGtold1/train/16962.png +../../data/yoloGtold1/train/16963.png +../../data/yoloGtold1/train/16964.png +../../data/yoloGtold1/train/16965.png +../../data/yoloGtold1/train/16966.png +../../data/yoloGtold1/train/16967.png +../../data/yoloGtold1/train/16968.png +../../data/yoloGtold1/train/16969.png +../../data/yoloGtold1/train/16970.png +../../data/yoloGtold1/train/16971.png +../../data/yoloGtold1/train/16972.png +../../data/yoloGtold1/train/16973.png +../../data/yoloGtold1/train/16974.png +../../data/yoloGtold1/train/16975.png +../../data/yoloGtold1/train/16976.png +../../data/yoloGtold1/train/16977.png +../../data/yoloGtold1/train/16978.png +../../data/yoloGtold1/train/16979.png +../../data/yoloGtold1/train/16980.png +../../data/yoloGtold1/train/16981.png +../../data/yoloGtold1/train/16982.png +../../data/yoloGtold1/train/16983.png +../../data/yoloGtold1/train/16984.png +../../data/yoloGtold1/train/16985.png +../../data/yoloGtold1/train/16986.png +../../data/yoloGtold1/train/16987.png +../../data/yoloGtold1/train/16988.png +../../data/yoloGtold1/train/16989.png +../../data/yoloGtold1/train/16990.png +../../data/yoloGtold1/train/16991.png +../../data/yoloGtold1/train/16992.png +../../data/yoloGtold1/train/16993.png +../../data/yoloGtold1/train/16994.png +../../data/yoloGtold1/train/16995.png +../../data/yoloGtold1/train/16996.png +../../data/yoloGtold1/train/16997.png +../../data/yoloGtold1/train/16998.png +../../data/yoloGtold1/train/16999.png +../../data/yoloGtold1/train/17000.png +../../data/yoloGtold1/train/17001.png +../../data/yoloGtold1/train/17002.png +../../data/yoloGtold1/train/17003.png +../../data/yoloGtold1/train/17004.png +../../data/yoloGtold1/train/17005.png +../../data/yoloGtold1/train/17006.png +../../data/yoloGtold1/train/17007.png +../../data/yoloGtold1/train/17008.png +../../data/yoloGtold1/train/17009.png +../../data/yoloGtold1/train/17010.png +../../data/yoloGtold1/train/17011.png +../../data/yoloGtold1/train/17012.png +../../data/yoloGtold1/train/17013.png +../../data/yoloGtold1/train/17014.png +../../data/yoloGtold1/train/17015.png +../../data/yoloGtold1/train/17016.png +../../data/yoloGtold1/train/17017.png +../../data/yoloGtold1/train/17018.png +../../data/yoloGtold1/train/17019.png +../../data/yoloGtold1/train/17020.png +../../data/yoloGtold1/train/17021.png +../../data/yoloGtold1/train/17022.png +../../data/yoloGtold1/train/17023.png +../../data/yoloGtold1/train/17024.png +../../data/yoloGtold1/train/17025.png +../../data/yoloGtold1/train/17026.png +../../data/yoloGtold1/train/17027.png +../../data/yoloGtold1/train/17028.png +../../data/yoloGtold1/train/17029.png +../../data/yoloGtold1/train/17030.png +../../data/yoloGtold1/train/17031.png +../../data/yoloGtold1/train/17032.png +../../data/yoloGtold1/train/17033.png +../../data/yoloGtold1/train/17034.png +../../data/yoloGtold1/train/17035.png +../../data/yoloGtold1/train/17036.png +../../data/yoloGtold1/train/17037.png +../../data/yoloGtold1/train/17038.png +../../data/yoloGtold1/train/17039.png +../../data/yoloGtold1/train/17040.png +../../data/yoloGtold1/train/17041.png +../../data/yoloGtold1/train/17042.png +../../data/yoloGtold1/train/17043.png +../../data/yoloGtold1/train/17044.png +../../data/yoloGtold1/train/17045.png +../../data/yoloGtold1/train/17046.png +../../data/yoloGtold1/train/17047.png +../../data/yoloGtold1/train/17048.png +../../data/yoloGtold1/train/17049.png +../../data/yoloGtold1/train/17050.png +../../data/yoloGtold1/train/17051.png +../../data/yoloGtold1/train/17052.png +../../data/yoloGtold1/train/17053.png +../../data/yoloGtold1/train/17054.png +../../data/yoloGtold1/train/17055.png +../../data/yoloGtold1/train/17056.png +../../data/yoloGtold1/train/17057.png +../../data/yoloGtold1/train/17058.png +../../data/yoloGtold1/train/17059.png +../../data/yoloGtold1/train/17060.png +../../data/yoloGtold1/train/17061.png +../../data/yoloGtold1/train/17062.png +../../data/yoloGtold1/train/17063.png +../../data/yoloGtold1/train/17064.png +../../data/yoloGtold1/train/17065.png +../../data/yoloGtold1/train/17066.png +../../data/yoloGtold1/train/17067.png +../../data/yoloGtold1/train/17068.png +../../data/yoloGtold1/train/17069.png +../../data/yoloGtold1/train/17070.png +../../data/yoloGtold1/train/17071.png +../../data/yoloGtold1/train/17072.png +../../data/yoloGtold1/train/17073.png +../../data/yoloGtold1/train/17074.png +../../data/yoloGtold1/train/17075.png +../../data/yoloGtold1/train/17076.png +../../data/yoloGtold1/train/17077.png +../../data/yoloGtold1/train/17078.png +../../data/yoloGtold1/train/17079.png +../../data/yoloGtold1/train/17080.png +../../data/yoloGtold1/train/17081.png +../../data/yoloGtold1/train/17082.png +../../data/yoloGtold1/train/17083.png +../../data/yoloGtold1/train/17084.png +../../data/yoloGtold1/train/17085.png +../../data/yoloGtold1/train/17086.png +../../data/yoloGtold1/train/17087.png +../../data/yoloGtold1/train/17088.png +../../data/yoloGtold1/train/17089.png +../../data/yoloGtold1/train/17090.png +../../data/yoloGtold1/train/17091.png +../../data/yoloGtold1/train/17092.png +../../data/yoloGtold1/train/17093.png +../../data/yoloGtold1/train/17094.png +../../data/yoloGtold1/train/17095.png +../../data/yoloGtold1/train/17096.png +../../data/yoloGtold1/train/17097.png +../../data/yoloGtold1/train/17098.png +../../data/yoloGtold1/train/17099.png +../../data/yoloGtold1/train/17100.png +../../data/yoloGtold1/train/17101.png +../../data/yoloGtold1/train/17102.png +../../data/yoloGtold1/train/17103.png +../../data/yoloGtold1/train/17104.png +../../data/yoloGtold1/train/17105.png +../../data/yoloGtold1/train/17106.png +../../data/yoloGtold1/train/17107.png +../../data/yoloGtold1/train/17108.png +../../data/yoloGtold1/train/17109.png +../../data/yoloGtold1/train/17110.png +../../data/yoloGtold1/train/17111.png +../../data/yoloGtold1/train/17112.png +../../data/yoloGtold1/train/17113.png +../../data/yoloGtold1/train/17114.png +../../data/yoloGtold1/train/17115.png +../../data/yoloGtold1/train/17116.png +../../data/yoloGtold1/train/17117.png +../../data/yoloGtold1/train/17118.png +../../data/yoloGtold1/train/17119.png +../../data/yoloGtold1/train/17120.png +../../data/yoloGtold1/train/17121.png +../../data/yoloGtold1/train/17122.png +../../data/yoloGtold1/train/17123.png +../../data/yoloGtold1/train/17124.png +../../data/yoloGtold1/train/17125.png +../../data/yoloGtold1/train/17126.png +../../data/yoloGtold1/train/17127.png +../../data/yoloGtold1/train/17128.png +../../data/yoloGtold1/train/17129.png +../../data/yoloGtold1/train/17130.png +../../data/yoloGtold1/train/17131.png +../../data/yoloGtold1/train/17132.png +../../data/yoloGtold1/train/17133.png +../../data/yoloGtold1/train/17134.png +../../data/yoloGtold1/train/17135.png +../../data/yoloGtold1/train/17136.png +../../data/yoloGtold1/train/17137.png +../../data/yoloGtold1/train/17138.png +../../data/yoloGtold1/train/17139.png +../../data/yoloGtold1/train/17140.png +../../data/yoloGtold1/train/17141.png +../../data/yoloGtold1/train/17142.png +../../data/yoloGtold1/train/17143.png +../../data/yoloGtold1/train/17144.png +../../data/yoloGtold1/train/17145.png +../../data/yoloGtold1/train/17146.png +../../data/yoloGtold1/train/17147.png +../../data/yoloGtold1/train/17148.png +../../data/yoloGtold1/train/17149.png +../../data/yoloGtold1/train/17150.png +../../data/yoloGtold1/train/17151.png +../../data/yoloGtold1/train/17152.png +../../data/yoloGtold1/train/17153.png +../../data/yoloGtold1/train/17154.png +../../data/yoloGtold1/train/17155.png +../../data/yoloGtold1/train/17156.png +../../data/yoloGtold1/train/17157.png +../../data/yoloGtold1/train/17158.png +../../data/yoloGtold1/train/17159.png +../../data/yoloGtold1/train/17160.png +../../data/yoloGtold1/train/17161.png +../../data/yoloGtold1/train/17162.png +../../data/yoloGtold1/train/17163.png +../../data/yoloGtold1/train/17164.png +../../data/yoloGtold1/train/17165.png +../../data/yoloGtold1/train/17166.png +../../data/yoloGtold1/train/17167.png +../../data/yoloGtold1/train/17168.png +../../data/yoloGtold1/train/17169.png +../../data/yoloGtold1/train/17170.png +../../data/yoloGtold1/train/17171.png +../../data/yoloGtold1/train/17172.png +../../data/yoloGtold1/train/17173.png +../../data/yoloGtold1/train/17174.png +../../data/yoloGtold1/train/17175.png +../../data/yoloGtold1/train/17176.png +../../data/yoloGtold1/train/17177.png +../../data/yoloGtold1/train/17178.png +../../data/yoloGtold1/train/17179.png +../../data/yoloGtold1/train/17180.png +../../data/yoloGtold1/train/17181.png +../../data/yoloGtold1/train/17182.png +../../data/yoloGtold1/train/17183.png +../../data/yoloGtold1/train/17184.png +../../data/yoloGtold1/train/17185.png +../../data/yoloGtold1/train/17186.png +../../data/yoloGtold1/train/17187.png +../../data/yoloGtold1/train/17188.png +../../data/yoloGtold1/train/17189.png +../../data/yoloGtold1/train/17190.png +../../data/yoloGtold1/train/17191.png +../../data/yoloGtold1/train/17192.png +../../data/yoloGtold1/train/17193.png +../../data/yoloGtold1/train/17194.png +../../data/yoloGtold1/train/17195.png +../../data/yoloGtold1/train/17196.png +../../data/yoloGtold1/train/17197.png +../../data/yoloGtold1/train/17198.png +../../data/yoloGtold1/train/17199.png +../../data/yoloGtold1/train/17200.png +../../data/yoloGtold1/train/17201.png +../../data/yoloGtold1/train/17202.png +../../data/yoloGtold1/train/17203.png +../../data/yoloGtold1/train/17204.png +../../data/yoloGtold1/train/17205.png +../../data/yoloGtold1/train/17206.png +../../data/yoloGtold1/train/17207.png +../../data/yoloGtold1/train/17208.png +../../data/yoloGtold1/train/17209.png +../../data/yoloGtold1/train/17210.png +../../data/yoloGtold1/train/17211.png +../../data/yoloGtold1/train/17212.png +../../data/yoloGtold1/train/17213.png +../../data/yoloGtold1/train/17214.png +../../data/yoloGtold1/train/17215.png +../../data/yoloGtold1/train/17216.png +../../data/yoloGtold1/train/17217.png +../../data/yoloGtold1/train/17218.png +../../data/yoloGtold1/train/17219.png +../../data/yoloGtold1/train/17220.png +../../data/yoloGtold1/train/17221.png +../../data/yoloGtold1/train/17222.png +../../data/yoloGtold1/train/17223.png +../../data/yoloGtold1/train/17224.png +../../data/yoloGtold1/train/17225.png +../../data/yoloGtold1/train/17226.png +../../data/yoloGtold1/train/17227.png +../../data/yoloGtold1/train/17228.png +../../data/yoloGtold1/train/17229.png +../../data/yoloGtold1/train/17230.png +../../data/yoloGtold1/train/17231.png +../../data/yoloGtold1/train/17232.png +../../data/yoloGtold1/train/17233.png +../../data/yoloGtold1/train/17234.png +../../data/yoloGtold1/train/17235.png +../../data/yoloGtold1/train/17236.png +../../data/yoloGtold1/train/17237.png +../../data/yoloGtold1/train/17238.png +../../data/yoloGtold1/train/17239.png +../../data/yoloGtold1/train/17240.png +../../data/yoloGtold1/train/17241.png +../../data/yoloGtold1/train/17242.png +../../data/yoloGtold1/train/17243.png +../../data/yoloGtold1/train/17244.png +../../data/yoloGtold1/train/17245.png +../../data/yoloGtold1/train/17246.png +../../data/yoloGtold1/train/17247.png +../../data/yoloGtold1/train/17248.png +../../data/yoloGtold1/train/17249.png +../../data/yoloGtold1/train/17250.png +../../data/yoloGtold1/train/17251.png +../../data/yoloGtold1/train/17252.png +../../data/yoloGtold1/train/17253.png +../../data/yoloGtold1/train/17254.png +../../data/yoloGtold1/train/17255.png +../../data/yoloGtold1/train/17256.png +../../data/yoloGtold1/train/17257.png +../../data/yoloGtold1/train/17258.png +../../data/yoloGtold1/train/17259.png +../../data/yoloGtold1/train/17260.png +../../data/yoloGtold1/train/17261.png +../../data/yoloGtold1/train/17262.png +../../data/yoloGtold1/train/17263.png +../../data/yoloGtold1/train/17264.png +../../data/yoloGtold1/train/17265.png +../../data/yoloGtold1/train/17266.png +../../data/yoloGtold1/train/17267.png +../../data/yoloGtold1/train/17268.png +../../data/yoloGtold1/train/17269.png +../../data/yoloGtold1/train/17270.png +../../data/yoloGtold1/train/17271.png +../../data/yoloGtold1/train/17272.png +../../data/yoloGtold1/train/17273.png +../../data/yoloGtold1/train/17274.png +../../data/yoloGtold1/train/17275.png +../../data/yoloGtold1/train/17276.png +../../data/yoloGtold1/train/17277.png +../../data/yoloGtold1/train/17278.png +../../data/yoloGtold1/train/17279.png +../../data/yoloGtold1/train/17280.png +../../data/yoloGtold1/train/17281.png +../../data/yoloGtold1/train/17282.png +../../data/yoloGtold1/train/17283.png +../../data/yoloGtold1/train/17284.png +../../data/yoloGtold1/train/17285.png +../../data/yoloGtold1/train/17286.png +../../data/yoloGtold1/train/17287.png +../../data/yoloGtold1/train/17288.png +../../data/yoloGtold1/train/17289.png +../../data/yoloGtold1/train/17290.png +../../data/yoloGtold1/train/17291.png +../../data/yoloGtold1/train/17292.png +../../data/yoloGtold1/train/17293.png +../../data/yoloGtold1/train/17294.png +../../data/yoloGtold1/train/17295.png +../../data/yoloGtold1/train/17296.png +../../data/yoloGtold1/train/17297.png +../../data/yoloGtold1/train/17298.png +../../data/yoloGtold1/train/17299.png +../../data/yoloGtold1/train/17300.png +../../data/yoloGtold1/train/17301.png +../../data/yoloGtold1/train/17302.png +../../data/yoloGtold1/train/17303.png +../../data/yoloGtold1/train/17304.png +../../data/yoloGtold1/train/17305.png +../../data/yoloGtold1/train/17306.png +../../data/yoloGtold1/train/17307.png +../../data/yoloGtold1/train/17308.png +../../data/yoloGtold1/train/17309.png +../../data/yoloGtold1/train/17310.png +../../data/yoloGtold1/train/17311.png +../../data/yoloGtold1/train/17312.png +../../data/yoloGtold1/train/17313.png +../../data/yoloGtold1/train/17314.png +../../data/yoloGtold1/train/17315.png +../../data/yoloGtold1/train/17316.png +../../data/yoloGtold1/train/17317.png +../../data/yoloGtold1/train/17318.png +../../data/yoloGtold1/train/17319.png +../../data/yoloGtold1/train/17320.png +../../data/yoloGtold1/train/17321.png +../../data/yoloGtold1/train/17322.png +../../data/yoloGtold1/train/17323.png +../../data/yoloGtold1/train/17324.png +../../data/yoloGtold1/train/17325.png +../../data/yoloGtold1/train/17326.png +../../data/yoloGtold1/train/17327.png +../../data/yoloGtold1/train/17328.png +../../data/yoloGtold1/train/17329.png +../../data/yoloGtold1/train/17330.png +../../data/yoloGtold1/train/17331.png +../../data/yoloGtold1/train/17332.png +../../data/yoloGtold1/train/17333.png +../../data/yoloGtold1/train/17334.png +../../data/yoloGtold1/train/17335.png +../../data/yoloGtold1/train/17336.png +../../data/yoloGtold1/train/17337.png +../../data/yoloGtold1/train/17338.png +../../data/yoloGtold1/train/17339.png +../../data/yoloGtold1/train/17340.png +../../data/yoloGtold1/train/17341.png +../../data/yoloGtold1/train/17342.png +../../data/yoloGtold1/train/17343.png +../../data/yoloGtold1/train/17344.png +../../data/yoloGtold1/train/17345.png +../../data/yoloGtold1/train/17346.png +../../data/yoloGtold1/train/17347.png +../../data/yoloGtold1/train/17348.png +../../data/yoloGtold1/train/17349.png +../../data/yoloGtold1/train/17350.png +../../data/yoloGtold1/train/17351.png +../../data/yoloGtold1/train/17352.png +../../data/yoloGtold1/train/17353.png +../../data/yoloGtold1/train/17354.png +../../data/yoloGtold1/train/17355.png +../../data/yoloGtold1/train/17356.png +../../data/yoloGtold1/train/17357.png +../../data/yoloGtold1/train/17358.png +../../data/yoloGtold1/train/17359.png +../../data/yoloGtold1/train/17360.png +../../data/yoloGtold1/train/17361.png +../../data/yoloGtold1/train/17362.png +../../data/yoloGtold1/train/17363.png +../../data/yoloGtold1/train/17364.png +../../data/yoloGtold1/train/17365.png +../../data/yoloGtold1/train/17366.png +../../data/yoloGtold1/train/17367.png +../../data/yoloGtold1/train/17368.png +../../data/yoloGtold1/train/17369.png +../../data/yoloGtold1/train/17370.png +../../data/yoloGtold1/train/17371.png +../../data/yoloGtold1/train/17372.png +../../data/yoloGtold1/train/17373.png +../../data/yoloGtold1/train/17374.png +../../data/yoloGtold1/train/17375.png +../../data/yoloGtold1/train/17376.png +../../data/yoloGtold1/train/17377.png +../../data/yoloGtold1/train/17378.png +../../data/yoloGtold1/train/17379.png +../../data/yoloGtold1/train/17380.png +../../data/yoloGtold1/train/17381.png +../../data/yoloGtold1/train/17382.png +../../data/yoloGtold1/train/17383.png +../../data/yoloGtold1/train/17384.png +../../data/yoloGtold1/train/17385.png +../../data/yoloGtold1/train/17386.png +../../data/yoloGtold1/train/17387.png +../../data/yoloGtold1/train/17388.png +../../data/yoloGtold1/train/17389.png +../../data/yoloGtold1/train/17390.png +../../data/yoloGtold1/train/17391.png +../../data/yoloGtold1/train/17392.png +../../data/yoloGtold1/train/17393.png +../../data/yoloGtold1/train/17394.png +../../data/yoloGtold1/train/17395.png +../../data/yoloGtold1/train/17396.png +../../data/yoloGtold1/train/17397.png +../../data/yoloGtold1/train/17398.png +../../data/yoloGtold1/train/17399.png +../../data/yoloGtold1/train/17400.png +../../data/yoloGtold1/train/17401.png +../../data/yoloGtold1/train/17402.png +../../data/yoloGtold1/train/17403.png +../../data/yoloGtold1/train/17404.png +../../data/yoloGtold1/train/17405.png +../../data/yoloGtold1/train/17406.png +../../data/yoloGtold1/train/17407.png +../../data/yoloGtold1/train/17408.png +../../data/yoloGtold1/train/17409.png +../../data/yoloGtold1/train/17410.png +../../data/yoloGtold1/train/17411.png +../../data/yoloGtold1/train/17412.png +../../data/yoloGtold1/train/17413.png +../../data/yoloGtold1/train/17414.png +../../data/yoloGtold1/train/17415.png +../../data/yoloGtold1/train/17416.png +../../data/yoloGtold1/train/17417.png +../../data/yoloGtold1/train/17418.png +../../data/yoloGtold1/train/17419.png +../../data/yoloGtold1/train/17420.png +../../data/yoloGtold1/train/17421.png +../../data/yoloGtold1/train/17422.png +../../data/yoloGtold1/train/17423.png +../../data/yoloGtold1/train/17424.png +../../data/yoloGtold1/train/17425.png +../../data/yoloGtold1/train/17426.png +../../data/yoloGtold1/train/17427.png +../../data/yoloGtold1/train/17428.png +../../data/yoloGtold1/train/17429.png +../../data/yoloGtold1/train/17430.png +../../data/yoloGtold1/train/17431.png +../../data/yoloGtold1/train/17432.png +../../data/yoloGtold1/train/17433.png +../../data/yoloGtold1/train/17434.png +../../data/yoloGtold1/train/17435.png +../../data/yoloGtold1/train/17436.png +../../data/yoloGtold1/train/17437.png +../../data/yoloGtold1/train/17438.png +../../data/yoloGtold1/train/17439.png +../../data/yoloGtold1/train/17440.png +../../data/yoloGtold1/train/17441.png +../../data/yoloGtold1/train/17442.png +../../data/yoloGtold1/train/17443.png +../../data/yoloGtold1/train/17444.png +../../data/yoloGtold1/train/17445.png +../../data/yoloGtold1/train/17446.png +../../data/yoloGtold1/train/17447.png +../../data/yoloGtold1/train/17448.png +../../data/yoloGtold1/train/17449.png +../../data/yoloGtold1/train/17450.png +../../data/yoloGtold1/train/17451.png +../../data/yoloGtold1/train/17452.png +../../data/yoloGtold1/train/17453.png +../../data/yoloGtold1/train/17454.png +../../data/yoloGtold1/train/17455.png +../../data/yoloGtold1/train/17456.png +../../data/yoloGtold1/train/17457.png +../../data/yoloGtold1/train/17458.png +../../data/yoloGtold1/train/17459.png +../../data/yoloGtold1/train/17460.png +../../data/yoloGtold1/train/17461.png +../../data/yoloGtold1/train/17462.png +../../data/yoloGtold1/train/17463.png +../../data/yoloGtold1/train/17464.png +../../data/yoloGtold1/train/17465.png +../../data/yoloGtold1/train/17466.png +../../data/yoloGtold1/train/17467.png +../../data/yoloGtold1/train/17468.png +../../data/yoloGtold1/train/17469.png +../../data/yoloGtold1/train/17470.png +../../data/yoloGtold1/train/17471.png +../../data/yoloGtold1/train/17472.png +../../data/yoloGtold1/train/17473.png +../../data/yoloGtold1/train/17474.png +../../data/yoloGtold1/train/17475.png +../../data/yoloGtold1/train/17476.png +../../data/yoloGtold1/train/17477.png +../../data/yoloGtold1/train/17478.png +../../data/yoloGtold1/train/17479.png +../../data/yoloGtold1/train/17480.png +../../data/yoloGtold1/train/17481.png +../../data/yoloGtold1/train/17482.png +../../data/yoloGtold1/train/17483.png +../../data/yoloGtold1/train/17484.png +../../data/yoloGtold1/train/17485.png +../../data/yoloGtold1/train/17486.png +../../data/yoloGtold1/train/17487.png +../../data/yoloGtold1/train/17488.png +../../data/yoloGtold1/train/17489.png +../../data/yoloGtold1/train/17490.png +../../data/yoloGtold1/train/17491.png +../../data/yoloGtold1/train/17492.png +../../data/yoloGtold1/train/17493.png +../../data/yoloGtold1/train/17494.png +../../data/yoloGtold1/train/17495.png +../../data/yoloGtold1/train/17496.png +../../data/yoloGtold1/train/17497.png +../../data/yoloGtold1/train/17498.png +../../data/yoloGtold1/train/17499.png +../../data/yoloGtold1/train/17500.png +../../data/yoloGtold1/train/17501.png +../../data/yoloGtold1/train/17502.png +../../data/yoloGtold1/train/17503.png +../../data/yoloGtold1/train/17504.png +../../data/yoloGtold1/train/17505.png +../../data/yoloGtold1/train/17506.png +../../data/yoloGtold1/train/17507.png +../../data/yoloGtold1/train/17508.png +../../data/yoloGtold1/train/17509.png +../../data/yoloGtold1/train/17510.png +../../data/yoloGtold1/train/17511.png +../../data/yoloGtold1/train/17512.png +../../data/yoloGtold1/train/17513.png +../../data/yoloGtold1/train/17514.png +../../data/yoloGtold1/train/17515.png +../../data/yoloGtold1/train/17516.png +../../data/yoloGtold1/train/17517.png +../../data/yoloGtold1/train/17518.png +../../data/yoloGtold1/train/17519.png +../../data/yoloGtold1/train/17520.png +../../data/yoloGtold1/train/17521.png +../../data/yoloGtold1/train/17522.png +../../data/yoloGtold1/train/17523.png +../../data/yoloGtold1/train/17524.png +../../data/yoloGtold1/train/17525.png +../../data/yoloGtold1/train/17526.png +../../data/yoloGtold1/train/17527.png +../../data/yoloGtold1/train/17528.png +../../data/yoloGtold1/train/17529.png +../../data/yoloGtold1/train/17530.png +../../data/yoloGtold1/train/17531.png +../../data/yoloGtold1/train/17532.png +../../data/yoloGtold1/train/17533.png +../../data/yoloGtold1/train/17534.png +../../data/yoloGtold1/train/17535.png +../../data/yoloGtold1/train/17536.png +../../data/yoloGtold1/train/17537.png +../../data/yoloGtold1/train/17538.png +../../data/yoloGtold1/train/17539.png +../../data/yoloGtold1/train/17540.png +../../data/yoloGtold1/train/17541.png +../../data/yoloGtold1/train/17542.png +../../data/yoloGtold1/train/17543.png +../../data/yoloGtold1/train/17544.png +../../data/yoloGtold1/train/17545.png +../../data/yoloGtold1/train/17546.png +../../data/yoloGtold1/train/17547.png +../../data/yoloGtold1/train/17548.png +../../data/yoloGtold1/train/17549.png +../../data/yoloGtold1/train/17550.png +../../data/yoloGtold1/train/17551.png +../../data/yoloGtold1/train/17552.png +../../data/yoloGtold1/train/17553.png +../../data/yoloGtold1/train/17554.png +../../data/yoloGtold1/train/17555.png +../../data/yoloGtold1/train/17556.png +../../data/yoloGtold1/train/17557.png +../../data/yoloGtold1/train/17558.png +../../data/yoloGtold1/train/17559.png +../../data/yoloGtold1/train/17560.png +../../data/yoloGtold1/train/17561.png +../../data/yoloGtold1/train/17562.png +../../data/yoloGtold1/train/17563.png +../../data/yoloGtold1/train/17564.png +../../data/yoloGtold1/train/17565.png +../../data/yoloGtold1/train/17566.png +../../data/yoloGtold1/train/17567.png +../../data/yoloGtold1/train/17568.png +../../data/yoloGtold1/train/17569.png +../../data/yoloGtold1/train/17570.png +../../data/yoloGtold1/train/17571.png +../../data/yoloGtold1/train/17572.png +../../data/yoloGtold1/train/17573.png +../../data/yoloGtold1/train/17574.png +../../data/yoloGtold1/train/17575.png +../../data/yoloGtold1/train/17576.png +../../data/yoloGtold1/train/17577.png +../../data/yoloGtold1/train/17578.png +../../data/yoloGtold1/train/17579.png +../../data/yoloGtold1/train/17580.png +../../data/yoloGtold1/train/17581.png +../../data/yoloGtold1/train/17582.png +../../data/yoloGtold1/train/17583.png +../../data/yoloGtold1/train/17584.png +../../data/yoloGtold1/train/17585.png +../../data/yoloGtold1/train/17586.png +../../data/yoloGtold1/train/17587.png +../../data/yoloGtold1/train/17588.png +../../data/yoloGtold1/train/17589.png +../../data/yoloGtold1/train/17590.png +../../data/yoloGtold1/train/17591.png +../../data/yoloGtold1/train/17592.png +../../data/yoloGtold1/train/17593.png +../../data/yoloGtold1/train/17594.png +../../data/yoloGtold1/train/17595.png +../../data/yoloGtold1/train/17596.png +../../data/yoloGtold1/train/17597.png +../../data/yoloGtold1/train/17598.png +../../data/yoloGtold1/train/17599.png +../../data/yoloGtold1/train/17600.png +../../data/yoloGtold1/train/17601.png +../../data/yoloGtold1/train/17602.png +../../data/yoloGtold1/train/17603.png +../../data/yoloGtold1/train/17604.png +../../data/yoloGtold1/train/17605.png +../../data/yoloGtold1/train/17606.png +../../data/yoloGtold1/train/17607.png +../../data/yoloGtold1/train/17608.png +../../data/yoloGtold1/train/17609.png +../../data/yoloGtold1/train/17610.png +../../data/yoloGtold1/train/17611.png +../../data/yoloGtold1/train/17612.png +../../data/yoloGtold1/train/17613.png +../../data/yoloGtold1/train/17614.png +../../data/yoloGtold1/train/17615.png +../../data/yoloGtold1/train/17616.png +../../data/yoloGtold1/train/17617.png +../../data/yoloGtold1/train/17618.png +../../data/yoloGtold1/train/17619.png +../../data/yoloGtold1/train/17620.png +../../data/yoloGtold1/train/17621.png +../../data/yoloGtold1/train/17622.png +../../data/yoloGtold1/train/17623.png +../../data/yoloGtold1/train/17624.png +../../data/yoloGtold1/train/17625.png +../../data/yoloGtold1/train/17626.png +../../data/yoloGtold1/train/17627.png +../../data/yoloGtold1/train/17628.png +../../data/yoloGtold1/train/17629.png +../../data/yoloGtold1/train/17630.png +../../data/yoloGtold1/train/17631.png +../../data/yoloGtold1/train/17632.png +../../data/yoloGtold1/train/17633.png +../../data/yoloGtold1/train/17634.png +../../data/yoloGtold1/train/17635.png +../../data/yoloGtold1/train/17636.png +../../data/yoloGtold1/train/17637.png +../../data/yoloGtold1/train/17638.png +../../data/yoloGtold1/train/17639.png +../../data/yoloGtold1/train/17640.png +../../data/yoloGtold1/train/17641.png +../../data/yoloGtold1/train/17642.png +../../data/yoloGtold1/train/17643.png +../../data/yoloGtold1/train/17644.png +../../data/yoloGtold1/train/17645.png +../../data/yoloGtold1/train/17646.png +../../data/yoloGtold1/train/17647.png +../../data/yoloGtold1/train/17648.png +../../data/yoloGtold1/train/17649.png +../../data/yoloGtold1/train/17650.png +../../data/yoloGtold1/train/17651.png +../../data/yoloGtold1/train/17652.png +../../data/yoloGtold1/train/17653.png +../../data/yoloGtold1/train/17654.png +../../data/yoloGtold1/train/17655.png +../../data/yoloGtold1/train/17656.png +../../data/yoloGtold1/train/17657.png +../../data/yoloGtold1/train/17658.png +../../data/yoloGtold1/train/17659.png +../../data/yoloGtold1/train/17660.png +../../data/yoloGtold1/train/17661.png +../../data/yoloGtold1/train/17662.png +../../data/yoloGtold1/train/17663.png +../../data/yoloGtold1/train/17664.png +../../data/yoloGtold1/train/17665.png +../../data/yoloGtold1/train/17666.png +../../data/yoloGtold1/train/17667.png +../../data/yoloGtold1/train/17668.png +../../data/yoloGtold1/train/17669.png +../../data/yoloGtold1/train/17670.png +../../data/yoloGtold1/train/17671.png +../../data/yoloGtold1/train/17672.png +../../data/yoloGtold1/train/17673.png +../../data/yoloGtold1/train/17674.png +../../data/yoloGtold1/train/17675.png +../../data/yoloGtold1/train/17676.png +../../data/yoloGtold1/train/17677.png +../../data/yoloGtold1/train/17678.png +../../data/yoloGtold1/train/17679.png +../../data/yoloGtold1/train/17680.png +../../data/yoloGtold1/train/17681.png +../../data/yoloGtold1/train/17682.png +../../data/yoloGtold1/train/17683.png +../../data/yoloGtold1/train/17684.png +../../data/yoloGtold1/train/17685.png +../../data/yoloGtold1/train/17686.png +../../data/yoloGtold1/train/17687.png +../../data/yoloGtold1/train/17688.png +../../data/yoloGtold1/train/17689.png +../../data/yoloGtold1/train/17690.png +../../data/yoloGtold1/train/17691.png +../../data/yoloGtold1/train/17692.png +../../data/yoloGtold1/train/17693.png +../../data/yoloGtold1/train/17694.png +../../data/yoloGtold1/train/17695.png +../../data/yoloGtold1/train/17696.png +../../data/yoloGtold1/train/17697.png +../../data/yoloGtold1/train/17698.png +../../data/yoloGtold1/train/17699.png +../../data/yoloGtold1/train/17700.png +../../data/yoloGtold1/train/17701.png +../../data/yoloGtold1/train/17702.png +../../data/yoloGtold1/train/17703.png +../../data/yoloGtold1/train/17704.png +../../data/yoloGtold1/train/17705.png +../../data/yoloGtold1/train/17706.png +../../data/yoloGtold1/train/17707.png +../../data/yoloGtold1/train/17708.png +../../data/yoloGtold1/train/17709.png +../../data/yoloGtold1/train/17710.png +../../data/yoloGtold1/train/17711.png +../../data/yoloGtold1/train/17712.png +../../data/yoloGtold1/train/17713.png +../../data/yoloGtold1/train/17714.png +../../data/yoloGtold1/train/17715.png +../../data/yoloGtold1/train/17716.png +../../data/yoloGtold1/train/17717.png +../../data/yoloGtold1/train/17718.png +../../data/yoloGtold1/train/17719.png +../../data/yoloGtold1/train/17720.png +../../data/yoloGtold1/train/17721.png +../../data/yoloGtold1/train/17722.png +../../data/yoloGtold1/train/17723.png +../../data/yoloGtold1/train/17724.png +../../data/yoloGtold1/train/17725.png +../../data/yoloGtold1/train/17726.png +../../data/yoloGtold1/train/17727.png +../../data/yoloGtold1/train/17728.png +../../data/yoloGtold1/train/17729.png +../../data/yoloGtold1/train/17730.png +../../data/yoloGtold1/train/17731.png +../../data/yoloGtold1/train/17732.png +../../data/yoloGtold1/train/17733.png +../../data/yoloGtold1/train/17734.png +../../data/yoloGtold1/train/17735.png +../../data/yoloGtold1/train/17736.png +../../data/yoloGtold1/train/17737.png +../../data/yoloGtold1/train/17738.png +../../data/yoloGtold1/train/17739.png +../../data/yoloGtold1/train/17740.png +../../data/yoloGtold1/train/17741.png +../../data/yoloGtold1/train/17742.png +../../data/yoloGtold1/train/17743.png +../../data/yoloGtold1/train/17744.png +../../data/yoloGtold1/train/17745.png +../../data/yoloGtold1/train/17746.png +../../data/yoloGtold1/train/17747.png +../../data/yoloGtold1/train/17748.png +../../data/yoloGtold1/train/17749.png +../../data/yoloGtold1/train/17750.png +../../data/yoloGtold1/train/17751.png +../../data/yoloGtold1/train/17752.png +../../data/yoloGtold1/train/17753.png +../../data/yoloGtold1/train/17754.png +../../data/yoloGtold1/train/17755.png +../../data/yoloGtold1/train/17756.png +../../data/yoloGtold1/train/17757.png +../../data/yoloGtold1/train/17758.png +../../data/yoloGtold1/train/17759.png +../../data/yoloGtold1/train/17760.png +../../data/yoloGtold1/train/17761.png +../../data/yoloGtold1/train/17762.png +../../data/yoloGtold1/train/17763.png +../../data/yoloGtold1/train/17764.png +../../data/yoloGtold1/train/17765.png +../../data/yoloGtold1/train/17766.png +../../data/yoloGtold1/train/17767.png +../../data/yoloGtold1/train/17768.png +../../data/yoloGtold1/train/17769.png +../../data/yoloGtold1/train/17770.png +../../data/yoloGtold1/train/17771.png +../../data/yoloGtold1/train/17772.png +../../data/yoloGtold1/train/17773.png +../../data/yoloGtold1/train/17774.png +../../data/yoloGtold1/train/17775.png +../../data/yoloGtold1/train/17776.png +../../data/yoloGtold1/train/17777.png +../../data/yoloGtold1/train/17778.png +../../data/yoloGtold1/train/17779.png +../../data/yoloGtold1/train/17780.png +../../data/yoloGtold1/train/17781.png +../../data/yoloGtold1/train/17782.png +../../data/yoloGtold1/train/17783.png +../../data/yoloGtold1/train/17784.png +../../data/yoloGtold1/train/17785.png +../../data/yoloGtold1/train/17786.png +../../data/yoloGtold1/train/17787.png +../../data/yoloGtold1/train/17788.png +../../data/yoloGtold1/train/17789.png +../../data/yoloGtold1/train/17790.png +../../data/yoloGtold1/train/17791.png +../../data/yoloGtold1/train/17792.png +../../data/yoloGtold1/train/17793.png +../../data/yoloGtold1/train/17794.png +../../data/yoloGtold1/train/17795.png +../../data/yoloGtold1/train/17796.png +../../data/yoloGtold1/train/17797.png +../../data/yoloGtold1/train/17798.png +../../data/yoloGtold1/train/17799.png +../../data/yoloGtold1/train/17800.png +../../data/yoloGtold1/train/17801.png +../../data/yoloGtold1/train/17802.png +../../data/yoloGtold1/train/17803.png +../../data/yoloGtold1/train/17804.png +../../data/yoloGtold1/train/17805.png +../../data/yoloGtold1/train/17806.png +../../data/yoloGtold1/train/17807.png +../../data/yoloGtold1/train/17808.png +../../data/yoloGtold1/train/17809.png +../../data/yoloGtold1/train/17810.png +../../data/yoloGtold1/train/17811.png +../../data/yoloGtold1/train/17812.png +../../data/yoloGtold1/train/17813.png +../../data/yoloGtold1/train/17814.png +../../data/yoloGtold1/train/17815.png +../../data/yoloGtold1/train/17816.png +../../data/yoloGtold1/train/17817.png +../../data/yoloGtold1/train/17818.png +../../data/yoloGtold1/train/17819.png +../../data/yoloGtold1/train/17820.png +../../data/yoloGtold1/train/17821.png +../../data/yoloGtold1/train/17822.png +../../data/yoloGtold1/train/17823.png +../../data/yoloGtold1/train/17824.png +../../data/yoloGtold1/train/17825.png +../../data/yoloGtold1/train/17826.png +../../data/yoloGtold1/train/17827.png +../../data/yoloGtold1/train/17828.png +../../data/yoloGtold1/train/17829.png +../../data/yoloGtold1/train/17830.png +../../data/yoloGtold1/train/17831.png +../../data/yoloGtold1/train/17832.png +../../data/yoloGtold1/train/17833.png +../../data/yoloGtold1/train/17834.png +../../data/yoloGtold1/train/17835.png +../../data/yoloGtold1/train/17836.png +../../data/yoloGtold1/train/17837.png +../../data/yoloGtold1/train/17838.png +../../data/yoloGtold1/train/17839.png +../../data/yoloGtold1/train/17840.png +../../data/yoloGtold1/train/17841.png +../../data/yoloGtold1/train/17842.png +../../data/yoloGtold1/train/17843.png +../../data/yoloGtold1/train/17844.png +../../data/yoloGtold1/train/17845.png +../../data/yoloGtold1/train/17846.png +../../data/yoloGtold1/train/17847.png +../../data/yoloGtold1/train/17848.png +../../data/yoloGtold1/train/17849.png +../../data/yoloGtold1/train/17850.png +../../data/yoloGtold1/train/17851.png +../../data/yoloGtold1/train/17852.png +../../data/yoloGtold1/train/17853.png +../../data/yoloGtold1/train/17854.png +../../data/yoloGtold1/train/17855.png +../../data/yoloGtold1/train/17856.png +../../data/yoloGtold1/train/17857.png +../../data/yoloGtold1/train/17858.png +../../data/yoloGtold1/train/17859.png +../../data/yoloGtold1/train/17860.png +../../data/yoloGtold1/train/17861.png +../../data/yoloGtold1/train/17862.png +../../data/yoloGtold1/train/17863.png +../../data/yoloGtold1/train/17864.png +../../data/yoloGtold1/train/17865.png +../../data/yoloGtold1/train/17866.png +../../data/yoloGtold1/train/17867.png +../../data/yoloGtold1/train/17868.png +../../data/yoloGtold1/train/17869.png +../../data/yoloGtold1/train/17870.png +../../data/yoloGtold1/train/17871.png +../../data/yoloGtold1/train/17872.png +../../data/yoloGtold1/train/17873.png +../../data/yoloGtold1/train/17874.png +../../data/yoloGtold1/train/17875.png +../../data/yoloGtold1/train/17876.png +../../data/yoloGtold1/train/17877.png +../../data/yoloGtold1/train/17878.png +../../data/yoloGtold1/train/17879.png +../../data/yoloGtold1/train/17880.png +../../data/yoloGtold1/train/17881.png +../../data/yoloGtold1/train/17882.png +../../data/yoloGtold1/train/17883.png +../../data/yoloGtold1/train/17884.png +../../data/yoloGtold1/train/17885.png +../../data/yoloGtold1/train/17886.png +../../data/yoloGtold1/train/17887.png +../../data/yoloGtold1/train/17888.png +../../data/yoloGtold1/train/17889.png +../../data/yoloGtold1/train/17890.png +../../data/yoloGtold1/train/17891.png +../../data/yoloGtold1/train/17892.png +../../data/yoloGtold1/train/17893.png +../../data/yoloGtold1/train/17894.png +../../data/yoloGtold1/train/17895.png +../../data/yoloGtold1/train/17896.png +../../data/yoloGtold1/train/17897.png +../../data/yoloGtold1/train/17898.png +../../data/yoloGtold1/train/17899.png +../../data/yoloGtold1/train/17900.png +../../data/yoloGtold1/train/17901.png +../../data/yoloGtold1/train/17902.png +../../data/yoloGtold1/train/17903.png +../../data/yoloGtold1/train/17904.png +../../data/yoloGtold1/train/17905.png +../../data/yoloGtold1/train/17906.png +../../data/yoloGtold1/train/17907.png +../../data/yoloGtold1/train/17908.png +../../data/yoloGtold1/train/17909.png +../../data/yoloGtold1/train/17910.png +../../data/yoloGtold1/train/17911.png +../../data/yoloGtold1/train/17912.png +../../data/yoloGtold1/train/17913.png +../../data/yoloGtold1/train/17914.png +../../data/yoloGtold1/train/17915.png +../../data/yoloGtold1/train/17916.png +../../data/yoloGtold1/train/17917.png +../../data/yoloGtold1/train/17918.png +../../data/yoloGtold1/train/17919.png +../../data/yoloGtold1/train/17920.png +../../data/yoloGtold1/train/17921.png +../../data/yoloGtold1/train/17922.png +../../data/yoloGtold1/train/17923.png +../../data/yoloGtold1/train/17924.png +../../data/yoloGtold1/train/17925.png +../../data/yoloGtold1/train/17926.png +../../data/yoloGtold1/train/17927.png +../../data/yoloGtold1/train/17928.png +../../data/yoloGtold1/train/17929.png +../../data/yoloGtold1/train/17930.png +../../data/yoloGtold1/train/17931.png +../../data/yoloGtold1/train/17932.png +../../data/yoloGtold1/train/17933.png +../../data/yoloGtold1/train/17934.png +../../data/yoloGtold1/train/17935.png +../../data/yoloGtold1/train/17936.png +../../data/yoloGtold1/train/17937.png +../../data/yoloGtold1/train/17938.png +../../data/yoloGtold1/train/17939.png +../../data/yoloGtold1/train/17940.png +../../data/yoloGtold1/train/17941.png +../../data/yoloGtold1/train/17942.png +../../data/yoloGtold1/train/17943.png +../../data/yoloGtold1/train/17944.png +../../data/yoloGtold1/train/17945.png +../../data/yoloGtold1/train/17946.png +../../data/yoloGtold1/train/17947.png +../../data/yoloGtold1/train/17948.png +../../data/yoloGtold1/train/17949.png +../../data/yoloGtold1/train/17950.png +../../data/yoloGtold1/train/17951.png +../../data/yoloGtold1/train/17952.png +../../data/yoloGtold1/train/17953.png +../../data/yoloGtold1/train/17954.png +../../data/yoloGtold1/train/17955.png +../../data/yoloGtold1/train/17956.png +../../data/yoloGtold1/train/17957.png +../../data/yoloGtold1/train/17958.png +../../data/yoloGtold1/train/17959.png +../../data/yoloGtold1/train/17960.png +../../data/yoloGtold1/train/17961.png +../../data/yoloGtold1/train/17962.png +../../data/yoloGtold1/train/17963.png +../../data/yoloGtold1/train/17964.png +../../data/yoloGtold1/train/17965.png +../../data/yoloGtold1/train/17966.png +../../data/yoloGtold1/train/17967.png +../../data/yoloGtold1/train/17968.png +../../data/yoloGtold1/train/17969.png +../../data/yoloGtold1/train/17970.png +../../data/yoloGtold1/train/17971.png +../../data/yoloGtold1/train/17972.png +../../data/yoloGtold1/train/17973.png +../../data/yoloGtold1/train/17974.png +../../data/yoloGtold1/train/17975.png +../../data/yoloGtold1/train/17976.png +../../data/yoloGtold1/train/17977.png +../../data/yoloGtold1/train/17978.png +../../data/yoloGtold1/train/17979.png +../../data/yoloGtold1/train/17980.png +../../data/yoloGtold1/train/17981.png +../../data/yoloGtold1/train/17982.png +../../data/yoloGtold1/train/17983.png +../../data/yoloGtold1/train/17984.png +../../data/yoloGtold1/train/17985.png +../../data/yoloGtold1/train/17986.png +../../data/yoloGtold1/train/17987.png +../../data/yoloGtold1/train/17988.png +../../data/yoloGtold1/train/17989.png +../../data/yoloGtold1/train/17990.png +../../data/yoloGtold1/train/17991.png +../../data/yoloGtold1/train/17992.png +../../data/yoloGtold1/train/17993.png +../../data/yoloGtold1/train/17994.png +../../data/yoloGtold1/train/17995.png +../../data/yoloGtold1/train/17996.png +../../data/yoloGtold1/train/17997.png +../../data/yoloGtold1/train/17998.png +../../data/yoloGtold1/train/17999.png +../../data/yoloGtold1/train/18000.png +../../data/yoloGtold1/train/18001.png +../../data/yoloGtold1/train/18002.png +../../data/yoloGtold1/train/18003.png +../../data/yoloGtold1/train/18004.png +../../data/yoloGtold1/train/18005.png +../../data/yoloGtold1/train/18006.png +../../data/yoloGtold1/train/18007.png +../../data/yoloGtold1/train/18008.png +../../data/yoloGtold1/train/18009.png +../../data/yoloGtold1/train/18010.png +../../data/yoloGtold1/train/18011.png +../../data/yoloGtold1/train/18012.png +../../data/yoloGtold1/train/18013.png +../../data/yoloGtold1/train/18014.png +../../data/yoloGtold1/train/18015.png +../../data/yoloGtold1/train/18016.png +../../data/yoloGtold1/train/18017.png +../../data/yoloGtold1/train/18018.png +../../data/yoloGtold1/train/18019.png +../../data/yoloGtold1/train/18020.png +../../data/yoloGtold1/train/18021.png +../../data/yoloGtold1/train/18022.png +../../data/yoloGtold1/train/18023.png +../../data/yoloGtold1/train/18024.png +../../data/yoloGtold1/train/18025.png +../../data/yoloGtold1/train/18026.png +../../data/yoloGtold1/train/18027.png +../../data/yoloGtold1/train/18028.png +../../data/yoloGtold1/train/18029.png +../../data/yoloGtold1/train/18030.png +../../data/yoloGtold1/train/18031.png +../../data/yoloGtold1/train/18032.png +../../data/yoloGtold1/train/18033.png +../../data/yoloGtold1/train/18034.png +../../data/yoloGtold1/train/18035.png +../../data/yoloGtold1/train/18036.png +../../data/yoloGtold1/train/18037.png +../../data/yoloGtold1/train/18038.png +../../data/yoloGtold1/train/18039.png +../../data/yoloGtold1/train/18040.png +../../data/yoloGtold1/train/18041.png +../../data/yoloGtold1/train/18042.png +../../data/yoloGtold1/train/18043.png +../../data/yoloGtold1/train/18044.png +../../data/yoloGtold1/train/18045.png +../../data/yoloGtold1/train/18046.png +../../data/yoloGtold1/train/18047.png +../../data/yoloGtold1/train/18048.png +../../data/yoloGtold1/train/18049.png +../../data/yoloGtold1/train/18050.png +../../data/yoloGtold1/train/18051.png +../../data/yoloGtold1/train/18052.png +../../data/yoloGtold1/train/18053.png +../../data/yoloGtold1/train/18054.png +../../data/yoloGtold1/train/18055.png +../../data/yoloGtold1/train/18056.png +../../data/yoloGtold1/train/18057.png +../../data/yoloGtold1/train/18058.png +../../data/yoloGtold1/train/18059.png +../../data/yoloGtold1/train/18060.png +../../data/yoloGtold1/train/18061.png +../../data/yoloGtold1/train/18062.png +../../data/yoloGtold1/train/18063.png +../../data/yoloGtold1/train/18064.png +../../data/yoloGtold1/train/18065.png +../../data/yoloGtold1/train/18066.png +../../data/yoloGtold1/train/18067.png +../../data/yoloGtold1/train/18068.png +../../data/yoloGtold1/train/18069.png +../../data/yoloGtold1/train/18070.png +../../data/yoloGtold1/train/18071.png +../../data/yoloGtold1/train/18072.png +../../data/yoloGtold1/train/18073.png +../../data/yoloGtold1/train/18074.png +../../data/yoloGtold1/train/18075.png +../../data/yoloGtold1/train/18076.png +../../data/yoloGtold1/train/18077.png +../../data/yoloGtold1/train/18078.png +../../data/yoloGtold1/train/18079.png +../../data/yoloGtold1/train/18080.png +../../data/yoloGtold1/train/18081.png +../../data/yoloGtold1/train/18082.png +../../data/yoloGtold1/train/18083.png +../../data/yoloGtold1/train/18084.png +../../data/yoloGtold1/train/18085.png +../../data/yoloGtold1/train/18086.png +../../data/yoloGtold1/train/18087.png +../../data/yoloGtold1/train/18088.png +../../data/yoloGtold1/train/18089.png +../../data/yoloGtold1/train/18090.png +../../data/yoloGtold1/train/18091.png +../../data/yoloGtold1/train/18092.png +../../data/yoloGtold1/train/18093.png +../../data/yoloGtold1/train/18094.png +../../data/yoloGtold1/train/18095.png +../../data/yoloGtold1/train/18096.png +../../data/yoloGtold1/train/18097.png +../../data/yoloGtold1/train/18098.png +../../data/yoloGtold1/train/18099.png +../../data/yoloGtold1/train/18100.png +../../data/yoloGtold1/train/18101.png +../../data/yoloGtold1/train/18102.png +../../data/yoloGtold1/train/18103.png +../../data/yoloGtold1/train/18104.png +../../data/yoloGtold1/train/18105.png +../../data/yoloGtold1/train/18106.png +../../data/yoloGtold1/train/18107.png +../../data/yoloGtold1/train/18108.png +../../data/yoloGtold1/train/18109.png +../../data/yoloGtold1/train/18110.png +../../data/yoloGtold1/train/18111.png +../../data/yoloGtold1/train/18112.png +../../data/yoloGtold1/train/18113.png +../../data/yoloGtold1/train/18114.png +../../data/yoloGtold1/train/18115.png +../../data/yoloGtold1/train/18116.png +../../data/yoloGtold1/train/18117.png +../../data/yoloGtold1/train/18118.png +../../data/yoloGtold1/train/18119.png +../../data/yoloGtold1/train/18120.png +../../data/yoloGtold1/train/18121.png +../../data/yoloGtold1/train/18122.png +../../data/yoloGtold1/train/18123.png +../../data/yoloGtold1/train/18124.png +../../data/yoloGtold1/train/18125.png +../../data/yoloGtold1/train/18126.png +../../data/yoloGtold1/train/18127.png +../../data/yoloGtold1/train/18128.png +../../data/yoloGtold1/train/18129.png +../../data/yoloGtold1/train/18130.png +../../data/yoloGtold1/train/18131.png +../../data/yoloGtold1/train/18132.png +../../data/yoloGtold1/train/18133.png +../../data/yoloGtold1/train/18134.png +../../data/yoloGtold1/train/18135.png +../../data/yoloGtold1/train/18136.png +../../data/yoloGtold1/train/18137.png +../../data/yoloGtold1/train/18138.png +../../data/yoloGtold1/train/18139.png +../../data/yoloGtold1/train/18140.png +../../data/yoloGtold1/train/18141.png +../../data/yoloGtold1/train/18142.png +../../data/yoloGtold1/train/18143.png +../../data/yoloGtold1/train/18144.png +../../data/yoloGtold1/train/18145.png +../../data/yoloGtold1/train/18146.png +../../data/yoloGtold1/train/18147.png +../../data/yoloGtold1/train/18148.png +../../data/yoloGtold1/train/18149.png +../../data/yoloGtold1/train/18150.png +../../data/yoloGtold1/train/18151.png +../../data/yoloGtold1/train/18152.png +../../data/yoloGtold1/train/18153.png +../../data/yoloGtold1/train/18154.png +../../data/yoloGtold1/train/18155.png +../../data/yoloGtold1/train/18156.png +../../data/yoloGtold1/train/18157.png +../../data/yoloGtold1/train/18158.png +../../data/yoloGtold1/train/18159.png +../../data/yoloGtold1/train/18160.png +../../data/yoloGtold1/train/18161.png +../../data/yoloGtold1/train/18162.png +../../data/yoloGtold1/train/18163.png +../../data/yoloGtold1/train/18164.png +../../data/yoloGtold1/train/18165.png +../../data/yoloGtold1/train/18166.png +../../data/yoloGtold1/train/18167.png +../../data/yoloGtold1/train/18168.png +../../data/yoloGtold1/train/18169.png +../../data/yoloGtold1/train/18170.png +../../data/yoloGtold1/train/18171.png +../../data/yoloGtold1/train/18172.png +../../data/yoloGtold1/train/18173.png +../../data/yoloGtold1/train/18174.png +../../data/yoloGtold1/train/18175.png +../../data/yoloGtold1/train/18176.png +../../data/yoloGtold1/train/18177.png +../../data/yoloGtold1/train/18178.png +../../data/yoloGtold1/train/18179.png +../../data/yoloGtold1/train/18180.png +../../data/yoloGtold1/train/18181.png +../../data/yoloGtold1/train/18182.png +../../data/yoloGtold1/train/18183.png +../../data/yoloGtold1/train/18184.png +../../data/yoloGtold1/train/18185.png +../../data/yoloGtold1/train/18186.png +../../data/yoloGtold1/train/18187.png +../../data/yoloGtold1/train/18188.png +../../data/yoloGtold1/train/18189.png +../../data/yoloGtold1/train/18190.png +../../data/yoloGtold1/train/18191.png +../../data/yoloGtold1/train/18192.png +../../data/yoloGtold1/train/18193.png +../../data/yoloGtold1/train/18194.png +../../data/yoloGtold1/train/18195.png +../../data/yoloGtold1/train/18196.png +../../data/yoloGtold1/train/18197.png +../../data/yoloGtold1/train/18198.png +../../data/yoloGtold1/train/18199.png +../../data/yoloGtold1/train/18200.png +../../data/yoloGtold1/train/18201.png +../../data/yoloGtold1/train/18202.png +../../data/yoloGtold1/train/18203.png +../../data/yoloGtold1/train/18204.png +../../data/yoloGtold1/train/18205.png +../../data/yoloGtold1/train/18206.png +../../data/yoloGtold1/train/18207.png +../../data/yoloGtold1/train/18208.png +../../data/yoloGtold1/train/18209.png +../../data/yoloGtold1/train/18210.png +../../data/yoloGtold1/train/18211.png +../../data/yoloGtold1/train/18212.png +../../data/yoloGtold1/train/18213.png +../../data/yoloGtold1/train/18214.png +../../data/yoloGtold1/train/18215.png +../../data/yoloGtold1/train/18216.png +../../data/yoloGtold1/train/18217.png +../../data/yoloGtold1/train/18218.png +../../data/yoloGtold1/train/18219.png +../../data/yoloGtold1/train/18220.png +../../data/yoloGtold1/train/18221.png +../../data/yoloGtold1/train/18222.png +../../data/yoloGtold1/train/18223.png +../../data/yoloGtold1/train/18224.png +../../data/yoloGtold1/train/18225.png +../../data/yoloGtold1/train/18226.png +../../data/yoloGtold1/train/18227.png +../../data/yoloGtold1/train/18228.png +../../data/yoloGtold1/train/18229.png +../../data/yoloGtold1/train/18230.png +../../data/yoloGtold1/train/18231.png +../../data/yoloGtold1/train/18232.png +../../data/yoloGtold1/train/18233.png +../../data/yoloGtold1/train/18234.png +../../data/yoloGtold1/train/18235.png +../../data/yoloGtold1/train/18236.png +../../data/yoloGtold1/train/18237.png +../../data/yoloGtold1/train/18238.png +../../data/yoloGtold1/train/18239.png +../../data/yoloGtold1/train/18240.png +../../data/yoloGtold1/train/18241.png +../../data/yoloGtold1/train/18242.png +../../data/yoloGtold1/train/18243.png +../../data/yoloGtold1/train/18244.png +../../data/yoloGtold1/train/18245.png +../../data/yoloGtold1/train/18246.png +../../data/yoloGtold1/train/18247.png +../../data/yoloGtold1/train/18248.png +../../data/yoloGtold1/train/18249.png +../../data/yoloGtold1/train/18250.png +../../data/yoloGtold1/train/18251.png +../../data/yoloGtold1/train/18252.png +../../data/yoloGtold1/train/18253.png +../../data/yoloGtold1/train/18254.png +../../data/yoloGtold1/train/18255.png +../../data/yoloGtold1/train/18256.png +../../data/yoloGtold1/train/18257.png +../../data/yoloGtold1/train/18258.png +../../data/yoloGtold1/train/18259.png +../../data/yoloGtold1/train/18260.png +../../data/yoloGtold1/train/18261.png +../../data/yoloGtold1/train/18262.png +../../data/yoloGtold1/train/18263.png +../../data/yoloGtold1/train/18264.png +../../data/yoloGtold1/train/18265.png +../../data/yoloGtold1/train/18266.png +../../data/yoloGtold1/train/18267.png +../../data/yoloGtold1/train/18268.png +../../data/yoloGtold1/train/18269.png +../../data/yoloGtold1/train/18270.png +../../data/yoloGtold1/train/18271.png +../../data/yoloGtold1/train/18272.png +../../data/yoloGtold1/train/18273.png +../../data/yoloGtold1/train/18274.png +../../data/yoloGtold1/train/18275.png +../../data/yoloGtold1/train/18276.png +../../data/yoloGtold1/train/18277.png +../../data/yoloGtold1/train/18278.png +../../data/yoloGtold1/train/18279.png +../../data/yoloGtold1/train/18280.png +../../data/yoloGtold1/train/18281.png +../../data/yoloGtold1/train/18282.png +../../data/yoloGtold1/train/18283.png +../../data/yoloGtold1/train/18284.png +../../data/yoloGtold1/train/18285.png +../../data/yoloGtold1/train/18286.png +../../data/yoloGtold1/train/18287.png +../../data/yoloGtold1/train/18288.png +../../data/yoloGtold1/train/18289.png +../../data/yoloGtold1/train/18290.png +../../data/yoloGtold1/train/18291.png +../../data/yoloGtold1/train/18292.png +../../data/yoloGtold1/train/18293.png +../../data/yoloGtold1/train/18294.png +../../data/yoloGtold1/train/18295.png +../../data/yoloGtold1/train/18296.png +../../data/yoloGtold1/train/18297.png +../../data/yoloGtold1/train/18298.png +../../data/yoloGtold1/train/18299.png +../../data/yoloGtold1/train/18300.png +../../data/yoloGtold1/train/18301.png +../../data/yoloGtold1/train/18302.png +../../data/yoloGtold1/train/18303.png +../../data/yoloGtold1/train/18304.png +../../data/yoloGtold1/train/18305.png +../../data/yoloGtold1/train/18306.png +../../data/yoloGtold1/train/18307.png +../../data/yoloGtold1/train/18308.png +../../data/yoloGtold1/train/18309.png +../../data/yoloGtold1/train/18310.png +../../data/yoloGtold1/train/18311.png +../../data/yoloGtold1/train/18312.png +../../data/yoloGtold1/train/18313.png +../../data/yoloGtold1/train/18314.png +../../data/yoloGtold1/train/18315.png +../../data/yoloGtold1/train/18316.png +../../data/yoloGtold1/train/18317.png +../../data/yoloGtold1/train/18318.png +../../data/yoloGtold1/train/18319.png +../../data/yoloGtold1/train/18320.png +../../data/yoloGtold1/train/18321.png +../../data/yoloGtold1/train/18322.png +../../data/yoloGtold1/train/18323.png +../../data/yoloGtold1/train/18324.png +../../data/yoloGtold1/train/18325.png +../../data/yoloGtold1/train/18326.png +../../data/yoloGtold1/train/18327.png +../../data/yoloGtold1/train/18328.png +../../data/yoloGtold1/train/18329.png +../../data/yoloGtold1/train/18330.png +../../data/yoloGtold1/train/18331.png +../../data/yoloGtold1/train/18332.png +../../data/yoloGtold1/train/18333.png +../../data/yoloGtold1/train/18334.png +../../data/yoloGtold1/train/18335.png +../../data/yoloGtold1/train/18336.png +../../data/yoloGtold1/train/18337.png +../../data/yoloGtold1/train/18338.png +../../data/yoloGtold1/train/18339.png +../../data/yoloGtold1/train/18340.png +../../data/yoloGtold1/train/18341.png +../../data/yoloGtold1/train/18342.png +../../data/yoloGtold1/train/18343.png +../../data/yoloGtold1/train/18344.png +../../data/yoloGtold1/train/18345.png +../../data/yoloGtold1/train/18346.png +../../data/yoloGtold1/train/18347.png +../../data/yoloGtold1/train/18348.png +../../data/yoloGtold1/train/18349.png +../../data/yoloGtold1/train/18350.png +../../data/yoloGtold1/train/18351.png +../../data/yoloGtold1/train/18352.png +../../data/yoloGtold1/train/18353.png +../../data/yoloGtold1/train/18354.png +../../data/yoloGtold1/train/18355.png +../../data/yoloGtold1/train/18356.png +../../data/yoloGtold1/train/18357.png +../../data/yoloGtold1/train/18358.png +../../data/yoloGtold1/train/18359.png +../../data/yoloGtold1/train/18360.png +../../data/yoloGtold1/train/18361.png +../../data/yoloGtold1/train/18362.png +../../data/yoloGtold1/train/18363.png +../../data/yoloGtold1/train/18364.png +../../data/yoloGtold1/train/18365.png +../../data/yoloGtold1/train/18366.png +../../data/yoloGtold1/train/18367.png +../../data/yoloGtold1/train/18368.png +../../data/yoloGtold1/train/18369.png +../../data/yoloGtold1/train/18370.png +../../data/yoloGtold1/train/18371.png +../../data/yoloGtold1/train/18372.png +../../data/yoloGtold1/train/18373.png +../../data/yoloGtold1/train/18374.png +../../data/yoloGtold1/train/18375.png +../../data/yoloGtold1/train/18376.png +../../data/yoloGtold1/train/18377.png +../../data/yoloGtold1/train/18378.png +../../data/yoloGtold1/train/18379.png +../../data/yoloGtold1/train/18380.png +../../data/yoloGtold1/train/18381.png +../../data/yoloGtold1/train/18382.png +../../data/yoloGtold1/train/18383.png +../../data/yoloGtold1/train/18384.png +../../data/yoloGtold1/train/18385.png +../../data/yoloGtold1/train/18386.png +../../data/yoloGtold1/train/18387.png +../../data/yoloGtold1/train/18388.png +../../data/yoloGtold1/train/18389.png +../../data/yoloGtold1/train/18390.png +../../data/yoloGtold1/train/18391.png +../../data/yoloGtold1/train/18392.png +../../data/yoloGtold1/train/18393.png +../../data/yoloGtold1/train/18394.png +../../data/yoloGtold1/train/18395.png +../../data/yoloGtold1/train/18396.png +../../data/yoloGtold1/train/18397.png +../../data/yoloGtold1/train/18398.png +../../data/yoloGtold1/train/18399.png +../../data/yoloGtold1/train/18400.png +../../data/yoloGtold1/train/18401.png +../../data/yoloGtold1/train/18402.png +../../data/yoloGtold1/train/18403.png +../../data/yoloGtold1/train/18404.png +../../data/yoloGtold1/train/18405.png +../../data/yoloGtold1/train/18406.png +../../data/yoloGtold1/train/18407.png +../../data/yoloGtold1/train/18408.png +../../data/yoloGtold1/train/18409.png +../../data/yoloGtold1/train/18410.png +../../data/yoloGtold1/train/18411.png +../../data/yoloGtold1/train/18412.png +../../data/yoloGtold1/train/18413.png +../../data/yoloGtold1/train/18414.png +../../data/yoloGtold1/train/18415.png +../../data/yoloGtold1/train/18416.png +../../data/yoloGtold1/train/18417.png +../../data/yoloGtold1/train/18418.png +../../data/yoloGtold1/train/18419.png +../../data/yoloGtold1/train/18420.png +../../data/yoloGtold1/train/18421.png +../../data/yoloGtold1/train/18422.png +../../data/yoloGtold1/train/18423.png +../../data/yoloGtold1/train/18424.png +../../data/yoloGtold1/train/18425.png +../../data/yoloGtold1/train/18426.png +../../data/yoloGtold1/train/18427.png +../../data/yoloGtold1/train/18428.png +../../data/yoloGtold1/train/18429.png +../../data/yoloGtold1/train/18430.png +../../data/yoloGtold1/train/18431.png +../../data/yoloGtold1/train/18432.png +../../data/yoloGtold1/train/18433.png +../../data/yoloGtold1/train/18434.png +../../data/yoloGtold1/train/18435.png +../../data/yoloGtold1/train/18436.png +../../data/yoloGtold1/train/18437.png +../../data/yoloGtold1/train/18438.png +../../data/yoloGtold1/train/18439.png +../../data/yoloGtold1/train/18440.png +../../data/yoloGtold1/train/18441.png +../../data/yoloGtold1/train/18442.png +../../data/yoloGtold1/train/18443.png +../../data/yoloGtold1/train/18444.png +../../data/yoloGtold1/train/18445.png +../../data/yoloGtold1/train/18446.png +../../data/yoloGtold1/train/18447.png +../../data/yoloGtold1/train/18448.png +../../data/yoloGtold1/train/18449.png +../../data/yoloGtold1/train/18450.png +../../data/yoloGtold1/train/18451.png +../../data/yoloGtold1/train/18452.png +../../data/yoloGtold1/train/18453.png +../../data/yoloGtold1/train/18454.png +../../data/yoloGtold1/train/18455.png +../../data/yoloGtold1/train/18456.png +../../data/yoloGtold1/train/18457.png +../../data/yoloGtold1/train/18458.png +../../data/yoloGtold1/train/18459.png +../../data/yoloGtold1/train/18460.png +../../data/yoloGtold1/train/18461.png +../../data/yoloGtold1/train/18462.png +../../data/yoloGtold1/train/18463.png +../../data/yoloGtold1/train/18464.png +../../data/yoloGtold1/train/18465.png +../../data/yoloGtold1/train/18466.png +../../data/yoloGtold1/train/18467.png +../../data/yoloGtold1/train/18468.png +../../data/yoloGtold1/train/18469.png +../../data/yoloGtold1/train/18470.png +../../data/yoloGtold1/train/18471.png +../../data/yoloGtold1/train/18472.png +../../data/yoloGtold1/train/18473.png +../../data/yoloGtold1/train/18474.png +../../data/yoloGtold1/train/18475.png +../../data/yoloGtold1/train/18476.png +../../data/yoloGtold1/train/18477.png +../../data/yoloGtold1/train/18478.png +../../data/yoloGtold1/train/18479.png +../../data/yoloGtold1/train/18480.png +../../data/yoloGtold1/train/18481.png +../../data/yoloGtold1/train/18482.png +../../data/yoloGtold1/train/18483.png +../../data/yoloGtold1/train/18484.png +../../data/yoloGtold1/train/18485.png +../../data/yoloGtold1/train/18486.png +../../data/yoloGtold1/train/18487.png +../../data/yoloGtold1/train/18488.png +../../data/yoloGtold1/train/18489.png +../../data/yoloGtold1/train/18490.png +../../data/yoloGtold1/train/18491.png +../../data/yoloGtold1/train/18492.png +../../data/yoloGtold1/train/18493.png +../../data/yoloGtold1/train/18494.png +../../data/yoloGtold1/train/18495.png +../../data/yoloGtold1/train/18496.png +../../data/yoloGtold1/train/18497.png +../../data/yoloGtold1/train/18498.png +../../data/yoloGtold1/train/18499.png +../../data/yoloGtold1/train/18500.png +../../data/yoloGtold1/train/18501.png +../../data/yoloGtold1/train/18502.png +../../data/yoloGtold1/train/18503.png +../../data/yoloGtold1/train/18504.png +../../data/yoloGtold1/train/18505.png +../../data/yoloGtold1/train/18506.png +../../data/yoloGtold1/train/18507.png +../../data/yoloGtold1/train/18508.png +../../data/yoloGtold1/train/18509.png +../../data/yoloGtold1/train/18510.png +../../data/yoloGtold1/train/18511.png +../../data/yoloGtold1/train/18512.png +../../data/yoloGtold1/train/18513.png +../../data/yoloGtold1/train/18514.png +../../data/yoloGtold1/train/18515.png +../../data/yoloGtold1/train/18516.png +../../data/yoloGtold1/train/18517.png +../../data/yoloGtold1/train/18518.png +../../data/yoloGtold1/train/18519.png +../../data/yoloGtold1/train/18520.png +../../data/yoloGtold1/train/18521.png +../../data/yoloGtold1/train/18522.png +../../data/yoloGtold1/train/18523.png +../../data/yoloGtold1/train/18524.png +../../data/yoloGtold1/train/18525.png +../../data/yoloGtold1/train/18526.png +../../data/yoloGtold1/train/18527.png +../../data/yoloGtold1/train/18528.png +../../data/yoloGtold1/train/18529.png +../../data/yoloGtold1/train/18530.png +../../data/yoloGtold1/train/18531.png +../../data/yoloGtold1/train/18532.png +../../data/yoloGtold1/train/18533.png +../../data/yoloGtold1/train/18534.png +../../data/yoloGtold1/train/18535.png +../../data/yoloGtold1/train/18536.png +../../data/yoloGtold1/train/18537.png +../../data/yoloGtold1/train/18538.png +../../data/yoloGtold1/train/18539.png +../../data/yoloGtold1/train/18540.png +../../data/yoloGtold1/train/18541.png +../../data/yoloGtold1/train/18542.png +../../data/yoloGtold1/train/18543.png +../../data/yoloGtold1/train/18544.png +../../data/yoloGtold1/train/18545.png +../../data/yoloGtold1/train/18546.png +../../data/yoloGtold1/train/18547.png +../../data/yoloGtold1/train/18548.png +../../data/yoloGtold1/train/18549.png +../../data/yoloGtold1/train/18550.png +../../data/yoloGtold1/train/18551.png +../../data/yoloGtold1/train/18552.png +../../data/yoloGtold1/train/18553.png +../../data/yoloGtold1/train/18554.png +../../data/yoloGtold1/train/18555.png +../../data/yoloGtold1/train/18556.png +../../data/yoloGtold1/train/18557.png +../../data/yoloGtold1/train/18558.png +../../data/yoloGtold1/train/18559.png +../../data/yoloGtold1/train/18560.png +../../data/yoloGtold1/train/18561.png +../../data/yoloGtold1/train/18562.png +../../data/yoloGtold1/train/18563.png +../../data/yoloGtold1/train/18564.png +../../data/yoloGtold1/train/18565.png +../../data/yoloGtold1/train/18566.png +../../data/yoloGtold1/train/18567.png +../../data/yoloGtold1/train/18568.png +../../data/yoloGtold1/train/18569.png +../../data/yoloGtold1/train/18570.png +../../data/yoloGtold1/train/18571.png +../../data/yoloGtold1/train/18572.png +../../data/yoloGtold1/train/18573.png +../../data/yoloGtold1/train/18574.png +../../data/yoloGtold1/train/18575.png +../../data/yoloGtold1/train/18576.png +../../data/yoloGtold1/train/18577.png +../../data/yoloGtold1/train/18578.png +../../data/yoloGtold1/train/18579.png +../../data/yoloGtold1/train/18580.png +../../data/yoloGtold1/train/18581.png +../../data/yoloGtold1/train/18582.png +../../data/yoloGtold1/train/18583.png +../../data/yoloGtold1/train/18584.png +../../data/yoloGtold1/train/18585.png +../../data/yoloGtold1/train/18586.png +../../data/yoloGtold1/train/18587.png +../../data/yoloGtold1/train/18588.png +../../data/yoloGtold1/train/18589.png +../../data/yoloGtold1/train/18590.png +../../data/yoloGtold1/train/18591.png +../../data/yoloGtold1/train/18592.png +../../data/yoloGtold1/train/18593.png +../../data/yoloGtold1/train/18594.png +../../data/yoloGtold1/train/18595.png +../../data/yoloGtold1/train/18596.png +../../data/yoloGtold1/train/18597.png +../../data/yoloGtold1/train/18598.png +../../data/yoloGtold1/train/18599.png +../../data/yoloGtold1/train/18600.png +../../data/yoloGtold1/train/18601.png +../../data/yoloGtold1/train/18602.png +../../data/yoloGtold1/train/18603.png +../../data/yoloGtold1/train/18604.png +../../data/yoloGtold1/train/18605.png +../../data/yoloGtold1/train/18606.png +../../data/yoloGtold1/train/18607.png +../../data/yoloGtold1/train/18608.png +../../data/yoloGtold1/train/18609.png +../../data/yoloGtold1/train/18610.png +../../data/yoloGtold1/train/18611.png +../../data/yoloGtold1/train/18612.png +../../data/yoloGtold1/train/18613.png +../../data/yoloGtold1/train/18614.png +../../data/yoloGtold1/train/18615.png +../../data/yoloGtold1/train/18616.png +../../data/yoloGtold1/train/18617.png +../../data/yoloGtold1/train/18618.png +../../data/yoloGtold1/train/18619.png +../../data/yoloGtold1/train/18620.png +../../data/yoloGtold1/train/18621.png +../../data/yoloGtold1/train/18622.png +../../data/yoloGtold1/train/18623.png +../../data/yoloGtold1/train/18624.png +../../data/yoloGtold1/train/18625.png +../../data/yoloGtold1/train/18626.png +../../data/yoloGtold1/train/18627.png +../../data/yoloGtold1/train/18628.png +../../data/yoloGtold1/train/18629.png +../../data/yoloGtold1/train/18630.png +../../data/yoloGtold1/train/18631.png +../../data/yoloGtold1/train/18632.png +../../data/yoloGtold1/train/18633.png +../../data/yoloGtold1/train/18634.png +../../data/yoloGtold1/train/18635.png +../../data/yoloGtold1/train/18636.png +../../data/yoloGtold1/train/18637.png +../../data/yoloGtold1/train/18638.png +../../data/yoloGtold1/train/18639.png +../../data/yoloGtold1/train/18640.png +../../data/yoloGtold1/train/18641.png +../../data/yoloGtold1/train/18642.png +../../data/yoloGtold1/train/18643.png +../../data/yoloGtold1/train/18644.png +../../data/yoloGtold1/train/18645.png +../../data/yoloGtold1/train/18646.png +../../data/yoloGtold1/train/18647.png +../../data/yoloGtold1/train/18648.png +../../data/yoloGtold1/train/18649.png +../../data/yoloGtold1/train/18650.png +../../data/yoloGtold1/train/18651.png +../../data/yoloGtold1/train/18652.png +../../data/yoloGtold1/train/18653.png +../../data/yoloGtold1/train/18654.png +../../data/yoloGtold1/train/18655.png +../../data/yoloGtold1/train/18656.png +../../data/yoloGtold1/train/18657.png +../../data/yoloGtold1/train/18658.png +../../data/yoloGtold1/train/18659.png +../../data/yoloGtold1/train/18660.png +../../data/yoloGtold1/train/18661.png +../../data/yoloGtold1/train/18662.png +../../data/yoloGtold1/train/18663.png +../../data/yoloGtold1/train/18664.png +../../data/yoloGtold1/train/18665.png +../../data/yoloGtold1/train/18666.png +../../data/yoloGtold1/train/18667.png +../../data/yoloGtold1/train/18668.png +../../data/yoloGtold1/train/18669.png +../../data/yoloGtold1/train/18670.png +../../data/yoloGtold1/train/18671.png +../../data/yoloGtold1/train/18672.png +../../data/yoloGtold1/train/18673.png +../../data/yoloGtold1/train/18674.png +../../data/yoloGtold1/train/18675.png +../../data/yoloGtold1/train/18676.png +../../data/yoloGtold1/train/18677.png +../../data/yoloGtold1/train/18678.png +../../data/yoloGtold1/train/18679.png +../../data/yoloGtold1/train/18680.png +../../data/yoloGtold1/train/18681.png +../../data/yoloGtold1/train/18682.png +../../data/yoloGtold1/train/18683.png +../../data/yoloGtold1/train/18684.png +../../data/yoloGtold1/train/18685.png +../../data/yoloGtold1/train/18686.png +../../data/yoloGtold1/train/18687.png +../../data/yoloGtold1/train/18688.png +../../data/yoloGtold1/train/18689.png +../../data/yoloGtold1/train/18690.png +../../data/yoloGtold1/train/18691.png +../../data/yoloGtold1/train/18692.png +../../data/yoloGtold1/train/18693.png +../../data/yoloGtold1/train/18694.png +../../data/yoloGtold1/train/18695.png +../../data/yoloGtold1/train/18696.png +../../data/yoloGtold1/train/18697.png +../../data/yoloGtold1/train/18698.png +../../data/yoloGtold1/train/18699.png +../../data/yoloGtold1/train/18700.png +../../data/yoloGtold1/train/18701.png +../../data/yoloGtold1/train/18702.png +../../data/yoloGtold1/train/18703.png +../../data/yoloGtold1/train/18704.png +../../data/yoloGtold1/train/18705.png +../../data/yoloGtold1/train/18706.png +../../data/yoloGtold1/train/18707.png +../../data/yoloGtold1/train/18708.png +../../data/yoloGtold1/train/18709.png +../../data/yoloGtold1/train/18710.png +../../data/yoloGtold1/train/18711.png +../../data/yoloGtold1/train/18712.png +../../data/yoloGtold1/train/18713.png +../../data/yoloGtold1/train/18714.png +../../data/yoloGtold1/train/18715.png +../../data/yoloGtold1/train/18716.png +../../data/yoloGtold1/train/18717.png +../../data/yoloGtold1/train/18718.png +../../data/yoloGtold1/train/18719.png +../../data/yoloGtold1/train/18720.png +../../data/yoloGtold1/train/18721.png +../../data/yoloGtold1/train/18722.png +../../data/yoloGtold1/train/18723.png +../../data/yoloGtold1/train/18724.png +../../data/yoloGtold1/train/18725.png +../../data/yoloGtold1/train/18726.png +../../data/yoloGtold1/train/18727.png +../../data/yoloGtold1/train/18728.png +../../data/yoloGtold1/train/18729.png +../../data/yoloGtold1/train/18730.png +../../data/yoloGtold1/train/18731.png +../../data/yoloGtold1/train/18732.png +../../data/yoloGtold1/train/18733.png +../../data/yoloGtold1/train/18734.png +../../data/yoloGtold1/train/18735.png +../../data/yoloGtold1/train/18736.png +../../data/yoloGtold1/train/18737.png +../../data/yoloGtold1/train/18738.png +../../data/yoloGtold1/train/18739.png +../../data/yoloGtold1/train/18740.png +../../data/yoloGtold1/train/18741.png +../../data/yoloGtold1/train/18742.png +../../data/yoloGtold1/train/18743.png +../../data/yoloGtold1/train/18744.png +../../data/yoloGtold1/train/18745.png +../../data/yoloGtold1/train/18746.png +../../data/yoloGtold1/train/18747.png +../../data/yoloGtold1/train/18748.png +../../data/yoloGtold1/train/18749.png +../../data/yoloGtold1/train/18750.png +../../data/yoloGtold1/train/18751.png +../../data/yoloGtold1/train/18752.png +../../data/yoloGtold1/train/18753.png +../../data/yoloGtold1/train/18754.png +../../data/yoloGtold1/train/18755.png +../../data/yoloGtold1/train/18756.png +../../data/yoloGtold1/train/18757.png +../../data/yoloGtold1/train/18758.png +../../data/yoloGtold1/train/18759.png +../../data/yoloGtold1/train/18760.png +../../data/yoloGtold1/train/18761.png +../../data/yoloGtold1/train/18762.png +../../data/yoloGtold1/train/18763.png +../../data/yoloGtold1/train/18764.png +../../data/yoloGtold1/train/18765.png +../../data/yoloGtold1/train/18766.png +../../data/yoloGtold1/train/18767.png +../../data/yoloGtold1/train/18768.png +../../data/yoloGtold1/train/18769.png +../../data/yoloGtold1/train/18770.png +../../data/yoloGtold1/train/18771.png +../../data/yoloGtold1/train/18772.png +../../data/yoloGtold1/train/18773.png +../../data/yoloGtold1/train/18774.png +../../data/yoloGtold1/train/18775.png +../../data/yoloGtold1/train/18776.png +../../data/yoloGtold1/train/18777.png +../../data/yoloGtold1/train/18778.png +../../data/yoloGtold1/train/18779.png +../../data/yoloGtold1/train/18780.png +../../data/yoloGtold1/train/18781.png +../../data/yoloGtold1/train/18782.png +../../data/yoloGtold1/train/18783.png +../../data/yoloGtold1/train/18784.png +../../data/yoloGtold1/train/18785.png +../../data/yoloGtold1/train/18786.png +../../data/yoloGtold1/train/18787.png +../../data/yoloGtold1/train/18788.png +../../data/yoloGtold1/train/18789.png +../../data/yoloGtold1/train/18790.png +../../data/yoloGtold1/train/18791.png +../../data/yoloGtold1/train/18792.png +../../data/yoloGtold1/train/18793.png +../../data/yoloGtold1/train/18794.png +../../data/yoloGtold1/train/18795.png +../../data/yoloGtold1/train/18796.png +../../data/yoloGtold1/train/18797.png +../../data/yoloGtold1/train/18798.png +../../data/yoloGtold1/train/18799.png +../../data/yoloGtold1/train/18800.png +../../data/yoloGtold1/train/18801.png +../../data/yoloGtold1/train/18802.png +../../data/yoloGtold1/train/18803.png +../../data/yoloGtold1/train/18804.png +../../data/yoloGtold1/train/18805.png +../../data/yoloGtold1/train/18806.png +../../data/yoloGtold1/train/18807.png +../../data/yoloGtold1/train/18808.png +../../data/yoloGtold1/train/18809.png +../../data/yoloGtold1/train/18810.png +../../data/yoloGtold1/train/18811.png +../../data/yoloGtold1/train/18812.png +../../data/yoloGtold1/train/18813.png +../../data/yoloGtold1/train/18814.png +../../data/yoloGtold1/train/18815.png +../../data/yoloGtold1/train/18816.png +../../data/yoloGtold1/train/18817.png +../../data/yoloGtold1/train/18818.png +../../data/yoloGtold1/train/18819.png +../../data/yoloGtold1/train/18820.png +../../data/yoloGtold1/train/18821.png +../../data/yoloGtold1/train/18822.png +../../data/yoloGtold1/train/18823.png +../../data/yoloGtold1/train/18824.png +../../data/yoloGtold1/train/18825.png +../../data/yoloGtold1/train/18826.png +../../data/yoloGtold1/train/18827.png +../../data/yoloGtold1/train/18828.png +../../data/yoloGtold1/train/18829.png +../../data/yoloGtold1/train/18830.png +../../data/yoloGtold1/train/18831.png +../../data/yoloGtold1/train/18832.png +../../data/yoloGtold1/train/18833.png +../../data/yoloGtold1/train/18834.png +../../data/yoloGtold1/train/18835.png +../../data/yoloGtold1/train/18836.png +../../data/yoloGtold1/train/18837.png +../../data/yoloGtold1/train/18838.png +../../data/yoloGtold1/train/18839.png +../../data/yoloGtold1/train/18840.png +../../data/yoloGtold1/train/18841.png +../../data/yoloGtold1/train/18842.png +../../data/yoloGtold1/train/18843.png +../../data/yoloGtold1/train/18844.png +../../data/yoloGtold1/train/18845.png +../../data/yoloGtold1/train/18846.png +../../data/yoloGtold1/train/18847.png +../../data/yoloGtold1/train/18848.png +../../data/yoloGtold1/train/18849.png +../../data/yoloGtold1/train/18850.png +../../data/yoloGtold1/train/18851.png +../../data/yoloGtold1/train/18852.png +../../data/yoloGtold1/train/18853.png +../../data/yoloGtold1/train/18854.png +../../data/yoloGtold1/train/18855.png +../../data/yoloGtold1/train/18856.png +../../data/yoloGtold1/train/18857.png +../../data/yoloGtold1/train/18858.png +../../data/yoloGtold1/train/18859.png +../../data/yoloGtold1/train/18860.png +../../data/yoloGtold1/train/18861.png +../../data/yoloGtold1/train/18862.png +../../data/yoloGtold1/train/18863.png +../../data/yoloGtold1/train/18864.png +../../data/yoloGtold1/train/18865.png +../../data/yoloGtold1/train/18866.png +../../data/yoloGtold1/train/18867.png +../../data/yoloGtold1/train/18868.png +../../data/yoloGtold1/train/18869.png +../../data/yoloGtold1/train/18870.png +../../data/yoloGtold1/train/18871.png +../../data/yoloGtold1/train/18872.png +../../data/yoloGtold1/train/18873.png +../../data/yoloGtold1/train/18874.png +../../data/yoloGtold1/train/18875.png +../../data/yoloGtold1/train/18876.png +../../data/yoloGtold1/train/18877.png +../../data/yoloGtold1/train/18878.png +../../data/yoloGtold1/train/18879.png +../../data/yoloGtold1/train/18880.png +../../data/yoloGtold1/train/18881.png +../../data/yoloGtold1/train/18882.png +../../data/yoloGtold1/train/18883.png +../../data/yoloGtold1/train/18884.png +../../data/yoloGtold1/train/18885.png +../../data/yoloGtold1/train/18886.png +../../data/yoloGtold1/train/18887.png +../../data/yoloGtold1/train/18888.png +../../data/yoloGtold1/train/18889.png +../../data/yoloGtold1/train/18890.png +../../data/yoloGtold1/train/18891.png +../../data/yoloGtold1/train/18892.png +../../data/yoloGtold1/train/18893.png +../../data/yoloGtold1/train/18894.png +../../data/yoloGtold1/train/18895.png +../../data/yoloGtold1/train/18896.png +../../data/yoloGtold1/train/18897.png +../../data/yoloGtold1/train/18898.png +../../data/yoloGtold1/train/18899.png +../../data/yoloGtold1/train/18900.png +../../data/yoloGtold1/train/18901.png +../../data/yoloGtold1/train/18902.png +../../data/yoloGtold1/train/18903.png +../../data/yoloGtold1/train/18904.png +../../data/yoloGtold1/train/18905.png +../../data/yoloGtold1/train/18906.png +../../data/yoloGtold1/train/18907.png +../../data/yoloGtold1/train/18908.png +../../data/yoloGtold1/train/18909.png +../../data/yoloGtold1/train/18910.png +../../data/yoloGtold1/train/18911.png +../../data/yoloGtold1/train/18912.png +../../data/yoloGtold1/train/18913.png +../../data/yoloGtold1/train/18914.png +../../data/yoloGtold1/train/18915.png +../../data/yoloGtold1/train/18916.png +../../data/yoloGtold1/train/18917.png +../../data/yoloGtold1/train/18918.png +../../data/yoloGtold1/train/18919.png +../../data/yoloGtold1/train/18920.png +../../data/yoloGtold1/train/18921.png +../../data/yoloGtold1/train/18922.png +../../data/yoloGtold1/train/18923.png +../../data/yoloGtold1/train/18924.png +../../data/yoloGtold1/train/18925.png +../../data/yoloGtold1/train/18926.png +../../data/yoloGtold1/train/18927.png +../../data/yoloGtold1/train/18928.png +../../data/yoloGtold1/train/18929.png +../../data/yoloGtold1/train/18930.png +../../data/yoloGtold1/train/18931.png +../../data/yoloGtold1/train/18932.png +../../data/yoloGtold1/train/18933.png +../../data/yoloGtold1/train/18934.png +../../data/yoloGtold1/train/18935.png +../../data/yoloGtold1/train/18936.png +../../data/yoloGtold1/train/18937.png +../../data/yoloGtold1/train/18938.png +../../data/yoloGtold1/train/18939.png +../../data/yoloGtold1/train/18940.png +../../data/yoloGtold1/train/18941.png +../../data/yoloGtold1/train/18942.png +../../data/yoloGtold1/train/18943.png +../../data/yoloGtold1/train/18944.png +../../data/yoloGtold1/train/18945.png +../../data/yoloGtold1/train/18946.png +../../data/yoloGtold1/train/18947.png +../../data/yoloGtold1/train/18948.png +../../data/yoloGtold1/train/18949.png +../../data/yoloGtold1/train/18950.png +../../data/yoloGtold1/train/18951.png +../../data/yoloGtold1/train/18952.png +../../data/yoloGtold1/train/18953.png +../../data/yoloGtold1/train/18954.png +../../data/yoloGtold1/train/18955.png +../../data/yoloGtold1/train/18956.png +../../data/yoloGtold1/train/18957.png +../../data/yoloGtold1/train/18958.png +../../data/yoloGtold1/train/18959.png +../../data/yoloGtold1/train/18960.png +../../data/yoloGtold1/train/18961.png +../../data/yoloGtold1/train/18962.png +../../data/yoloGtold1/train/18963.png +../../data/yoloGtold1/train/18964.png +../../data/yoloGtold1/train/18965.png +../../data/yoloGtold1/train/18966.png +../../data/yoloGtold1/train/18967.png +../../data/yoloGtold1/train/18968.png +../../data/yoloGtold1/train/18969.png +../../data/yoloGtold1/train/18970.png +../../data/yoloGtold1/train/18971.png +../../data/yoloGtold1/train/18972.png +../../data/yoloGtold1/train/18973.png +../../data/yoloGtold1/train/18974.png +../../data/yoloGtold1/train/18975.png +../../data/yoloGtold1/train/18976.png +../../data/yoloGtold1/train/18977.png +../../data/yoloGtold1/train/18978.png +../../data/yoloGtold1/train/18979.png +../../data/yoloGtold1/train/18980.png +../../data/yoloGtold1/train/18981.png +../../data/yoloGtold1/train/18982.png +../../data/yoloGtold1/train/18983.png +../../data/yoloGtold1/train/18984.png +../../data/yoloGtold1/train/18985.png +../../data/yoloGtold1/train/18986.png +../../data/yoloGtold1/train/18987.png +../../data/yoloGtold1/train/18988.png +../../data/yoloGtold1/train/18989.png +../../data/yoloGtold1/train/18990.png +../../data/yoloGtold1/train/18991.png +../../data/yoloGtold1/train/18992.png +../../data/yoloGtold1/train/18993.png +../../data/yoloGtold1/train/18994.png +../../data/yoloGtold1/train/18995.png +../../data/yoloGtold1/train/18996.png +../../data/yoloGtold1/train/18997.png +../../data/yoloGtold1/train/18998.png +../../data/yoloGtold1/train/18999.png +../../data/yoloGtold1/train/19000.png +../../data/yoloGtold1/train/19001.png +../../data/yoloGtold1/train/19002.png +../../data/yoloGtold1/train/19003.png +../../data/yoloGtold1/train/19004.png +../../data/yoloGtold1/train/19005.png +../../data/yoloGtold1/train/19006.png +../../data/yoloGtold1/train/19007.png +../../data/yoloGtold1/train/19008.png +../../data/yoloGtold1/train/19009.png +../../data/yoloGtold1/train/19010.png +../../data/yoloGtold1/train/19011.png +../../data/yoloGtold1/train/19012.png +../../data/yoloGtold1/train/19013.png +../../data/yoloGtold1/train/19014.png +../../data/yoloGtold1/train/19015.png +../../data/yoloGtold1/train/19016.png +../../data/yoloGtold1/train/19017.png +../../data/yoloGtold1/train/19018.png +../../data/yoloGtold1/train/19019.png +../../data/yoloGtold1/train/19020.png +../../data/yoloGtold1/train/19021.png +../../data/yoloGtold1/train/19022.png +../../data/yoloGtold1/train/19023.png +../../data/yoloGtold1/train/19024.png +../../data/yoloGtold1/train/19025.png +../../data/yoloGtold1/train/19026.png +../../data/yoloGtold1/train/19027.png +../../data/yoloGtold1/train/19028.png +../../data/yoloGtold1/train/19029.png +../../data/yoloGtold1/train/19030.png +../../data/yoloGtold1/train/19031.png +../../data/yoloGtold1/train/19032.png +../../data/yoloGtold1/train/19033.png +../../data/yoloGtold1/train/19034.png +../../data/yoloGtold1/train/19035.png +../../data/yoloGtold1/train/19036.png +../../data/yoloGtold1/train/19037.png +../../data/yoloGtold1/train/19038.png +../../data/yoloGtold1/train/19039.png +../../data/yoloGtold1/train/19040.png +../../data/yoloGtold1/train/19041.png +../../data/yoloGtold1/train/19042.png +../../data/yoloGtold1/train/19043.png +../../data/yoloGtold1/train/19044.png +../../data/yoloGtold1/train/19045.png +../../data/yoloGtold1/train/19046.png +../../data/yoloGtold1/train/19047.png +../../data/yoloGtold1/train/19048.png +../../data/yoloGtold1/train/19049.png +../../data/yoloGtold1/train/19050.png +../../data/yoloGtold1/train/19051.png +../../data/yoloGtold1/train/19052.png +../../data/yoloGtold1/train/19053.png +../../data/yoloGtold1/train/19054.png +../../data/yoloGtold1/train/19055.png +../../data/yoloGtold1/train/19056.png +../../data/yoloGtold1/train/19057.png +../../data/yoloGtold1/train/19058.png +../../data/yoloGtold1/train/19059.png +../../data/yoloGtold1/train/19060.png +../../data/yoloGtold1/train/19061.png +../../data/yoloGtold1/train/19062.png +../../data/yoloGtold1/train/19063.png +../../data/yoloGtold1/train/19064.png +../../data/yoloGtold1/train/19065.png +../../data/yoloGtold1/train/19066.png +../../data/yoloGtold1/train/19067.png +../../data/yoloGtold1/train/19068.png +../../data/yoloGtold1/train/19069.png +../../data/yoloGtold1/train/19070.png +../../data/yoloGtold1/train/19071.png +../../data/yoloGtold1/train/19072.png +../../data/yoloGtold1/train/19073.png +../../data/yoloGtold1/train/19074.png +../../data/yoloGtold1/train/19075.png +../../data/yoloGtold1/train/19076.png +../../data/yoloGtold1/train/19077.png +../../data/yoloGtold1/train/19078.png +../../data/yoloGtold1/train/19079.png +../../data/yoloGtold1/train/19080.png +../../data/yoloGtold1/train/19081.png +../../data/yoloGtold1/train/19082.png +../../data/yoloGtold1/train/19083.png +../../data/yoloGtold1/train/19084.png +../../data/yoloGtold1/train/19085.png +../../data/yoloGtold1/train/19086.png +../../data/yoloGtold1/train/19087.png +../../data/yoloGtold1/train/19088.png +../../data/yoloGtold1/train/19089.png +../../data/yoloGtold1/train/19090.png +../../data/yoloGtold1/train/19091.png +../../data/yoloGtold1/train/19092.png +../../data/yoloGtold1/train/19093.png +../../data/yoloGtold1/train/19094.png +../../data/yoloGtold1/train/19095.png +../../data/yoloGtold1/train/19096.png +../../data/yoloGtold1/train/19097.png +../../data/yoloGtold1/train/19098.png +../../data/yoloGtold1/train/19099.png +../../data/yoloGtold1/train/19100.png +../../data/yoloGtold1/train/19101.png +../../data/yoloGtold1/train/19102.png +../../data/yoloGtold1/train/19103.png +../../data/yoloGtold1/train/19104.png +../../data/yoloGtold1/train/19105.png +../../data/yoloGtold1/train/19106.png +../../data/yoloGtold1/train/19107.png +../../data/yoloGtold1/train/19108.png +../../data/yoloGtold1/train/19109.png +../../data/yoloGtold1/train/19110.png +../../data/yoloGtold1/train/19111.png +../../data/yoloGtold1/train/19112.png +../../data/yoloGtold1/train/19113.png +../../data/yoloGtold1/train/19114.png +../../data/yoloGtold1/train/19115.png +../../data/yoloGtold1/train/19116.png +../../data/yoloGtold1/train/19117.png +../../data/yoloGtold1/train/19118.png +../../data/yoloGtold1/train/19119.png +../../data/yoloGtold1/train/19120.png +../../data/yoloGtold1/train/19121.png +../../data/yoloGtold1/train/19122.png +../../data/yoloGtold1/train/19123.png +../../data/yoloGtold1/train/19124.png +../../data/yoloGtold1/train/19125.png +../../data/yoloGtold1/train/19126.png +../../data/yoloGtold1/train/19127.png +../../data/yoloGtold1/train/19128.png +../../data/yoloGtold1/train/19129.png +../../data/yoloGtold1/train/19130.png +../../data/yoloGtold1/train/19131.png +../../data/yoloGtold1/train/19132.png +../../data/yoloGtold1/train/19133.png +../../data/yoloGtold1/train/19134.png +../../data/yoloGtold1/train/19135.png +../../data/yoloGtold1/train/19136.png +../../data/yoloGtold1/train/19137.png +../../data/yoloGtold1/train/19138.png +../../data/yoloGtold1/train/19139.png +../../data/yoloGtold1/train/19140.png +../../data/yoloGtold1/train/19141.png +../../data/yoloGtold1/train/19142.png +../../data/yoloGtold1/train/19143.png +../../data/yoloGtold1/train/19144.png +../../data/yoloGtold1/train/19145.png +../../data/yoloGtold1/train/19146.png +../../data/yoloGtold1/train/19147.png +../../data/yoloGtold1/train/19148.png +../../data/yoloGtold1/train/19149.png +../../data/yoloGtold1/train/19150.png +../../data/yoloGtold1/train/19151.png +../../data/yoloGtold1/train/19152.png +../../data/yoloGtold1/train/19153.png +../../data/yoloGtold1/train/19154.png +../../data/yoloGtold1/train/19155.png +../../data/yoloGtold1/train/19156.png +../../data/yoloGtold1/train/19157.png +../../data/yoloGtold1/train/19158.png +../../data/yoloGtold1/train/19159.png +../../data/yoloGtold1/train/19160.png +../../data/yoloGtold1/train/19161.png +../../data/yoloGtold1/train/19162.png +../../data/yoloGtold1/train/19163.png +../../data/yoloGtold1/train/19164.png +../../data/yoloGtold1/train/19165.png +../../data/yoloGtold1/train/19166.png +../../data/yoloGtold1/train/19167.png +../../data/yoloGtold1/train/19168.png +../../data/yoloGtold1/train/19169.png +../../data/yoloGtold1/train/19170.png +../../data/yoloGtold1/train/19171.png +../../data/yoloGtold1/train/19172.png +../../data/yoloGtold1/train/19173.png +../../data/yoloGtold1/train/19174.png +../../data/yoloGtold1/train/19175.png +../../data/yoloGtold1/train/19176.png +../../data/yoloGtold1/train/19177.png +../../data/yoloGtold1/train/19178.png +../../data/yoloGtold1/train/19179.png +../../data/yoloGtold1/train/19180.png +../../data/yoloGtold1/train/19181.png +../../data/yoloGtold1/train/19182.png +../../data/yoloGtold1/train/19183.png +../../data/yoloGtold1/train/19184.png +../../data/yoloGtold1/train/19185.png +../../data/yoloGtold1/train/19186.png +../../data/yoloGtold1/train/19187.png +../../data/yoloGtold1/train/19188.png +../../data/yoloGtold1/train/19189.png +../../data/yoloGtold1/train/19190.png +../../data/yoloGtold1/train/19191.png +../../data/yoloGtold1/train/19192.png +../../data/yoloGtold1/train/19193.png +../../data/yoloGtold1/train/19194.png +../../data/yoloGtold1/train/19195.png +../../data/yoloGtold1/train/19196.png +../../data/yoloGtold1/train/19197.png +../../data/yoloGtold1/train/19198.png +../../data/yoloGtold1/train/19199.png +../../data/yoloGtold1/train/19200.png +../../data/yoloGtold1/train/19201.png +../../data/yoloGtold1/train/19202.png +../../data/yoloGtold1/train/19203.png +../../data/yoloGtold1/train/19204.png +../../data/yoloGtold1/train/19205.png +../../data/yoloGtold1/train/19206.png +../../data/yoloGtold1/train/19207.png +../../data/yoloGtold1/train/19208.png +../../data/yoloGtold1/train/19209.png +../../data/yoloGtold1/train/19210.png +../../data/yoloGtold1/train/19211.png +../../data/yoloGtold1/train/19212.png +../../data/yoloGtold1/train/19213.png +../../data/yoloGtold1/train/19214.png +../../data/yoloGtold1/train/19215.png +../../data/yoloGtold1/train/19216.png +../../data/yoloGtold1/train/19217.png +../../data/yoloGtold1/train/19218.png +../../data/yoloGtold1/train/19219.png +../../data/yoloGtold1/train/19220.png +../../data/yoloGtold1/train/19221.png +../../data/yoloGtold1/train/19222.png +../../data/yoloGtold1/train/19223.png +../../data/yoloGtold1/train/19224.png +../../data/yoloGtold1/train/19225.png +../../data/yoloGtold1/train/19226.png +../../data/yoloGtold1/train/19227.png +../../data/yoloGtold1/train/19228.png +../../data/yoloGtold1/train/19229.png +../../data/yoloGtold1/train/19230.png +../../data/yoloGtold1/train/19231.png +../../data/yoloGtold1/train/19232.png +../../data/yoloGtold1/train/19233.png +../../data/yoloGtold1/train/19234.png +../../data/yoloGtold1/train/19235.png +../../data/yoloGtold1/train/19236.png +../../data/yoloGtold1/train/19237.png +../../data/yoloGtold1/train/19238.png +../../data/yoloGtold1/train/19239.png +../../data/yoloGtold1/train/19240.png +../../data/yoloGtold1/train/19241.png +../../data/yoloGtold1/train/19242.png +../../data/yoloGtold1/train/19243.png +../../data/yoloGtold1/train/19244.png +../../data/yoloGtold1/train/19245.png +../../data/yoloGtold1/train/19246.png +../../data/yoloGtold1/train/19247.png +../../data/yoloGtold1/train/19248.png +../../data/yoloGtold1/train/19249.png +../../data/yoloGtold1/train/19250.png +../../data/yoloGtold1/train/19251.png +../../data/yoloGtold1/train/19252.png +../../data/yoloGtold1/train/19253.png +../../data/yoloGtold1/train/19254.png +../../data/yoloGtold1/train/19255.png +../../data/yoloGtold1/train/19256.png +../../data/yoloGtold1/train/19257.png +../../data/yoloGtold1/train/19258.png +../../data/yoloGtold1/train/19259.png +../../data/yoloGtold1/train/19260.png +../../data/yoloGtold1/train/19261.png +../../data/yoloGtold1/train/19262.png +../../data/yoloGtold1/train/19263.png +../../data/yoloGtold1/train/19264.png +../../data/yoloGtold1/train/19265.png +../../data/yoloGtold1/train/19266.png +../../data/yoloGtold1/train/19267.png +../../data/yoloGtold1/train/19268.png +../../data/yoloGtold1/train/19269.png +../../data/yoloGtold1/train/19270.png +../../data/yoloGtold1/train/19271.png +../../data/yoloGtold1/train/19272.png +../../data/yoloGtold1/train/19273.png +../../data/yoloGtold1/train/19274.png +../../data/yoloGtold1/train/19275.png +../../data/yoloGtold1/train/19276.png +../../data/yoloGtold1/train/19277.png +../../data/yoloGtold1/train/19278.png +../../data/yoloGtold1/train/19279.png +../../data/yoloGtold1/train/19280.png +../../data/yoloGtold1/train/19281.png +../../data/yoloGtold1/train/19282.png +../../data/yoloGtold1/train/19283.png +../../data/yoloGtold1/train/19284.png +../../data/yoloGtold1/train/19285.png +../../data/yoloGtold1/train/19286.png +../../data/yoloGtold1/train/19287.png +../../data/yoloGtold1/train/19288.png +../../data/yoloGtold1/train/19289.png +../../data/yoloGtold1/train/19290.png +../../data/yoloGtold1/train/19291.png +../../data/yoloGtold1/train/19292.png +../../data/yoloGtold1/train/19293.png +../../data/yoloGtold1/train/19294.png +../../data/yoloGtold1/train/19295.png +../../data/yoloGtold1/train/19296.png +../../data/yoloGtold1/train/19297.png +../../data/yoloGtold1/train/19298.png +../../data/yoloGtold1/train/19299.png +../../data/yoloGtold1/train/19300.png +../../data/yoloGtold1/train/19301.png +../../data/yoloGtold1/train/19302.png +../../data/yoloGtold1/train/19303.png +../../data/yoloGtold1/train/19304.png +../../data/yoloGtold1/train/19305.png +../../data/yoloGtold1/train/19306.png +../../data/yoloGtold1/train/19307.png +../../data/yoloGtold1/train/19308.png +../../data/yoloGtold1/train/19309.png +../../data/yoloGtold1/train/19310.png +../../data/yoloGtold1/train/19311.png +../../data/yoloGtold1/train/19312.png +../../data/yoloGtold1/train/19313.png +../../data/yoloGtold1/train/19314.png +../../data/yoloGtold1/train/19315.png +../../data/yoloGtold1/train/19316.png +../../data/yoloGtold1/train/19317.png +../../data/yoloGtold1/train/19318.png +../../data/yoloGtold1/train/19319.png +../../data/yoloGtold1/train/19320.png +../../data/yoloGtold1/train/19321.png +../../data/yoloGtold1/train/19322.png +../../data/yoloGtold1/train/19323.png +../../data/yoloGtold1/train/19324.png +../../data/yoloGtold1/train/19325.png +../../data/yoloGtold1/train/19326.png +../../data/yoloGtold1/train/19327.png +../../data/yoloGtold1/train/19328.png +../../data/yoloGtold1/train/19329.png +../../data/yoloGtold1/train/19330.png +../../data/yoloGtold1/train/19331.png +../../data/yoloGtold1/train/19332.png +../../data/yoloGtold1/train/19333.png +../../data/yoloGtold1/train/19334.png +../../data/yoloGtold1/train/19335.png +../../data/yoloGtold1/train/19336.png +../../data/yoloGtold1/train/19337.png +../../data/yoloGtold1/train/19338.png +../../data/yoloGtold1/train/19339.png +../../data/yoloGtold1/train/19340.png +../../data/yoloGtold1/train/19341.png +../../data/yoloGtold1/train/19342.png +../../data/yoloGtold1/train/19343.png +../../data/yoloGtold1/train/19344.png +../../data/yoloGtold1/train/19345.png +../../data/yoloGtold1/train/19346.png +../../data/yoloGtold1/train/19347.png +../../data/yoloGtold1/train/19348.png +../../data/yoloGtold1/train/19349.png +../../data/yoloGtold1/train/19350.png +../../data/yoloGtold1/train/19351.png +../../data/yoloGtold1/train/19352.png +../../data/yoloGtold1/train/19353.png +../../data/yoloGtold1/train/19354.png +../../data/yoloGtold1/train/19355.png +../../data/yoloGtold1/train/19356.png +../../data/yoloGtold1/train/19357.png +../../data/yoloGtold1/train/19358.png +../../data/yoloGtold1/train/19359.png +../../data/yoloGtold1/train/19360.png +../../data/yoloGtold1/train/19361.png +../../data/yoloGtold1/train/19362.png +../../data/yoloGtold1/train/19363.png +../../data/yoloGtold1/train/19364.png +../../data/yoloGtold1/train/19365.png +../../data/yoloGtold1/train/19366.png +../../data/yoloGtold1/train/19367.png +../../data/yoloGtold1/train/19368.png +../../data/yoloGtold1/train/19369.png +../../data/yoloGtold1/train/19370.png +../../data/yoloGtold1/train/19371.png +../../data/yoloGtold1/train/19372.png +../../data/yoloGtold1/train/19373.png +../../data/yoloGtold1/train/19374.png +../../data/yoloGtold1/train/19375.png +../../data/yoloGtold1/train/19376.png +../../data/yoloGtold1/train/19377.png +../../data/yoloGtold1/train/19378.png +../../data/yoloGtold1/train/19379.png +../../data/yoloGtold1/train/19380.png +../../data/yoloGtold1/train/19381.png +../../data/yoloGtold1/train/19382.png +../../data/yoloGtold1/train/19383.png +../../data/yoloGtold1/train/19384.png +../../data/yoloGtold1/train/19385.png +../../data/yoloGtold1/train/19386.png +../../data/yoloGtold1/train/19387.png +../../data/yoloGtold1/train/19388.png +../../data/yoloGtold1/train/19389.png +../../data/yoloGtold1/train/19390.png +../../data/yoloGtold1/train/19391.png +../../data/yoloGtold1/train/19392.png +../../data/yoloGtold1/train/19393.png +../../data/yoloGtold1/train/19394.png +../../data/yoloGtold1/train/19395.png +../../data/yoloGtold1/train/19396.png +../../data/yoloGtold1/train/19397.png +../../data/yoloGtold1/train/19398.png +../../data/yoloGtold1/train/19399.png +../../data/yoloGtold1/train/19400.png +../../data/yoloGtold1/train/19401.png +../../data/yoloGtold1/train/19402.png +../../data/yoloGtold1/train/19403.png +../../data/yoloGtold1/train/19404.png +../../data/yoloGtold1/train/19405.png +../../data/yoloGtold1/train/19406.png +../../data/yoloGtold1/train/19407.png +../../data/yoloGtold1/train/19408.png +../../data/yoloGtold1/train/19409.png +../../data/yoloGtold1/train/19410.png +../../data/yoloGtold1/train/19411.png +../../data/yoloGtold1/train/19412.png +../../data/yoloGtold1/train/19413.png +../../data/yoloGtold1/train/19414.png +../../data/yoloGtold1/train/19415.png +../../data/yoloGtold1/train/19416.png +../../data/yoloGtold1/train/19417.png +../../data/yoloGtold1/train/19418.png +../../data/yoloGtold1/train/19419.png +../../data/yoloGtold1/train/19420.png +../../data/yoloGtold1/train/19421.png +../../data/yoloGtold1/train/19422.png +../../data/yoloGtold1/train/19423.png +../../data/yoloGtold1/train/19424.png +../../data/yoloGtold1/train/19425.png +../../data/yoloGtold1/train/19426.png +../../data/yoloGtold1/train/19427.png +../../data/yoloGtold1/train/19428.png +../../data/yoloGtold1/train/19429.png +../../data/yoloGtold1/train/19430.png +../../data/yoloGtold1/train/19431.png +../../data/yoloGtold1/train/19432.png +../../data/yoloGtold1/train/19433.png +../../data/yoloGtold1/train/19434.png +../../data/yoloGtold1/train/19435.png +../../data/yoloGtold1/train/19436.png +../../data/yoloGtold1/train/19437.png +../../data/yoloGtold1/train/19438.png +../../data/yoloGtold1/train/19439.png +../../data/yoloGtold1/train/19440.png +../../data/yoloGtold1/train/19441.png +../../data/yoloGtold1/train/19442.png +../../data/yoloGtold1/train/19443.png +../../data/yoloGtold1/train/19444.png +../../data/yoloGtold1/train/19445.png +../../data/yoloGtold1/train/19446.png +../../data/yoloGtold1/train/19447.png +../../data/yoloGtold1/train/19448.png +../../data/yoloGtold1/train/19449.png +../../data/yoloGtold1/train/19450.png +../../data/yoloGtold1/train/19451.png +../../data/yoloGtold1/train/19452.png +../../data/yoloGtold1/train/19453.png +../../data/yoloGtold1/train/19454.png +../../data/yoloGtold1/train/19455.png +../../data/yoloGtold1/train/19456.png +../../data/yoloGtold1/train/19457.png +../../data/yoloGtold1/train/19458.png +../../data/yoloGtold1/train/19459.png +../../data/yoloGtold1/train/19460.png +../../data/yoloGtold1/train/19461.png +../../data/yoloGtold1/train/19462.png +../../data/yoloGtold1/train/19463.png +../../data/yoloGtold1/train/19464.png +../../data/yoloGtold1/train/19465.png +../../data/yoloGtold1/train/19466.png +../../data/yoloGtold1/train/19467.png +../../data/yoloGtold1/train/19468.png +../../data/yoloGtold1/train/19469.png +../../data/yoloGtold1/train/19470.png +../../data/yoloGtold1/train/19471.png +../../data/yoloGtold1/train/19472.png +../../data/yoloGtold1/train/19473.png +../../data/yoloGtold1/train/19474.png +../../data/yoloGtold1/train/19475.png +../../data/yoloGtold1/train/19476.png +../../data/yoloGtold1/train/19477.png +../../data/yoloGtold1/train/19478.png +../../data/yoloGtold1/train/19479.png +../../data/yoloGtold1/train/19480.png +../../data/yoloGtold1/train/19481.png +../../data/yoloGtold1/train/19482.png +../../data/yoloGtold1/train/19483.png +../../data/yoloGtold1/train/19484.png +../../data/yoloGtold1/train/19485.png +../../data/yoloGtold1/train/19486.png +../../data/yoloGtold1/train/19487.png +../../data/yoloGtold1/train/19488.png +../../data/yoloGtold1/train/19489.png +../../data/yoloGtold1/train/19490.png +../../data/yoloGtold1/train/19491.png +../../data/yoloGtold1/train/19492.png +../../data/yoloGtold1/train/19493.png +../../data/yoloGtold1/train/19494.png +../../data/yoloGtold1/train/19495.png +../../data/yoloGtold1/train/19496.png +../../data/yoloGtold1/train/19497.png +../../data/yoloGtold1/train/19498.png +../../data/yoloGtold1/train/19499.png +../../data/yoloGtold1/train/19500.png +../../data/yoloGtold1/train/19501.png +../../data/yoloGtold1/train/19502.png +../../data/yoloGtold1/train/19503.png +../../data/yoloGtold1/train/19504.png +../../data/yoloGtold1/train/19505.png +../../data/yoloGtold1/train/19506.png +../../data/yoloGtold1/train/19507.png +../../data/yoloGtold1/train/19508.png +../../data/yoloGtold1/train/19509.png +../../data/yoloGtold1/train/19510.png +../../data/yoloGtold1/train/19511.png +../../data/yoloGtold1/train/19512.png +../../data/yoloGtold1/train/19513.png +../../data/yoloGtold1/train/19514.png +../../data/yoloGtold1/train/19515.png +../../data/yoloGtold1/train/19516.png +../../data/yoloGtold1/train/19517.png +../../data/yoloGtold1/train/19518.png +../../data/yoloGtold1/train/19519.png +../../data/yoloGtold1/train/19520.png +../../data/yoloGtold1/train/19521.png +../../data/yoloGtold1/train/19522.png +../../data/yoloGtold1/train/19523.png +../../data/yoloGtold1/train/19524.png +../../data/yoloGtold1/train/19525.png +../../data/yoloGtold1/train/19526.png +../../data/yoloGtold1/train/19527.png +../../data/yoloGtold1/train/19528.png +../../data/yoloGtold1/train/19529.png +../../data/yoloGtold1/train/19530.png +../../data/yoloGtold1/train/19531.png +../../data/yoloGtold1/train/19532.png +../../data/yoloGtold1/train/19533.png +../../data/yoloGtold1/train/19534.png +../../data/yoloGtold1/train/19535.png +../../data/yoloGtold1/train/19536.png +../../data/yoloGtold1/train/19537.png +../../data/yoloGtold1/train/19538.png +../../data/yoloGtold1/train/19539.png +../../data/yoloGtold1/train/19540.png +../../data/yoloGtold1/train/19541.png +../../data/yoloGtold1/train/19542.png +../../data/yoloGtold1/train/19543.png +../../data/yoloGtold1/train/19544.png +../../data/yoloGtold1/train/19545.png +../../data/yoloGtold1/train/19546.png +../../data/yoloGtold1/train/19547.png +../../data/yoloGtold1/train/19548.png +../../data/yoloGtold1/train/19549.png +../../data/yoloGtold1/train/19550.png +../../data/yoloGtold1/train/19551.png +../../data/yoloGtold1/train/19552.png +../../data/yoloGtold1/train/19553.png +../../data/yoloGtold1/train/19554.png +../../data/yoloGtold1/train/19555.png +../../data/yoloGtold1/train/19556.png +../../data/yoloGtold1/train/19557.png +../../data/yoloGtold1/train/19558.png +../../data/yoloGtold1/train/19559.png +../../data/yoloGtold1/train/19560.png +../../data/yoloGtold1/train/19561.png +../../data/yoloGtold1/train/19562.png +../../data/yoloGtold1/train/19563.png +../../data/yoloGtold1/train/19564.png +../../data/yoloGtold1/train/19565.png +../../data/yoloGtold1/train/19566.png +../../data/yoloGtold1/train/19567.png +../../data/yoloGtold1/train/19568.png +../../data/yoloGtold1/train/19569.png +../../data/yoloGtold1/train/19570.png +../../data/yoloGtold1/train/19571.png +../../data/yoloGtold1/train/19572.png +../../data/yoloGtold1/train/19573.png +../../data/yoloGtold1/train/19574.png +../../data/yoloGtold1/train/19575.png +../../data/yoloGtold1/train/19576.png +../../data/yoloGtold1/train/19577.png +../../data/yoloGtold1/train/19578.png +../../data/yoloGtold1/train/19579.png +../../data/yoloGtold1/train/19580.png +../../data/yoloGtold1/train/19581.png +../../data/yoloGtold1/train/19582.png +../../data/yoloGtold1/train/19583.png +../../data/yoloGtold1/train/19584.png +../../data/yoloGtold1/train/19585.png +../../data/yoloGtold1/train/19586.png +../../data/yoloGtold1/train/19587.png +../../data/yoloGtold1/train/19588.png +../../data/yoloGtold1/train/19589.png +../../data/yoloGtold1/train/19590.png +../../data/yoloGtold1/train/19591.png +../../data/yoloGtold1/train/19592.png +../../data/yoloGtold1/train/19593.png +../../data/yoloGtold1/train/19594.png +../../data/yoloGtold1/train/19595.png +../../data/yoloGtold1/train/19596.png +../../data/yoloGtold1/train/19597.png +../../data/yoloGtold1/train/19598.png +../../data/yoloGtold1/train/19599.png +../../data/yoloGtold1/train/19600.png +../../data/yoloGtold1/train/19601.png +../../data/yoloGtold1/train/19602.png +../../data/yoloGtold1/train/19603.png +../../data/yoloGtold1/train/19604.png +../../data/yoloGtold1/train/19605.png +../../data/yoloGtold1/train/19606.png +../../data/yoloGtold1/train/19607.png +../../data/yoloGtold1/train/19608.png +../../data/yoloGtold1/train/19609.png +../../data/yoloGtold1/train/19610.png +../../data/yoloGtold1/train/19611.png +../../data/yoloGtold1/train/19612.png +../../data/yoloGtold1/train/19613.png +../../data/yoloGtold1/train/19614.png +../../data/yoloGtold1/train/19615.png +../../data/yoloGtold1/train/19616.png +../../data/yoloGtold1/train/19617.png +../../data/yoloGtold1/train/19618.png +../../data/yoloGtold1/train/19619.png +../../data/yoloGtold1/train/19620.png +../../data/yoloGtold1/train/19621.png +../../data/yoloGtold1/train/19622.png +../../data/yoloGtold1/train/19623.png +../../data/yoloGtold1/train/19624.png +../../data/yoloGtold1/train/19625.png +../../data/yoloGtold1/train/19626.png +../../data/yoloGtold1/train/19627.png +../../data/yoloGtold1/train/19628.png +../../data/yoloGtold1/train/19629.png +../../data/yoloGtold1/train/19630.png +../../data/yoloGtold1/train/19631.png +../../data/yoloGtold1/train/19632.png +../../data/yoloGtold1/train/19633.png +../../data/yoloGtold1/train/19634.png +../../data/yoloGtold1/train/19635.png +../../data/yoloGtold1/train/19636.png +../../data/yoloGtold1/train/19637.png +../../data/yoloGtold1/train/19638.png +../../data/yoloGtold1/train/19639.png +../../data/yoloGtold1/train/19640.png +../../data/yoloGtold1/train/19641.png +../../data/yoloGtold1/train/19642.png +../../data/yoloGtold1/train/19643.png +../../data/yoloGtold1/train/19644.png +../../data/yoloGtold1/train/19645.png +../../data/yoloGtold1/train/19646.png +../../data/yoloGtold1/train/19647.png +../../data/yoloGtold1/train/19648.png +../../data/yoloGtold1/train/19649.png +../../data/yoloGtold1/train/19650.png +../../data/yoloGtold1/train/19651.png +../../data/yoloGtold1/train/19652.png +../../data/yoloGtold1/train/19653.png +../../data/yoloGtold1/train/19654.png +../../data/yoloGtold1/train/19655.png +../../data/yoloGtold1/train/19656.png +../../data/yoloGtold1/train/19657.png +../../data/yoloGtold1/train/19658.png +../../data/yoloGtold1/train/19659.png +../../data/yoloGtold1/train/19660.png +../../data/yoloGtold1/train/19661.png +../../data/yoloGtold1/train/19662.png +../../data/yoloGtold1/train/19663.png +../../data/yoloGtold1/train/19664.png +../../data/yoloGtold1/train/19665.png +../../data/yoloGtold1/train/19666.png +../../data/yoloGtold1/train/19667.png +../../data/yoloGtold1/train/19668.png +../../data/yoloGtold1/train/19669.png +../../data/yoloGtold1/train/19670.png +../../data/yoloGtold1/train/19671.png +../../data/yoloGtold1/train/19672.png +../../data/yoloGtold1/train/19673.png +../../data/yoloGtold1/train/19674.png +../../data/yoloGtold1/train/19675.png +../../data/yoloGtold1/train/19676.png +../../data/yoloGtold1/train/19677.png +../../data/yoloGtold1/train/19678.png +../../data/yoloGtold1/train/19679.png +../../data/yoloGtold1/train/19680.png +../../data/yoloGtold1/train/19681.png +../../data/yoloGtold1/train/19682.png +../../data/yoloGtold1/train/19683.png +../../data/yoloGtold1/train/19684.png +../../data/yoloGtold1/train/19685.png +../../data/yoloGtold1/train/19686.png +../../data/yoloGtold1/train/19687.png +../../data/yoloGtold1/train/19688.png +../../data/yoloGtold1/train/19689.png +../../data/yoloGtold1/train/19690.png +../../data/yoloGtold1/train/19691.png +../../data/yoloGtold1/train/19692.png +../../data/yoloGtold1/train/19693.png +../../data/yoloGtold1/train/19694.png +../../data/yoloGtold1/train/19695.png +../../data/yoloGtold1/train/19696.png +../../data/yoloGtold1/train/19697.png +../../data/yoloGtold1/train/19698.png +../../data/yoloGtold1/train/19699.png +../../data/yoloGtold1/train/19700.png +../../data/yoloGtold1/train/19701.png +../../data/yoloGtold1/train/19702.png +../../data/yoloGtold1/train/19703.png +../../data/yoloGtold1/train/19704.png +../../data/yoloGtold1/train/19705.png +../../data/yoloGtold1/train/19706.png +../../data/yoloGtold1/train/19707.png +../../data/yoloGtold1/train/19708.png +../../data/yoloGtold1/train/19709.png +../../data/yoloGtold1/train/19710.png +../../data/yoloGtold1/train/19711.png +../../data/yoloGtold1/train/19712.png +../../data/yoloGtold1/train/19713.png +../../data/yoloGtold1/train/19714.png +../../data/yoloGtold1/train/19715.png +../../data/yoloGtold1/train/19716.png +../../data/yoloGtold1/train/19717.png +../../data/yoloGtold1/train/19718.png +../../data/yoloGtold1/train/19719.png +../../data/yoloGtold1/train/19720.png +../../data/yoloGtold1/train/19721.png +../../data/yoloGtold1/train/19722.png +../../data/yoloGtold1/train/19723.png +../../data/yoloGtold1/train/19724.png +../../data/yoloGtold1/train/19725.png +../../data/yoloGtold1/train/19726.png +../../data/yoloGtold1/train/19727.png +../../data/yoloGtold1/train/19728.png +../../data/yoloGtold1/train/19729.png +../../data/yoloGtold1/train/19730.png +../../data/yoloGtold1/train/19731.png +../../data/yoloGtold1/train/19732.png +../../data/yoloGtold1/train/19733.png +../../data/yoloGtold1/train/19734.png +../../data/yoloGtold1/train/19735.png +../../data/yoloGtold1/train/19736.png +../../data/yoloGtold1/train/19737.png +../../data/yoloGtold1/train/19738.png +../../data/yoloGtold1/train/19739.png +../../data/yoloGtold1/train/19740.png +../../data/yoloGtold1/train/19741.png +../../data/yoloGtold1/train/19742.png +../../data/yoloGtold1/train/19743.png +../../data/yoloGtold1/train/19744.png +../../data/yoloGtold1/train/19745.png +../../data/yoloGtold1/train/19746.png +../../data/yoloGtold1/train/19747.png +../../data/yoloGtold1/train/19748.png +../../data/yoloGtold1/train/19749.png +../../data/yoloGtold1/train/19750.png +../../data/yoloGtold1/train/19751.png +../../data/yoloGtold1/train/19752.png +../../data/yoloGtold1/train/19753.png +../../data/yoloGtold1/train/19754.png +../../data/yoloGtold1/train/19755.png +../../data/yoloGtold1/train/19756.png +../../data/yoloGtold1/train/19757.png +../../data/yoloGtold1/train/19758.png +../../data/yoloGtold1/train/19759.png +../../data/yoloGtold1/train/19760.png +../../data/yoloGtold1/train/19761.png +../../data/yoloGtold1/train/19762.png +../../data/yoloGtold1/train/19763.png +../../data/yoloGtold1/train/19764.png +../../data/yoloGtold1/train/19765.png +../../data/yoloGtold1/train/19766.png +../../data/yoloGtold1/train/19767.png +../../data/yoloGtold1/train/19768.png +../../data/yoloGtold1/train/19769.png +../../data/yoloGtold1/train/19770.png +../../data/yoloGtold1/train/19771.png +../../data/yoloGtold1/train/19772.png +../../data/yoloGtold1/train/19773.png +../../data/yoloGtold1/train/19774.png +../../data/yoloGtold1/train/19775.png +../../data/yoloGtold1/train/19776.png +../../data/yoloGtold1/train/19777.png +../../data/yoloGtold1/train/19778.png +../../data/yoloGtold1/train/19779.png +../../data/yoloGtold1/train/19780.png +../../data/yoloGtold1/train/19781.png +../../data/yoloGtold1/train/19782.png +../../data/yoloGtold1/train/19783.png +../../data/yoloGtold1/train/19784.png +../../data/yoloGtold1/train/19785.png +../../data/yoloGtold1/train/19786.png +../../data/yoloGtold1/train/19787.png +../../data/yoloGtold1/train/19788.png +../../data/yoloGtold1/train/19789.png +../../data/yoloGtold1/train/19790.png +../../data/yoloGtold1/train/19791.png +../../data/yoloGtold1/train/19792.png +../../data/yoloGtold1/train/19793.png +../../data/yoloGtold1/train/19794.png +../../data/yoloGtold1/train/19795.png +../../data/yoloGtold1/train/19796.png +../../data/yoloGtold1/train/19797.png +../../data/yoloGtold1/train/19798.png +../../data/yoloGtold1/train/19799.png +../../data/yoloGtold1/train/19800.png +../../data/yoloGtold1/train/19801.png +../../data/yoloGtold1/train/19802.png +../../data/yoloGtold1/train/19803.png +../../data/yoloGtold1/train/19804.png +../../data/yoloGtold1/train/19805.png +../../data/yoloGtold1/train/19806.png +../../data/yoloGtold1/train/19807.png +../../data/yoloGtold1/train/19808.png +../../data/yoloGtold1/train/19809.png +../../data/yoloGtold1/train/19810.png +../../data/yoloGtold1/train/19811.png +../../data/yoloGtold1/train/19812.png +../../data/yoloGtold1/train/19813.png +../../data/yoloGtold1/train/19814.png +../../data/yoloGtold1/train/19815.png +../../data/yoloGtold1/train/19816.png +../../data/yoloGtold1/train/19817.png +../../data/yoloGtold1/train/19818.png +../../data/yoloGtold1/train/19819.png +../../data/yoloGtold1/train/19820.png +../../data/yoloGtold1/train/19821.png +../../data/yoloGtold1/train/19822.png +../../data/yoloGtold1/train/19823.png +../../data/yoloGtold1/train/19824.png +../../data/yoloGtold1/train/19825.png +../../data/yoloGtold1/train/19826.png +../../data/yoloGtold1/train/19827.png +../../data/yoloGtold1/train/19828.png +../../data/yoloGtold1/train/19829.png +../../data/yoloGtold1/train/19830.png +../../data/yoloGtold1/train/19831.png +../../data/yoloGtold1/train/19832.png +../../data/yoloGtold1/train/19833.png +../../data/yoloGtold1/train/19834.png +../../data/yoloGtold1/train/19835.png +../../data/yoloGtold1/train/19836.png +../../data/yoloGtold1/train/19837.png +../../data/yoloGtold1/train/19838.png +../../data/yoloGtold1/train/19839.png +../../data/yoloGtold1/train/19840.png +../../data/yoloGtold1/train/19841.png +../../data/yoloGtold1/train/19842.png +../../data/yoloGtold1/train/19843.png +../../data/yoloGtold1/train/19844.png +../../data/yoloGtold1/train/19845.png +../../data/yoloGtold1/train/19846.png +../../data/yoloGtold1/train/19847.png +../../data/yoloGtold1/train/19848.png +../../data/yoloGtold1/train/19849.png +../../data/yoloGtold1/train/19850.png +../../data/yoloGtold1/train/19851.png +../../data/yoloGtold1/train/19852.png +../../data/yoloGtold1/train/19853.png +../../data/yoloGtold1/train/19854.png +../../data/yoloGtold1/train/19855.png +../../data/yoloGtold1/train/19856.png +../../data/yoloGtold1/train/19857.png +../../data/yoloGtold1/train/19858.png +../../data/yoloGtold1/train/19859.png +../../data/yoloGtold1/train/19860.png +../../data/yoloGtold1/train/19861.png +../../data/yoloGtold1/train/19862.png +../../data/yoloGtold1/train/19863.png +../../data/yoloGtold1/train/19864.png +../../data/yoloGtold1/train/19865.png +../../data/yoloGtold1/train/19866.png +../../data/yoloGtold1/train/19867.png +../../data/yoloGtold1/train/19868.png +../../data/yoloGtold1/train/19869.png +../../data/yoloGtold1/train/19870.png +../../data/yoloGtold1/train/19871.png +../../data/yoloGtold1/train/19872.png +../../data/yoloGtold1/train/19873.png +../../data/yoloGtold1/train/19874.png +../../data/yoloGtold1/train/19875.png +../../data/yoloGtold1/train/19876.png +../../data/yoloGtold1/train/19877.png +../../data/yoloGtold1/train/19878.png +../../data/yoloGtold1/train/19879.png +../../data/yoloGtold1/train/19880.png +../../data/yoloGtold1/train/19881.png +../../data/yoloGtold1/train/19882.png +../../data/yoloGtold1/train/19883.png +../../data/yoloGtold1/train/19884.png +../../data/yoloGtold1/train/19885.png +../../data/yoloGtold1/train/19886.png +../../data/yoloGtold1/train/19887.png +../../data/yoloGtold1/train/19888.png +../../data/yoloGtold1/train/19889.png +../../data/yoloGtold1/train/19890.png +../../data/yoloGtold1/train/19891.png +../../data/yoloGtold1/train/19892.png +../../data/yoloGtold1/train/19893.png +../../data/yoloGtold1/train/19894.png +../../data/yoloGtold1/train/19895.png +../../data/yoloGtold1/train/19896.png +../../data/yoloGtold1/train/19897.png +../../data/yoloGtold1/train/19898.png +../../data/yoloGtold1/train/19899.png +../../data/yoloGtold1/train/19900.png +../../data/yoloGtold1/train/19901.png +../../data/yoloGtold1/train/19902.png +../../data/yoloGtold1/train/19903.png +../../data/yoloGtold1/train/19904.png +../../data/yoloGtold1/train/19905.png +../../data/yoloGtold1/train/19906.png +../../data/yoloGtold1/train/19907.png +../../data/yoloGtold1/train/19908.png +../../data/yoloGtold1/train/19909.png +../../data/yoloGtold1/train/19910.png +../../data/yoloGtold1/train/19911.png +../../data/yoloGtold1/train/19912.png +../../data/yoloGtold1/train/19913.png +../../data/yoloGtold1/train/19914.png +../../data/yoloGtold1/train/19915.png +../../data/yoloGtold1/train/19916.png +../../data/yoloGtold1/train/19917.png +../../data/yoloGtold1/train/19918.png +../../data/yoloGtold1/train/19919.png +../../data/yoloGtold1/train/19920.png +../../data/yoloGtold1/train/19921.png +../../data/yoloGtold1/train/19922.png +../../data/yoloGtold1/train/19923.png +../../data/yoloGtold1/train/19924.png +../../data/yoloGtold1/train/19925.png +../../data/yoloGtold1/train/19926.png +../../data/yoloGtold1/train/19927.png +../../data/yoloGtold1/train/19928.png +../../data/yoloGtold1/train/19929.png +../../data/yoloGtold1/train/19930.png +../../data/yoloGtold1/train/19931.png +../../data/yoloGtold1/train/19932.png +../../data/yoloGtold1/train/19933.png +../../data/yoloGtold1/train/19934.png +../../data/yoloGtold1/train/19935.png +../../data/yoloGtold1/train/19936.png +../../data/yoloGtold1/train/19937.png +../../data/yoloGtold1/train/19938.png +../../data/yoloGtold1/train/19939.png +../../data/yoloGtold1/train/19940.png +../../data/yoloGtold1/train/19941.png +../../data/yoloGtold1/train/19942.png +../../data/yoloGtold1/train/19943.png +../../data/yoloGtold1/train/19944.png +../../data/yoloGtold1/train/19945.png +../../data/yoloGtold1/train/19946.png +../../data/yoloGtold1/train/19947.png +../../data/yoloGtold1/train/19948.png +../../data/yoloGtold1/train/19949.png +../../data/yoloGtold1/train/19950.png +../../data/yoloGtold1/train/19951.png +../../data/yoloGtold1/train/19952.png +../../data/yoloGtold1/train/19953.png +../../data/yoloGtold1/train/19954.png +../../data/yoloGtold1/train/19955.png +../../data/yoloGtold1/train/19956.png +../../data/yoloGtold1/train/19957.png +../../data/yoloGtold1/train/19958.png +../../data/yoloGtold1/train/19959.png +../../data/yoloGtold1/train/19960.png +../../data/yoloGtold1/train/19961.png +../../data/yoloGtold1/train/19962.png +../../data/yoloGtold1/train/19963.png +../../data/yoloGtold1/train/19964.png +../../data/yoloGtold1/train/19965.png +../../data/yoloGtold1/train/19966.png +../../data/yoloGtold1/train/19967.png +../../data/yoloGtold1/train/19968.png +../../data/yoloGtold1/train/19969.png +../../data/yoloGtold1/train/19970.png +../../data/yoloGtold1/train/19971.png +../../data/yoloGtold1/train/19972.png +../../data/yoloGtold1/train/19973.png +../../data/yoloGtold1/train/19974.png +../../data/yoloGtold1/train/19975.png +../../data/yoloGtold1/train/19976.png +../../data/yoloGtold1/train/19977.png +../../data/yoloGtold1/train/19978.png +../../data/yoloGtold1/train/19979.png +../../data/yoloGtold1/train/19980.png +../../data/yoloGtold1/train/19981.png +../../data/yoloGtold1/train/19982.png +../../data/yoloGtold1/train/19983.png +../../data/yoloGtold1/train/19984.png +../../data/yoloGtold1/train/19985.png +../../data/yoloGtold1/train/19986.png +../../data/yoloGtold1/train/19987.png +../../data/yoloGtold1/train/19988.png +../../data/yoloGtold1/train/19989.png +../../data/yoloGtold1/train/19990.png +../../data/yoloGtold1/train/19991.png +../../data/yoloGtold1/train/19992.png +../../data/yoloGtold1/train/19993.png +../../data/yoloGtold1/train/19994.png +../../data/yoloGtold1/train/19995.png +../../data/yoloGtold1/train/19996.png +../../data/yoloGtold1/train/19997.png +../../data/yoloGtold1/train/19998.png +../../data/yoloGtold1/train/19999.png +../../data/yoloGtold1/train/20000.png +../../data/yoloGtold1/train/20001.png +../../data/yoloGtold1/train/20002.png +../../data/yoloGtold1/train/20003.png +../../data/yoloGtold1/train/20004.png +../../data/yoloGtold1/train/20005.png +../../data/yoloGtold1/train/20006.png +../../data/yoloGtold1/train/20007.png +../../data/yoloGtold1/train/20008.png +../../data/yoloGtold1/train/20009.png +../../data/yoloGtold1/train/20010.png +../../data/yoloGtold1/train/20011.png +../../data/yoloGtold1/train/20012.png +../../data/yoloGtold1/train/20013.png +../../data/yoloGtold1/train/20014.png +../../data/yoloGtold1/train/20015.png +../../data/yoloGtold1/train/20016.png +../../data/yoloGtold1/train/20017.png +../../data/yoloGtold1/train/20018.png +../../data/yoloGtold1/train/20019.png +../../data/yoloGtold1/train/20020.png +../../data/yoloGtold1/train/20021.png +../../data/yoloGtold1/train/20022.png +../../data/yoloGtold1/train/20023.png +../../data/yoloGtold1/train/20024.png +../../data/yoloGtold1/train/20025.png +../../data/yoloGtold1/train/20026.png +../../data/yoloGtold1/train/20027.png +../../data/yoloGtold1/train/20028.png +../../data/yoloGtold1/train/20029.png +../../data/yoloGtold1/train/20030.png +../../data/yoloGtold1/train/20031.png +../../data/yoloGtold1/train/20032.png +../../data/yoloGtold1/train/20033.png +../../data/yoloGtold1/train/20034.png +../../data/yoloGtold1/train/20035.png +../../data/yoloGtold1/train/20036.png +../../data/yoloGtold1/train/20037.png +../../data/yoloGtold1/train/20038.png +../../data/yoloGtold1/train/20039.png +../../data/yoloGtold1/train/20040.png +../../data/yoloGtold1/train/20041.png +../../data/yoloGtold1/train/20042.png +../../data/yoloGtold1/train/20043.png +../../data/yoloGtold1/train/20044.png +../../data/yoloGtold1/train/20045.png +../../data/yoloGtold1/train/20046.png +../../data/yoloGtold1/train/20047.png +../../data/yoloGtold1/train/20048.png +../../data/yoloGtold1/train/20049.png +../../data/yoloGtold1/train/20050.png +../../data/yoloGtold1/train/20051.png +../../data/yoloGtold1/train/20052.png +../../data/yoloGtold1/train/20053.png +../../data/yoloGtold1/train/20054.png +../../data/yoloGtold1/train/20055.png +../../data/yoloGtold1/train/20056.png +../../data/yoloGtold1/train/20057.png +../../data/yoloGtold1/train/20058.png +../../data/yoloGtold1/train/20059.png +../../data/yoloGtold1/train/20060.png +../../data/yoloGtold1/train/20061.png +../../data/yoloGtold1/train/20062.png +../../data/yoloGtold1/train/20063.png +../../data/yoloGtold1/train/20064.png +../../data/yoloGtold1/train/20065.png +../../data/yoloGtold1/train/20066.png +../../data/yoloGtold1/train/20067.png +../../data/yoloGtold1/train/20068.png +../../data/yoloGtold1/train/20069.png +../../data/yoloGtold1/train/20070.png +../../data/yoloGtold1/train/20071.png +../../data/yoloGtold1/train/20072.png +../../data/yoloGtold1/train/20073.png +../../data/yoloGtold1/train/20074.png +../../data/yoloGtold1/train/20075.png +../../data/yoloGtold1/train/20076.png +../../data/yoloGtold1/train/20077.png +../../data/yoloGtold1/train/20078.png +../../data/yoloGtold1/train/20079.png +../../data/yoloGtold1/train/20080.png +../../data/yoloGtold1/train/20081.png +../../data/yoloGtold1/train/20082.png +../../data/yoloGtold1/train/20083.png +../../data/yoloGtold1/train/20084.png +../../data/yoloGtold1/train/20085.png +../../data/yoloGtold1/train/20086.png +../../data/yoloGtold1/train/20087.png +../../data/yoloGtold1/train/20088.png +../../data/yoloGtold1/train/20089.png +../../data/yoloGtold1/train/20090.png +../../data/yoloGtold1/train/20091.png +../../data/yoloGtold1/train/20092.png +../../data/yoloGtold1/train/20093.png +../../data/yoloGtold1/train/20094.png +../../data/yoloGtold1/train/20095.png +../../data/yoloGtold1/train/20096.png +../../data/yoloGtold1/train/20097.png +../../data/yoloGtold1/train/20098.png +../../data/yoloGtold1/train/20099.png +../../data/yoloGtold1/train/20100.png +../../data/yoloGtold1/train/20101.png +../../data/yoloGtold1/train/20102.png +../../data/yoloGtold1/train/20103.png +../../data/yoloGtold1/train/20104.png +../../data/yoloGtold1/train/20105.png +../../data/yoloGtold1/train/20106.png +../../data/yoloGtold1/train/20107.png +../../data/yoloGtold1/train/20108.png +../../data/yoloGtold1/train/20109.png +../../data/yoloGtold1/train/20110.png +../../data/yoloGtold1/train/20111.png +../../data/yoloGtold1/train/20112.png +../../data/yoloGtold1/train/20113.png +../../data/yoloGtold1/train/20114.png +../../data/yoloGtold1/train/20115.png +../../data/yoloGtold1/train/20116.png +../../data/yoloGtold1/train/20117.png +../../data/yoloGtold1/train/20118.png +../../data/yoloGtold1/train/20119.png +../../data/yoloGtold1/train/20120.png +../../data/yoloGtold1/train/20121.png +../../data/yoloGtold1/train/20122.png +../../data/yoloGtold1/train/20123.png +../../data/yoloGtold1/train/20124.png +../../data/yoloGtold1/train/20125.png +../../data/yoloGtold1/train/20126.png +../../data/yoloGtold1/train/20127.png +../../data/yoloGtold1/train/20128.png +../../data/yoloGtold1/train/20129.png +../../data/yoloGtold1/train/20130.png +../../data/yoloGtold1/train/20131.png +../../data/yoloGtold1/train/20132.png +../../data/yoloGtold1/train/20133.png +../../data/yoloGtold1/train/20134.png +../../data/yoloGtold1/train/20135.png +../../data/yoloGtold1/train/20136.png +../../data/yoloGtold1/train/20137.png +../../data/yoloGtold1/train/20138.png +../../data/yoloGtold1/train/20139.png +../../data/yoloGtold1/train/20140.png +../../data/yoloGtold1/train/20141.png +../../data/yoloGtold1/train/20142.png +../../data/yoloGtold1/train/20143.png +../../data/yoloGtold1/train/20144.png +../../data/yoloGtold1/train/20145.png +../../data/yoloGtold1/train/20146.png +../../data/yoloGtold1/train/20147.png +../../data/yoloGtold1/train/20148.png +../../data/yoloGtold1/train/20149.png +../../data/yoloGtold1/train/20150.png +../../data/yoloGtold1/train/20151.png +../../data/yoloGtold1/train/20152.png +../../data/yoloGtold1/train/20153.png +../../data/yoloGtold1/train/20154.png +../../data/yoloGtold1/train/20155.png +../../data/yoloGtold1/train/20156.png +../../data/yoloGtold1/train/20157.png +../../data/yoloGtold1/train/20158.png +../../data/yoloGtold1/train/20159.png +../../data/yoloGtold1/train/20160.png +../../data/yoloGtold1/train/20161.png +../../data/yoloGtold1/train/20162.png +../../data/yoloGtold1/train/20163.png +../../data/yoloGtold1/train/20164.png +../../data/yoloGtold1/train/20165.png +../../data/yoloGtold1/train/20166.png +../../data/yoloGtold1/train/20167.png +../../data/yoloGtold1/train/20168.png +../../data/yoloGtold1/train/20169.png +../../data/yoloGtold1/train/20170.png +../../data/yoloGtold1/train/20171.png +../../data/yoloGtold1/train/20172.png +../../data/yoloGtold1/train/20173.png +../../data/yoloGtold1/train/20174.png +../../data/yoloGtold1/train/20175.png +../../data/yoloGtold1/train/20176.png +../../data/yoloGtold1/train/20177.png +../../data/yoloGtold1/train/20178.png +../../data/yoloGtold1/train/20179.png +../../data/yoloGtold1/train/20180.png +../../data/yoloGtold1/train/20181.png +../../data/yoloGtold1/train/20182.png +../../data/yoloGtold1/train/20183.png +../../data/yoloGtold1/train/20184.png +../../data/yoloGtold1/train/20185.png +../../data/yoloGtold1/train/20186.png +../../data/yoloGtold1/train/20187.png +../../data/yoloGtold1/train/20188.png +../../data/yoloGtold1/train/20189.png +../../data/yoloGtold1/train/20190.png +../../data/yoloGtold1/train/20191.png +../../data/yoloGtold1/train/20192.png +../../data/yoloGtold1/train/20193.png +../../data/yoloGtold1/train/20194.png +../../data/yoloGtold1/train/20195.png +../../data/yoloGtold1/train/20196.png +../../data/yoloGtold1/train/20197.png +../../data/yoloGtold1/train/20198.png +../../data/yoloGtold1/train/20199.png +../../data/yoloGtold1/train/20200.png +../../data/yoloGtold1/train/20201.png +../../data/yoloGtold1/train/20202.png +../../data/yoloGtold1/train/20203.png +../../data/yoloGtold1/train/20204.png +../../data/yoloGtold1/train/20205.png +../../data/yoloGtold1/train/20206.png +../../data/yoloGtold1/train/20207.png +../../data/yoloGtold1/train/20208.png +../../data/yoloGtold1/train/20209.png +../../data/yoloGtold1/train/20210.png +../../data/yoloGtold1/train/20211.png +../../data/yoloGtold1/train/20212.png +../../data/yoloGtold1/train/20213.png +../../data/yoloGtold1/train/20214.png +../../data/yoloGtold1/train/20215.png +../../data/yoloGtold1/train/20216.png +../../data/yoloGtold1/train/20217.png +../../data/yoloGtold1/train/20218.png +../../data/yoloGtold1/train/20219.png +../../data/yoloGtold1/train/20220.png +../../data/yoloGtold1/train/20221.png +../../data/yoloGtold1/train/20222.png +../../data/yoloGtold1/train/20223.png +../../data/yoloGtold1/train/20224.png +../../data/yoloGtold1/train/20225.png +../../data/yoloGtold1/train/20226.png +../../data/yoloGtold1/train/20227.png +../../data/yoloGtold1/train/20228.png +../../data/yoloGtold1/train/20229.png +../../data/yoloGtold1/train/20230.png +../../data/yoloGtold1/train/20231.png +../../data/yoloGtold1/train/20232.png +../../data/yoloGtold1/train/20233.png +../../data/yoloGtold1/train/20234.png +../../data/yoloGtold1/train/20235.png +../../data/yoloGtold1/train/20236.png +../../data/yoloGtold1/train/20237.png +../../data/yoloGtold1/train/20238.png +../../data/yoloGtold1/train/20239.png +../../data/yoloGtold1/train/20240.png +../../data/yoloGtold1/train/20241.png +../../data/yoloGtold1/train/20242.png +../../data/yoloGtold1/train/20243.png +../../data/yoloGtold1/train/20244.png +../../data/yoloGtold1/train/20245.png +../../data/yoloGtold1/train/20246.png +../../data/yoloGtold1/train/20247.png +../../data/yoloGtold1/train/20248.png +../../data/yoloGtold1/train/20249.png +../../data/yoloGtold1/train/20250.png +../../data/yoloGtold1/train/20251.png +../../data/yoloGtold1/train/20252.png +../../data/yoloGtold1/train/20253.png +../../data/yoloGtold1/train/20254.png +../../data/yoloGtold1/train/20255.png +../../data/yoloGtold1/train/20256.png +../../data/yoloGtold1/train/20257.png +../../data/yoloGtold1/train/20258.png +../../data/yoloGtold1/train/20259.png +../../data/yoloGtold1/train/20260.png +../../data/yoloGtold1/train/20261.png +../../data/yoloGtold1/train/20262.png +../../data/yoloGtold1/train/20263.png +../../data/yoloGtold1/train/20264.png +../../data/yoloGtold1/train/20265.png +../../data/yoloGtold1/train/20266.png +../../data/yoloGtold1/train/20267.png +../../data/yoloGtold1/train/20268.png +../../data/yoloGtold1/train/20269.png +../../data/yoloGtold1/train/20270.png +../../data/yoloGtold1/train/20271.png +../../data/yoloGtold1/train/20272.png +../../data/yoloGtold1/train/20273.png +../../data/yoloGtold1/train/20274.png +../../data/yoloGtold1/train/20275.png +../../data/yoloGtold1/train/20276.png +../../data/yoloGtold1/train/20277.png +../../data/yoloGtold1/train/20278.png +../../data/yoloGtold1/train/20279.png +../../data/yoloGtold1/train/20280.png +../../data/yoloGtold1/train/20281.png +../../data/yoloGtold1/train/20282.png +../../data/yoloGtold1/train/20283.png +../../data/yoloGtold1/train/20284.png +../../data/yoloGtold1/train/20285.png +../../data/yoloGtold1/train/20286.png +../../data/yoloGtold1/train/20287.png +../../data/yoloGtold1/train/20288.png +../../data/yoloGtold1/train/20289.png +../../data/yoloGtold1/train/20290.png +../../data/yoloGtold1/train/20291.png +../../data/yoloGtold1/train/20292.png +../../data/yoloGtold1/train/20293.png +../../data/yoloGtold1/train/20294.png +../../data/yoloGtold1/train/20295.png +../../data/yoloGtold1/train/20296.png +../../data/yoloGtold1/train/20297.png +../../data/yoloGtold1/train/20298.png +../../data/yoloGtold1/train/20299.png +../../data/yoloGtold1/train/20300.png +../../data/yoloGtold1/train/20301.png +../../data/yoloGtold1/train/20302.png +../../data/yoloGtold1/train/20303.png +../../data/yoloGtold1/train/20304.png +../../data/yoloGtold1/train/20305.png +../../data/yoloGtold1/train/20306.png +../../data/yoloGtold1/train/20307.png +../../data/yoloGtold1/train/20308.png +../../data/yoloGtold1/train/20309.png +../../data/yoloGtold1/train/20310.png +../../data/yoloGtold1/train/20311.png +../../data/yoloGtold1/train/20312.png +../../data/yoloGtold1/train/20313.png +../../data/yoloGtold1/train/20314.png +../../data/yoloGtold1/train/20315.png +../../data/yoloGtold1/train/20316.png +../../data/yoloGtold1/train/20317.png +../../data/yoloGtold1/train/20318.png +../../data/yoloGtold1/train/20319.png +../../data/yoloGtold1/train/20320.png +../../data/yoloGtold1/train/20321.png +../../data/yoloGtold1/train/20322.png +../../data/yoloGtold1/train/20323.png +../../data/yoloGtold1/train/20324.png +../../data/yoloGtold1/train/20325.png +../../data/yoloGtold1/train/20326.png +../../data/yoloGtold1/train/20327.png +../../data/yoloGtold1/train/20328.png +../../data/yoloGtold1/train/20329.png +../../data/yoloGtold1/train/20330.png +../../data/yoloGtold1/train/20331.png +../../data/yoloGtold1/train/20332.png +../../data/yoloGtold1/train/20333.png +../../data/yoloGtold1/train/20334.png +../../data/yoloGtold1/train/20335.png +../../data/yoloGtold1/train/20336.png +../../data/yoloGtold1/train/20337.png +../../data/yoloGtold1/train/20338.png +../../data/yoloGtold1/train/20339.png +../../data/yoloGtold1/train/20340.png +../../data/yoloGtold1/train/20341.png +../../data/yoloGtold1/train/20342.png +../../data/yoloGtold1/train/20343.png +../../data/yoloGtold1/train/20344.png +../../data/yoloGtold1/train/20345.png +../../data/yoloGtold1/train/20346.png +../../data/yoloGtold1/train/20347.png +../../data/yoloGtold1/train/20348.png +../../data/yoloGtold1/train/20349.png +../../data/yoloGtold1/train/20350.png +../../data/yoloGtold1/train/20351.png +../../data/yoloGtold1/train/20352.png +../../data/yoloGtold1/train/20353.png +../../data/yoloGtold1/train/20354.png +../../data/yoloGtold1/train/20355.png +../../data/yoloGtold1/train/20356.png +../../data/yoloGtold1/train/20357.png +../../data/yoloGtold1/train/20358.png +../../data/yoloGtold1/train/20359.png +../../data/yoloGtold1/train/20360.png +../../data/yoloGtold1/train/20361.png +../../data/yoloGtold1/train/20362.png +../../data/yoloGtold1/train/20363.png +../../data/yoloGtold1/train/20364.png +../../data/yoloGtold1/train/20365.png +../../data/yoloGtold1/train/20366.png +../../data/yoloGtold1/train/20367.png +../../data/yoloGtold1/train/20368.png +../../data/yoloGtold1/train/20369.png +../../data/yoloGtold1/train/20370.png +../../data/yoloGtold1/train/20371.png +../../data/yoloGtold1/train/20372.png +../../data/yoloGtold1/train/20373.png +../../data/yoloGtold1/train/20374.png +../../data/yoloGtold1/train/20375.png +../../data/yoloGtold1/train/20376.png +../../data/yoloGtold1/train/20377.png +../../data/yoloGtold1/train/20378.png +../../data/yoloGtold1/train/20379.png +../../data/yoloGtold1/train/20380.png +../../data/yoloGtold1/train/20381.png +../../data/yoloGtold1/train/20382.png +../../data/yoloGtold1/train/20383.png +../../data/yoloGtold1/train/20384.png +../../data/yoloGtold1/train/20385.png +../../data/yoloGtold1/train/20386.png +../../data/yoloGtold1/train/20387.png +../../data/yoloGtold1/train/20388.png +../../data/yoloGtold1/train/20389.png +../../data/yoloGtold1/train/20390.png +../../data/yoloGtold1/train/20391.png +../../data/yoloGtold1/train/20392.png +../../data/yoloGtold1/train/20393.png +../../data/yoloGtold1/train/20394.png +../../data/yoloGtold1/train/20395.png +../../data/yoloGtold1/train/20396.png +../../data/yoloGtold1/train/20397.png +../../data/yoloGtold1/train/20398.png +../../data/yoloGtold1/train/20399.png +../../data/yoloGtold1/train/20400.png +../../data/yoloGtold1/train/20401.png +../../data/yoloGtold1/train/20402.png +../../data/yoloGtold1/train/20403.png +../../data/yoloGtold1/train/20404.png +../../data/yoloGtold1/train/20405.png +../../data/yoloGtold1/train/20406.png +../../data/yoloGtold1/train/20407.png +../../data/yoloGtold1/train/20408.png +../../data/yoloGtold1/train/20409.png +../../data/yoloGtold1/train/20410.png +../../data/yoloGtold1/train/20411.png +../../data/yoloGtold1/train/20412.png +../../data/yoloGtold1/train/20413.png +../../data/yoloGtold1/train/20414.png +../../data/yoloGtold1/train/20415.png +../../data/yoloGtold1/train/20416.png +../../data/yoloGtold1/train/20417.png +../../data/yoloGtold1/train/20418.png +../../data/yoloGtold1/train/20419.png +../../data/yoloGtold1/train/20420.png +../../data/yoloGtold1/train/20421.png +../../data/yoloGtold1/train/20422.png +../../data/yoloGtold1/train/20423.png +../../data/yoloGtold1/train/20424.png +../../data/yoloGtold1/train/20425.png +../../data/yoloGtold1/train/20426.png +../../data/yoloGtold1/train/20427.png +../../data/yoloGtold1/train/20428.png +../../data/yoloGtold1/train/20429.png +../../data/yoloGtold1/train/20430.png +../../data/yoloGtold1/train/20431.png +../../data/yoloGtold1/train/20432.png +../../data/yoloGtold1/train/20433.png +../../data/yoloGtold1/train/20434.png +../../data/yoloGtold1/train/20435.png +../../data/yoloGtold1/train/20436.png +../../data/yoloGtold1/train/20437.png +../../data/yoloGtold1/train/20438.png +../../data/yoloGtold1/train/20439.png +../../data/yoloGtold1/train/20440.png +../../data/yoloGtold1/train/20441.png +../../data/yoloGtold1/train/20442.png +../../data/yoloGtold1/train/20443.png +../../data/yoloGtold1/train/20444.png +../../data/yoloGtold1/train/20445.png +../../data/yoloGtold1/train/20446.png +../../data/yoloGtold1/train/20447.png +../../data/yoloGtold1/train/20448.png +../../data/yoloGtold1/train/20449.png +../../data/yoloGtold1/train/20450.png +../../data/yoloGtold1/train/20451.png +../../data/yoloGtold1/train/20452.png +../../data/yoloGtold1/train/20453.png +../../data/yoloGtold1/train/20454.png +../../data/yoloGtold1/train/20455.png +../../data/yoloGtold1/train/20456.png +../../data/yoloGtold1/train/20457.png +../../data/yoloGtold1/train/20458.png +../../data/yoloGtold1/train/20459.png +../../data/yoloGtold1/train/20460.png +../../data/yoloGtold1/train/20461.png +../../data/yoloGtold1/train/20462.png +../../data/yoloGtold1/train/20463.png +../../data/yoloGtold1/train/20464.png +../../data/yoloGtold1/train/20465.png +../../data/yoloGtold1/train/20466.png +../../data/yoloGtold1/train/20467.png +../../data/yoloGtold1/train/20468.png +../../data/yoloGtold1/train/20469.png +../../data/yoloGtold1/train/20470.png +../../data/yoloGtold1/train/20471.png +../../data/yoloGtold1/train/20472.png +../../data/yoloGtold1/train/20473.png +../../data/yoloGtold1/train/20474.png +../../data/yoloGtold1/train/20475.png +../../data/yoloGtold1/train/20476.png +../../data/yoloGtold1/train/20477.png +../../data/yoloGtold1/train/20478.png +../../data/yoloGtold1/train/20479.png +../../data/yoloGtold1/train/20480.png +../../data/yoloGtold1/train/20481.png +../../data/yoloGtold1/train/20482.png +../../data/yoloGtold1/train/20483.png +../../data/yoloGtold1/train/20484.png +../../data/yoloGtold1/train/20485.png +../../data/yoloGtold1/train/20486.png +../../data/yoloGtold1/train/20487.png +../../data/yoloGtold1/train/20488.png +../../data/yoloGtold1/train/20489.png +../../data/yoloGtold1/train/20490.png +../../data/yoloGtold1/train/20491.png +../../data/yoloGtold1/train/20492.png +../../data/yoloGtold1/train/20493.png +../../data/yoloGtold1/train/20494.png +../../data/yoloGtold1/train/20495.png +../../data/yoloGtold1/train/20496.png +../../data/yoloGtold1/train/20497.png +../../data/yoloGtold1/train/20498.png +../../data/yoloGtold1/train/20499.png +../../data/yoloGtold1/train/20500.png +../../data/yoloGtold1/train/20501.png +../../data/yoloGtold1/train/20502.png +../../data/yoloGtold1/train/20503.png +../../data/yoloGtold1/train/20504.png +../../data/yoloGtold1/train/20505.png +../../data/yoloGtold1/train/20506.png +../../data/yoloGtold1/train/20507.png +../../data/yoloGtold1/train/20508.png +../../data/yoloGtold1/train/20509.png +../../data/yoloGtold1/train/20510.png +../../data/yoloGtold1/train/20511.png +../../data/yoloGtold1/train/20512.png +../../data/yoloGtold1/train/20513.png +../../data/yoloGtold1/train/20514.png +../../data/yoloGtold1/train/20515.png +../../data/yoloGtold1/train/20516.png +../../data/yoloGtold1/train/20517.png +../../data/yoloGtold1/train/20518.png +../../data/yoloGtold1/train/20519.png +../../data/yoloGtold1/train/20520.png +../../data/yoloGtold1/train/20521.png +../../data/yoloGtold1/train/20522.png +../../data/yoloGtold1/train/20523.png +../../data/yoloGtold1/train/20524.png +../../data/yoloGtold1/train/20525.png +../../data/yoloGtold1/train/20526.png +../../data/yoloGtold1/train/20527.png +../../data/yoloGtold1/train/20528.png +../../data/yoloGtold1/train/20529.png +../../data/yoloGtold1/train/20530.png +../../data/yoloGtold1/train/20531.png +../../data/yoloGtold1/train/20532.png +../../data/yoloGtold1/train/20533.png +../../data/yoloGtold1/train/20534.png +../../data/yoloGtold1/train/20535.png +../../data/yoloGtold1/train/20536.png +../../data/yoloGtold1/train/20537.png +../../data/yoloGtold1/train/20538.png +../../data/yoloGtold1/train/20539.png +../../data/yoloGtold1/train/20540.png +../../data/yoloGtold1/train/20541.png +../../data/yoloGtold1/train/20542.png +../../data/yoloGtold1/train/20543.png +../../data/yoloGtold1/train/20544.png +../../data/yoloGtold1/train/20545.png +../../data/yoloGtold1/train/20546.png +../../data/yoloGtold1/train/20547.png +../../data/yoloGtold1/train/20548.png +../../data/yoloGtold1/train/20549.png +../../data/yoloGtold1/train/20550.png +../../data/yoloGtold1/train/20551.png +../../data/yoloGtold1/train/20552.png +../../data/yoloGtold1/train/20553.png +../../data/yoloGtold1/train/20554.png +../../data/yoloGtold1/train/20555.png +../../data/yoloGtold1/train/20556.png +../../data/yoloGtold1/train/20557.png +../../data/yoloGtold1/train/20558.png +../../data/yoloGtold1/train/20559.png +../../data/yoloGtold1/train/20560.png +../../data/yoloGtold1/train/20561.png +../../data/yoloGtold1/train/20562.png +../../data/yoloGtold1/train/20563.png +../../data/yoloGtold1/train/20564.png +../../data/yoloGtold1/train/20565.png +../../data/yoloGtold1/train/20566.png +../../data/yoloGtold1/train/20567.png +../../data/yoloGtold1/train/20568.png +../../data/yoloGtold1/train/20569.png +../../data/yoloGtold1/train/20570.png +../../data/yoloGtold1/train/20571.png +../../data/yoloGtold1/train/20572.png +../../data/yoloGtold1/train/20573.png +../../data/yoloGtold1/train/20574.png +../../data/yoloGtold1/train/20575.png +../../data/yoloGtold1/train/20576.png +../../data/yoloGtold1/train/20577.png +../../data/yoloGtold1/train/20578.png +../../data/yoloGtold1/train/20579.png +../../data/yoloGtold1/train/20580.png +../../data/yoloGtold1/train/20581.png +../../data/yoloGtold1/train/20582.png +../../data/yoloGtold1/train/20583.png +../../data/yoloGtold1/train/20584.png +../../data/yoloGtold1/train/20585.png +../../data/yoloGtold1/train/20586.png +../../data/yoloGtold1/train/20587.png +../../data/yoloGtold1/train/20588.png +../../data/yoloGtold1/train/20589.png +../../data/yoloGtold1/train/20590.png +../../data/yoloGtold1/train/20591.png +../../data/yoloGtold1/train/20592.png +../../data/yoloGtold1/train/20593.png +../../data/yoloGtold1/train/20594.png +../../data/yoloGtold1/train/20595.png +../../data/yoloGtold1/train/20596.png +../../data/yoloGtold1/train/20597.png +../../data/yoloGtold1/train/20598.png +../../data/yoloGtold1/train/20599.png +../../data/yoloGtold1/train/20600.png +../../data/yoloGtold1/train/20601.png +../../data/yoloGtold1/train/20602.png +../../data/yoloGtold1/train/20603.png +../../data/yoloGtold1/train/20604.png +../../data/yoloGtold1/train/20605.png +../../data/yoloGtold1/train/20606.png +../../data/yoloGtold1/train/20607.png +../../data/yoloGtold1/train/20608.png +../../data/yoloGtold1/train/20609.png +../../data/yoloGtold1/train/20610.png +../../data/yoloGtold1/train/20611.png +../../data/yoloGtold1/train/20612.png +../../data/yoloGtold1/train/20613.png +../../data/yoloGtold1/train/20614.png +../../data/yoloGtold1/train/20615.png +../../data/yoloGtold1/train/20616.png +../../data/yoloGtold1/train/20617.png +../../data/yoloGtold1/train/20618.png +../../data/yoloGtold1/train/20619.png +../../data/yoloGtold1/train/20620.png +../../data/yoloGtold1/train/20621.png +../../data/yoloGtold1/train/20622.png +../../data/yoloGtold1/train/20623.png +../../data/yoloGtold1/train/20624.png +../../data/yoloGtold1/train/20625.png +../../data/yoloGtold1/train/20626.png +../../data/yoloGtold1/train/20627.png +../../data/yoloGtold1/train/20628.png +../../data/yoloGtold1/train/20629.png +../../data/yoloGtold1/train/20630.png +../../data/yoloGtold1/train/20631.png +../../data/yoloGtold1/train/20632.png +../../data/yoloGtold1/train/20633.png +../../data/yoloGtold1/train/20634.png +../../data/yoloGtold1/train/20635.png +../../data/yoloGtold1/train/20636.png +../../data/yoloGtold1/train/20637.png +../../data/yoloGtold1/train/20638.png +../../data/yoloGtold1/train/20639.png +../../data/yoloGtold1/train/20640.png +../../data/yoloGtold1/train/20641.png +../../data/yoloGtold1/train/20642.png +../../data/yoloGtold1/train/20643.png +../../data/yoloGtold1/train/20644.png +../../data/yoloGtold1/train/20645.png +../../data/yoloGtold1/train/20646.png +../../data/yoloGtold1/train/20647.png +../../data/yoloGtold1/train/20648.png +../../data/yoloGtold1/train/20649.png +../../data/yoloGtold1/train/20650.png +../../data/yoloGtold1/train/20651.png +../../data/yoloGtold1/train/20652.png +../../data/yoloGtold1/train/20653.png +../../data/yoloGtold1/train/20654.png +../../data/yoloGtold1/train/20655.png +../../data/yoloGtold1/train/20656.png +../../data/yoloGtold1/train/20657.png +../../data/yoloGtold1/train/20658.png +../../data/yoloGtold1/train/20659.png +../../data/yoloGtold1/train/20660.png +../../data/yoloGtold1/train/20661.png +../../data/yoloGtold1/train/20662.png +../../data/yoloGtold1/train/20663.png +../../data/yoloGtold1/train/20664.png +../../data/yoloGtold1/train/20665.png +../../data/yoloGtold1/train/20666.png +../../data/yoloGtold1/train/20667.png +../../data/yoloGtold1/train/20668.png +../../data/yoloGtold1/train/20669.png +../../data/yoloGtold1/train/20670.png +../../data/yoloGtold1/train/20671.png +../../data/yoloGtold1/train/20672.png +../../data/yoloGtold1/train/20673.png +../../data/yoloGtold1/train/20674.png +../../data/yoloGtold1/train/20675.png +../../data/yoloGtold1/train/20676.png +../../data/yoloGtold1/train/20677.png +../../data/yoloGtold1/train/20678.png +../../data/yoloGtold1/train/20679.png +../../data/yoloGtold1/train/20680.png +../../data/yoloGtold1/train/20681.png +../../data/yoloGtold1/train/20682.png +../../data/yoloGtold1/train/20683.png +../../data/yoloGtold1/train/20684.png +../../data/yoloGtold1/train/20685.png +../../data/yoloGtold1/train/20686.png +../../data/yoloGtold1/train/20687.png +../../data/yoloGtold1/train/20688.png +../../data/yoloGtold1/train/20689.png +../../data/yoloGtold1/train/20690.png +../../data/yoloGtold1/train/20691.png +../../data/yoloGtold1/train/20692.png +../../data/yoloGtold1/train/20693.png +../../data/yoloGtold1/train/20694.png +../../data/yoloGtold1/train/20695.png +../../data/yoloGtold1/train/20696.png +../../data/yoloGtold1/train/20697.png +../../data/yoloGtold1/train/20698.png +../../data/yoloGtold1/train/20699.png +../../data/yoloGtold1/train/20700.png +../../data/yoloGtold1/train/20701.png +../../data/yoloGtold1/train/20702.png +../../data/yoloGtold1/train/20703.png +../../data/yoloGtold1/train/20704.png +../../data/yoloGtold1/train/20705.png +../../data/yoloGtold1/train/20706.png +../../data/yoloGtold1/train/20707.png +../../data/yoloGtold1/train/20708.png +../../data/yoloGtold1/train/20709.png +../../data/yoloGtold1/train/20710.png +../../data/yoloGtold1/train/20711.png +../../data/yoloGtold1/train/20712.png +../../data/yoloGtold1/train/20713.png +../../data/yoloGtold1/train/20714.png +../../data/yoloGtold1/train/20715.png +../../data/yoloGtold1/train/20716.png +../../data/yoloGtold1/train/20717.png +../../data/yoloGtold1/train/20718.png +../../data/yoloGtold1/train/20719.png +../../data/yoloGtold1/train/20720.png +../../data/yoloGtold1/train/20721.png +../../data/yoloGtold1/train/20722.png +../../data/yoloGtold1/train/20723.png +../../data/yoloGtold1/train/20724.png +../../data/yoloGtold1/train/20725.png +../../data/yoloGtold1/train/20726.png +../../data/yoloGtold1/train/20727.png +../../data/yoloGtold1/train/20728.png +../../data/yoloGtold1/train/20729.png +../../data/yoloGtold1/train/20730.png +../../data/yoloGtold1/train/20731.png +../../data/yoloGtold1/train/20732.png +../../data/yoloGtold1/train/20733.png +../../data/yoloGtold1/train/20734.png +../../data/yoloGtold1/train/20735.png +../../data/yoloGtold1/train/20736.png +../../data/yoloGtold1/train/20737.png +../../data/yoloGtold1/train/20738.png +../../data/yoloGtold1/train/20739.png +../../data/yoloGtold1/train/20740.png +../../data/yoloGtold1/train/20741.png +../../data/yoloGtold1/train/20742.png +../../data/yoloGtold1/train/20743.png +../../data/yoloGtold1/train/20744.png +../../data/yoloGtold1/train/20745.png +../../data/yoloGtold1/train/20746.png +../../data/yoloGtold1/train/20747.png +../../data/yoloGtold1/train/20748.png +../../data/yoloGtold1/train/20749.png +../../data/yoloGtold1/train/20750.png +../../data/yoloGtold1/train/20751.png +../../data/yoloGtold1/train/20752.png +../../data/yoloGtold1/train/20753.png +../../data/yoloGtold1/train/20754.png +../../data/yoloGtold1/train/20755.png +../../data/yoloGtold1/train/20756.png +../../data/yoloGtold1/train/20757.png +../../data/yoloGtold1/train/20758.png +../../data/yoloGtold1/train/20759.png +../../data/yoloGtold1/train/20760.png +../../data/yoloGtold1/train/20761.png +../../data/yoloGtold1/train/20762.png +../../data/yoloGtold1/train/20763.png +../../data/yoloGtold1/train/20764.png +../../data/yoloGtold1/train/20765.png +../../data/yoloGtold1/train/20766.png +../../data/yoloGtold1/train/20767.png +../../data/yoloGtold1/train/20768.png +../../data/yoloGtold1/train/20769.png +../../data/yoloGtold1/train/20770.png +../../data/yoloGtold1/train/20771.png +../../data/yoloGtold1/train/20772.png +../../data/yoloGtold1/train/20773.png +../../data/yoloGtold1/train/20774.png +../../data/yoloGtold1/train/20775.png +../../data/yoloGtold1/train/20776.png +../../data/yoloGtold1/train/20777.png +../../data/yoloGtold1/train/20778.png +../../data/yoloGtold1/train/20779.png +../../data/yoloGtold1/train/20780.png +../../data/yoloGtold1/train/20781.png +../../data/yoloGtold1/train/20782.png +../../data/yoloGtold1/train/20783.png +../../data/yoloGtold1/train/20784.png +../../data/yoloGtold1/train/20785.png +../../data/yoloGtold1/train/20786.png +../../data/yoloGtold1/train/20787.png +../../data/yoloGtold1/train/20788.png +../../data/yoloGtold1/train/20789.png +../../data/yoloGtold1/train/20790.png +../../data/yoloGtold1/train/20791.png +../../data/yoloGtold1/train/20792.png +../../data/yoloGtold1/train/20793.png +../../data/yoloGtold1/train/20794.png +../../data/yoloGtold1/train/20795.png +../../data/yoloGtold1/train/20796.png +../../data/yoloGtold1/train/20797.png +../../data/yoloGtold1/train/20798.png +../../data/yoloGtold1/train/20799.png +../../data/yoloGtold1/train/20800.png +../../data/yoloGtold1/train/20801.png +../../data/yoloGtold1/train/20802.png +../../data/yoloGtold1/train/20803.png +../../data/yoloGtold1/train/20804.png +../../data/yoloGtold1/train/20805.png +../../data/yoloGtold1/train/20806.png +../../data/yoloGtold1/train/20807.png +../../data/yoloGtold1/train/20808.png +../../data/yoloGtold1/train/20809.png +../../data/yoloGtold1/train/20810.png +../../data/yoloGtold1/train/20811.png +../../data/yoloGtold1/train/20812.png +../../data/yoloGtold1/train/20813.png +../../data/yoloGtold1/train/20814.png +../../data/yoloGtold1/train/20815.png +../../data/yoloGtold1/train/20816.png +../../data/yoloGtold1/train/20817.png +../../data/yoloGtold1/train/20818.png +../../data/yoloGtold1/train/20819.png +../../data/yoloGtold1/train/20820.png +../../data/yoloGtold1/train/20821.png +../../data/yoloGtold1/train/20822.png +../../data/yoloGtold1/train/20823.png +../../data/yoloGtold1/train/20824.png +../../data/yoloGtold1/train/20825.png +../../data/yoloGtold1/train/20826.png +../../data/yoloGtold1/train/20827.png +../../data/yoloGtold1/train/20828.png +../../data/yoloGtold1/train/20829.png +../../data/yoloGtold1/train/20830.png +../../data/yoloGtold1/train/20831.png +../../data/yoloGtold1/train/20832.png +../../data/yoloGtold1/train/20833.png +../../data/yoloGtold1/train/20834.png +../../data/yoloGtold1/train/20835.png +../../data/yoloGtold1/train/20836.png +../../data/yoloGtold1/train/20837.png +../../data/yoloGtold1/train/20838.png +../../data/yoloGtold1/train/20839.png +../../data/yoloGtold1/train/20840.png +../../data/yoloGtold1/train/20841.png +../../data/yoloGtold1/train/20842.png +../../data/yoloGtold1/train/20843.png +../../data/yoloGtold1/train/20844.png +../../data/yoloGtold1/train/20845.png +../../data/yoloGtold1/train/20846.png +../../data/yoloGtold1/train/20847.png +../../data/yoloGtold1/train/20848.png +../../data/yoloGtold1/train/20849.png +../../data/yoloGtold1/train/20850.png +../../data/yoloGtold1/train/20851.png +../../data/yoloGtold1/train/20852.png +../../data/yoloGtold1/train/20853.png +../../data/yoloGtold1/train/20854.png +../../data/yoloGtold1/train/20855.png +../../data/yoloGtold1/train/20856.png +../../data/yoloGtold1/train/20857.png +../../data/yoloGtold1/train/20858.png +../../data/yoloGtold1/train/20859.png +../../data/yoloGtold1/train/20860.png +../../data/yoloGtold1/train/20861.png +../../data/yoloGtold1/train/20862.png +../../data/yoloGtold1/train/20863.png +../../data/yoloGtold1/train/20864.png +../../data/yoloGtold1/train/20865.png +../../data/yoloGtold1/train/20866.png +../../data/yoloGtold1/train/20867.png +../../data/yoloGtold1/train/20868.png +../../data/yoloGtold1/train/20869.png +../../data/yoloGtold1/train/20870.png +../../data/yoloGtold1/train/20871.png +../../data/yoloGtold1/train/20872.png +../../data/yoloGtold1/train/20873.png +../../data/yoloGtold1/train/20874.png +../../data/yoloGtold1/train/20875.png +../../data/yoloGtold1/train/20876.png +../../data/yoloGtold1/train/20877.png +../../data/yoloGtold1/train/20878.png +../../data/yoloGtold1/train/20879.png +../../data/yoloGtold1/train/20880.png +../../data/yoloGtold1/train/20881.png +../../data/yoloGtold1/train/20882.png +../../data/yoloGtold1/train/20883.png +../../data/yoloGtold1/train/20884.png +../../data/yoloGtold1/train/20885.png +../../data/yoloGtold1/train/20886.png +../../data/yoloGtold1/train/20887.png +../../data/yoloGtold1/train/20888.png +../../data/yoloGtold1/train/20889.png +../../data/yoloGtold1/train/20890.png +../../data/yoloGtold1/train/20891.png +../../data/yoloGtold1/train/20892.png +../../data/yoloGtold1/train/20893.png +../../data/yoloGtold1/train/20894.png +../../data/yoloGtold1/train/20895.png +../../data/yoloGtold1/train/20896.png +../../data/yoloGtold1/train/20897.png +../../data/yoloGtold1/train/20898.png +../../data/yoloGtold1/train/20899.png +../../data/yoloGtold1/train/20900.png +../../data/yoloGtold1/train/20901.png +../../data/yoloGtold1/train/20902.png +../../data/yoloGtold1/train/20903.png +../../data/yoloGtold1/train/20904.png +../../data/yoloGtold1/train/20905.png +../../data/yoloGtold1/train/20906.png +../../data/yoloGtold1/train/20907.png +../../data/yoloGtold1/train/20908.png +../../data/yoloGtold1/train/20909.png +../../data/yoloGtold1/train/20910.png +../../data/yoloGtold1/train/20911.png +../../data/yoloGtold1/train/20912.png +../../data/yoloGtold1/train/20913.png +../../data/yoloGtold1/train/20914.png +../../data/yoloGtold1/train/20915.png +../../data/yoloGtold1/train/20916.png +../../data/yoloGtold1/train/20917.png +../../data/yoloGtold1/train/20918.png +../../data/yoloGtold1/train/20919.png +../../data/yoloGtold1/train/20920.png +../../data/yoloGtold1/train/20921.png +../../data/yoloGtold1/train/20922.png +../../data/yoloGtold1/train/20923.png +../../data/yoloGtold1/train/20924.png +../../data/yoloGtold1/train/20925.png +../../data/yoloGtold1/train/20926.png +../../data/yoloGtold1/train/20927.png +../../data/yoloGtold1/train/20928.png +../../data/yoloGtold1/train/20929.png +../../data/yoloGtold1/train/20930.png +../../data/yoloGtold1/train/20931.png +../../data/yoloGtold1/train/20932.png +../../data/yoloGtold1/train/20933.png +../../data/yoloGtold1/train/20934.png +../../data/yoloGtold1/train/20935.png +../../data/yoloGtold1/train/20936.png +../../data/yoloGtold1/train/20937.png +../../data/yoloGtold1/train/20938.png +../../data/yoloGtold1/train/20939.png +../../data/yoloGtold1/train/20940.png +../../data/yoloGtold1/train/20941.png +../../data/yoloGtold1/train/20942.png +../../data/yoloGtold1/train/20943.png +../../data/yoloGtold1/train/20944.png +../../data/yoloGtold1/train/20945.png +../../data/yoloGtold1/train/20946.png +../../data/yoloGtold1/train/20947.png +../../data/yoloGtold1/train/20948.png +../../data/yoloGtold1/train/20949.png +../../data/yoloGtold1/train/20950.png +../../data/yoloGtold1/train/20951.png +../../data/yoloGtold1/train/20952.png +../../data/yoloGtold1/train/20953.png +../../data/yoloGtold1/train/20954.png +../../data/yoloGtold1/train/20955.png +../../data/yoloGtold1/train/20956.png +../../data/yoloGtold1/train/20957.png +../../data/yoloGtold1/train/20958.png +../../data/yoloGtold1/train/20959.png +../../data/yoloGtold1/train/20960.png +../../data/yoloGtold1/train/20961.png +../../data/yoloGtold1/train/20962.png +../../data/yoloGtold1/train/20963.png +../../data/yoloGtold1/train/20964.png +../../data/yoloGtold1/train/20965.png +../../data/yoloGtold1/train/20966.png +../../data/yoloGtold1/train/20967.png +../../data/yoloGtold1/train/20968.png +../../data/yoloGtold1/train/20969.png +../../data/yoloGtold1/train/20970.png +../../data/yoloGtold1/train/20971.png +../../data/yoloGtold1/train/20972.png +../../data/yoloGtold1/train/20973.png +../../data/yoloGtold1/train/20974.png +../../data/yoloGtold1/train/20975.png +../../data/yoloGtold1/train/20976.png +../../data/yoloGtold1/train/20977.png +../../data/yoloGtold1/train/20978.png +../../data/yoloGtold1/train/20979.png +../../data/yoloGtold1/train/20980.png +../../data/yoloGtold1/train/20981.png +../../data/yoloGtold1/train/20982.png +../../data/yoloGtold1/train/20983.png +../../data/yoloGtold1/train/20984.png +../../data/yoloGtold1/train/20985.png +../../data/yoloGtold1/train/20986.png +../../data/yoloGtold1/train/20987.png +../../data/yoloGtold1/train/20988.png +../../data/yoloGtold1/train/20989.png +../../data/yoloGtold1/train/20990.png +../../data/yoloGtold1/train/20991.png +../../data/yoloGtold1/train/20992.png +../../data/yoloGtold1/train/20993.png +../../data/yoloGtold1/train/20994.png +../../data/yoloGtold1/train/20995.png +../../data/yoloGtold1/train/20996.png +../../data/yoloGtold1/train/20997.png +../../data/yoloGtold1/train/20998.png +../../data/yoloGtold1/train/20999.png +../../data/yoloGtold1/train/21000.png +../../data/yoloGtold1/train/21001.png +../../data/yoloGtold1/train/21002.png +../../data/yoloGtold1/train/21003.png +../../data/yoloGtold1/train/21004.png +../../data/yoloGtold1/train/21005.png +../../data/yoloGtold1/train/21006.png +../../data/yoloGtold1/train/21007.png +../../data/yoloGtold1/train/21008.png +../../data/yoloGtold1/train/21009.png +../../data/yoloGtold1/train/21010.png +../../data/yoloGtold1/train/21011.png +../../data/yoloGtold1/train/21012.png +../../data/yoloGtold1/train/21013.png +../../data/yoloGtold1/train/21014.png +../../data/yoloGtold1/train/21015.png +../../data/yoloGtold1/train/21016.png +../../data/yoloGtold1/train/21017.png +../../data/yoloGtold1/train/21018.png +../../data/yoloGtold1/train/21019.png +../../data/yoloGtold1/train/21020.png +../../data/yoloGtold1/train/21021.png +../../data/yoloGtold1/train/21022.png +../../data/yoloGtold1/train/21023.png +../../data/yoloGtold1/train/21024.png +../../data/yoloGtold1/train/21025.png +../../data/yoloGtold1/train/21026.png +../../data/yoloGtold1/train/21027.png +../../data/yoloGtold1/train/21028.png +../../data/yoloGtold1/train/21029.png +../../data/yoloGtold1/train/21030.png +../../data/yoloGtold1/train/21031.png +../../data/yoloGtold1/train/21032.png +../../data/yoloGtold1/train/21033.png +../../data/yoloGtold1/train/21034.png +../../data/yoloGtold1/train/21035.png +../../data/yoloGtold1/train/21036.png +../../data/yoloGtold1/train/21037.png +../../data/yoloGtold1/train/21038.png +../../data/yoloGtold1/train/21039.png +../../data/yoloGtold1/train/21040.png +../../data/yoloGtold1/train/21041.png +../../data/yoloGtold1/train/21042.png +../../data/yoloGtold1/train/21043.png +../../data/yoloGtold1/train/21044.png +../../data/yoloGtold1/train/21045.png +../../data/yoloGtold1/train/21046.png +../../data/yoloGtold1/train/21047.png +../../data/yoloGtold1/train/21048.png +../../data/yoloGtold1/train/21049.png +../../data/yoloGtold1/train/21050.png +../../data/yoloGtold1/train/21051.png +../../data/yoloGtold1/train/21052.png +../../data/yoloGtold1/train/21053.png +../../data/yoloGtold1/train/21054.png +../../data/yoloGtold1/train/21055.png +../../data/yoloGtold1/train/21056.png +../../data/yoloGtold1/train/21057.png +../../data/yoloGtold1/train/21058.png +../../data/yoloGtold1/train/21059.png +../../data/yoloGtold1/train/21060.png +../../data/yoloGtold1/train/21061.png +../../data/yoloGtold1/train/21062.png +../../data/yoloGtold1/train/21063.png +../../data/yoloGtold1/train/21064.png +../../data/yoloGtold1/train/21065.png +../../data/yoloGtold1/train/21066.png +../../data/yoloGtold1/train/21067.png +../../data/yoloGtold1/train/21068.png +../../data/yoloGtold1/train/21069.png +../../data/yoloGtold1/train/21070.png +../../data/yoloGtold1/train/21071.png +../../data/yoloGtold1/train/21072.png +../../data/yoloGtold1/train/21073.png +../../data/yoloGtold1/train/21074.png +../../data/yoloGtold1/train/21075.png +../../data/yoloGtold1/train/21076.png +../../data/yoloGtold1/train/21077.png +../../data/yoloGtold1/train/21078.png +../../data/yoloGtold1/train/21079.png +../../data/yoloGtold1/train/21080.png +../../data/yoloGtold1/train/21081.png +../../data/yoloGtold1/train/21082.png +../../data/yoloGtold1/train/21083.png +../../data/yoloGtold1/train/21084.png +../../data/yoloGtold1/train/21085.png +../../data/yoloGtold1/train/21086.png +../../data/yoloGtold1/train/21087.png +../../data/yoloGtold1/train/21088.png +../../data/yoloGtold1/train/21089.png +../../data/yoloGtold1/train/21090.png +../../data/yoloGtold1/train/21091.png +../../data/yoloGtold1/train/21092.png +../../data/yoloGtold1/train/21093.png +../../data/yoloGtold1/train/21094.png +../../data/yoloGtold1/train/21095.png +../../data/yoloGtold1/train/21096.png +../../data/yoloGtold1/train/21097.png +../../data/yoloGtold1/train/21098.png +../../data/yoloGtold1/train/21099.png +../../data/yoloGtold1/train/21100.png +../../data/yoloGtold1/train/21101.png +../../data/yoloGtold1/train/21102.png +../../data/yoloGtold1/train/21103.png +../../data/yoloGtold1/train/21104.png +../../data/yoloGtold1/train/21105.png +../../data/yoloGtold1/train/21106.png +../../data/yoloGtold1/train/21107.png +../../data/yoloGtold1/train/21108.png +../../data/yoloGtold1/train/21109.png +../../data/yoloGtold1/train/21110.png +../../data/yoloGtold1/train/21111.png +../../data/yoloGtold1/train/21112.png +../../data/yoloGtold1/train/21113.png +../../data/yoloGtold1/train/21114.png +../../data/yoloGtold1/train/21115.png +../../data/yoloGtold1/train/21116.png +../../data/yoloGtold1/train/21117.png +../../data/yoloGtold1/train/21118.png +../../data/yoloGtold1/train/21119.png +../../data/yoloGtold1/train/21120.png +../../data/yoloGtold1/train/21121.png +../../data/yoloGtold1/train/21122.png +../../data/yoloGtold1/train/21123.png +../../data/yoloGtold1/train/21124.png +../../data/yoloGtold1/train/21125.png +../../data/yoloGtold1/train/21126.png +../../data/yoloGtold1/train/21127.png +../../data/yoloGtold1/train/21128.png +../../data/yoloGtold1/train/21129.png +../../data/yoloGtold1/train/21130.png +../../data/yoloGtold1/train/21131.png +../../data/yoloGtold1/train/21132.png +../../data/yoloGtold1/train/21133.png +../../data/yoloGtold1/train/21134.png +../../data/yoloGtold1/train/21135.png +../../data/yoloGtold1/train/21136.png +../../data/yoloGtold1/train/21137.png +../../data/yoloGtold1/train/21138.png +../../data/yoloGtold1/train/21139.png +../../data/yoloGtold1/train/21140.png +../../data/yoloGtold1/train/21141.png +../../data/yoloGtold1/train/21142.png +../../data/yoloGtold1/train/21143.png +../../data/yoloGtold1/train/21144.png +../../data/yoloGtold1/train/21145.png +../../data/yoloGtold1/train/21146.png +../../data/yoloGtold1/train/21147.png +../../data/yoloGtold1/train/21148.png +../../data/yoloGtold1/train/21149.png +../../data/yoloGtold1/train/21150.png +../../data/yoloGtold1/train/21151.png +../../data/yoloGtold1/train/21152.png +../../data/yoloGtold1/train/21153.png +../../data/yoloGtold1/train/21154.png +../../data/yoloGtold1/train/21155.png +../../data/yoloGtold1/train/21156.png +../../data/yoloGtold1/train/21157.png +../../data/yoloGtold1/train/21158.png +../../data/yoloGtold1/train/21159.png +../../data/yoloGtold1/train/21160.png +../../data/yoloGtold1/train/21161.png +../../data/yoloGtold1/train/21162.png +../../data/yoloGtold1/train/21163.png +../../data/yoloGtold1/train/21164.png +../../data/yoloGtold1/train/21165.png +../../data/yoloGtold1/train/21166.png +../../data/yoloGtold1/train/21167.png +../../data/yoloGtold1/train/21168.png +../../data/yoloGtold1/train/21169.png +../../data/yoloGtold1/train/21170.png +../../data/yoloGtold1/train/21171.png +../../data/yoloGtold1/train/21172.png +../../data/yoloGtold1/train/21173.png +../../data/yoloGtold1/train/21174.png +../../data/yoloGtold1/train/21175.png +../../data/yoloGtold1/train/21176.png +../../data/yoloGtold1/train/21177.png +../../data/yoloGtold1/train/21178.png +../../data/yoloGtold1/train/21179.png +../../data/yoloGtold1/train/21180.png +../../data/yoloGtold1/train/21181.png +../../data/yoloGtold1/train/21182.png +../../data/yoloGtold1/train/21183.png +../../data/yoloGtold1/train/21184.png +../../data/yoloGtold1/train/21185.png +../../data/yoloGtold1/train/21186.png +../../data/yoloGtold1/train/21187.png +../../data/yoloGtold1/train/21188.png +../../data/yoloGtold1/train/21189.png +../../data/yoloGtold1/train/21190.png +../../data/yoloGtold1/train/21191.png +../../data/yoloGtold1/train/21192.png +../../data/yoloGtold1/train/21193.png +../../data/yoloGtold1/train/21194.png +../../data/yoloGtold1/train/21195.png +../../data/yoloGtold1/train/21196.png +../../data/yoloGtold1/train/21197.png +../../data/yoloGtold1/train/21198.png +../../data/yoloGtold1/train/21199.png +../../data/yoloGtold1/train/21200.png +../../data/yoloGtold1/train/21201.png +../../data/yoloGtold1/train/21202.png +../../data/yoloGtold1/train/21203.png +../../data/yoloGtold1/train/21204.png +../../data/yoloGtold1/train/21205.png +../../data/yoloGtold1/train/21206.png +../../data/yoloGtold1/train/21207.png +../../data/yoloGtold1/train/21208.png +../../data/yoloGtold1/train/21209.png +../../data/yoloGtold1/train/21210.png +../../data/yoloGtold1/train/21211.png +../../data/yoloGtold1/train/21212.png +../../data/yoloGtold1/train/21213.png +../../data/yoloGtold1/train/21214.png +../../data/yoloGtold1/train/21215.png +../../data/yoloGtold1/train/21216.png +../../data/yoloGtold1/train/21217.png +../../data/yoloGtold1/train/21218.png +../../data/yoloGtold1/train/21219.png +../../data/yoloGtold1/train/21220.png +../../data/yoloGtold1/train/21221.png +../../data/yoloGtold1/train/21222.png +../../data/yoloGtold1/train/21223.png +../../data/yoloGtold1/train/21224.png +../../data/yoloGtold1/train/21225.png +../../data/yoloGtold1/train/21226.png +../../data/yoloGtold1/train/21227.png +../../data/yoloGtold1/train/21228.png +../../data/yoloGtold1/train/21229.png +../../data/yoloGtold1/train/21230.png +../../data/yoloGtold1/train/21231.png +../../data/yoloGtold1/train/21232.png +../../data/yoloGtold1/train/21233.png +../../data/yoloGtold1/train/21234.png +../../data/yoloGtold1/train/21235.png +../../data/yoloGtold1/train/21236.png +../../data/yoloGtold1/train/21237.png +../../data/yoloGtold1/train/21238.png +../../data/yoloGtold1/train/21239.png +../../data/yoloGtold1/train/21240.png +../../data/yoloGtold1/train/21241.png +../../data/yoloGtold1/train/21242.png +../../data/yoloGtold1/train/21243.png +../../data/yoloGtold1/train/21244.png +../../data/yoloGtold1/train/21245.png +../../data/yoloGtold1/train/21246.png +../../data/yoloGtold1/train/21247.png +../../data/yoloGtold1/train/21248.png +../../data/yoloGtold1/train/21249.png +../../data/yoloGtold1/train/21250.png +../../data/yoloGtold1/train/21251.png +../../data/yoloGtold1/train/21252.png +../../data/yoloGtold1/train/21253.png +../../data/yoloGtold1/train/21254.png +../../data/yoloGtold1/train/21255.png +../../data/yoloGtold1/train/21256.png +../../data/yoloGtold1/train/21257.png +../../data/yoloGtold1/train/21258.png +../../data/yoloGtold1/train/21259.png +../../data/yoloGtold1/train/21260.png +../../data/yoloGtold1/train/21261.png +../../data/yoloGtold1/train/21262.png +../../data/yoloGtold1/train/21263.png +../../data/yoloGtold1/train/21264.png +../../data/yoloGtold1/train/21265.png +../../data/yoloGtold1/train/21266.png +../../data/yoloGtold1/train/21267.png +../../data/yoloGtold1/train/21268.png +../../data/yoloGtold1/train/21269.png +../../data/yoloGtold1/train/21270.png +../../data/yoloGtold1/train/21271.png +../../data/yoloGtold1/train/21272.png +../../data/yoloGtold1/train/21273.png +../../data/yoloGtold1/train/21274.png +../../data/yoloGtold1/train/21275.png +../../data/yoloGtold1/train/21276.png +../../data/yoloGtold1/train/21277.png +../../data/yoloGtold1/train/21278.png +../../data/yoloGtold1/train/21279.png +../../data/yoloGtold1/train/21280.png +../../data/yoloGtold1/train/21281.png +../../data/yoloGtold1/train/21282.png +../../data/yoloGtold1/train/21283.png +../../data/yoloGtold1/train/21284.png +../../data/yoloGtold1/train/21285.png +../../data/yoloGtold1/train/21286.png +../../data/yoloGtold1/train/21287.png +../../data/yoloGtold1/train/21288.png +../../data/yoloGtold1/train/21289.png +../../data/yoloGtold1/train/21290.png +../../data/yoloGtold1/train/21291.png +../../data/yoloGtold1/train/21292.png +../../data/yoloGtold1/train/21293.png +../../data/yoloGtold1/train/21294.png +../../data/yoloGtold1/train/21295.png +../../data/yoloGtold1/train/21296.png +../../data/yoloGtold1/train/21297.png +../../data/yoloGtold1/train/21298.png +../../data/yoloGtold1/train/21299.png +../../data/yoloGtold1/train/21300.png +../../data/yoloGtold1/train/21301.png +../../data/yoloGtold1/train/21302.png +../../data/yoloGtold1/train/21303.png +../../data/yoloGtold1/train/21304.png +../../data/yoloGtold1/train/21305.png +../../data/yoloGtold1/train/21306.png +../../data/yoloGtold1/train/21307.png +../../data/yoloGtold1/train/21308.png +../../data/yoloGtold1/train/21309.png +../../data/yoloGtold1/train/21310.png +../../data/yoloGtold1/train/21311.png +../../data/yoloGtold1/train/21312.png +../../data/yoloGtold1/train/21313.png +../../data/yoloGtold1/train/21314.png +../../data/yoloGtold1/train/21315.png +../../data/yoloGtold1/train/21316.png +../../data/yoloGtold1/train/21317.png +../../data/yoloGtold1/train/21318.png +../../data/yoloGtold1/train/21319.png +../../data/yoloGtold1/train/21320.png +../../data/yoloGtold1/train/21321.png +../../data/yoloGtold1/train/21322.png +../../data/yoloGtold1/train/21323.png +../../data/yoloGtold1/train/21324.png +../../data/yoloGtold1/train/21325.png +../../data/yoloGtold1/train/21326.png +../../data/yoloGtold1/train/21327.png +../../data/yoloGtold1/train/21328.png +../../data/yoloGtold1/train/21329.png +../../data/yoloGtold1/train/21330.png +../../data/yoloGtold1/train/21331.png +../../data/yoloGtold1/train/21332.png +../../data/yoloGtold1/train/21333.png +../../data/yoloGtold1/train/21334.png +../../data/yoloGtold1/train/21335.png +../../data/yoloGtold1/train/21336.png +../../data/yoloGtold1/train/21337.png +../../data/yoloGtold1/train/21338.png +../../data/yoloGtold1/train/21339.png +../../data/yoloGtold1/train/21340.png +../../data/yoloGtold1/train/21341.png +../../data/yoloGtold1/train/21342.png +../../data/yoloGtold1/train/21343.png +../../data/yoloGtold1/train/21344.png +../../data/yoloGtold1/train/21345.png +../../data/yoloGtold1/train/21346.png +../../data/yoloGtold1/train/21347.png +../../data/yoloGtold1/train/21348.png +../../data/yoloGtold1/train/21349.png +../../data/yoloGtold1/train/21350.png +../../data/yoloGtold1/train/21351.png +../../data/yoloGtold1/train/21352.png +../../data/yoloGtold1/train/21353.png +../../data/yoloGtold1/train/21354.png +../../data/yoloGtold1/train/21355.png +../../data/yoloGtold1/train/21356.png +../../data/yoloGtold1/train/21357.png +../../data/yoloGtold1/train/21358.png +../../data/yoloGtold1/train/21359.png +../../data/yoloGtold1/train/21360.png +../../data/yoloGtold1/train/21361.png +../../data/yoloGtold1/train/21362.png +../../data/yoloGtold1/train/21363.png +../../data/yoloGtold1/train/21364.png +../../data/yoloGtold1/train/21365.png +../../data/yoloGtold1/train/21366.png +../../data/yoloGtold1/train/21367.png +../../data/yoloGtold1/train/21368.png +../../data/yoloGtold1/train/21369.png +../../data/yoloGtold1/train/21370.png +../../data/yoloGtold1/train/21371.png +../../data/yoloGtold1/train/21372.png +../../data/yoloGtold1/train/21373.png +../../data/yoloGtold1/train/21374.png +../../data/yoloGtold1/train/21375.png +../../data/yoloGtold1/train/21376.png +../../data/yoloGtold1/train/21377.png +../../data/yoloGtold1/train/21378.png +../../data/yoloGtold1/train/21379.png +../../data/yoloGtold1/train/21380.png +../../data/yoloGtold1/train/21381.png +../../data/yoloGtold1/train/21382.png +../../data/yoloGtold1/train/21383.png +../../data/yoloGtold1/train/21384.png +../../data/yoloGtold1/train/21385.png +../../data/yoloGtold1/train/21386.png +../../data/yoloGtold1/train/21387.png +../../data/yoloGtold1/train/21388.png +../../data/yoloGtold1/train/21389.png +../../data/yoloGtold1/train/21390.png +../../data/yoloGtold1/train/21391.png +../../data/yoloGtold1/train/21392.png +../../data/yoloGtold1/train/21393.png +../../data/yoloGtold1/train/21394.png +../../data/yoloGtold1/train/21395.png +../../data/yoloGtold1/train/21396.png +../../data/yoloGtold1/train/21397.png +../../data/yoloGtold1/train/21398.png +../../data/yoloGtold1/train/21399.png +../../data/yoloGtold1/train/21400.png +../../data/yoloGtold1/train/21401.png +../../data/yoloGtold1/train/21402.png +../../data/yoloGtold1/train/21403.png +../../data/yoloGtold1/train/21404.png +../../data/yoloGtold1/train/21405.png +../../data/yoloGtold1/train/21406.png +../../data/yoloGtold1/train/21407.png +../../data/yoloGtold1/train/21408.png +../../data/yoloGtold1/train/21409.png +../../data/yoloGtold1/train/21410.png +../../data/yoloGtold1/train/21411.png +../../data/yoloGtold1/train/21412.png +../../data/yoloGtold1/train/21413.png +../../data/yoloGtold1/train/21414.png +../../data/yoloGtold1/train/21415.png +../../data/yoloGtold1/train/21416.png +../../data/yoloGtold1/train/21417.png +../../data/yoloGtold1/train/21418.png +../../data/yoloGtold1/train/21419.png +../../data/yoloGtold1/train/21420.png +../../data/yoloGtold1/train/21421.png +../../data/yoloGtold1/train/21422.png +../../data/yoloGtold1/train/21423.png +../../data/yoloGtold1/train/21424.png +../../data/yoloGtold1/train/21425.png +../../data/yoloGtold1/train/21426.png +../../data/yoloGtold1/train/21427.png +../../data/yoloGtold1/train/21428.png +../../data/yoloGtold1/train/21429.png +../../data/yoloGtold1/train/21430.png +../../data/yoloGtold1/train/21431.png +../../data/yoloGtold1/train/21432.png +../../data/yoloGtold1/train/21433.png +../../data/yoloGtold1/train/21434.png +../../data/yoloGtold1/train/21435.png +../../data/yoloGtold1/train/21436.png +../../data/yoloGtold1/train/21437.png +../../data/yoloGtold1/train/21438.png +../../data/yoloGtold1/train/21439.png +../../data/yoloGtold1/train/21440.png +../../data/yoloGtold1/train/21441.png +../../data/yoloGtold1/train/21442.png +../../data/yoloGtold1/train/21443.png +../../data/yoloGtold1/train/21444.png +../../data/yoloGtold1/train/21445.png +../../data/yoloGtold1/train/21446.png +../../data/yoloGtold1/train/21447.png +../../data/yoloGtold1/train/21448.png +../../data/yoloGtold1/train/21449.png +../../data/yoloGtold1/train/21450.png +../../data/yoloGtold1/train/21451.png +../../data/yoloGtold1/train/21452.png +../../data/yoloGtold1/train/21453.png +../../data/yoloGtold1/train/21454.png +../../data/yoloGtold1/train/21455.png +../../data/yoloGtold1/train/21456.png +../../data/yoloGtold1/train/21457.png +../../data/yoloGtold1/train/21458.png +../../data/yoloGtold1/train/21459.png +../../data/yoloGtold1/train/21460.png +../../data/yoloGtold1/train/21461.png +../../data/yoloGtold1/train/21462.png +../../data/yoloGtold1/train/21463.png +../../data/yoloGtold1/train/21464.png +../../data/yoloGtold1/train/21465.png +../../data/yoloGtold1/train/21466.png +../../data/yoloGtold1/train/21467.png +../../data/yoloGtold1/train/21468.png +../../data/yoloGtold1/train/21469.png +../../data/yoloGtold1/train/21470.png +../../data/yoloGtold1/train/21471.png +../../data/yoloGtold1/train/21472.png +../../data/yoloGtold1/train/21473.png +../../data/yoloGtold1/train/21474.png +../../data/yoloGtold1/train/21475.png +../../data/yoloGtold1/train/21476.png +../../data/yoloGtold1/train/21477.png +../../data/yoloGtold1/train/21478.png +../../data/yoloGtold1/train/21479.png +../../data/yoloGtold1/train/21480.png +../../data/yoloGtold1/train/21481.png +../../data/yoloGtold1/train/21482.png +../../data/yoloGtold1/train/21483.png +../../data/yoloGtold1/train/21484.png +../../data/yoloGtold1/train/21485.png +../../data/yoloGtold1/train/21486.png +../../data/yoloGtold1/train/21487.png +../../data/yoloGtold1/train/21488.png +../../data/yoloGtold1/train/21489.png +../../data/yoloGtold1/train/21490.png +../../data/yoloGtold1/train/21491.png +../../data/yoloGtold1/train/21492.png +../../data/yoloGtold1/train/21493.png +../../data/yoloGtold1/train/21494.png +../../data/yoloGtold1/train/21495.png +../../data/yoloGtold1/train/21496.png +../../data/yoloGtold1/train/21497.png +../../data/yoloGtold1/train/21498.png +../../data/yoloGtold1/train/21499.png +../../data/yoloGtold1/train/21500.png +../../data/yoloGtold1/train/21501.png +../../data/yoloGtold1/train/21502.png +../../data/yoloGtold1/train/21503.png +../../data/yoloGtold1/train/21504.png +../../data/yoloGtold1/train/21505.png +../../data/yoloGtold1/train/21506.png +../../data/yoloGtold1/train/21507.png +../../data/yoloGtold1/train/21508.png +../../data/yoloGtold1/train/21509.png +../../data/yoloGtold1/train/21510.png +../../data/yoloGtold1/train/21511.png +../../data/yoloGtold1/train/21512.png +../../data/yoloGtold1/train/21513.png +../../data/yoloGtold1/train/21514.png +../../data/yoloGtold1/train/21515.png +../../data/yoloGtold1/train/21516.png +../../data/yoloGtold1/train/21517.png +../../data/yoloGtold1/train/21518.png +../../data/yoloGtold1/train/21519.png +../../data/yoloGtold1/train/21520.png +../../data/yoloGtold1/train/21521.png +../../data/yoloGtold1/train/21522.png +../../data/yoloGtold1/train/21523.png +../../data/yoloGtold1/train/21524.png +../../data/yoloGtold1/train/21525.png +../../data/yoloGtold1/train/21526.png +../../data/yoloGtold1/train/21527.png +../../data/yoloGtold1/train/21528.png +../../data/yoloGtold1/train/21529.png +../../data/yoloGtold1/train/21530.png +../../data/yoloGtold1/train/21531.png +../../data/yoloGtold1/train/21532.png +../../data/yoloGtold1/train/21533.png +../../data/yoloGtold1/train/21534.png +../../data/yoloGtold1/train/21535.png +../../data/yoloGtold1/train/21536.png +../../data/yoloGtold1/train/21537.png +../../data/yoloGtold1/train/21538.png +../../data/yoloGtold1/train/21539.png +../../data/yoloGtold1/train/21540.png +../../data/yoloGtold1/train/21541.png +../../data/yoloGtold1/train/21542.png +../../data/yoloGtold1/train/21543.png +../../data/yoloGtold1/train/21544.png +../../data/yoloGtold1/train/21545.png +../../data/yoloGtold1/train/21546.png +../../data/yoloGtold1/train/21547.png +../../data/yoloGtold1/train/21548.png +../../data/yoloGtold1/train/21549.png +../../data/yoloGtold1/train/21550.png +../../data/yoloGtold1/train/21551.png +../../data/yoloGtold1/train/21552.png +../../data/yoloGtold1/train/21553.png +../../data/yoloGtold1/train/21554.png +../../data/yoloGtold1/train/21555.png +../../data/yoloGtold1/train/21556.png +../../data/yoloGtold1/train/21557.png +../../data/yoloGtold1/train/21558.png +../../data/yoloGtold1/train/21559.png +../../data/yoloGtold1/train/21560.png +../../data/yoloGtold1/train/21561.png +../../data/yoloGtold1/train/21562.png +../../data/yoloGtold1/train/21563.png +../../data/yoloGtold1/train/21564.png +../../data/yoloGtold1/train/21565.png +../../data/yoloGtold1/train/21566.png +../../data/yoloGtold1/train/21567.png +../../data/yoloGtold1/train/21568.png +../../data/yoloGtold1/train/21569.png +../../data/yoloGtold1/train/21570.png +../../data/yoloGtold1/train/21571.png +../../data/yoloGtold1/train/21572.png +../../data/yoloGtold1/train/21573.png +../../data/yoloGtold1/train/21574.png +../../data/yoloGtold1/train/21575.png +../../data/yoloGtold1/train/21576.png +../../data/yoloGtold1/train/21577.png +../../data/yoloGtold1/train/21578.png +../../data/yoloGtold1/train/21579.png +../../data/yoloGtold1/train/21580.png +../../data/yoloGtold1/train/21581.png +../../data/yoloGtold1/train/21582.png +../../data/yoloGtold1/train/21583.png +../../data/yoloGtold1/train/21584.png +../../data/yoloGtold1/train/21585.png +../../data/yoloGtold1/train/21586.png +../../data/yoloGtold1/train/21587.png +../../data/yoloGtold1/train/21588.png +../../data/yoloGtold1/train/21589.png +../../data/yoloGtold1/train/21590.png +../../data/yoloGtold1/train/21591.png +../../data/yoloGtold1/train/21592.png +../../data/yoloGtold1/train/21593.png +../../data/yoloGtold1/train/21594.png +../../data/yoloGtold1/train/21595.png +../../data/yoloGtold1/train/21596.png +../../data/yoloGtold1/train/21597.png +../../data/yoloGtold1/train/21598.png +../../data/yoloGtold1/train/21599.png +../../data/yoloGtold1/train/21600.png +../../data/yoloGtold1/train/21601.png +../../data/yoloGtold1/train/21602.png +../../data/yoloGtold1/train/21603.png +../../data/yoloGtold1/train/21604.png +../../data/yoloGtold1/train/21605.png +../../data/yoloGtold1/train/21606.png +../../data/yoloGtold1/train/21607.png +../../data/yoloGtold1/train/21608.png +../../data/yoloGtold1/train/21609.png +../../data/yoloGtold1/train/21610.png +../../data/yoloGtold1/train/21611.png +../../data/yoloGtold1/train/21612.png +../../data/yoloGtold1/train/21613.png +../../data/yoloGtold1/train/21614.png +../../data/yoloGtold1/train/21615.png +../../data/yoloGtold1/train/21616.png +../../data/yoloGtold1/train/21617.png +../../data/yoloGtold1/train/21618.png +../../data/yoloGtold1/train/21619.png +../../data/yoloGtold1/train/21620.png +../../data/yoloGtold1/train/21621.png +../../data/yoloGtold1/train/21622.png +../../data/yoloGtold1/train/21623.png +../../data/yoloGtold1/train/21624.png +../../data/yoloGtold1/train/21625.png +../../data/yoloGtold1/train/21626.png +../../data/yoloGtold1/train/21627.png +../../data/yoloGtold1/train/21628.png +../../data/yoloGtold1/train/21629.png +../../data/yoloGtold1/train/21630.png +../../data/yoloGtold1/train/21631.png +../../data/yoloGtold1/train/21632.png +../../data/yoloGtold1/train/21633.png +../../data/yoloGtold1/train/21634.png +../../data/yoloGtold1/train/21635.png +../../data/yoloGtold1/train/21636.png +../../data/yoloGtold1/train/21637.png +../../data/yoloGtold1/train/21638.png +../../data/yoloGtold1/train/21639.png +../../data/yoloGtold1/train/21640.png +../../data/yoloGtold1/train/21641.png +../../data/yoloGtold1/train/21642.png +../../data/yoloGtold1/train/21643.png +../../data/yoloGtold1/train/21644.png +../../data/yoloGtold1/train/21645.png +../../data/yoloGtold1/train/21646.png +../../data/yoloGtold1/train/21647.png +../../data/yoloGtold1/train/21648.png +../../data/yoloGtold1/train/21649.png +../../data/yoloGtold1/train/21650.png +../../data/yoloGtold1/train/21651.png +../../data/yoloGtold1/train/21652.png +../../data/yoloGtold1/train/21653.png +../../data/yoloGtold1/train/21654.png +../../data/yoloGtold1/train/21655.png +../../data/yoloGtold1/train/21656.png +../../data/yoloGtold1/train/21657.png +../../data/yoloGtold1/train/21658.png +../../data/yoloGtold1/train/21659.png +../../data/yoloGtold1/train/21660.png +../../data/yoloGtold1/train/21661.png +../../data/yoloGtold1/train/21662.png +../../data/yoloGtold1/train/21663.png +../../data/yoloGtold1/train/21664.png +../../data/yoloGtold1/train/21665.png +../../data/yoloGtold1/train/21666.png +../../data/yoloGtold1/train/21667.png +../../data/yoloGtold1/train/21668.png +../../data/yoloGtold1/train/21669.png +../../data/yoloGtold1/train/21670.png +../../data/yoloGtold1/train/21671.png +../../data/yoloGtold1/train/21672.png +../../data/yoloGtold1/train/21673.png +../../data/yoloGtold1/train/21674.png +../../data/yoloGtold1/train/21675.png +../../data/yoloGtold1/train/21676.png +../../data/yoloGtold1/train/21677.png +../../data/yoloGtold1/train/21678.png +../../data/yoloGtold1/train/21679.png +../../data/yoloGtold1/train/21680.png +../../data/yoloGtold1/train/21681.png +../../data/yoloGtold1/train/21682.png +../../data/yoloGtold1/train/21683.png +../../data/yoloGtold1/train/21684.png +../../data/yoloGtold1/train/21685.png +../../data/yoloGtold1/train/21686.png +../../data/yoloGtold1/train/21687.png +../../data/yoloGtold1/train/21688.png +../../data/yoloGtold1/train/21689.png +../../data/yoloGtold1/train/21690.png +../../data/yoloGtold1/train/21691.png +../../data/yoloGtold1/train/21692.png +../../data/yoloGtold1/train/21693.png +../../data/yoloGtold1/train/21694.png +../../data/yoloGtold1/train/21695.png +../../data/yoloGtold1/train/21696.png +../../data/yoloGtold1/train/21697.png +../../data/yoloGtold1/train/21698.png +../../data/yoloGtold1/train/21699.png +../../data/yoloGtold1/train/21700.png +../../data/yoloGtold1/train/21701.png +../../data/yoloGtold1/train/21702.png +../../data/yoloGtold1/train/21703.png +../../data/yoloGtold1/train/21704.png +../../data/yoloGtold1/train/21705.png +../../data/yoloGtold1/train/21706.png +../../data/yoloGtold1/train/21707.png +../../data/yoloGtold1/train/21708.png +../../data/yoloGtold1/train/21709.png +../../data/yoloGtold1/train/21710.png +../../data/yoloGtold1/train/21711.png +../../data/yoloGtold1/train/21712.png +../../data/yoloGtold1/train/21713.png +../../data/yoloGtold1/train/21714.png +../../data/yoloGtold1/train/21715.png +../../data/yoloGtold1/train/21716.png +../../data/yoloGtold1/train/21717.png +../../data/yoloGtold1/train/21718.png +../../data/yoloGtold1/train/21719.png +../../data/yoloGtold1/train/21720.png +../../data/yoloGtold1/train/21721.png +../../data/yoloGtold1/train/21722.png +../../data/yoloGtold1/train/21723.png +../../data/yoloGtold1/train/21724.png +../../data/yoloGtold1/train/21725.png +../../data/yoloGtold1/train/21726.png +../../data/yoloGtold1/train/21727.png +../../data/yoloGtold1/train/21728.png +../../data/yoloGtold1/train/21729.png +../../data/yoloGtold1/train/21730.png +../../data/yoloGtold1/train/21731.png +../../data/yoloGtold1/train/21732.png +../../data/yoloGtold1/train/21733.png +../../data/yoloGtold1/train/21734.png +../../data/yoloGtold1/train/21735.png +../../data/yoloGtold1/train/21736.png +../../data/yoloGtold1/train/21737.png +../../data/yoloGtold1/train/21738.png +../../data/yoloGtold1/train/21739.png +../../data/yoloGtold1/train/21740.png +../../data/yoloGtold1/train/21741.png +../../data/yoloGtold1/train/21742.png +../../data/yoloGtold1/train/21743.png +../../data/yoloGtold1/train/21744.png +../../data/yoloGtold1/train/21745.png +../../data/yoloGtold1/train/21746.png +../../data/yoloGtold1/train/21747.png +../../data/yoloGtold1/train/21748.png +../../data/yoloGtold1/train/21749.png +../../data/yoloGtold1/train/21750.png +../../data/yoloGtold1/train/21751.png +../../data/yoloGtold1/train/21752.png +../../data/yoloGtold1/train/21753.png +../../data/yoloGtold1/train/21754.png +../../data/yoloGtold1/train/21755.png +../../data/yoloGtold1/train/21756.png +../../data/yoloGtold1/train/21757.png +../../data/yoloGtold1/train/21758.png +../../data/yoloGtold1/train/21759.png +../../data/yoloGtold1/train/21760.png +../../data/yoloGtold1/train/21761.png +../../data/yoloGtold1/train/21762.png +../../data/yoloGtold1/train/21763.png +../../data/yoloGtold1/train/21764.png +../../data/yoloGtold1/train/21765.png +../../data/yoloGtold1/train/21766.png +../../data/yoloGtold1/train/21767.png +../../data/yoloGtold1/train/21768.png +../../data/yoloGtold1/train/21769.png +../../data/yoloGtold1/train/21770.png +../../data/yoloGtold1/train/21771.png +../../data/yoloGtold1/train/21772.png +../../data/yoloGtold1/train/21773.png +../../data/yoloGtold1/train/21774.png +../../data/yoloGtold1/train/21775.png +../../data/yoloGtold1/train/21776.png +../../data/yoloGtold1/train/21777.png +../../data/yoloGtold1/train/21778.png +../../data/yoloGtold1/train/21779.png +../../data/yoloGtold1/train/21780.png +../../data/yoloGtold1/train/21781.png +../../data/yoloGtold1/train/21782.png +../../data/yoloGtold1/train/21783.png +../../data/yoloGtold1/train/21784.png +../../data/yoloGtold1/train/21785.png +../../data/yoloGtold1/train/21786.png +../../data/yoloGtold1/train/21787.png +../../data/yoloGtold1/train/21788.png +../../data/yoloGtold1/train/21789.png +../../data/yoloGtold1/train/21790.png +../../data/yoloGtold1/train/21791.png +../../data/yoloGtold1/train/21792.png +../../data/yoloGtold1/train/21793.png +../../data/yoloGtold1/train/21794.png +../../data/yoloGtold1/train/21795.png +../../data/yoloGtold1/train/21796.png +../../data/yoloGtold1/train/21797.png +../../data/yoloGtold1/train/21798.png +../../data/yoloGtold1/train/21799.png +../../data/yoloGtold1/train/21800.png +../../data/yoloGtold1/train/21801.png +../../data/yoloGtold1/train/21802.png +../../data/yoloGtold1/train/21803.png +../../data/yoloGtold1/train/21804.png +../../data/yoloGtold1/train/21805.png +../../data/yoloGtold1/train/21806.png +../../data/yoloGtold1/train/21807.png +../../data/yoloGtold1/train/21808.png +../../data/yoloGtold1/train/21809.png +../../data/yoloGtold1/train/21810.png +../../data/yoloGtold1/train/21811.png +../../data/yoloGtold1/train/21812.png +../../data/yoloGtold1/train/21813.png +../../data/yoloGtold1/train/21814.png +../../data/yoloGtold1/train/21815.png +../../data/yoloGtold1/train/21816.png +../../data/yoloGtold1/train/21817.png +../../data/yoloGtold1/train/21818.png +../../data/yoloGtold1/train/21819.png +../../data/yoloGtold1/train/21820.png +../../data/yoloGtold1/train/21821.png +../../data/yoloGtold1/train/21822.png +../../data/yoloGtold1/train/21823.png +../../data/yoloGtold1/train/21824.png +../../data/yoloGtold1/train/21825.png +../../data/yoloGtold1/train/21826.png +../../data/yoloGtold1/train/21827.png +../../data/yoloGtold1/train/21828.png +../../data/yoloGtold1/train/21829.png +../../data/yoloGtold1/train/21830.png +../../data/yoloGtold1/train/21831.png +../../data/yoloGtold1/train/21832.png +../../data/yoloGtold1/train/21833.png +../../data/yoloGtold1/train/21834.png +../../data/yoloGtold1/train/21835.png +../../data/yoloGtold1/train/21836.png +../../data/yoloGtold1/train/21837.png +../../data/yoloGtold1/train/21838.png +../../data/yoloGtold1/train/21839.png +../../data/yoloGtold1/train/21840.png +../../data/yoloGtold1/train/21841.png +../../data/yoloGtold1/train/21842.png +../../data/yoloGtold1/train/21843.png +../../data/yoloGtold1/train/21844.png +../../data/yoloGtold1/train/21845.png +../../data/yoloGtold1/train/21846.png +../../data/yoloGtold1/train/21847.png +../../data/yoloGtold1/train/21848.png +../../data/yoloGtold1/train/21849.png +../../data/yoloGtold1/train/21850.png +../../data/yoloGtold1/train/21851.png +../../data/yoloGtold1/train/21852.png +../../data/yoloGtold1/train/21853.png +../../data/yoloGtold1/train/21854.png +../../data/yoloGtold1/train/21855.png +../../data/yoloGtold1/train/21856.png +../../data/yoloGtold1/train/21857.png +../../data/yoloGtold1/train/21858.png +../../data/yoloGtold1/train/21859.png +../../data/yoloGtold1/train/21860.png +../../data/yoloGtold1/train/21861.png +../../data/yoloGtold1/train/21862.png +../../data/yoloGtold1/train/21863.png +../../data/yoloGtold1/train/21864.png +../../data/yoloGtold1/train/21865.png +../../data/yoloGtold1/train/21866.png +../../data/yoloGtold1/train/21867.png +../../data/yoloGtold1/train/21868.png +../../data/yoloGtold1/train/21869.png +../../data/yoloGtold1/train/21870.png +../../data/yoloGtold1/train/21871.png +../../data/yoloGtold1/train/21872.png +../../data/yoloGtold1/train/21873.png +../../data/yoloGtold1/train/21874.png +../../data/yoloGtold1/train/21875.png +../../data/yoloGtold1/train/21876.png +../../data/yoloGtold1/train/21877.png +../../data/yoloGtold1/train/21878.png +../../data/yoloGtold1/train/21879.png +../../data/yoloGtold1/train/21880.png +../../data/yoloGtold1/train/21881.png +../../data/yoloGtold1/train/21882.png +../../data/yoloGtold1/train/21883.png +../../data/yoloGtold1/train/21884.png +../../data/yoloGtold1/train/21885.png +../../data/yoloGtold1/train/21886.png +../../data/yoloGtold1/train/21887.png +../../data/yoloGtold1/train/21888.png +../../data/yoloGtold1/train/21889.png +../../data/yoloGtold1/train/21890.png +../../data/yoloGtold1/train/21891.png +../../data/yoloGtold1/train/21892.png +../../data/yoloGtold1/train/21893.png +../../data/yoloGtold1/train/21894.png +../../data/yoloGtold1/train/21895.png +../../data/yoloGtold1/train/21896.png +../../data/yoloGtold1/train/21897.png +../../data/yoloGtold1/train/21898.png +../../data/yoloGtold1/train/21899.png +../../data/yoloGtold1/train/21900.png +../../data/yoloGtold1/train/21901.png +../../data/yoloGtold1/train/21902.png +../../data/yoloGtold1/train/21903.png +../../data/yoloGtold1/train/21904.png +../../data/yoloGtold1/train/21905.png +../../data/yoloGtold1/train/21906.png +../../data/yoloGtold1/train/21907.png +../../data/yoloGtold1/train/21908.png +../../data/yoloGtold1/train/21909.png +../../data/yoloGtold1/train/21910.png +../../data/yoloGtold1/train/21911.png +../../data/yoloGtold1/train/21912.png +../../data/yoloGtold1/train/21913.png +../../data/yoloGtold1/train/21914.png +../../data/yoloGtold1/train/21915.png +../../data/yoloGtold1/train/21916.png +../../data/yoloGtold1/train/21917.png +../../data/yoloGtold1/train/21918.png +../../data/yoloGtold1/train/21919.png +../../data/yoloGtold1/train/21920.png +../../data/yoloGtold1/train/21921.png +../../data/yoloGtold1/train/21922.png +../../data/yoloGtold1/train/21923.png +../../data/yoloGtold1/train/21924.png +../../data/yoloGtold1/train/21925.png +../../data/yoloGtold1/train/21926.png +../../data/yoloGtold1/train/21927.png +../../data/yoloGtold1/train/21928.png +../../data/yoloGtold1/train/21929.png +../../data/yoloGtold1/train/21930.png +../../data/yoloGtold1/train/21931.png +../../data/yoloGtold1/train/21932.png +../../data/yoloGtold1/train/21933.png +../../data/yoloGtold1/train/21934.png +../../data/yoloGtold1/train/21935.png +../../data/yoloGtold1/train/21936.png +../../data/yoloGtold1/train/21937.png +../../data/yoloGtold1/train/21938.png +../../data/yoloGtold1/train/21939.png +../../data/yoloGtold1/train/21940.png +../../data/yoloGtold1/train/21941.png +../../data/yoloGtold1/train/21942.png +../../data/yoloGtold1/train/21943.png +../../data/yoloGtold1/train/21944.png +../../data/yoloGtold1/train/21945.png +../../data/yoloGtold1/train/21946.png +../../data/yoloGtold1/train/21947.png +../../data/yoloGtold1/train/21948.png +../../data/yoloGtold1/train/21949.png +../../data/yoloGtold1/train/21950.png +../../data/yoloGtold1/train/21951.png +../../data/yoloGtold1/train/21952.png +../../data/yoloGtold1/train/21953.png +../../data/yoloGtold1/train/21954.png +../../data/yoloGtold1/train/21955.png +../../data/yoloGtold1/train/21956.png +../../data/yoloGtold1/train/21957.png +../../data/yoloGtold1/train/21958.png +../../data/yoloGtold1/train/21959.png +../../data/yoloGtold1/train/21960.png +../../data/yoloGtold1/train/21961.png +../../data/yoloGtold1/train/21962.png +../../data/yoloGtold1/train/21963.png +../../data/yoloGtold1/train/21964.png +../../data/yoloGtold1/train/21965.png +../../data/yoloGtold1/train/21966.png +../../data/yoloGtold1/train/21967.png +../../data/yoloGtold1/train/21968.png +../../data/yoloGtold1/train/21969.png +../../data/yoloGtold1/train/21970.png +../../data/yoloGtold1/train/21971.png +../../data/yoloGtold1/train/21972.png +../../data/yoloGtold1/train/21973.png +../../data/yoloGtold1/train/21974.png +../../data/yoloGtold1/train/21975.png +../../data/yoloGtold1/train/21976.png +../../data/yoloGtold1/train/21977.png +../../data/yoloGtold1/train/21978.png +../../data/yoloGtold1/train/21979.png +../../data/yoloGtold1/train/21980.png +../../data/yoloGtold1/train/21981.png +../../data/yoloGtold1/train/21982.png +../../data/yoloGtold1/train/21983.png +../../data/yoloGtold1/train/21984.png +../../data/yoloGtold1/train/21985.png +../../data/yoloGtold1/train/21986.png +../../data/yoloGtold1/train/21987.png +../../data/yoloGtold1/train/21988.png +../../data/yoloGtold1/train/21989.png +../../data/yoloGtold1/train/21990.png +../../data/yoloGtold1/train/21991.png +../../data/yoloGtold1/train/21992.png +../../data/yoloGtold1/train/21993.png +../../data/yoloGtold1/train/21994.png +../../data/yoloGtold1/train/21995.png +../../data/yoloGtold1/train/21996.png +../../data/yoloGtold1/train/21997.png +../../data/yoloGtold1/train/21998.png +../../data/yoloGtold1/train/21999.png +../../data/yoloGtold1/train/22000.png +../../data/yoloGtold1/train/22001.png +../../data/yoloGtold1/train/22002.png +../../data/yoloGtold1/train/22003.png +../../data/yoloGtold1/train/22004.png +../../data/yoloGtold1/train/22005.png +../../data/yoloGtold1/train/22006.png +../../data/yoloGtold1/train/22007.png +../../data/yoloGtold1/train/22008.png +../../data/yoloGtold1/train/22009.png +../../data/yoloGtold1/train/22010.png +../../data/yoloGtold1/train/22011.png +../../data/yoloGtold1/train/22012.png +../../data/yoloGtold1/train/22013.png +../../data/yoloGtold1/train/22014.png +../../data/yoloGtold1/train/22015.png +../../data/yoloGtold1/train/22016.png +../../data/yoloGtold1/train/22017.png +../../data/yoloGtold1/train/22018.png +../../data/yoloGtold1/train/22019.png +../../data/yoloGtold1/train/22020.png +../../data/yoloGtold1/train/22021.png +../../data/yoloGtold1/train/22022.png +../../data/yoloGtold1/train/22023.png +../../data/yoloGtold1/train/22024.png +../../data/yoloGtold1/train/22025.png +../../data/yoloGtold1/train/22026.png +../../data/yoloGtold1/train/22027.png +../../data/yoloGtold1/train/22028.png +../../data/yoloGtold1/train/22029.png +../../data/yoloGtold1/train/22030.png +../../data/yoloGtold1/train/22031.png +../../data/yoloGtold1/train/22032.png +../../data/yoloGtold1/train/22033.png +../../data/yoloGtold1/train/22034.png +../../data/yoloGtold1/train/22035.png +../../data/yoloGtold1/train/22036.png +../../data/yoloGtold1/train/22037.png +../../data/yoloGtold1/train/22038.png +../../data/yoloGtold1/train/22039.png +../../data/yoloGtold1/train/22040.png +../../data/yoloGtold1/train/22041.png +../../data/yoloGtold1/train/22042.png +../../data/yoloGtold1/train/22043.png +../../data/yoloGtold1/train/22044.png +../../data/yoloGtold1/train/22045.png +../../data/yoloGtold1/train/22046.png +../../data/yoloGtold1/train/22047.png +../../data/yoloGtold1/train/22048.png +../../data/yoloGtold1/train/22049.png +../../data/yoloGtold1/train/22050.png +../../data/yoloGtold1/train/22051.png +../../data/yoloGtold1/train/22052.png +../../data/yoloGtold1/train/22053.png +../../data/yoloGtold1/train/22054.png +../../data/yoloGtold1/train/22055.png +../../data/yoloGtold1/train/22056.png +../../data/yoloGtold1/train/22057.png +../../data/yoloGtold1/train/22058.png +../../data/yoloGtold1/train/22059.png +../../data/yoloGtold1/train/22060.png +../../data/yoloGtold1/train/22061.png +../../data/yoloGtold1/train/22062.png +../../data/yoloGtold1/train/22063.png +../../data/yoloGtold1/train/22064.png +../../data/yoloGtold1/train/22065.png +../../data/yoloGtold1/train/22066.png +../../data/yoloGtold1/train/22067.png +../../data/yoloGtold1/train/22068.png +../../data/yoloGtold1/train/22069.png +../../data/yoloGtold1/train/22070.png +../../data/yoloGtold1/train/22071.png +../../data/yoloGtold1/train/22072.png +../../data/yoloGtold1/train/22073.png +../../data/yoloGtold1/train/22074.png +../../data/yoloGtold1/train/22075.png +../../data/yoloGtold1/train/22076.png +../../data/yoloGtold1/train/22077.png +../../data/yoloGtold1/train/22078.png +../../data/yoloGtold1/train/22079.png +../../data/yoloGtold1/train/22080.png +../../data/yoloGtold1/train/22081.png +../../data/yoloGtold1/train/22082.png +../../data/yoloGtold1/train/22083.png +../../data/yoloGtold1/train/22084.png +../../data/yoloGtold1/train/22085.png +../../data/yoloGtold1/train/22086.png +../../data/yoloGtold1/train/22087.png +../../data/yoloGtold1/train/22088.png +../../data/yoloGtold1/train/22089.png +../../data/yoloGtold1/train/22090.png +../../data/yoloGtold1/train/22091.png +../../data/yoloGtold1/train/22092.png +../../data/yoloGtold1/train/22093.png +../../data/yoloGtold1/train/22094.png +../../data/yoloGtold1/train/22095.png +../../data/yoloGtold1/train/22096.png +../../data/yoloGtold1/train/22097.png +../../data/yoloGtold1/train/22098.png +../../data/yoloGtold1/train/22099.png +../../data/yoloGtold1/train/22100.png +../../data/yoloGtold1/train/22101.png +../../data/yoloGtold1/train/22102.png +../../data/yoloGtold1/train/22103.png +../../data/yoloGtold1/train/22104.png +../../data/yoloGtold1/train/22105.png +../../data/yoloGtold1/train/22106.png +../../data/yoloGtold1/train/22107.png +../../data/yoloGtold1/train/22108.png +../../data/yoloGtold1/train/22109.png +../../data/yoloGtold1/train/22110.png +../../data/yoloGtold1/train/22111.png +../../data/yoloGtold1/train/22112.png +../../data/yoloGtold1/train/22113.png +../../data/yoloGtold1/train/22114.png +../../data/yoloGtold1/train/22115.png +../../data/yoloGtold1/train/22116.png +../../data/yoloGtold1/train/22117.png +../../data/yoloGtold1/train/22118.png +../../data/yoloGtold1/train/22119.png +../../data/yoloGtold1/train/22120.png +../../data/yoloGtold1/train/22121.png +../../data/yoloGtold1/train/22122.png +../../data/yoloGtold1/train/22123.png +../../data/yoloGtold1/train/22124.png +../../data/yoloGtold1/train/22125.png +../../data/yoloGtold1/train/22126.png +../../data/yoloGtold1/train/22127.png +../../data/yoloGtold1/train/22128.png +../../data/yoloGtold1/train/22129.png +../../data/yoloGtold1/train/22130.png +../../data/yoloGtold1/train/22131.png +../../data/yoloGtold1/train/22132.png +../../data/yoloGtold1/train/22133.png +../../data/yoloGtold1/train/22134.png +../../data/yoloGtold1/train/22135.png +../../data/yoloGtold1/train/22136.png +../../data/yoloGtold1/train/22137.png +../../data/yoloGtold1/train/22138.png +../../data/yoloGtold1/train/22139.png +../../data/yoloGtold1/train/22140.png +../../data/yoloGtold1/train/22141.png +../../data/yoloGtold1/train/22142.png +../../data/yoloGtold1/train/22143.png +../../data/yoloGtold1/train/22144.png +../../data/yoloGtold1/train/22145.png +../../data/yoloGtold1/train/22146.png +../../data/yoloGtold1/train/22147.png +../../data/yoloGtold1/train/22148.png +../../data/yoloGtold1/train/22149.png +../../data/yoloGtold1/train/22150.png +../../data/yoloGtold1/train/22151.png +../../data/yoloGtold1/train/22152.png +../../data/yoloGtold1/train/22153.png +../../data/yoloGtold1/train/22154.png +../../data/yoloGtold1/train/22155.png +../../data/yoloGtold1/train/22156.png +../../data/yoloGtold1/train/22157.png +../../data/yoloGtold1/train/22158.png +../../data/yoloGtold1/train/22159.png +../../data/yoloGtold1/train/22160.png +../../data/yoloGtold1/train/22161.png +../../data/yoloGtold1/train/22162.png +../../data/yoloGtold1/train/22163.png +../../data/yoloGtold1/train/22164.png +../../data/yoloGtold1/train/22165.png +../../data/yoloGtold1/train/22166.png +../../data/yoloGtold1/train/22167.png +../../data/yoloGtold1/train/22168.png +../../data/yoloGtold1/train/22169.png +../../data/yoloGtold1/train/22170.png +../../data/yoloGtold1/train/22171.png +../../data/yoloGtold1/train/22172.png +../../data/yoloGtold1/train/22173.png +../../data/yoloGtold1/train/22174.png +../../data/yoloGtold1/train/22175.png +../../data/yoloGtold1/train/22176.png +../../data/yoloGtold1/train/22177.png +../../data/yoloGtold1/train/22178.png +../../data/yoloGtold1/train/22179.png +../../data/yoloGtold1/train/22180.png +../../data/yoloGtold1/train/22181.png +../../data/yoloGtold1/train/22182.png +../../data/yoloGtold1/train/22183.png +../../data/yoloGtold1/train/22184.png +../../data/yoloGtold1/train/22185.png +../../data/yoloGtold1/train/22186.png +../../data/yoloGtold1/train/22187.png +../../data/yoloGtold1/train/22188.png +../../data/yoloGtold1/train/22189.png +../../data/yoloGtold1/train/22190.png +../../data/yoloGtold1/train/22191.png +../../data/yoloGtold1/train/22192.png +../../data/yoloGtold1/train/22193.png +../../data/yoloGtold1/train/22194.png +../../data/yoloGtold1/train/22195.png +../../data/yoloGtold1/train/22196.png +../../data/yoloGtold1/train/22197.png +../../data/yoloGtold1/train/22198.png +../../data/yoloGtold1/train/22199.png +../../data/yoloGtold1/train/22200.png +../../data/yoloGtold1/train/22201.png +../../data/yoloGtold1/train/22202.png +../../data/yoloGtold1/train/22203.png +../../data/yoloGtold1/train/22204.png +../../data/yoloGtold1/train/22205.png +../../data/yoloGtold1/train/22206.png +../../data/yoloGtold1/train/22207.png +../../data/yoloGtold1/train/22208.png +../../data/yoloGtold1/train/22209.png +../../data/yoloGtold1/train/22210.png +../../data/yoloGtold1/train/22211.png +../../data/yoloGtold1/train/22212.png +../../data/yoloGtold1/train/22213.png +../../data/yoloGtold1/train/22214.png +../../data/yoloGtold1/train/22215.png +../../data/yoloGtold1/train/22216.png +../../data/yoloGtold1/train/22217.png +../../data/yoloGtold1/train/22218.png +../../data/yoloGtold1/train/22219.png +../../data/yoloGtold1/train/22220.png +../../data/yoloGtold1/train/22221.png +../../data/yoloGtold1/train/22222.png +../../data/yoloGtold1/train/22223.png +../../data/yoloGtold1/train/22224.png +../../data/yoloGtold1/train/22225.png +../../data/yoloGtold1/train/22226.png +../../data/yoloGtold1/train/22227.png +../../data/yoloGtold1/train/22228.png +../../data/yoloGtold1/train/22229.png +../../data/yoloGtold1/train/22230.png +../../data/yoloGtold1/train/22231.png +../../data/yoloGtold1/train/22232.png +../../data/yoloGtold1/train/22233.png +../../data/yoloGtold1/train/22234.png +../../data/yoloGtold1/train/22235.png +../../data/yoloGtold1/train/22236.png +../../data/yoloGtold1/train/22237.png +../../data/yoloGtold1/train/22238.png +../../data/yoloGtold1/train/22239.png +../../data/yoloGtold1/train/22240.png +../../data/yoloGtold1/train/22241.png +../../data/yoloGtold1/train/22242.png +../../data/yoloGtold1/train/22243.png +../../data/yoloGtold1/train/22244.png +../../data/yoloGtold1/train/22245.png +../../data/yoloGtold1/train/22246.png +../../data/yoloGtold1/train/22247.png +../../data/yoloGtold1/train/22248.png +../../data/yoloGtold1/train/22249.png +../../data/yoloGtold1/train/22250.png +../../data/yoloGtold1/train/22251.png +../../data/yoloGtold1/train/22252.png +../../data/yoloGtold1/train/22253.png +../../data/yoloGtold1/train/22254.png +../../data/yoloGtold1/train/22255.png +../../data/yoloGtold1/train/22256.png +../../data/yoloGtold1/train/22257.png +../../data/yoloGtold1/train/22258.png +../../data/yoloGtold1/train/22259.png +../../data/yoloGtold1/train/22260.png +../../data/yoloGtold1/train/22261.png +../../data/yoloGtold1/train/22262.png +../../data/yoloGtold1/train/22263.png +../../data/yoloGtold1/train/22264.png +../../data/yoloGtold1/train/22265.png +../../data/yoloGtold1/train/22266.png +../../data/yoloGtold1/train/22267.png +../../data/yoloGtold1/train/22268.png +../../data/yoloGtold1/train/22269.png +../../data/yoloGtold1/train/22270.png +../../data/yoloGtold1/train/22271.png +../../data/yoloGtold1/train/22272.png +../../data/yoloGtold1/train/22273.png +../../data/yoloGtold1/train/22274.png +../../data/yoloGtold1/train/22275.png +../../data/yoloGtold1/train/22276.png +../../data/yoloGtold1/train/22277.png +../../data/yoloGtold1/train/22278.png +../../data/yoloGtold1/train/22279.png +../../data/yoloGtold1/train/22280.png +../../data/yoloGtold1/train/22281.png +../../data/yoloGtold1/train/22282.png +../../data/yoloGtold1/train/22283.png +../../data/yoloGtold1/train/22284.png +../../data/yoloGtold1/train/22285.png +../../data/yoloGtold1/train/22286.png +../../data/yoloGtold1/train/22287.png +../../data/yoloGtold1/train/22288.png +../../data/yoloGtold1/train/22289.png +../../data/yoloGtold1/train/22290.png +../../data/yoloGtold1/train/22291.png +../../data/yoloGtold1/train/22292.png +../../data/yoloGtold1/train/22293.png +../../data/yoloGtold1/train/22294.png +../../data/yoloGtold1/train/22295.png +../../data/yoloGtold1/train/22296.png +../../data/yoloGtold1/train/22297.png +../../data/yoloGtold1/train/22298.png +../../data/yoloGtold1/train/22299.png +../../data/yoloGtold1/train/22300.png +../../data/yoloGtold1/train/22301.png +../../data/yoloGtold1/train/22302.png +../../data/yoloGtold1/train/22303.png +../../data/yoloGtold1/train/22304.png +../../data/yoloGtold1/train/22305.png +../../data/yoloGtold1/train/22306.png +../../data/yoloGtold1/train/22307.png +../../data/yoloGtold1/train/22308.png +../../data/yoloGtold1/train/22309.png +../../data/yoloGtold1/train/22310.png +../../data/yoloGtold1/train/22311.png +../../data/yoloGtold1/train/22312.png +../../data/yoloGtold1/train/22313.png +../../data/yoloGtold1/train/22314.png +../../data/yoloGtold1/train/22315.png +../../data/yoloGtold1/train/22316.png +../../data/yoloGtold1/train/22317.png +../../data/yoloGtold1/train/22318.png +../../data/yoloGtold1/train/22319.png +../../data/yoloGtold1/train/22320.png +../../data/yoloGtold1/train/22321.png +../../data/yoloGtold1/train/22322.png +../../data/yoloGtold1/train/22323.png +../../data/yoloGtold1/train/22324.png +../../data/yoloGtold1/train/22325.png +../../data/yoloGtold1/train/22326.png +../../data/yoloGtold1/train/22327.png +../../data/yoloGtold1/train/22328.png +../../data/yoloGtold1/train/22329.png +../../data/yoloGtold1/train/22330.png +../../data/yoloGtold1/train/22331.png +../../data/yoloGtold1/train/22332.png +../../data/yoloGtold1/train/22333.png +../../data/yoloGtold1/train/22334.png +../../data/yoloGtold1/train/22335.png +../../data/yoloGtold1/train/22336.png +../../data/yoloGtold1/train/22337.png +../../data/yoloGtold1/train/22338.png +../../data/yoloGtold1/train/22339.png +../../data/yoloGtold1/train/22340.png +../../data/yoloGtold1/train/22341.png +../../data/yoloGtold1/train/22342.png +../../data/yoloGtold1/train/22343.png +../../data/yoloGtold1/train/22344.png +../../data/yoloGtold1/train/22345.png +../../data/yoloGtold1/train/22346.png +../../data/yoloGtold1/train/22347.png +../../data/yoloGtold1/train/22348.png +../../data/yoloGtold1/train/22349.png +../../data/yoloGtold1/train/22350.png +../../data/yoloGtold1/train/22351.png +../../data/yoloGtold1/train/22352.png +../../data/yoloGtold1/train/22353.png +../../data/yoloGtold1/train/22354.png +../../data/yoloGtold1/train/22355.png +../../data/yoloGtold1/train/22356.png +../../data/yoloGtold1/train/22357.png +../../data/yoloGtold1/train/22358.png +../../data/yoloGtold1/train/22359.png +../../data/yoloGtold1/train/22360.png +../../data/yoloGtold1/train/22361.png +../../data/yoloGtold1/train/22362.png +../../data/yoloGtold1/train/22363.png +../../data/yoloGtold1/train/22364.png +../../data/yoloGtold1/train/22365.png +../../data/yoloGtold1/train/22366.png +../../data/yoloGtold1/train/22367.png +../../data/yoloGtold1/train/22368.png +../../data/yoloGtold1/train/22369.png +../../data/yoloGtold1/train/22370.png +../../data/yoloGtold1/train/22371.png +../../data/yoloGtold1/train/22372.png +../../data/yoloGtold1/train/22373.png +../../data/yoloGtold1/train/22374.png +../../data/yoloGtold1/train/22375.png +../../data/yoloGtold1/train/22376.png +../../data/yoloGtold1/train/22377.png +../../data/yoloGtold1/train/22378.png +../../data/yoloGtold1/train/22379.png +../../data/yoloGtold1/train/22380.png +../../data/yoloGtold1/train/22381.png +../../data/yoloGtold1/train/22382.png +../../data/yoloGtold1/train/22383.png +../../data/yoloGtold1/train/22384.png +../../data/yoloGtold1/train/22385.png +../../data/yoloGtold1/train/22386.png +../../data/yoloGtold1/train/22387.png +../../data/yoloGtold1/train/22388.png +../../data/yoloGtold1/train/22389.png +../../data/yoloGtold1/train/22390.png +../../data/yoloGtold1/train/22391.png +../../data/yoloGtold1/train/22392.png +../../data/yoloGtold1/train/22393.png +../../data/yoloGtold1/train/22394.png +../../data/yoloGtold1/train/22395.png +../../data/yoloGtold1/train/22396.png +../../data/yoloGtold1/train/22397.png +../../data/yoloGtold1/train/22398.png +../../data/yoloGtold1/train/22399.png +../../data/yoloGtold1/train/22400.png +../../data/yoloGtold1/train/22401.png +../../data/yoloGtold1/train/22402.png +../../data/yoloGtold1/train/22403.png +../../data/yoloGtold1/train/22404.png +../../data/yoloGtold1/train/22405.png +../../data/yoloGtold1/train/22406.png +../../data/yoloGtold1/train/22407.png +../../data/yoloGtold1/train/22408.png +../../data/yoloGtold1/train/22409.png +../../data/yoloGtold1/train/22410.png +../../data/yoloGtold1/train/22411.png +../../data/yoloGtold1/train/22412.png +../../data/yoloGtold1/train/22413.png +../../data/yoloGtold1/train/22414.png +../../data/yoloGtold1/train/22415.png +../../data/yoloGtold1/train/22416.png +../../data/yoloGtold1/train/22417.png +../../data/yoloGtold1/train/22418.png +../../data/yoloGtold1/train/22419.png +../../data/yoloGtold1/train/22420.png +../../data/yoloGtold1/train/22421.png +../../data/yoloGtold1/train/22422.png +../../data/yoloGtold1/train/22423.png +../../data/yoloGtold1/train/22424.png +../../data/yoloGtold1/train/22425.png +../../data/yoloGtold1/train/22426.png +../../data/yoloGtold1/train/22427.png +../../data/yoloGtold1/train/22428.png +../../data/yoloGtold1/train/22429.png +../../data/yoloGtold1/train/22430.png +../../data/yoloGtold1/train/22431.png +../../data/yoloGtold1/train/22432.png +../../data/yoloGtold1/train/22433.png +../../data/yoloGtold1/train/22434.png +../../data/yoloGtold1/train/22435.png +../../data/yoloGtold1/train/22436.png +../../data/yoloGtold1/train/22437.png +../../data/yoloGtold1/train/22438.png +../../data/yoloGtold1/train/22439.png +../../data/yoloGtold1/train/22440.png +../../data/yoloGtold1/train/22441.png +../../data/yoloGtold1/train/22442.png +../../data/yoloGtold1/train/22443.png +../../data/yoloGtold1/train/22444.png +../../data/yoloGtold1/train/22445.png +../../data/yoloGtold1/train/22446.png +../../data/yoloGtold1/train/22447.png +../../data/yoloGtold1/train/22448.png +../../data/yoloGtold1/train/22449.png +../../data/yoloGtold1/train/22450.png +../../data/yoloGtold1/train/22451.png +../../data/yoloGtold1/train/22452.png +../../data/yoloGtold1/train/22453.png +../../data/yoloGtold1/train/22454.png +../../data/yoloGtold1/train/22455.png +../../data/yoloGtold1/train/22456.png +../../data/yoloGtold1/train/22457.png +../../data/yoloGtold1/train/22458.png +../../data/yoloGtold1/train/22459.png +../../data/yoloGtold1/train/22460.png +../../data/yoloGtold1/train/22461.png +../../data/yoloGtold1/train/22462.png +../../data/yoloGtold1/train/22463.png +../../data/yoloGtold1/train/22464.png +../../data/yoloGtold1/train/22465.png +../../data/yoloGtold1/train/22466.png +../../data/yoloGtold1/train/22467.png +../../data/yoloGtold1/train/22468.png +../../data/yoloGtold1/train/22469.png +../../data/yoloGtold1/train/22470.png +../../data/yoloGtold1/train/22471.png +../../data/yoloGtold1/train/22472.png +../../data/yoloGtold1/train/22473.png +../../data/yoloGtold1/train/22474.png +../../data/yoloGtold1/train/22475.png +../../data/yoloGtold1/train/22476.png +../../data/yoloGtold1/train/22477.png +../../data/yoloGtold1/train/22478.png +../../data/yoloGtold1/train/22479.png +../../data/yoloGtold1/train/22480.png +../../data/yoloGtold1/train/22481.png +../../data/yoloGtold1/train/22482.png +../../data/yoloGtold1/train/22483.png +../../data/yoloGtold1/train/22484.png +../../data/yoloGtold1/train/22485.png +../../data/yoloGtold1/train/22486.png +../../data/yoloGtold1/train/22487.png +../../data/yoloGtold1/train/22488.png +../../data/yoloGtold1/train/22489.png +../../data/yoloGtold1/train/22490.png +../../data/yoloGtold1/train/22491.png +../../data/yoloGtold1/train/22492.png +../../data/yoloGtold1/train/22493.png +../../data/yoloGtold1/train/22494.png +../../data/yoloGtold1/train/22495.png +../../data/yoloGtold1/train/22496.png +../../data/yoloGtold1/train/22497.png +../../data/yoloGtold1/train/22498.png +../../data/yoloGtold1/train/22499.png +../../data/yoloGtold1/train/22500.png +../../data/yoloGtold1/train/22501.png +../../data/yoloGtold1/train/22502.png +../../data/yoloGtold1/train/22503.png +../../data/yoloGtold1/train/22504.png +../../data/yoloGtold1/train/22505.png +../../data/yoloGtold1/train/22506.png +../../data/yoloGtold1/train/22507.png +../../data/yoloGtold1/train/22508.png +../../data/yoloGtold1/train/22509.png +../../data/yoloGtold1/train/22510.png +../../data/yoloGtold1/train/22511.png +../../data/yoloGtold1/train/22512.png +../../data/yoloGtold1/train/22513.png +../../data/yoloGtold1/train/22514.png +../../data/yoloGtold1/train/22515.png +../../data/yoloGtold1/train/22516.png +../../data/yoloGtold1/train/22517.png +../../data/yoloGtold1/train/22518.png +../../data/yoloGtold1/train/22519.png +../../data/yoloGtold1/train/22520.png +../../data/yoloGtold1/train/22521.png +../../data/yoloGtold1/train/22522.png +../../data/yoloGtold1/train/22523.png +../../data/yoloGtold1/train/22524.png +../../data/yoloGtold1/train/22525.png +../../data/yoloGtold1/train/22526.png +../../data/yoloGtold1/train/22527.png +../../data/yoloGtold1/train/22528.png +../../data/yoloGtold1/train/22529.png +../../data/yoloGtold1/train/22530.png +../../data/yoloGtold1/train/22531.png +../../data/yoloGtold1/train/22532.png +../../data/yoloGtold1/train/22533.png +../../data/yoloGtold1/train/22534.png +../../data/yoloGtold1/train/22535.png +../../data/yoloGtold1/train/22536.png +../../data/yoloGtold1/train/22537.png +../../data/yoloGtold1/train/22538.png +../../data/yoloGtold1/train/22539.png +../../data/yoloGtold1/train/22540.png +../../data/yoloGtold1/train/22541.png +../../data/yoloGtold1/train/22542.png +../../data/yoloGtold1/train/22543.png +../../data/yoloGtold1/train/22544.png +../../data/yoloGtold1/train/22545.png +../../data/yoloGtold1/train/22546.png +../../data/yoloGtold1/train/22547.png +../../data/yoloGtold1/train/22548.png +../../data/yoloGtold1/train/22549.png +../../data/yoloGtold1/train/22550.png +../../data/yoloGtold1/train/22551.png +../../data/yoloGtold1/train/22552.png +../../data/yoloGtold1/train/22553.png +../../data/yoloGtold1/train/22554.png +../../data/yoloGtold1/train/22555.png +../../data/yoloGtold1/train/22556.png +../../data/yoloGtold1/train/22557.png +../../data/yoloGtold1/train/22558.png +../../data/yoloGtold1/train/22559.png +../../data/yoloGtold1/train/22560.png +../../data/yoloGtold1/train/22561.png +../../data/yoloGtold1/train/22562.png +../../data/yoloGtold1/train/22563.png +../../data/yoloGtold1/train/22564.png +../../data/yoloGtold1/train/22565.png +../../data/yoloGtold1/train/22566.png +../../data/yoloGtold1/train/22567.png +../../data/yoloGtold1/train/22568.png +../../data/yoloGtold1/train/22569.png +../../data/yoloGtold1/train/22570.png +../../data/yoloGtold1/train/22571.png +../../data/yoloGtold1/train/22572.png +../../data/yoloGtold1/train/22573.png +../../data/yoloGtold1/train/22574.png +../../data/yoloGtold1/train/22575.png +../../data/yoloGtold1/train/22576.png +../../data/yoloGtold1/train/22577.png +../../data/yoloGtold1/train/22578.png +../../data/yoloGtold1/train/22579.png +../../data/yoloGtold1/train/22580.png +../../data/yoloGtold1/train/22581.png +../../data/yoloGtold1/train/22582.png +../../data/yoloGtold1/train/22583.png +../../data/yoloGtold1/train/22584.png +../../data/yoloGtold1/train/22585.png +../../data/yoloGtold1/train/22586.png +../../data/yoloGtold1/train/22587.png +../../data/yoloGtold1/train/22588.png +../../data/yoloGtold1/train/22589.png +../../data/yoloGtold1/train/22590.png +../../data/yoloGtold1/train/22591.png +../../data/yoloGtold1/train/22592.png +../../data/yoloGtold1/train/22593.png +../../data/yoloGtold1/train/22594.png +../../data/yoloGtold1/train/22595.png +../../data/yoloGtold1/train/22596.png +../../data/yoloGtold1/train/22597.png +../../data/yoloGtold1/train/22598.png +../../data/yoloGtold1/train/22599.png +../../data/yoloGtold1/train/22600.png +../../data/yoloGtold1/train/22601.png +../../data/yoloGtold1/train/22602.png +../../data/yoloGtold1/train/22603.png +../../data/yoloGtold1/train/22604.png +../../data/yoloGtold1/train/22605.png +../../data/yoloGtold1/train/22606.png +../../data/yoloGtold1/train/22607.png +../../data/yoloGtold1/train/22608.png +../../data/yoloGtold1/train/22609.png +../../data/yoloGtold1/train/22610.png +../../data/yoloGtold1/train/22611.png +../../data/yoloGtold1/train/22612.png +../../data/yoloGtold1/train/22613.png +../../data/yoloGtold1/train/22614.png +../../data/yoloGtold1/train/22615.png +../../data/yoloGtold1/train/22616.png +../../data/yoloGtold1/train/22617.png +../../data/yoloGtold1/train/22618.png +../../data/yoloGtold1/train/22619.png +../../data/yoloGtold1/train/22620.png +../../data/yoloGtold1/train/22621.png +../../data/yoloGtold1/train/22622.png +../../data/yoloGtold1/train/22623.png +../../data/yoloGtold1/train/22624.png +../../data/yoloGtold1/train/22625.png +../../data/yoloGtold1/train/22626.png +../../data/yoloGtold1/train/22627.png +../../data/yoloGtold1/train/22628.png +../../data/yoloGtold1/train/22629.png +../../data/yoloGtold1/train/22630.png +../../data/yoloGtold1/train/22631.png +../../data/yoloGtold1/train/22632.png +../../data/yoloGtold1/train/22633.png +../../data/yoloGtold1/train/22634.png +../../data/yoloGtold1/train/22635.png +../../data/yoloGtold1/train/22636.png +../../data/yoloGtold1/train/22637.png +../../data/yoloGtold1/train/22638.png +../../data/yoloGtold1/train/22639.png +../../data/yoloGtold1/train/22640.png +../../data/yoloGtold1/train/22641.png +../../data/yoloGtold1/train/22642.png +../../data/yoloGtold1/train/22643.png +../../data/yoloGtold1/train/22644.png +../../data/yoloGtold1/train/22645.png +../../data/yoloGtold1/train/22646.png +../../data/yoloGtold1/train/22647.png +../../data/yoloGtold1/train/22648.png +../../data/yoloGtold1/train/22649.png +../../data/yoloGtold1/train/22650.png +../../data/yoloGtold1/train/22651.png +../../data/yoloGtold1/train/22652.png +../../data/yoloGtold1/train/22653.png +../../data/yoloGtold1/train/22654.png +../../data/yoloGtold1/train/22655.png +../../data/yoloGtold1/train/22656.png +../../data/yoloGtold1/train/22657.png +../../data/yoloGtold1/train/22658.png +../../data/yoloGtold1/train/22659.png +../../data/yoloGtold1/train/22660.png +../../data/yoloGtold1/train/22661.png +../../data/yoloGtold1/train/22662.png +../../data/yoloGtold1/train/22663.png +../../data/yoloGtold1/train/22664.png +../../data/yoloGtold1/train/22665.png +../../data/yoloGtold1/train/22666.png +../../data/yoloGtold1/train/22667.png +../../data/yoloGtold1/train/22668.png +../../data/yoloGtold1/train/22669.png +../../data/yoloGtold1/train/22670.png +../../data/yoloGtold1/train/22671.png +../../data/yoloGtold1/train/22672.png +../../data/yoloGtold1/train/22673.png +../../data/yoloGtold1/train/22674.png +../../data/yoloGtold1/train/22675.png +../../data/yoloGtold1/train/22676.png +../../data/yoloGtold1/train/22677.png +../../data/yoloGtold1/train/22678.png +../../data/yoloGtold1/train/22679.png +../../data/yoloGtold1/train/22680.png +../../data/yoloGtold1/train/22681.png +../../data/yoloGtold1/train/22682.png +../../data/yoloGtold1/train/22683.png +../../data/yoloGtold1/train/22684.png +../../data/yoloGtold1/train/22685.png +../../data/yoloGtold1/train/22686.png +../../data/yoloGtold1/train/22687.png +../../data/yoloGtold1/train/22688.png +../../data/yoloGtold1/train/22689.png +../../data/yoloGtold1/train/22690.png +../../data/yoloGtold1/train/22691.png +../../data/yoloGtold1/train/22692.png +../../data/yoloGtold1/train/22693.png +../../data/yoloGtold1/train/22694.png +../../data/yoloGtold1/train/22695.png +../../data/yoloGtold1/train/22696.png +../../data/yoloGtold1/train/22697.png +../../data/yoloGtold1/train/22698.png +../../data/yoloGtold1/train/22699.png +../../data/yoloGtold1/train/22700.png +../../data/yoloGtold1/train/22701.png +../../data/yoloGtold1/train/22702.png +../../data/yoloGtold1/train/22703.png +../../data/yoloGtold1/train/22704.png +../../data/yoloGtold1/train/22705.png +../../data/yoloGtold1/train/22706.png +../../data/yoloGtold1/train/22707.png +../../data/yoloGtold1/train/22708.png +../../data/yoloGtold1/train/22709.png +../../data/yoloGtold1/train/22710.png +../../data/yoloGtold1/train/22711.png +../../data/yoloGtold1/train/22712.png +../../data/yoloGtold1/train/22713.png +../../data/yoloGtold1/train/22714.png +../../data/yoloGtold1/train/22715.png +../../data/yoloGtold1/train/22716.png +../../data/yoloGtold1/train/22717.png +../../data/yoloGtold1/train/22718.png +../../data/yoloGtold1/train/22719.png +../../data/yoloGtold1/train/22720.png +../../data/yoloGtold1/train/22721.png +../../data/yoloGtold1/train/22722.png +../../data/yoloGtold1/train/22723.png +../../data/yoloGtold1/train/22724.png +../../data/yoloGtold1/train/22725.png +../../data/yoloGtold1/train/22726.png +../../data/yoloGtold1/train/22727.png +../../data/yoloGtold1/train/22728.png +../../data/yoloGtold1/train/22729.png +../../data/yoloGtold1/train/22730.png +../../data/yoloGtold1/train/22731.png +../../data/yoloGtold1/train/22732.png +../../data/yoloGtold1/train/22733.png +../../data/yoloGtold1/train/22734.png +../../data/yoloGtold1/train/22735.png +../../data/yoloGtold1/train/22736.png +../../data/yoloGtold1/train/22737.png +../../data/yoloGtold1/train/22738.png +../../data/yoloGtold1/train/22739.png +../../data/yoloGtold1/train/22740.png +../../data/yoloGtold1/train/22741.png +../../data/yoloGtold1/train/22742.png +../../data/yoloGtold1/train/22743.png +../../data/yoloGtold1/train/22744.png +../../data/yoloGtold1/train/22745.png +../../data/yoloGtold1/train/22746.png +../../data/yoloGtold1/train/22747.png +../../data/yoloGtold1/train/22748.png +../../data/yoloGtold1/train/22749.png +../../data/yoloGtold1/train/22750.png +../../data/yoloGtold1/train/22751.png +../../data/yoloGtold1/train/22752.png +../../data/yoloGtold1/train/22753.png +../../data/yoloGtold1/train/22754.png +../../data/yoloGtold1/train/22755.png +../../data/yoloGtold1/train/22756.png +../../data/yoloGtold1/train/22757.png +../../data/yoloGtold1/train/22758.png +../../data/yoloGtold1/train/22759.png +../../data/yoloGtold1/train/22760.png +../../data/yoloGtold1/train/22761.png +../../data/yoloGtold1/train/22762.png +../../data/yoloGtold1/train/22763.png +../../data/yoloGtold1/train/22764.png +../../data/yoloGtold1/train/22765.png +../../data/yoloGtold1/train/22766.png +../../data/yoloGtold1/train/22767.png +../../data/yoloGtold1/train/22768.png +../../data/yoloGtold1/train/22769.png +../../data/yoloGtold1/train/22770.png +../../data/yoloGtold1/train/22771.png +../../data/yoloGtold1/train/22772.png +../../data/yoloGtold1/train/22773.png +../../data/yoloGtold1/train/22774.png +../../data/yoloGtold1/train/22775.png +../../data/yoloGtold1/train/22776.png +../../data/yoloGtold1/train/22777.png +../../data/yoloGtold1/train/22778.png +../../data/yoloGtold1/train/22779.png +../../data/yoloGtold1/train/22780.png +../../data/yoloGtold1/train/22781.png +../../data/yoloGtold1/train/22782.png +../../data/yoloGtold1/train/22783.png +../../data/yoloGtold1/train/22784.png +../../data/yoloGtold1/train/22785.png +../../data/yoloGtold1/train/22786.png +../../data/yoloGtold1/train/22787.png +../../data/yoloGtold1/train/22788.png +../../data/yoloGtold1/train/22789.png +../../data/yoloGtold1/train/22790.png +../../data/yoloGtold1/train/22791.png +../../data/yoloGtold1/train/22792.png +../../data/yoloGtold1/train/22793.png +../../data/yoloGtold1/train/22794.png +../../data/yoloGtold1/train/22795.png +../../data/yoloGtold1/train/22796.png +../../data/yoloGtold1/train/22797.png +../../data/yoloGtold1/train/22798.png +../../data/yoloGtold1/train/22799.png +../../data/yoloGtold1/train/22800.png +../../data/yoloGtold1/train/22801.png +../../data/yoloGtold1/train/22802.png +../../data/yoloGtold1/train/22803.png +../../data/yoloGtold1/train/22804.png +../../data/yoloGtold1/train/22805.png +../../data/yoloGtold1/train/22806.png +../../data/yoloGtold1/train/22807.png +../../data/yoloGtold1/train/22808.png +../../data/yoloGtold1/train/22809.png +../../data/yoloGtold1/train/22810.png +../../data/yoloGtold1/train/22811.png +../../data/yoloGtold1/train/22812.png +../../data/yoloGtold1/train/22813.png +../../data/yoloGtold1/train/22814.png +../../data/yoloGtold1/train/22815.png +../../data/yoloGtold1/train/22816.png +../../data/yoloGtold1/train/22817.png +../../data/yoloGtold1/train/22818.png +../../data/yoloGtold1/train/22819.png +../../data/yoloGtold1/train/22820.png +../../data/yoloGtold1/train/22821.png +../../data/yoloGtold1/train/22822.png +../../data/yoloGtold1/train/22823.png +../../data/yoloGtold1/train/22824.png +../../data/yoloGtold1/train/22825.png +../../data/yoloGtold1/train/22826.png +../../data/yoloGtold1/train/22827.png +../../data/yoloGtold1/train/22828.png +../../data/yoloGtold1/train/22829.png +../../data/yoloGtold1/train/22830.png +../../data/yoloGtold1/train/22831.png +../../data/yoloGtold1/train/22832.png +../../data/yoloGtold1/train/22833.png +../../data/yoloGtold1/train/22834.png +../../data/yoloGtold1/train/22835.png +../../data/yoloGtold1/train/22836.png +../../data/yoloGtold1/train/22837.png +../../data/yoloGtold1/train/22838.png +../../data/yoloGtold1/train/22839.png +../../data/yoloGtold1/train/22840.png +../../data/yoloGtold1/train/22841.png +../../data/yoloGtold1/train/22842.png +../../data/yoloGtold1/train/22843.png +../../data/yoloGtold1/train/22844.png +../../data/yoloGtold1/train/22845.png +../../data/yoloGtold1/train/22846.png +../../data/yoloGtold1/train/22847.png +../../data/yoloGtold1/train/22848.png +../../data/yoloGtold1/train/22849.png +../../data/yoloGtold1/train/22850.png +../../data/yoloGtold1/train/22851.png +../../data/yoloGtold1/train/22852.png +../../data/yoloGtold1/train/22853.png +../../data/yoloGtold1/train/22854.png +../../data/yoloGtold1/train/22855.png +../../data/yoloGtold1/train/22856.png +../../data/yoloGtold1/train/22857.png +../../data/yoloGtold1/train/22858.png +../../data/yoloGtold1/train/22859.png +../../data/yoloGtold1/train/22860.png +../../data/yoloGtold1/train/22861.png +../../data/yoloGtold1/train/22862.png +../../data/yoloGtold1/train/22863.png +../../data/yoloGtold1/train/22864.png +../../data/yoloGtold1/train/22865.png +../../data/yoloGtold1/train/22866.png +../../data/yoloGtold1/train/22867.png +../../data/yoloGtold1/train/22868.png +../../data/yoloGtold1/train/22869.png +../../data/yoloGtold1/train/22870.png +../../data/yoloGtold1/train/22871.png +../../data/yoloGtold1/train/22872.png +../../data/yoloGtold1/train/22873.png +../../data/yoloGtold1/train/22874.png +../../data/yoloGtold1/train/22875.png +../../data/yoloGtold1/train/22876.png +../../data/yoloGtold1/train/22877.png +../../data/yoloGtold1/train/22878.png +../../data/yoloGtold1/train/22879.png +../../data/yoloGtold1/train/22880.png +../../data/yoloGtold1/train/22881.png +../../data/yoloGtold1/train/22882.png +../../data/yoloGtold1/train/22883.png +../../data/yoloGtold1/train/22884.png +../../data/yoloGtold1/train/22885.png +../../data/yoloGtold1/train/22886.png +../../data/yoloGtold1/train/22887.png +../../data/yoloGtold1/train/22888.png +../../data/yoloGtold1/train/22889.png +../../data/yoloGtold1/train/22890.png +../../data/yoloGtold1/train/22891.png +../../data/yoloGtold1/train/22892.png +../../data/yoloGtold1/train/22893.png +../../data/yoloGtold1/train/22894.png +../../data/yoloGtold1/train/22895.png +../../data/yoloGtold1/train/22896.png +../../data/yoloGtold1/train/22897.png +../../data/yoloGtold1/train/22898.png +../../data/yoloGtold1/train/22899.png +../../data/yoloGtold1/train/22900.png +../../data/yoloGtold1/train/22901.png +../../data/yoloGtold1/train/22902.png +../../data/yoloGtold1/train/22903.png +../../data/yoloGtold1/train/22904.png +../../data/yoloGtold1/train/22905.png +../../data/yoloGtold1/train/22906.png +../../data/yoloGtold1/train/22907.png +../../data/yoloGtold1/train/22908.png +../../data/yoloGtold1/train/22909.png +../../data/yoloGtold1/train/22910.png +../../data/yoloGtold1/train/22911.png +../../data/yoloGtold1/train/22912.png +../../data/yoloGtold1/train/22913.png +../../data/yoloGtold1/train/22914.png +../../data/yoloGtold1/train/22915.png +../../data/yoloGtold1/train/22916.png +../../data/yoloGtold1/train/22917.png +../../data/yoloGtold1/train/22918.png +../../data/yoloGtold1/train/22919.png +../../data/yoloGtold1/train/22920.png +../../data/yoloGtold1/train/22921.png +../../data/yoloGtold1/train/22922.png +../../data/yoloGtold1/train/22923.png +../../data/yoloGtold1/train/22924.png +../../data/yoloGtold1/train/22925.png +../../data/yoloGtold1/train/22926.png +../../data/yoloGtold1/train/22927.png +../../data/yoloGtold1/train/22928.png +../../data/yoloGtold1/train/22929.png +../../data/yoloGtold1/train/22930.png +../../data/yoloGtold1/train/22931.png +../../data/yoloGtold1/train/22932.png +../../data/yoloGtold1/train/22933.png +../../data/yoloGtold1/train/22934.png +../../data/yoloGtold1/train/22935.png +../../data/yoloGtold1/train/22936.png +../../data/yoloGtold1/train/22937.png +../../data/yoloGtold1/train/22938.png +../../data/yoloGtold1/train/22939.png +../../data/yoloGtold1/train/22940.png +../../data/yoloGtold1/train/22941.png +../../data/yoloGtold1/train/22942.png +../../data/yoloGtold1/train/22943.png +../../data/yoloGtold1/train/22944.png +../../data/yoloGtold1/train/22945.png +../../data/yoloGtold1/train/22946.png +../../data/yoloGtold1/train/22947.png +../../data/yoloGtold1/train/22948.png +../../data/yoloGtold1/train/22949.png +../../data/yoloGtold1/train/22950.png +../../data/yoloGtold1/train/22951.png +../../data/yoloGtold1/train/22952.png +../../data/yoloGtold1/train/22953.png +../../data/yoloGtold1/train/22954.png +../../data/yoloGtold1/train/22955.png +../../data/yoloGtold1/train/22956.png +../../data/yoloGtold1/train/22957.png +../../data/yoloGtold1/train/22958.png +../../data/yoloGtold1/train/22959.png +../../data/yoloGtold1/train/22960.png +../../data/yoloGtold1/train/22961.png +../../data/yoloGtold1/train/22962.png +../../data/yoloGtold1/train/22963.png +../../data/yoloGtold1/train/22964.png +../../data/yoloGtold1/train/22965.png +../../data/yoloGtold1/train/22966.png +../../data/yoloGtold1/train/22967.png +../../data/yoloGtold1/train/22968.png +../../data/yoloGtold1/train/22969.png +../../data/yoloGtold1/train/22970.png +../../data/yoloGtold1/train/22971.png +../../data/yoloGtold1/train/22972.png +../../data/yoloGtold1/train/22973.png +../../data/yoloGtold1/train/22974.png +../../data/yoloGtold1/train/22975.png +../../data/yoloGtold1/train/22976.png +../../data/yoloGtold1/train/22977.png +../../data/yoloGtold1/train/22978.png +../../data/yoloGtold1/train/22979.png +../../data/yoloGtold1/train/22980.png +../../data/yoloGtold1/train/22981.png +../../data/yoloGtold1/train/22982.png +../../data/yoloGtold1/train/22983.png +../../data/yoloGtold1/train/22984.png +../../data/yoloGtold1/train/22985.png +../../data/yoloGtold1/train/22986.png +../../data/yoloGtold1/train/22987.png +../../data/yoloGtold1/train/22988.png +../../data/yoloGtold1/train/22989.png +../../data/yoloGtold1/train/22990.png +../../data/yoloGtold1/train/22991.png +../../data/yoloGtold1/train/22992.png +../../data/yoloGtold1/train/22993.png +../../data/yoloGtold1/train/22994.png +../../data/yoloGtold1/train/22995.png +../../data/yoloGtold1/train/22996.png +../../data/yoloGtold1/train/22997.png +../../data/yoloGtold1/train/22998.png +../../data/yoloGtold1/train/22999.png +../../data/yoloGtold1/train/23000.png +../../data/yoloGtold1/train/23001.png +../../data/yoloGtold1/train/23002.png +../../data/yoloGtold1/train/23003.png +../../data/yoloGtold1/train/23004.png +../../data/yoloGtold1/train/23005.png +../../data/yoloGtold1/train/23006.png +../../data/yoloGtold1/train/23007.png +../../data/yoloGtold1/train/23008.png +../../data/yoloGtold1/train/23009.png +../../data/yoloGtold1/train/23010.png +../../data/yoloGtold1/train/23011.png +../../data/yoloGtold1/train/23012.png +../../data/yoloGtold1/train/23013.png +../../data/yoloGtold1/train/23014.png +../../data/yoloGtold1/train/23015.png +../../data/yoloGtold1/train/23016.png +../../data/yoloGtold1/train/23017.png +../../data/yoloGtold1/train/23018.png +../../data/yoloGtold1/train/23019.png +../../data/yoloGtold1/train/23020.png +../../data/yoloGtold1/train/23021.png +../../data/yoloGtold1/train/23022.png +../../data/yoloGtold1/train/23023.png +../../data/yoloGtold1/train/23024.png +../../data/yoloGtold1/train/23025.png +../../data/yoloGtold1/train/23026.png +../../data/yoloGtold1/train/23027.png +../../data/yoloGtold1/train/23028.png +../../data/yoloGtold1/train/23029.png +../../data/yoloGtold1/train/23030.png +../../data/yoloGtold1/train/23031.png +../../data/yoloGtold1/train/23032.png +../../data/yoloGtold1/train/23033.png +../../data/yoloGtold1/train/23034.png +../../data/yoloGtold1/train/23035.png +../../data/yoloGtold1/train/23036.png +../../data/yoloGtold1/train/23037.png +../../data/yoloGtold1/train/23038.png +../../data/yoloGtold1/train/23039.png +../../data/yoloGtold1/train/23040.png +../../data/yoloGtold1/train/23041.png +../../data/yoloGtold1/train/23042.png +../../data/yoloGtold1/train/23043.png +../../data/yoloGtold1/train/23044.png +../../data/yoloGtold1/train/23045.png +../../data/yoloGtold1/train/23046.png +../../data/yoloGtold1/train/23047.png +../../data/yoloGtold1/train/23048.png +../../data/yoloGtold1/train/23049.png +../../data/yoloGtold1/train/23050.png +../../data/yoloGtold1/train/23051.png +../../data/yoloGtold1/train/23052.png +../../data/yoloGtold1/train/23053.png +../../data/yoloGtold1/train/23054.png +../../data/yoloGtold1/train/23055.png +../../data/yoloGtold1/train/23056.png +../../data/yoloGtold1/train/23057.png +../../data/yoloGtold1/train/23058.png +../../data/yoloGtold1/train/23059.png +../../data/yoloGtold1/train/23060.png +../../data/yoloGtold1/train/23061.png +../../data/yoloGtold1/train/23062.png +../../data/yoloGtold1/train/23063.png +../../data/yoloGtold1/train/23064.png +../../data/yoloGtold1/train/23065.png +../../data/yoloGtold1/train/23066.png +../../data/yoloGtold1/train/23067.png +../../data/yoloGtold1/train/23068.png +../../data/yoloGtold1/train/23069.png +../../data/yoloGtold1/train/23070.png +../../data/yoloGtold1/train/23071.png +../../data/yoloGtold1/train/23072.png +../../data/yoloGtold1/train/23073.png +../../data/yoloGtold1/train/23074.png +../../data/yoloGtold1/train/23075.png +../../data/yoloGtold1/train/23076.png +../../data/yoloGtold1/train/23077.png +../../data/yoloGtold1/train/23078.png +../../data/yoloGtold1/train/23079.png +../../data/yoloGtold1/train/23080.png +../../data/yoloGtold1/train/23081.png +../../data/yoloGtold1/train/23082.png +../../data/yoloGtold1/train/23083.png +../../data/yoloGtold1/train/23084.png +../../data/yoloGtold1/train/23085.png +../../data/yoloGtold1/train/23086.png +../../data/yoloGtold1/train/23087.png +../../data/yoloGtold1/train/23088.png +../../data/yoloGtold1/train/23089.png +../../data/yoloGtold1/train/23090.png +../../data/yoloGtold1/train/23091.png +../../data/yoloGtold1/train/23092.png +../../data/yoloGtold1/train/23093.png +../../data/yoloGtold1/train/23094.png +../../data/yoloGtold1/train/23095.png +../../data/yoloGtold1/train/23096.png +../../data/yoloGtold1/train/23097.png +../../data/yoloGtold1/train/23098.png +../../data/yoloGtold1/train/23099.png +../../data/yoloGtold1/train/23100.png +../../data/yoloGtold1/train/23101.png +../../data/yoloGtold1/train/23102.png +../../data/yoloGtold1/train/23103.png +../../data/yoloGtold1/train/23104.png +../../data/yoloGtold1/train/23105.png +../../data/yoloGtold1/train/23106.png +../../data/yoloGtold1/train/23107.png +../../data/yoloGtold1/train/23108.png +../../data/yoloGtold1/train/23109.png +../../data/yoloGtold1/train/23110.png +../../data/yoloGtold1/train/23111.png +../../data/yoloGtold1/train/23112.png +../../data/yoloGtold1/train/23113.png +../../data/yoloGtold1/train/23114.png +../../data/yoloGtold1/train/23115.png +../../data/yoloGtold1/train/23116.png +../../data/yoloGtold1/train/23117.png +../../data/yoloGtold1/train/23118.png +../../data/yoloGtold1/train/23119.png +../../data/yoloGtold1/train/23120.png +../../data/yoloGtold1/train/23121.png +../../data/yoloGtold1/train/23122.png +../../data/yoloGtold1/train/23123.png +../../data/yoloGtold1/train/23124.png +../../data/yoloGtold1/train/23125.png +../../data/yoloGtold1/train/23126.png +../../data/yoloGtold1/train/23127.png +../../data/yoloGtold1/train/23128.png +../../data/yoloGtold1/train/23129.png +../../data/yoloGtold1/train/23130.png +../../data/yoloGtold1/train/23131.png +../../data/yoloGtold1/train/23132.png +../../data/yoloGtold1/train/23133.png +../../data/yoloGtold1/train/23134.png +../../data/yoloGtold1/train/23135.png +../../data/yoloGtold1/train/23136.png +../../data/yoloGtold1/train/23137.png +../../data/yoloGtold1/train/23138.png +../../data/yoloGtold1/train/23139.png +../../data/yoloGtold1/train/23140.png +../../data/yoloGtold1/train/23141.png +../../data/yoloGtold1/train/23142.png +../../data/yoloGtold1/train/23143.png +../../data/yoloGtold1/train/23144.png +../../data/yoloGtold1/train/23145.png +../../data/yoloGtold1/train/23146.png +../../data/yoloGtold1/train/23147.png +../../data/yoloGtold1/train/23148.png +../../data/yoloGtold1/train/23149.png +../../data/yoloGtold1/train/23150.png +../../data/yoloGtold1/train/23151.png +../../data/yoloGtold1/train/23152.png +../../data/yoloGtold1/train/23153.png +../../data/yoloGtold1/train/23154.png +../../data/yoloGtold1/train/23155.png +../../data/yoloGtold1/train/23156.png +../../data/yoloGtold1/train/23157.png +../../data/yoloGtold1/train/23158.png +../../data/yoloGtold1/train/23159.png +../../data/yoloGtold1/train/23160.png +../../data/yoloGtold1/train/23161.png +../../data/yoloGtold1/train/23162.png +../../data/yoloGtold1/train/23163.png +../../data/yoloGtold1/train/23164.png +../../data/yoloGtold1/train/23165.png +../../data/yoloGtold1/train/23166.png +../../data/yoloGtold1/train/23167.png +../../data/yoloGtold1/train/23168.png +../../data/yoloGtold1/train/23169.png +../../data/yoloGtold1/train/23170.png +../../data/yoloGtold1/train/23171.png +../../data/yoloGtold1/train/23172.png +../../data/yoloGtold1/train/23173.png +../../data/yoloGtold1/train/23174.png +../../data/yoloGtold1/train/23175.png +../../data/yoloGtold1/train/23176.png +../../data/yoloGtold1/train/23177.png +../../data/yoloGtold1/train/23178.png +../../data/yoloGtold1/train/23179.png +../../data/yoloGtold1/train/23180.png +../../data/yoloGtold1/train/23181.png +../../data/yoloGtold1/train/23182.png +../../data/yoloGtold1/train/23183.png +../../data/yoloGtold1/train/23184.png +../../data/yoloGtold1/train/23185.png +../../data/yoloGtold1/train/23186.png +../../data/yoloGtold1/train/23187.png +../../data/yoloGtold1/train/23188.png +../../data/yoloGtold1/train/23189.png +../../data/yoloGtold1/train/23190.png +../../data/yoloGtold1/train/23191.png +../../data/yoloGtold1/train/23192.png +../../data/yoloGtold1/train/23193.png +../../data/yoloGtold1/train/23194.png +../../data/yoloGtold1/train/23195.png +../../data/yoloGtold1/train/23196.png +../../data/yoloGtold1/train/23197.png +../../data/yoloGtold1/train/23198.png +../../data/yoloGtold1/train/23199.png +../../data/yoloGtold1/train/23200.png +../../data/yoloGtold1/train/23201.png +../../data/yoloGtold1/train/23202.png +../../data/yoloGtold1/train/23203.png +../../data/yoloGtold1/train/23204.png +../../data/yoloGtold1/train/23205.png +../../data/yoloGtold1/train/23206.png +../../data/yoloGtold1/train/23207.png +../../data/yoloGtold1/train/23208.png +../../data/yoloGtold1/train/23209.png +../../data/yoloGtold1/train/23210.png +../../data/yoloGtold1/train/23211.png +../../data/yoloGtold1/train/23212.png +../../data/yoloGtold1/train/23213.png +../../data/yoloGtold1/train/23214.png +../../data/yoloGtold1/train/23215.png +../../data/yoloGtold1/train/23216.png +../../data/yoloGtold1/train/23217.png +../../data/yoloGtold1/train/23218.png +../../data/yoloGtold1/train/23219.png +../../data/yoloGtold1/train/23220.png +../../data/yoloGtold1/train/23221.png +../../data/yoloGtold1/train/23222.png +../../data/yoloGtold1/train/23223.png +../../data/yoloGtold1/train/23224.png +../../data/yoloGtold1/train/23225.png +../../data/yoloGtold1/train/23226.png +../../data/yoloGtold1/train/23227.png +../../data/yoloGtold1/train/23228.png +../../data/yoloGtold1/train/23229.png +../../data/yoloGtold1/train/23230.png +../../data/yoloGtold1/train/23231.png +../../data/yoloGtold1/train/23232.png +../../data/yoloGtold1/train/23233.png +../../data/yoloGtold1/train/23234.png +../../data/yoloGtold1/train/23235.png +../../data/yoloGtold1/train/23236.png +../../data/yoloGtold1/train/23237.png +../../data/yoloGtold1/train/23238.png +../../data/yoloGtold1/train/23239.png +../../data/yoloGtold1/train/23240.png +../../data/yoloGtold1/train/23241.png +../../data/yoloGtold1/train/23242.png +../../data/yoloGtold1/train/23243.png +../../data/yoloGtold1/train/23244.png +../../data/yoloGtold1/train/23245.png +../../data/yoloGtold1/train/23246.png +../../data/yoloGtold1/train/23247.png +../../data/yoloGtold1/train/23248.png +../../data/yoloGtold1/train/23249.png +../../data/yoloGtold1/train/23250.png +../../data/yoloGtold1/train/23251.png +../../data/yoloGtold1/train/23252.png +../../data/yoloGtold1/train/23253.png +../../data/yoloGtold1/train/23254.png +../../data/yoloGtold1/train/23255.png +../../data/yoloGtold1/train/23256.png +../../data/yoloGtold1/train/23257.png +../../data/yoloGtold1/train/23258.png +../../data/yoloGtold1/train/23259.png +../../data/yoloGtold1/train/23260.png +../../data/yoloGtold1/train/23261.png +../../data/yoloGtold1/train/23262.png +../../data/yoloGtold1/train/23263.png +../../data/yoloGtold1/train/23264.png +../../data/yoloGtold1/train/23265.png +../../data/yoloGtold1/train/23266.png +../../data/yoloGtold1/train/23267.png +../../data/yoloGtold1/train/23268.png +../../data/yoloGtold1/train/23269.png +../../data/yoloGtold1/train/23270.png +../../data/yoloGtold1/train/23271.png +../../data/yoloGtold1/train/23272.png +../../data/yoloGtold1/train/23273.png +../../data/yoloGtold1/train/23274.png +../../data/yoloGtold1/train/23275.png +../../data/yoloGtold1/train/23276.png +../../data/yoloGtold1/train/23277.png +../../data/yoloGtold1/train/23278.png +../../data/yoloGtold1/train/23279.png +../../data/yoloGtold1/train/23280.png +../../data/yoloGtold1/train/23281.png +../../data/yoloGtold1/train/23282.png +../../data/yoloGtold1/train/23283.png +../../data/yoloGtold1/train/23284.png +../../data/yoloGtold1/train/23285.png +../../data/yoloGtold1/train/23286.png +../../data/yoloGtold1/train/23287.png +../../data/yoloGtold1/train/23288.png +../../data/yoloGtold1/train/23289.png +../../data/yoloGtold1/train/23290.png +../../data/yoloGtold1/train/23291.png +../../data/yoloGtold1/train/23292.png +../../data/yoloGtold1/train/23293.png +../../data/yoloGtold1/train/23294.png +../../data/yoloGtold1/train/23295.png +../../data/yoloGtold1/train/23296.png +../../data/yoloGtold1/train/23297.png +../../data/yoloGtold1/train/23298.png +../../data/yoloGtold1/train/23299.png +../../data/yoloGtold1/train/23300.png +../../data/yoloGtold1/train/23301.png +../../data/yoloGtold1/train/23302.png +../../data/yoloGtold1/train/23303.png +../../data/yoloGtold1/train/23304.png +../../data/yoloGtold1/train/23305.png +../../data/yoloGtold1/train/23306.png +../../data/yoloGtold1/train/23307.png +../../data/yoloGtold1/train/23308.png +../../data/yoloGtold1/train/23309.png +../../data/yoloGtold1/train/23310.png +../../data/yoloGtold1/train/23311.png +../../data/yoloGtold1/train/23312.png +../../data/yoloGtold1/train/23313.png +../../data/yoloGtold1/train/23314.png +../../data/yoloGtold1/train/23315.png +../../data/yoloGtold1/train/23316.png +../../data/yoloGtold1/train/23317.png +../../data/yoloGtold1/train/23318.png +../../data/yoloGtold1/train/23319.png +../../data/yoloGtold1/train/23320.png +../../data/yoloGtold1/train/23321.png +../../data/yoloGtold1/train/23322.png +../../data/yoloGtold1/train/23323.png +../../data/yoloGtold1/train/23324.png +../../data/yoloGtold1/train/23325.png +../../data/yoloGtold1/train/23326.png +../../data/yoloGtold1/train/23327.png +../../data/yoloGtold1/train/23328.png +../../data/yoloGtold1/train/23329.png +../../data/yoloGtold1/train/23330.png +../../data/yoloGtold1/train/23331.png +../../data/yoloGtold1/train/23332.png +../../data/yoloGtold1/train/23333.png +../../data/yoloGtold1/train/23334.png +../../data/yoloGtold1/train/23335.png +../../data/yoloGtold1/train/23336.png +../../data/yoloGtold1/train/23337.png +../../data/yoloGtold1/train/23338.png +../../data/yoloGtold1/train/23339.png +../../data/yoloGtold1/train/23340.png +../../data/yoloGtold1/train/23341.png +../../data/yoloGtold1/train/23342.png +../../data/yoloGtold1/train/23343.png +../../data/yoloGtold1/train/23344.png +../../data/yoloGtold1/train/23345.png +../../data/yoloGtold1/train/23346.png +../../data/yoloGtold1/train/23347.png +../../data/yoloGtold1/train/23348.png +../../data/yoloGtold1/train/23349.png +../../data/yoloGtold1/train/23350.png +../../data/yoloGtold1/train/23351.png +../../data/yoloGtold1/train/23352.png +../../data/yoloGtold1/train/23353.png +../../data/yoloGtold1/train/23354.png +../../data/yoloGtold1/train/23355.png +../../data/yoloGtold1/train/23356.png +../../data/yoloGtold1/train/23357.png +../../data/yoloGtold1/train/23358.png +../../data/yoloGtold1/train/23359.png +../../data/yoloGtold1/train/23360.png +../../data/yoloGtold1/train/23361.png +../../data/yoloGtold1/train/23362.png +../../data/yoloGtold1/train/23363.png +../../data/yoloGtold1/train/23364.png +../../data/yoloGtold1/train/23365.png +../../data/yoloGtold1/train/23366.png +../../data/yoloGtold1/train/23367.png +../../data/yoloGtold1/train/23368.png +../../data/yoloGtold1/train/23369.png +../../data/yoloGtold1/train/23370.png +../../data/yoloGtold1/train/23371.png +../../data/yoloGtold1/train/23372.png +../../data/yoloGtold1/train/23373.png +../../data/yoloGtold1/train/23374.png +../../data/yoloGtold1/train/23375.png +../../data/yoloGtold1/train/23376.png +../../data/yoloGtold1/train/23377.png +../../data/yoloGtold1/train/23378.png +../../data/yoloGtold1/train/23379.png +../../data/yoloGtold1/train/23380.png +../../data/yoloGtold1/train/23381.png +../../data/yoloGtold1/train/23382.png +../../data/yoloGtold1/train/23383.png +../../data/yoloGtold1/train/23384.png +../../data/yoloGtold1/train/23385.png +../../data/yoloGtold1/train/23386.png +../../data/yoloGtold1/train/23387.png +../../data/yoloGtold1/train/23388.png +../../data/yoloGtold1/train/23389.png +../../data/yoloGtold1/train/23390.png +../../data/yoloGtold1/train/23391.png +../../data/yoloGtold1/train/23392.png +../../data/yoloGtold1/train/23393.png +../../data/yoloGtold1/train/23394.png +../../data/yoloGtold1/train/23395.png +../../data/yoloGtold1/train/23396.png +../../data/yoloGtold1/train/23397.png +../../data/yoloGtold1/train/23398.png +../../data/yoloGtold1/train/23399.png +../../data/yoloGtold1/train/23400.png +../../data/yoloGtold1/train/23401.png +../../data/yoloGtold1/train/23402.png +../../data/yoloGtold1/train/23403.png +../../data/yoloGtold1/train/23404.png +../../data/yoloGtold1/train/23405.png +../../data/yoloGtold1/train/23406.png +../../data/yoloGtold1/train/23407.png +../../data/yoloGtold1/train/23408.png +../../data/yoloGtold1/train/23409.png +../../data/yoloGtold1/train/23410.png +../../data/yoloGtold1/train/23411.png +../../data/yoloGtold1/train/23412.png +../../data/yoloGtold1/train/23413.png +../../data/yoloGtold1/train/23414.png +../../data/yoloGtold1/train/23415.png +../../data/yoloGtold1/train/23416.png +../../data/yoloGtold1/train/23417.png +../../data/yoloGtold1/train/23418.png +../../data/yoloGtold1/train/23419.png +../../data/yoloGtold1/train/23420.png +../../data/yoloGtold1/train/23421.png +../../data/yoloGtold1/train/23422.png +../../data/yoloGtold1/train/23423.png +../../data/yoloGtold1/train/23424.png +../../data/yoloGtold1/train/23425.png +../../data/yoloGtold1/train/23426.png +../../data/yoloGtold1/train/23427.png +../../data/yoloGtold1/train/23428.png +../../data/yoloGtold1/train/23429.png +../../data/yoloGtold1/train/23430.png +../../data/yoloGtold1/train/23431.png +../../data/yoloGtold1/train/23432.png +../../data/yoloGtold1/train/23433.png +../../data/yoloGtold1/train/23434.png +../../data/yoloGtold1/train/23435.png +../../data/yoloGtold1/train/23436.png +../../data/yoloGtold1/train/23437.png +../../data/yoloGtold1/train/23438.png +../../data/yoloGtold1/train/23439.png +../../data/yoloGtold1/train/23440.png +../../data/yoloGtold1/train/23441.png +../../data/yoloGtold1/train/23442.png +../../data/yoloGtold1/train/23443.png +../../data/yoloGtold1/train/23444.png +../../data/yoloGtold1/train/23445.png +../../data/yoloGtold1/train/23446.png +../../data/yoloGtold1/train/23447.png +../../data/yoloGtold1/train/23448.png +../../data/yoloGtold1/train/23449.png +../../data/yoloGtold1/train/23450.png +../../data/yoloGtold1/train/23451.png +../../data/yoloGtold1/train/23452.png +../../data/yoloGtold1/train/23453.png +../../data/yoloGtold1/train/23454.png +../../data/yoloGtold1/train/23455.png +../../data/yoloGtold1/train/23456.png +../../data/yoloGtold1/train/23457.png +../../data/yoloGtold1/train/23458.png +../../data/yoloGtold1/train/23459.png +../../data/yoloGtold1/train/23460.png +../../data/yoloGtold1/train/23461.png +../../data/yoloGtold1/train/23462.png +../../data/yoloGtold1/train/23463.png +../../data/yoloGtold1/train/23464.png +../../data/yoloGtold1/train/23465.png +../../data/yoloGtold1/train/23466.png +../../data/yoloGtold1/train/23467.png +../../data/yoloGtold1/train/23468.png +../../data/yoloGtold1/train/23469.png +../../data/yoloGtold1/train/23470.png +../../data/yoloGtold1/train/23471.png +../../data/yoloGtold1/train/23472.png +../../data/yoloGtold1/train/23473.png +../../data/yoloGtold1/train/23474.png +../../data/yoloGtold1/train/23475.png +../../data/yoloGtold1/train/23476.png +../../data/yoloGtold1/train/23477.png +../../data/yoloGtold1/train/23478.png +../../data/yoloGtold1/train/23479.png +../../data/yoloGtold1/train/23480.png +../../data/yoloGtold1/train/23481.png +../../data/yoloGtold1/train/23482.png +../../data/yoloGtold1/train/23483.png +../../data/yoloGtold1/train/23484.png +../../data/yoloGtold1/train/23485.png +../../data/yoloGtold1/train/23486.png +../../data/yoloGtold1/train/23487.png +../../data/yoloGtold1/train/23488.png +../../data/yoloGtold1/train/23489.png +../../data/yoloGtold1/train/23490.png +../../data/yoloGtold1/train/23491.png +../../data/yoloGtold1/train/23492.png +../../data/yoloGtold1/train/23493.png +../../data/yoloGtold1/train/23494.png +../../data/yoloGtold1/train/23495.png +../../data/yoloGtold1/train/23496.png +../../data/yoloGtold1/train/23497.png +../../data/yoloGtold1/train/23498.png +../../data/yoloGtold1/train/23499.png +../../data/yoloGtold1/train/23500.png +../../data/yoloGtold1/train/23501.png +../../data/yoloGtold1/train/23502.png +../../data/yoloGtold1/train/23503.png +../../data/yoloGtold1/train/23504.png +../../data/yoloGtold1/train/23505.png +../../data/yoloGtold1/train/23506.png +../../data/yoloGtold1/train/23507.png +../../data/yoloGtold1/train/23508.png +../../data/yoloGtold1/train/23509.png +../../data/yoloGtold1/train/23510.png +../../data/yoloGtold1/train/23511.png +../../data/yoloGtold1/train/23512.png +../../data/yoloGtold1/train/23513.png +../../data/yoloGtold1/train/23514.png +../../data/yoloGtold1/train/23515.png +../../data/yoloGtold1/train/23516.png +../../data/yoloGtold1/train/23517.png +../../data/yoloGtold1/train/23518.png +../../data/yoloGtold1/train/23519.png +../../data/yoloGtold1/train/23520.png +../../data/yoloGtold1/train/23521.png +../../data/yoloGtold1/train/23522.png +../../data/yoloGtold1/train/23523.png +../../data/yoloGtold1/train/23524.png +../../data/yoloGtold1/train/23525.png +../../data/yoloGtold1/train/23526.png +../../data/yoloGtold1/train/23527.png +../../data/yoloGtold1/train/23528.png +../../data/yoloGtold1/train/23529.png +../../data/yoloGtold1/train/23530.png +../../data/yoloGtold1/train/23531.png +../../data/yoloGtold1/train/23532.png +../../data/yoloGtold1/train/23533.png +../../data/yoloGtold1/train/23534.png +../../data/yoloGtold1/train/23535.png +../../data/yoloGtold1/train/23536.png +../../data/yoloGtold1/train/23537.png +../../data/yoloGtold1/train/23538.png +../../data/yoloGtold1/train/23539.png +../../data/yoloGtold1/train/23540.png +../../data/yoloGtold1/train/23541.png +../../data/yoloGtold1/train/23542.png +../../data/yoloGtold1/train/23543.png +../../data/yoloGtold1/train/23544.png +../../data/yoloGtold1/train/23545.png +../../data/yoloGtold1/train/23546.png +../../data/yoloGtold1/train/23547.png +../../data/yoloGtold1/train/23548.png +../../data/yoloGtold1/train/23549.png +../../data/yoloGtold1/train/23550.png +../../data/yoloGtold1/train/23551.png +../../data/yoloGtold1/train/23552.png +../../data/yoloGtold1/train/23553.png +../../data/yoloGtold1/train/23554.png +../../data/yoloGtold1/train/23555.png +../../data/yoloGtold1/train/23556.png +../../data/yoloGtold1/train/23557.png +../../data/yoloGtold1/train/23558.png +../../data/yoloGtold1/train/23559.png +../../data/yoloGtold1/train/23560.png +../../data/yoloGtold1/train/23561.png +../../data/yoloGtold1/train/23562.png +../../data/yoloGtold1/train/23563.png +../../data/yoloGtold1/train/23564.png +../../data/yoloGtold1/train/23565.png +../../data/yoloGtold1/train/23566.png +../../data/yoloGtold1/train/23567.png +../../data/yoloGtold1/train/23568.png +../../data/yoloGtold1/train/23569.png +../../data/yoloGtold1/train/23570.png +../../data/yoloGtold1/train/23571.png +../../data/yoloGtold1/train/23572.png +../../data/yoloGtold1/train/23573.png +../../data/yoloGtold1/train/23574.png +../../data/yoloGtold1/train/23575.png +../../data/yoloGtold1/train/23576.png +../../data/yoloGtold1/train/23577.png +../../data/yoloGtold1/train/23578.png +../../data/yoloGtold1/train/23579.png +../../data/yoloGtold1/train/23580.png +../../data/yoloGtold1/train/23581.png +../../data/yoloGtold1/train/23582.png +../../data/yoloGtold1/train/23583.png +../../data/yoloGtold1/train/23584.png +../../data/yoloGtold1/train/23585.png +../../data/yoloGtold1/train/23586.png +../../data/yoloGtold1/train/23587.png +../../data/yoloGtold1/train/23588.png +../../data/yoloGtold1/train/23589.png +../../data/yoloGtold1/train/23590.png +../../data/yoloGtold1/train/23591.png +../../data/yoloGtold1/train/23592.png +../../data/yoloGtold1/train/23593.png +../../data/yoloGtold1/train/23594.png +../../data/yoloGtold1/train/23595.png +../../data/yoloGtold1/train/23596.png +../../data/yoloGtold1/train/23597.png +../../data/yoloGtold1/train/23598.png +../../data/yoloGtold1/train/23599.png +../../data/yoloGtold1/train/23600.png +../../data/yoloGtold1/train/23601.png +../../data/yoloGtold1/train/23602.png +../../data/yoloGtold1/train/23603.png +../../data/yoloGtold1/train/23604.png +../../data/yoloGtold1/train/23605.png +../../data/yoloGtold1/train/23606.png +../../data/yoloGtold1/train/23607.png +../../data/yoloGtold1/train/23608.png +../../data/yoloGtold1/train/23609.png +../../data/yoloGtold1/train/23610.png +../../data/yoloGtold1/train/23611.png +../../data/yoloGtold1/train/23612.png +../../data/yoloGtold1/train/23613.png +../../data/yoloGtold1/train/23614.png +../../data/yoloGtold1/train/23615.png +../../data/yoloGtold1/train/23616.png +../../data/yoloGtold1/train/23617.png +../../data/yoloGtold1/train/23618.png +../../data/yoloGtold1/train/23619.png +../../data/yoloGtold1/train/23620.png +../../data/yoloGtold1/train/23621.png +../../data/yoloGtold1/train/23622.png +../../data/yoloGtold1/train/23623.png +../../data/yoloGtold1/train/23624.png +../../data/yoloGtold1/train/23625.png +../../data/yoloGtold1/train/23626.png +../../data/yoloGtold1/train/23627.png +../../data/yoloGtold1/train/23628.png +../../data/yoloGtold1/train/23629.png +../../data/yoloGtold1/train/23630.png +../../data/yoloGtold1/train/23631.png +../../data/yoloGtold1/train/23632.png +../../data/yoloGtold1/train/23633.png +../../data/yoloGtold1/train/23634.png +../../data/yoloGtold1/train/23635.png +../../data/yoloGtold1/train/23636.png +../../data/yoloGtold1/train/23637.png +../../data/yoloGtold1/train/23638.png +../../data/yoloGtold1/train/23639.png +../../data/yoloGtold1/train/23640.png +../../data/yoloGtold1/train/23641.png +../../data/yoloGtold1/train/23642.png +../../data/yoloGtold1/train/23643.png +../../data/yoloGtold1/train/23644.png +../../data/yoloGtold1/train/23645.png +../../data/yoloGtold1/train/23646.png +../../data/yoloGtold1/train/23647.png +../../data/yoloGtold1/train/23648.png +../../data/yoloGtold1/train/23649.png +../../data/yoloGtold1/train/23650.png +../../data/yoloGtold1/train/23651.png +../../data/yoloGtold1/train/23652.png +../../data/yoloGtold1/train/23653.png +../../data/yoloGtold1/train/23654.png +../../data/yoloGtold1/train/23655.png +../../data/yoloGtold1/train/23656.png +../../data/yoloGtold1/train/23657.png +../../data/yoloGtold1/train/23658.png +../../data/yoloGtold1/train/23659.png +../../data/yoloGtold1/train/23660.png +../../data/yoloGtold1/train/23661.png +../../data/yoloGtold1/train/23662.png +../../data/yoloGtold1/train/23663.png +../../data/yoloGtold1/train/23664.png +../../data/yoloGtold1/train/23665.png +../../data/yoloGtold1/train/23666.png +../../data/yoloGtold1/train/23667.png +../../data/yoloGtold1/train/23668.png +../../data/yoloGtold1/train/23669.png +../../data/yoloGtold1/train/23670.png +../../data/yoloGtold1/train/23671.png +../../data/yoloGtold1/train/23672.png +../../data/yoloGtold1/train/23673.png +../../data/yoloGtold1/train/23674.png +../../data/yoloGtold1/train/23675.png +../../data/yoloGtold1/train/23676.png +../../data/yoloGtold1/train/23677.png +../../data/yoloGtold1/train/23678.png +../../data/yoloGtold1/train/23679.png +../../data/yoloGtold1/train/23680.png +../../data/yoloGtold1/train/23681.png +../../data/yoloGtold1/train/23682.png +../../data/yoloGtold1/train/23683.png +../../data/yoloGtold1/train/23684.png +../../data/yoloGtold1/train/23685.png +../../data/yoloGtold1/train/23686.png +../../data/yoloGtold1/train/23687.png +../../data/yoloGtold1/train/23688.png +../../data/yoloGtold1/train/23689.png +../../data/yoloGtold1/train/23690.png +../../data/yoloGtold1/train/23691.png +../../data/yoloGtold1/train/23692.png +../../data/yoloGtold1/train/23693.png +../../data/yoloGtold1/train/23694.png +../../data/yoloGtold1/train/23695.png +../../data/yoloGtold1/train/23696.png +../../data/yoloGtold1/train/23697.png +../../data/yoloGtold1/train/23698.png +../../data/yoloGtold1/train/23699.png +../../data/yoloGtold1/train/23700.png +../../data/yoloGtold1/train/23701.png +../../data/yoloGtold1/train/23702.png +../../data/yoloGtold1/train/23703.png +../../data/yoloGtold1/train/23704.png +../../data/yoloGtold1/train/23705.png +../../data/yoloGtold1/train/23706.png +../../data/yoloGtold1/train/23707.png +../../data/yoloGtold1/train/23708.png +../../data/yoloGtold1/train/23709.png +../../data/yoloGtold1/train/23710.png +../../data/yoloGtold1/train/23711.png +../../data/yoloGtold1/train/23712.png +../../data/yoloGtold1/train/23713.png +../../data/yoloGtold1/train/23714.png +../../data/yoloGtold1/train/23715.png +../../data/yoloGtold1/train/23716.png +../../data/yoloGtold1/train/23717.png +../../data/yoloGtold1/train/23718.png +../../data/yoloGtold1/train/23719.png +../../data/yoloGtold1/train/23720.png +../../data/yoloGtold1/train/23721.png +../../data/yoloGtold1/train/23722.png +../../data/yoloGtold1/train/23723.png +../../data/yoloGtold1/train/23724.png +../../data/yoloGtold1/train/23725.png +../../data/yoloGtold1/train/23726.png +../../data/yoloGtold1/train/23727.png +../../data/yoloGtold1/train/23728.png +../../data/yoloGtold1/train/23729.png +../../data/yoloGtold1/train/23730.png +../../data/yoloGtold1/train/23731.png +../../data/yoloGtold1/train/23732.png +../../data/yoloGtold1/train/23733.png +../../data/yoloGtold1/train/23734.png +../../data/yoloGtold1/train/23735.png +../../data/yoloGtold1/train/23736.png +../../data/yoloGtold1/train/23737.png +../../data/yoloGtold1/train/23738.png +../../data/yoloGtold1/train/23739.png +../../data/yoloGtold1/train/23740.png +../../data/yoloGtold1/train/23741.png +../../data/yoloGtold1/train/23742.png +../../data/yoloGtold1/train/23743.png +../../data/yoloGtold1/train/23744.png +../../data/yoloGtold1/train/23745.png +../../data/yoloGtold1/train/23746.png +../../data/yoloGtold1/train/23747.png +../../data/yoloGtold1/train/23748.png +../../data/yoloGtold1/train/23749.png +../../data/yoloGtold1/train/23750.png +../../data/yoloGtold1/train/23751.png +../../data/yoloGtold1/train/23752.png +../../data/yoloGtold1/train/23753.png +../../data/yoloGtold1/train/23754.png +../../data/yoloGtold1/train/23755.png +../../data/yoloGtold1/train/23756.png +../../data/yoloGtold1/train/23757.png +../../data/yoloGtold1/train/23758.png +../../data/yoloGtold1/train/23759.png +../../data/yoloGtold1/train/23760.png +../../data/yoloGtold1/train/23761.png +../../data/yoloGtold1/train/23762.png +../../data/yoloGtold1/train/23763.png +../../data/yoloGtold1/train/23764.png +../../data/yoloGtold1/train/23765.png +../../data/yoloGtold1/train/23766.png +../../data/yoloGtold1/train/23767.png +../../data/yoloGtold1/train/23768.png +../../data/yoloGtold1/train/23769.png +../../data/yoloGtold1/train/23770.png +../../data/yoloGtold1/train/23771.png +../../data/yoloGtold1/train/23772.png +../../data/yoloGtold1/train/23773.png +../../data/yoloGtold1/train/23774.png +../../data/yoloGtold1/train/23775.png +../../data/yoloGtold1/train/23776.png +../../data/yoloGtold1/train/23777.png +../../data/yoloGtold1/train/23778.png +../../data/yoloGtold1/train/23779.png +../../data/yoloGtold1/train/23780.png +../../data/yoloGtold1/train/23781.png +../../data/yoloGtold1/train/23782.png +../../data/yoloGtold1/train/23783.png +../../data/yoloGtold1/train/23784.png +../../data/yoloGtold1/train/23785.png +../../data/yoloGtold1/train/23786.png +../../data/yoloGtold1/train/23787.png +../../data/yoloGtold1/train/23788.png +../../data/yoloGtold1/train/23789.png +../../data/yoloGtold1/train/23790.png +../../data/yoloGtold1/train/23791.png +../../data/yoloGtold1/train/23792.png +../../data/yoloGtold1/train/23793.png +../../data/yoloGtold1/train/23794.png +../../data/yoloGtold1/train/23795.png +../../data/yoloGtold1/train/23796.png +../../data/yoloGtold1/train/23797.png +../../data/yoloGtold1/train/23798.png +../../data/yoloGtold1/train/23799.png +../../data/yoloGtold1/train/23800.png +../../data/yoloGtold1/train/23801.png +../../data/yoloGtold1/train/23802.png +../../data/yoloGtold1/train/23803.png +../../data/yoloGtold1/train/23804.png +../../data/yoloGtold1/train/23805.png +../../data/yoloGtold1/train/23806.png +../../data/yoloGtold1/train/23807.png +../../data/yoloGtold1/train/23808.png +../../data/yoloGtold1/train/23809.png +../../data/yoloGtold1/train/23810.png +../../data/yoloGtold1/train/23811.png +../../data/yoloGtold1/train/23812.png +../../data/yoloGtold1/train/23813.png +../../data/yoloGtold1/train/23814.png +../../data/yoloGtold1/train/23815.png +../../data/yoloGtold1/train/23816.png +../../data/yoloGtold1/train/23817.png +../../data/yoloGtold1/train/23818.png +../../data/yoloGtold1/train/23819.png +../../data/yoloGtold1/train/23820.png +../../data/yoloGtold1/train/23821.png +../../data/yoloGtold1/train/23822.png +../../data/yoloGtold1/train/23823.png +../../data/yoloGtold1/train/23824.png +../../data/yoloGtold1/train/23825.png +../../data/yoloGtold1/train/23826.png +../../data/yoloGtold1/train/23827.png +../../data/yoloGtold1/train/23828.png +../../data/yoloGtold1/train/23829.png +../../data/yoloGtold1/train/23830.png +../../data/yoloGtold1/train/23831.png +../../data/yoloGtold1/train/23832.png +../../data/yoloGtold1/train/23833.png +../../data/yoloGtold1/train/23834.png +../../data/yoloGtold1/train/23835.png +../../data/yoloGtold1/train/23836.png +../../data/yoloGtold1/train/23837.png +../../data/yoloGtold1/train/23838.png +../../data/yoloGtold1/train/23839.png +../../data/yoloGtold1/train/23840.png +../../data/yoloGtold1/train/23841.png +../../data/yoloGtold1/train/23842.png +../../data/yoloGtold1/train/23843.png +../../data/yoloGtold1/train/23844.png +../../data/yoloGtold1/train/23845.png +../../data/yoloGtold1/train/23846.png +../../data/yoloGtold1/train/23847.png +../../data/yoloGtold1/train/23848.png +../../data/yoloGtold1/train/23849.png +../../data/yoloGtold1/train/23850.png +../../data/yoloGtold1/train/23851.png +../../data/yoloGtold1/train/23852.png +../../data/yoloGtold1/train/23853.png +../../data/yoloGtold1/train/23854.png +../../data/yoloGtold1/train/23855.png +../../data/yoloGtold1/train/23856.png +../../data/yoloGtold1/train/23857.png +../../data/yoloGtold1/train/23858.png +../../data/yoloGtold1/train/23859.png +../../data/yoloGtold1/train/23860.png +../../data/yoloGtold1/train/23861.png +../../data/yoloGtold1/train/23862.png +../../data/yoloGtold1/train/23863.png +../../data/yoloGtold1/train/23864.png +../../data/yoloGtold1/train/23865.png +../../data/yoloGtold1/train/23866.png +../../data/yoloGtold1/train/23867.png +../../data/yoloGtold1/train/23868.png +../../data/yoloGtold1/train/23869.png +../../data/yoloGtold1/train/23870.png +../../data/yoloGtold1/train/23871.png +../../data/yoloGtold1/train/23872.png +../../data/yoloGtold1/train/23873.png +../../data/yoloGtold1/train/23874.png +../../data/yoloGtold1/train/23875.png +../../data/yoloGtold1/train/23876.png +../../data/yoloGtold1/train/23877.png +../../data/yoloGtold1/train/23878.png +../../data/yoloGtold1/train/23879.png +../../data/yoloGtold1/train/23880.png +../../data/yoloGtold1/train/23881.png +../../data/yoloGtold1/train/23882.png +../../data/yoloGtold1/train/23883.png +../../data/yoloGtold1/train/23884.png +../../data/yoloGtold1/train/23885.png +../../data/yoloGtold1/train/23886.png +../../data/yoloGtold1/train/23887.png +../../data/yoloGtold1/train/23888.png +../../data/yoloGtold1/train/23889.png +../../data/yoloGtold1/train/23890.png +../../data/yoloGtold1/train/23891.png +../../data/yoloGtold1/train/23892.png +../../data/yoloGtold1/train/23893.png +../../data/yoloGtold1/train/23894.png +../../data/yoloGtold1/train/23895.png +../../data/yoloGtold1/train/23896.png +../../data/yoloGtold1/train/23897.png +../../data/yoloGtold1/train/23898.png +../../data/yoloGtold1/train/23899.png +../../data/yoloGtold1/train/23900.png +../../data/yoloGtold1/train/23901.png +../../data/yoloGtold1/train/23902.png +../../data/yoloGtold1/train/23903.png +../../data/yoloGtold1/train/23904.png +../../data/yoloGtold1/train/23905.png +../../data/yoloGtold1/train/23906.png +../../data/yoloGtold1/train/23907.png +../../data/yoloGtold1/train/23908.png +../../data/yoloGtold1/train/23909.png +../../data/yoloGtold1/train/23910.png +../../data/yoloGtold1/train/23911.png +../../data/yoloGtold1/train/23912.png +../../data/yoloGtold1/train/23913.png +../../data/yoloGtold1/train/23914.png +../../data/yoloGtold1/train/23915.png +../../data/yoloGtold1/train/23916.png +../../data/yoloGtold1/train/23917.png +../../data/yoloGtold1/train/23918.png +../../data/yoloGtold1/train/23919.png +../../data/yoloGtold1/train/23920.png +../../data/yoloGtold1/train/23921.png +../../data/yoloGtold1/train/23922.png +../../data/yoloGtold1/train/23923.png +../../data/yoloGtold1/train/23924.png +../../data/yoloGtold1/train/23925.png +../../data/yoloGtold1/train/23926.png +../../data/yoloGtold1/train/23927.png +../../data/yoloGtold1/train/23928.png +../../data/yoloGtold1/train/23929.png +../../data/yoloGtold1/train/23930.png +../../data/yoloGtold1/train/23931.png +../../data/yoloGtold1/train/23932.png +../../data/yoloGtold1/train/23933.png +../../data/yoloGtold1/train/23934.png +../../data/yoloGtold1/train/23935.png +../../data/yoloGtold1/train/23936.png +../../data/yoloGtold1/train/23937.png +../../data/yoloGtold1/train/23938.png +../../data/yoloGtold1/train/23939.png +../../data/yoloGtold1/train/23940.png +../../data/yoloGtold1/train/23941.png +../../data/yoloGtold1/train/23942.png +../../data/yoloGtold1/train/23943.png +../../data/yoloGtold1/train/23944.png +../../data/yoloGtold1/train/23945.png +../../data/yoloGtold1/train/23946.png +../../data/yoloGtold1/train/23947.png +../../data/yoloGtold1/train/23948.png +../../data/yoloGtold1/train/23949.png +../../data/yoloGtold1/train/23950.png +../../data/yoloGtold1/train/23951.png +../../data/yoloGtold1/train/23952.png +../../data/yoloGtold1/train/23953.png +../../data/yoloGtold1/train/23954.png +../../data/yoloGtold1/train/23955.png +../../data/yoloGtold1/train/23956.png +../../data/yoloGtold1/train/23957.png +../../data/yoloGtold1/train/23958.png +../../data/yoloGtold1/train/23959.png +../../data/yoloGtold1/train/23960.png +../../data/yoloGtold1/train/23961.png +../../data/yoloGtold1/train/23962.png +../../data/yoloGtold1/train/23963.png +../../data/yoloGtold1/train/23964.png +../../data/yoloGtold1/train/23965.png +../../data/yoloGtold1/train/23966.png +../../data/yoloGtold1/train/23967.png +../../data/yoloGtold1/train/23968.png +../../data/yoloGtold1/train/23969.png +../../data/yoloGtold1/train/23970.png +../../data/yoloGtold1/train/23971.png +../../data/yoloGtold1/train/23972.png +../../data/yoloGtold1/train/23973.png +../../data/yoloGtold1/train/23974.png +../../data/yoloGtold1/train/23975.png +../../data/yoloGtold1/train/23976.png +../../data/yoloGtold1/train/23977.png +../../data/yoloGtold1/train/23978.png +../../data/yoloGtold1/train/23979.png +../../data/yoloGtold1/train/23980.png +../../data/yoloGtold1/train/23981.png +../../data/yoloGtold1/train/23982.png +../../data/yoloGtold1/train/23983.png +../../data/yoloGtold1/train/23984.png +../../data/yoloGtold1/train/23985.png +../../data/yoloGtold1/train/23986.png +../../data/yoloGtold1/train/23987.png +../../data/yoloGtold1/train/23988.png +../../data/yoloGtold1/train/23989.png +../../data/yoloGtold1/train/23990.png +../../data/yoloGtold1/train/23991.png +../../data/yoloGtold1/train/23992.png +../../data/yoloGtold1/train/23993.png +../../data/yoloGtold1/train/23994.png +../../data/yoloGtold1/train/23995.png +../../data/yoloGtold1/train/23996.png +../../data/yoloGtold1/train/23997.png +../../data/yoloGtold1/train/23998.png +../../data/yoloGtold1/train/23999.png +../../data/yoloGtold1/train/24000.png +../../data/yoloGtold1/train/24001.png +../../data/yoloGtold1/train/24002.png +../../data/yoloGtold1/train/24003.png +../../data/yoloGtold1/train/24004.png +../../data/yoloGtold1/train/24005.png +../../data/yoloGtold1/train/24006.png +../../data/yoloGtold1/train/24007.png +../../data/yoloGtold1/train/24008.png +../../data/yoloGtold1/train/24009.png +../../data/yoloGtold1/train/24010.png +../../data/yoloGtold1/train/24011.png +../../data/yoloGtold1/train/24012.png +../../data/yoloGtold1/train/24013.png +../../data/yoloGtold1/train/24014.png +../../data/yoloGtold1/train/24015.png +../../data/yoloGtold1/train/24016.png +../../data/yoloGtold1/train/24017.png +../../data/yoloGtold1/train/24018.png +../../data/yoloGtold1/train/24019.png +../../data/yoloGtold1/train/24020.png +../../data/yoloGtold1/train/24021.png +../../data/yoloGtold1/train/24022.png +../../data/yoloGtold1/train/24023.png +../../data/yoloGtold1/train/24024.png +../../data/yoloGtold1/train/24025.png +../../data/yoloGtold1/train/24026.png +../../data/yoloGtold1/train/24027.png +../../data/yoloGtold1/train/24028.png +../../data/yoloGtold1/train/24029.png +../../data/yoloGtold1/train/24030.png +../../data/yoloGtold1/train/24031.png +../../data/yoloGtold1/train/24032.png +../../data/yoloGtold1/train/24033.png +../../data/yoloGtold1/train/24034.png +../../data/yoloGtold1/train/24035.png +../../data/yoloGtold1/train/24036.png +../../data/yoloGtold1/train/24037.png +../../data/yoloGtold1/train/24038.png +../../data/yoloGtold1/train/24039.png +../../data/yoloGtold1/train/24040.png +../../data/yoloGtold1/train/24041.png +../../data/yoloGtold1/train/24042.png +../../data/yoloGtold1/train/24043.png +../../data/yoloGtold1/train/24044.png +../../data/yoloGtold1/train/24045.png +../../data/yoloGtold1/train/24046.png +../../data/yoloGtold1/train/24047.png +../../data/yoloGtold1/train/24048.png +../../data/yoloGtold1/train/24049.png +../../data/yoloGtold1/train/24050.png +../../data/yoloGtold1/train/24051.png +../../data/yoloGtold1/train/24052.png +../../data/yoloGtold1/train/24053.png +../../data/yoloGtold1/train/24054.png +../../data/yoloGtold1/train/24055.png +../../data/yoloGtold1/train/24056.png +../../data/yoloGtold1/train/24057.png +../../data/yoloGtold1/train/24058.png +../../data/yoloGtold1/train/24059.png +../../data/yoloGtold1/train/24060.png +../../data/yoloGtold1/train/24061.png +../../data/yoloGtold1/train/24062.png +../../data/yoloGtold1/train/24063.png +../../data/yoloGtold1/train/24064.png +../../data/yoloGtold1/train/24065.png +../../data/yoloGtold1/train/24066.png +../../data/yoloGtold1/train/24067.png +../../data/yoloGtold1/train/24068.png +../../data/yoloGtold1/train/24069.png +../../data/yoloGtold1/train/24070.png +../../data/yoloGtold1/train/24071.png +../../data/yoloGtold1/train/24072.png +../../data/yoloGtold1/train/24073.png +../../data/yoloGtold1/train/24074.png +../../data/yoloGtold1/train/24075.png +../../data/yoloGtold1/train/24076.png +../../data/yoloGtold1/train/24077.png +../../data/yoloGtold1/train/24078.png +../../data/yoloGtold1/train/24079.png +../../data/yoloGtold1/train/24080.png +../../data/yoloGtold1/train/24081.png +../../data/yoloGtold1/train/24082.png +../../data/yoloGtold1/train/24083.png +../../data/yoloGtold1/train/24084.png +../../data/yoloGtold1/train/24085.png +../../data/yoloGtold1/train/24086.png +../../data/yoloGtold1/train/24087.png +../../data/yoloGtold1/train/24088.png +../../data/yoloGtold1/train/24089.png +../../data/yoloGtold1/train/24090.png +../../data/yoloGtold1/train/24091.png +../../data/yoloGtold1/train/24092.png +../../data/yoloGtold1/train/24093.png +../../data/yoloGtold1/train/24094.png +../../data/yoloGtold1/train/24095.png +../../data/yoloGtold1/train/24096.png +../../data/yoloGtold1/train/24097.png +../../data/yoloGtold1/train/24098.png +../../data/yoloGtold1/train/24099.png +../../data/yoloGtold1/train/24100.png +../../data/yoloGtold1/train/24101.png +../../data/yoloGtold1/train/24102.png +../../data/yoloGtold1/train/24103.png +../../data/yoloGtold1/train/24104.png +../../data/yoloGtold1/train/24105.png +../../data/yoloGtold1/train/24106.png +../../data/yoloGtold1/train/24107.png +../../data/yoloGtold1/train/24108.png +../../data/yoloGtold1/train/24109.png +../../data/yoloGtold1/train/24110.png +../../data/yoloGtold1/train/24111.png +../../data/yoloGtold1/train/24112.png +../../data/yoloGtold1/train/24113.png +../../data/yoloGtold1/train/24114.png +../../data/yoloGtold1/train/24115.png +../../data/yoloGtold1/train/24116.png +../../data/yoloGtold1/train/24117.png +../../data/yoloGtold1/train/24118.png +../../data/yoloGtold1/train/24119.png +../../data/yoloGtold1/train/24120.png +../../data/yoloGtold1/train/24121.png +../../data/yoloGtold1/train/24122.png +../../data/yoloGtold1/train/24123.png +../../data/yoloGtold1/train/24124.png +../../data/yoloGtold1/train/24125.png +../../data/yoloGtold1/train/24126.png +../../data/yoloGtold1/train/24127.png +../../data/yoloGtold1/train/24128.png +../../data/yoloGtold1/train/24129.png +../../data/yoloGtold1/train/24130.png +../../data/yoloGtold1/train/24131.png +../../data/yoloGtold1/train/24132.png +../../data/yoloGtold1/train/24133.png +../../data/yoloGtold1/train/24134.png +../../data/yoloGtold1/train/24135.png +../../data/yoloGtold1/train/24136.png +../../data/yoloGtold1/train/24137.png +../../data/yoloGtold1/train/24138.png +../../data/yoloGtold1/train/24139.png +../../data/yoloGtold1/train/24140.png +../../data/yoloGtold1/train/24141.png +../../data/yoloGtold1/train/24142.png +../../data/yoloGtold1/train/24143.png +../../data/yoloGtold1/train/24144.png +../../data/yoloGtold1/train/24145.png +../../data/yoloGtold1/train/24146.png +../../data/yoloGtold1/train/24147.png +../../data/yoloGtold1/train/24148.png +../../data/yoloGtold1/train/24149.png +../../data/yoloGtold1/train/24150.png +../../data/yoloGtold1/train/24151.png +../../data/yoloGtold1/train/24152.png +../../data/yoloGtold1/train/24153.png +../../data/yoloGtold1/train/24154.png +../../data/yoloGtold1/train/24155.png +../../data/yoloGtold1/train/24156.png +../../data/yoloGtold1/train/24157.png +../../data/yoloGtold1/train/24158.png +../../data/yoloGtold1/train/24159.png +../../data/yoloGtold1/train/24160.png +../../data/yoloGtold1/train/24161.png +../../data/yoloGtold1/train/24162.png +../../data/yoloGtold1/train/24163.png +../../data/yoloGtold1/train/24164.png +../../data/yoloGtold1/train/24165.png +../../data/yoloGtold1/train/24166.png +../../data/yoloGtold1/train/24167.png +../../data/yoloGtold1/train/24168.png +../../data/yoloGtold1/train/24169.png +../../data/yoloGtold1/train/24170.png +../../data/yoloGtold1/train/24171.png +../../data/yoloGtold1/train/24172.png +../../data/yoloGtold1/train/24173.png +../../data/yoloGtold1/train/24174.png +../../data/yoloGtold1/train/24175.png +../../data/yoloGtold1/train/24176.png +../../data/yoloGtold1/train/24177.png +../../data/yoloGtold1/train/24178.png +../../data/yoloGtold1/train/24179.png +../../data/yoloGtold1/train/24180.png +../../data/yoloGtold1/train/24181.png +../../data/yoloGtold1/train/24182.png +../../data/yoloGtold1/train/24183.png +../../data/yoloGtold1/train/24184.png +../../data/yoloGtold1/train/24185.png +../../data/yoloGtold1/train/24186.png +../../data/yoloGtold1/train/24187.png +../../data/yoloGtold1/train/24188.png +../../data/yoloGtold1/train/24189.png +../../data/yoloGtold1/train/24190.png +../../data/yoloGtold1/train/24191.png +../../data/yoloGtold1/train/24192.png +../../data/yoloGtold1/train/24193.png +../../data/yoloGtold1/train/24194.png +../../data/yoloGtold1/train/24195.png +../../data/yoloGtold1/train/24196.png +../../data/yoloGtold1/train/24197.png +../../data/yoloGtold1/train/24198.png +../../data/yoloGtold1/train/24199.png +../../data/yoloGtold1/train/24200.png +../../data/yoloGtold1/train/24201.png +../../data/yoloGtold1/train/24202.png +../../data/yoloGtold1/train/24203.png +../../data/yoloGtold1/train/24204.png +../../data/yoloGtold1/train/24205.png +../../data/yoloGtold1/train/24206.png +../../data/yoloGtold1/train/24207.png +../../data/yoloGtold1/train/24208.png +../../data/yoloGtold1/train/24209.png +../../data/yoloGtold1/train/24210.png +../../data/yoloGtold1/train/24211.png +../../data/yoloGtold1/train/24212.png +../../data/yoloGtold1/train/24213.png +../../data/yoloGtold1/train/24214.png +../../data/yoloGtold1/train/24215.png +../../data/yoloGtold1/train/24216.png +../../data/yoloGtold1/train/24217.png +../../data/yoloGtold1/train/24218.png +../../data/yoloGtold1/train/24219.png +../../data/yoloGtold1/train/24220.png +../../data/yoloGtold1/train/24221.png +../../data/yoloGtold1/train/24222.png +../../data/yoloGtold1/train/24223.png +../../data/yoloGtold1/train/24224.png +../../data/yoloGtold1/train/24225.png +../../data/yoloGtold1/train/24226.png +../../data/yoloGtold1/train/24227.png +../../data/yoloGtold1/train/24228.png +../../data/yoloGtold1/train/24229.png +../../data/yoloGtold1/train/24230.png +../../data/yoloGtold1/train/24231.png +../../data/yoloGtold1/train/24232.png +../../data/yoloGtold1/train/24233.png +../../data/yoloGtold1/train/24234.png +../../data/yoloGtold1/train/24235.png +../../data/yoloGtold1/train/24236.png +../../data/yoloGtold1/train/24237.png +../../data/yoloGtold1/train/24238.png +../../data/yoloGtold1/train/24239.png +../../data/yoloGtold1/train/24240.png +../../data/yoloGtold1/train/24241.png +../../data/yoloGtold1/train/24242.png +../../data/yoloGtold1/train/24243.png +../../data/yoloGtold1/train/24244.png +../../data/yoloGtold1/train/24245.png +../../data/yoloGtold1/train/24246.png +../../data/yoloGtold1/train/24247.png +../../data/yoloGtold1/train/24248.png +../../data/yoloGtold1/train/24249.png +../../data/yoloGtold1/train/24250.png +../../data/yoloGtold1/train/24251.png +../../data/yoloGtold1/train/24252.png +../../data/yoloGtold1/train/24253.png +../../data/yoloGtold1/train/24254.png +../../data/yoloGtold1/train/24255.png +../../data/yoloGtold1/train/24256.png +../../data/yoloGtold1/train/24257.png +../../data/yoloGtold1/train/24258.png +../../data/yoloGtold1/train/24259.png +../../data/yoloGtold1/train/24260.png +../../data/yoloGtold1/train/24261.png +../../data/yoloGtold1/train/24262.png +../../data/yoloGtold1/train/24263.png +../../data/yoloGtold1/train/24264.png +../../data/yoloGtold1/train/24265.png +../../data/yoloGtold1/train/24266.png +../../data/yoloGtold1/train/24267.png +../../data/yoloGtold1/train/24268.png +../../data/yoloGtold1/train/24269.png +../../data/yoloGtold1/train/24270.png +../../data/yoloGtold1/train/24271.png +../../data/yoloGtold1/train/24272.png +../../data/yoloGtold1/train/24273.png +../../data/yoloGtold1/train/24274.png +../../data/yoloGtold1/train/24275.png +../../data/yoloGtold1/train/24276.png +../../data/yoloGtold1/train/24277.png +../../data/yoloGtold1/train/24278.png +../../data/yoloGtold1/train/24279.png +../../data/yoloGtold1/train/24280.png +../../data/yoloGtold1/train/24281.png +../../data/yoloGtold1/train/24282.png +../../data/yoloGtold1/train/24283.png +../../data/yoloGtold1/train/24284.png +../../data/yoloGtold1/train/24285.png +../../data/yoloGtold1/train/24286.png +../../data/yoloGtold1/train/24287.png +../../data/yoloGtold1/train/24288.png +../../data/yoloGtold1/train/24289.png +../../data/yoloGtold1/train/24290.png +../../data/yoloGtold1/train/24291.png +../../data/yoloGtold1/train/24292.png +../../data/yoloGtold1/train/24293.png +../../data/yoloGtold1/train/24294.png +../../data/yoloGtold1/train/24295.png +../../data/yoloGtold1/train/24296.png +../../data/yoloGtold1/train/24297.png +../../data/yoloGtold1/train/24298.png +../../data/yoloGtold1/train/24299.png +../../data/yoloGtold1/train/24300.png +../../data/yoloGtold1/train/24301.png +../../data/yoloGtold1/train/24302.png +../../data/yoloGtold1/train/24303.png +../../data/yoloGtold1/train/24304.png +../../data/yoloGtold1/train/24305.png +../../data/yoloGtold1/train/24306.png +../../data/yoloGtold1/train/24307.png +../../data/yoloGtold1/train/24308.png +../../data/yoloGtold1/train/24309.png +../../data/yoloGtold1/train/24310.png +../../data/yoloGtold1/train/24311.png +../../data/yoloGtold1/train/24312.png +../../data/yoloGtold1/train/24313.png +../../data/yoloGtold1/train/24314.png +../../data/yoloGtold1/train/24315.png +../../data/yoloGtold1/train/24316.png +../../data/yoloGtold1/train/24317.png +../../data/yoloGtold1/train/24318.png +../../data/yoloGtold1/train/24319.png +../../data/yoloGtold1/train/24320.png +../../data/yoloGtold1/train/24321.png +../../data/yoloGtold1/train/24322.png +../../data/yoloGtold1/train/24323.png +../../data/yoloGtold1/train/24324.png +../../data/yoloGtold1/train/24325.png +../../data/yoloGtold1/train/24326.png +../../data/yoloGtold1/train/24327.png +../../data/yoloGtold1/train/24328.png +../../data/yoloGtold1/train/24329.png +../../data/yoloGtold1/train/24330.png +../../data/yoloGtold1/train/24331.png +../../data/yoloGtold1/train/24332.png +../../data/yoloGtold1/train/24333.png +../../data/yoloGtold1/train/24334.png +../../data/yoloGtold1/train/24335.png +../../data/yoloGtold1/train/24336.png +../../data/yoloGtold1/train/24337.png +../../data/yoloGtold1/train/24338.png +../../data/yoloGtold1/train/24339.png +../../data/yoloGtold1/train/24340.png +../../data/yoloGtold1/train/24341.png +../../data/yoloGtold1/train/24342.png +../../data/yoloGtold1/train/24343.png +../../data/yoloGtold1/train/24344.png +../../data/yoloGtold1/train/24345.png +../../data/yoloGtold1/train/24346.png +../../data/yoloGtold1/train/24347.png +../../data/yoloGtold1/train/24348.png +../../data/yoloGtold1/train/24349.png +../../data/yoloGtold1/train/24350.png +../../data/yoloGtold1/train/24351.png +../../data/yoloGtold1/train/24352.png +../../data/yoloGtold1/train/24353.png +../../data/yoloGtold1/train/24354.png +../../data/yoloGtold1/train/24355.png +../../data/yoloGtold1/train/24356.png +../../data/yoloGtold1/train/24357.png +../../data/yoloGtold1/train/24358.png +../../data/yoloGtold1/train/24359.png +../../data/yoloGtold1/train/24360.png +../../data/yoloGtold1/train/24361.png +../../data/yoloGtold1/train/24362.png +../../data/yoloGtold1/train/24363.png +../../data/yoloGtold1/train/24364.png +../../data/yoloGtold1/train/24365.png +../../data/yoloGtold1/train/24366.png +../../data/yoloGtold1/train/24367.png +../../data/yoloGtold1/train/24368.png +../../data/yoloGtold1/train/24369.png +../../data/yoloGtold1/train/24370.png +../../data/yoloGtold1/train/24371.png +../../data/yoloGtold1/train/24372.png +../../data/yoloGtold1/train/24373.png +../../data/yoloGtold1/train/24374.png +../../data/yoloGtold1/train/24375.png +../../data/yoloGtold1/train/24376.png +../../data/yoloGtold1/train/24377.png +../../data/yoloGtold1/train/24378.png +../../data/yoloGtold1/train/24379.png +../../data/yoloGtold1/train/24380.png +../../data/yoloGtold1/train/24381.png +../../data/yoloGtold1/train/24382.png +../../data/yoloGtold1/train/24383.png +../../data/yoloGtold1/train/24384.png +../../data/yoloGtold1/train/24385.png +../../data/yoloGtold1/train/24386.png +../../data/yoloGtold1/train/24387.png +../../data/yoloGtold1/train/24388.png +../../data/yoloGtold1/train/24389.png +../../data/yoloGtold1/train/24390.png +../../data/yoloGtold1/train/24391.png +../../data/yoloGtold1/train/24392.png +../../data/yoloGtold1/train/24393.png +../../data/yoloGtold1/train/24394.png +../../data/yoloGtold1/train/24395.png +../../data/yoloGtold1/train/24396.png +../../data/yoloGtold1/train/24397.png +../../data/yoloGtold1/train/24398.png +../../data/yoloGtold1/train/24399.png +../../data/yoloGtold1/train/24400.png +../../data/yoloGtold1/train/24401.png +../../data/yoloGtold1/train/24402.png +../../data/yoloGtold1/train/24403.png +../../data/yoloGtold1/train/24404.png +../../data/yoloGtold1/train/24405.png +../../data/yoloGtold1/train/24406.png +../../data/yoloGtold1/train/24407.png +../../data/yoloGtold1/train/24408.png +../../data/yoloGtold1/train/24409.png +../../data/yoloGtold1/train/24410.png +../../data/yoloGtold1/train/24411.png +../../data/yoloGtold1/train/24412.png +../../data/yoloGtold1/train/24413.png +../../data/yoloGtold1/train/24414.png +../../data/yoloGtold1/train/24415.png +../../data/yoloGtold1/train/24416.png +../../data/yoloGtold1/train/24417.png +../../data/yoloGtold1/train/24418.png +../../data/yoloGtold1/train/24419.png +../../data/yoloGtold1/train/24420.png +../../data/yoloGtold1/train/24421.png +../../data/yoloGtold1/train/24422.png +../../data/yoloGtold1/train/24423.png +../../data/yoloGtold1/train/24424.png +../../data/yoloGtold1/train/24425.png +../../data/yoloGtold1/train/24426.png +../../data/yoloGtold1/train/24427.png +../../data/yoloGtold1/train/24428.png +../../data/yoloGtold1/train/24429.png +../../data/yoloGtold1/train/24430.png +../../data/yoloGtold1/train/24431.png +../../data/yoloGtold1/train/24432.png +../../data/yoloGtold1/train/24433.png +../../data/yoloGtold1/train/24434.png +../../data/yoloGtold1/train/24435.png +../../data/yoloGtold1/train/24436.png +../../data/yoloGtold1/train/24437.png +../../data/yoloGtold1/train/24438.png +../../data/yoloGtold1/train/24439.png +../../data/yoloGtold1/train/24440.png +../../data/yoloGtold1/train/24441.png +../../data/yoloGtold1/train/24442.png +../../data/yoloGtold1/train/24443.png +../../data/yoloGtold1/train/24444.png +../../data/yoloGtold1/train/24445.png +../../data/yoloGtold1/train/24446.png +../../data/yoloGtold1/train/24447.png +../../data/yoloGtold1/train/24448.png +../../data/yoloGtold1/train/24449.png +../../data/yoloGtold1/train/24450.png +../../data/yoloGtold1/train/24451.png +../../data/yoloGtold1/train/24452.png +../../data/yoloGtold1/train/24453.png +../../data/yoloGtold1/train/24454.png +../../data/yoloGtold1/train/24455.png +../../data/yoloGtold1/train/24456.png +../../data/yoloGtold1/train/24457.png +../../data/yoloGtold1/train/24458.png +../../data/yoloGtold1/train/24459.png +../../data/yoloGtold1/train/24460.png +../../data/yoloGtold1/train/24461.png +../../data/yoloGtold1/train/24462.png +../../data/yoloGtold1/train/24463.png +../../data/yoloGtold1/train/24464.png +../../data/yoloGtold1/train/24465.png +../../data/yoloGtold1/train/24466.png +../../data/yoloGtold1/train/24467.png +../../data/yoloGtold1/train/24468.png +../../data/yoloGtold1/train/24469.png +../../data/yoloGtold1/train/24470.png +../../data/yoloGtold1/train/24471.png +../../data/yoloGtold1/train/24472.png +../../data/yoloGtold1/train/24473.png +../../data/yoloGtold1/train/24474.png +../../data/yoloGtold1/train/24475.png +../../data/yoloGtold1/train/24476.png +../../data/yoloGtold1/train/24477.png +../../data/yoloGtold1/train/24478.png +../../data/yoloGtold1/train/24479.png +../../data/yoloGtold1/train/24480.png +../../data/yoloGtold1/train/24481.png +../../data/yoloGtold1/train/24482.png +../../data/yoloGtold1/train/24483.png +../../data/yoloGtold1/train/24484.png +../../data/yoloGtold1/train/24485.png +../../data/yoloGtold1/train/24486.png +../../data/yoloGtold1/train/24487.png +../../data/yoloGtold1/train/24488.png +../../data/yoloGtold1/train/24489.png +../../data/yoloGtold1/train/24490.png +../../data/yoloGtold1/train/24491.png +../../data/yoloGtold1/train/24492.png +../../data/yoloGtold1/train/24493.png +../../data/yoloGtold1/train/24494.png +../../data/yoloGtold1/train/24495.png +../../data/yoloGtold1/train/24496.png +../../data/yoloGtold1/train/24497.png +../../data/yoloGtold1/train/24498.png +../../data/yoloGtold1/train/24499.png +../../data/yoloGtold1/train/24500.png +../../data/yoloGtold1/train/24501.png +../../data/yoloGtold1/train/24502.png +../../data/yoloGtold1/train/24503.png +../../data/yoloGtold1/train/24504.png +../../data/yoloGtold1/train/24505.png +../../data/yoloGtold1/train/24506.png +../../data/yoloGtold1/train/24507.png +../../data/yoloGtold1/train/24508.png +../../data/yoloGtold1/train/24509.png +../../data/yoloGtold1/train/24510.png +../../data/yoloGtold1/train/24511.png +../../data/yoloGtold1/train/24512.png +../../data/yoloGtold1/train/24513.png +../../data/yoloGtold1/train/24514.png +../../data/yoloGtold1/train/24515.png +../../data/yoloGtold1/train/24516.png +../../data/yoloGtold1/train/24517.png +../../data/yoloGtold1/train/24518.png +../../data/yoloGtold1/train/24519.png +../../data/yoloGtold1/train/24520.png +../../data/yoloGtold1/train/24521.png +../../data/yoloGtold1/train/24522.png +../../data/yoloGtold1/train/24523.png +../../data/yoloGtold1/train/24524.png +../../data/yoloGtold1/train/24525.png +../../data/yoloGtold1/train/24526.png +../../data/yoloGtold1/train/24527.png +../../data/yoloGtold1/train/24528.png +../../data/yoloGtold1/train/24529.png +../../data/yoloGtold1/train/24530.png +../../data/yoloGtold1/train/24531.png +../../data/yoloGtold1/train/24532.png +../../data/yoloGtold1/train/24533.png +../../data/yoloGtold1/train/24534.png +../../data/yoloGtold1/train/24535.png +../../data/yoloGtold1/train/24536.png +../../data/yoloGtold1/train/24537.png +../../data/yoloGtold1/train/24538.png +../../data/yoloGtold1/train/24539.png +../../data/yoloGtold1/train/24540.png +../../data/yoloGtold1/train/24541.png +../../data/yoloGtold1/train/24542.png +../../data/yoloGtold1/train/24543.png +../../data/yoloGtold1/train/24544.png +../../data/yoloGtold1/train/24545.png +../../data/yoloGtold1/train/24546.png +../../data/yoloGtold1/train/24547.png +../../data/yoloGtold1/train/24548.png +../../data/yoloGtold1/train/24549.png +../../data/yoloGtold1/train/24550.png +../../data/yoloGtold1/train/24551.png +../../data/yoloGtold1/train/24552.png +../../data/yoloGtold1/train/24553.png +../../data/yoloGtold1/train/24554.png +../../data/yoloGtold1/train/24555.png +../../data/yoloGtold1/train/24556.png +../../data/yoloGtold1/train/24557.png +../../data/yoloGtold1/train/24558.png +../../data/yoloGtold1/train/24559.png +../../data/yoloGtold1/train/24560.png +../../data/yoloGtold1/train/24561.png +../../data/yoloGtold1/train/24562.png +../../data/yoloGtold1/train/24563.png +../../data/yoloGtold1/train/24564.png +../../data/yoloGtold1/train/24565.png +../../data/yoloGtold1/train/24566.png +../../data/yoloGtold1/train/24567.png +../../data/yoloGtold1/train/24568.png +../../data/yoloGtold1/train/24569.png +../../data/yoloGtold1/train/24570.png +../../data/yoloGtold1/train/24571.png +../../data/yoloGtold1/train/24572.png +../../data/yoloGtold1/train/24573.png +../../data/yoloGtold1/train/24574.png +../../data/yoloGtold1/train/24575.png +../../data/yoloGtold1/train/24576.png +../../data/yoloGtold1/train/24577.png +../../data/yoloGtold1/train/24578.png +../../data/yoloGtold1/train/24579.png +../../data/yoloGtold1/train/24580.png +../../data/yoloGtold1/train/24581.png +../../data/yoloGtold1/train/24582.png +../../data/yoloGtold1/train/24583.png +../../data/yoloGtold1/train/24584.png +../../data/yoloGtold1/train/24585.png +../../data/yoloGtold1/train/24586.png +../../data/yoloGtold1/train/24587.png +../../data/yoloGtold1/train/24588.png +../../data/yoloGtold1/train/24589.png +../../data/yoloGtold1/train/24590.png +../../data/yoloGtold1/train/24591.png +../../data/yoloGtold1/train/24592.png +../../data/yoloGtold1/train/24593.png +../../data/yoloGtold1/train/24594.png +../../data/yoloGtold1/train/24595.png +../../data/yoloGtold1/train/24596.png +../../data/yoloGtold1/train/24597.png +../../data/yoloGtold1/train/24598.png +../../data/yoloGtold1/train/24599.png +../../data/yoloGtold1/train/24600.png +../../data/yoloGtold1/train/24601.png +../../data/yoloGtold1/train/24602.png +../../data/yoloGtold1/train/24603.png +../../data/yoloGtold1/train/24604.png +../../data/yoloGtold1/train/24605.png +../../data/yoloGtold1/train/24606.png +../../data/yoloGtold1/train/24607.png +../../data/yoloGtold1/train/24608.png +../../data/yoloGtold1/train/24609.png +../../data/yoloGtold1/train/24610.png +../../data/yoloGtold1/train/24611.png +../../data/yoloGtold1/train/24612.png +../../data/yoloGtold1/train/24613.png +../../data/yoloGtold1/train/24614.png +../../data/yoloGtold1/train/24615.png +../../data/yoloGtold1/train/24616.png +../../data/yoloGtold1/train/24617.png +../../data/yoloGtold1/train/24618.png +../../data/yoloGtold1/train/24619.png +../../data/yoloGtold1/train/24620.png +../../data/yoloGtold1/train/24621.png +../../data/yoloGtold1/train/24622.png +../../data/yoloGtold1/train/24623.png +../../data/yoloGtold1/train/24624.png +../../data/yoloGtold1/train/24625.png +../../data/yoloGtold1/train/24626.png +../../data/yoloGtold1/train/24627.png +../../data/yoloGtold1/train/24628.png +../../data/yoloGtold1/train/24629.png +../../data/yoloGtold1/train/24630.png +../../data/yoloGtold1/train/24631.png +../../data/yoloGtold1/train/24632.png +../../data/yoloGtold1/train/24633.png +../../data/yoloGtold1/train/24634.png +../../data/yoloGtold1/train/24635.png +../../data/yoloGtold1/train/24636.png +../../data/yoloGtold1/train/24637.png +../../data/yoloGtold1/train/24638.png +../../data/yoloGtold1/train/24639.png +../../data/yoloGtold1/train/24640.png +../../data/yoloGtold1/train/24641.png +../../data/yoloGtold1/train/24642.png +../../data/yoloGtold1/train/24643.png +../../data/yoloGtold1/train/24644.png +../../data/yoloGtold1/train/24645.png +../../data/yoloGtold1/train/24646.png +../../data/yoloGtold1/train/24647.png +../../data/yoloGtold1/train/24648.png +../../data/yoloGtold1/train/24649.png +../../data/yoloGtold1/train/24650.png +../../data/yoloGtold1/train/24651.png +../../data/yoloGtold1/train/24652.png +../../data/yoloGtold1/train/24653.png +../../data/yoloGtold1/train/24654.png +../../data/yoloGtold1/train/24655.png +../../data/yoloGtold1/train/24656.png +../../data/yoloGtold1/train/24657.png +../../data/yoloGtold1/train/24658.png +../../data/yoloGtold1/train/24659.png +../../data/yoloGtold1/train/24660.png +../../data/yoloGtold1/train/24661.png +../../data/yoloGtold1/train/24662.png +../../data/yoloGtold1/train/24663.png +../../data/yoloGtold1/train/24664.png +../../data/yoloGtold1/train/24665.png +../../data/yoloGtold1/train/24666.png +../../data/yoloGtold1/train/24667.png +../../data/yoloGtold1/train/24668.png +../../data/yoloGtold1/train/24669.png +../../data/yoloGtold1/train/24670.png +../../data/yoloGtold1/train/24671.png +../../data/yoloGtold1/train/24672.png +../../data/yoloGtold1/train/24673.png +../../data/yoloGtold1/train/24674.png +../../data/yoloGtold1/train/24675.png +../../data/yoloGtold1/train/24676.png +../../data/yoloGtold1/train/24677.png +../../data/yoloGtold1/train/24678.png +../../data/yoloGtold1/train/24679.png +../../data/yoloGtold1/train/24680.png +../../data/yoloGtold1/train/24681.png +../../data/yoloGtold1/train/24682.png +../../data/yoloGtold1/train/24683.png +../../data/yoloGtold1/train/24684.png +../../data/yoloGtold1/train/24685.png +../../data/yoloGtold1/train/24686.png +../../data/yoloGtold1/train/24687.png +../../data/yoloGtold1/train/24688.png +../../data/yoloGtold1/train/24689.png +../../data/yoloGtold1/train/24690.png +../../data/yoloGtold1/train/24691.png +../../data/yoloGtold1/train/24692.png +../../data/yoloGtold1/train/24693.png +../../data/yoloGtold1/train/24694.png +../../data/yoloGtold1/train/24695.png +../../data/yoloGtold1/train/24696.png +../../data/yoloGtold1/train/24697.png +../../data/yoloGtold1/train/24698.png +../../data/yoloGtold1/train/24699.png +../../data/yoloGtold1/train/24700.png +../../data/yoloGtold1/train/24701.png +../../data/yoloGtold1/train/24702.png +../../data/yoloGtold1/train/24703.png +../../data/yoloGtold1/train/24704.png +../../data/yoloGtold1/train/24705.png +../../data/yoloGtold1/train/24706.png +../../data/yoloGtold1/train/24707.png +../../data/yoloGtold1/train/24708.png +../../data/yoloGtold1/train/24709.png +../../data/yoloGtold1/train/24710.png +../../data/yoloGtold1/train/24711.png +../../data/yoloGtold1/train/24712.png +../../data/yoloGtold1/train/24713.png +../../data/yoloGtold1/train/24714.png +../../data/yoloGtold1/train/24715.png +../../data/yoloGtold1/train/24716.png +../../data/yoloGtold1/train/24717.png +../../data/yoloGtold1/train/24718.png +../../data/yoloGtold1/train/24719.png +../../data/yoloGtold1/train/24720.png +../../data/yoloGtold1/train/24721.png +../../data/yoloGtold1/train/24722.png +../../data/yoloGtold1/train/24723.png +../../data/yoloGtold1/train/24724.png +../../data/yoloGtold1/train/24725.png +../../data/yoloGtold1/train/24726.png +../../data/yoloGtold1/train/24727.png +../../data/yoloGtold1/train/24728.png +../../data/yoloGtold1/train/24729.png +../../data/yoloGtold1/train/24730.png +../../data/yoloGtold1/train/24731.png +../../data/yoloGtold1/train/24732.png +../../data/yoloGtold1/train/24733.png +../../data/yoloGtold1/train/24734.png +../../data/yoloGtold1/train/24735.png +../../data/yoloGtold1/train/24736.png +../../data/yoloGtold1/train/24737.png +../../data/yoloGtold1/train/24738.png +../../data/yoloGtold1/train/24739.png +../../data/yoloGtold1/train/24740.png +../../data/yoloGtold1/train/24741.png +../../data/yoloGtold1/train/24742.png +../../data/yoloGtold1/train/24743.png +../../data/yoloGtold1/train/24744.png +../../data/yoloGtold1/train/24745.png +../../data/yoloGtold1/train/24746.png +../../data/yoloGtold1/train/24747.png +../../data/yoloGtold1/train/24748.png +../../data/yoloGtold1/train/24749.png +../../data/yoloGtold1/train/24750.png +../../data/yoloGtold1/train/24751.png +../../data/yoloGtold1/train/24752.png +../../data/yoloGtold1/train/24753.png +../../data/yoloGtold1/train/24754.png +../../data/yoloGtold1/train/24755.png +../../data/yoloGtold1/train/24756.png +../../data/yoloGtold1/train/24757.png +../../data/yoloGtold1/train/24758.png +../../data/yoloGtold1/train/24759.png +../../data/yoloGtold1/train/24760.png +../../data/yoloGtold1/train/24761.png +../../data/yoloGtold1/train/24762.png +../../data/yoloGtold1/train/24763.png +../../data/yoloGtold1/train/24764.png +../../data/yoloGtold1/train/24765.png +../../data/yoloGtold1/train/24766.png +../../data/yoloGtold1/train/24767.png +../../data/yoloGtold1/train/24768.png +../../data/yoloGtold1/train/24769.png +../../data/yoloGtold1/train/24770.png +../../data/yoloGtold1/train/24771.png +../../data/yoloGtold1/train/24772.png +../../data/yoloGtold1/train/24773.png +../../data/yoloGtold1/train/24774.png +../../data/yoloGtold1/train/24775.png +../../data/yoloGtold1/train/24776.png +../../data/yoloGtold1/train/24777.png +../../data/yoloGtold1/train/24778.png +../../data/yoloGtold1/train/24779.png +../../data/yoloGtold1/train/24780.png +../../data/yoloGtold1/train/24781.png +../../data/yoloGtold1/train/24782.png +../../data/yoloGtold1/train/24783.png +../../data/yoloGtold1/train/24784.png +../../data/yoloGtold1/train/24785.png +../../data/yoloGtold1/train/24786.png +../../data/yoloGtold1/train/24787.png +../../data/yoloGtold1/train/24788.png +../../data/yoloGtold1/train/24789.png +../../data/yoloGtold1/train/24790.png +../../data/yoloGtold1/train/24791.png +../../data/yoloGtold1/train/24792.png +../../data/yoloGtold1/train/24793.png +../../data/yoloGtold1/train/24794.png +../../data/yoloGtold1/train/24795.png +../../data/yoloGtold1/train/24796.png +../../data/yoloGtold1/train/24797.png +../../data/yoloGtold1/train/24798.png +../../data/yoloGtold1/train/24799.png +../../data/yoloGtold1/train/24800.png +../../data/yoloGtold1/train/24801.png +../../data/yoloGtold1/train/24802.png +../../data/yoloGtold1/train/24803.png +../../data/yoloGtold1/train/24804.png +../../data/yoloGtold1/train/24805.png +../../data/yoloGtold1/train/24806.png +../../data/yoloGtold1/train/24807.png +../../data/yoloGtold1/train/24808.png +../../data/yoloGtold1/train/24809.png +../../data/yoloGtold1/train/24810.png +../../data/yoloGtold1/train/24811.png +../../data/yoloGtold1/train/24812.png +../../data/yoloGtold1/train/24813.png +../../data/yoloGtold1/train/24814.png +../../data/yoloGtold1/train/24815.png +../../data/yoloGtold1/train/24816.png +../../data/yoloGtold1/train/24817.png +../../data/yoloGtold1/train/24818.png +../../data/yoloGtold1/train/24819.png +../../data/yoloGtold1/train/24820.png +../../data/yoloGtold1/train/24821.png +../../data/yoloGtold1/train/24822.png +../../data/yoloGtold1/train/24823.png +../../data/yoloGtold1/train/24824.png +../../data/yoloGtold1/train/24825.png +../../data/yoloGtold1/train/24826.png +../../data/yoloGtold1/train/24827.png +../../data/yoloGtold1/train/24828.png +../../data/yoloGtold1/train/24829.png +../../data/yoloGtold1/train/24830.png +../../data/yoloGtold1/train/24831.png +../../data/yoloGtold1/train/24832.png +../../data/yoloGtold1/train/24833.png +../../data/yoloGtold1/train/24834.png +../../data/yoloGtold1/train/24835.png +../../data/yoloGtold1/train/24836.png +../../data/yoloGtold1/train/24837.png +../../data/yoloGtold1/train/24838.png +../../data/yoloGtold1/train/24839.png +../../data/yoloGtold1/train/24840.png +../../data/yoloGtold1/train/24841.png +../../data/yoloGtold1/train/24842.png +../../data/yoloGtold1/train/24843.png +../../data/yoloGtold1/train/24844.png +../../data/yoloGtold1/train/24845.png +../../data/yoloGtold1/train/24846.png +../../data/yoloGtold1/train/24847.png +../../data/yoloGtold1/train/24848.png +../../data/yoloGtold1/train/24849.png +../../data/yoloGtold1/train/24850.png +../../data/yoloGtold1/train/24851.png +../../data/yoloGtold1/train/24852.png +../../data/yoloGtold1/train/24853.png +../../data/yoloGtold1/train/24854.png +../../data/yoloGtold1/train/24855.png +../../data/yoloGtold1/train/24856.png +../../data/yoloGtold1/train/24857.png +../../data/yoloGtold1/train/24858.png +../../data/yoloGtold1/train/24859.png +../../data/yoloGtold1/train/24860.png +../../data/yoloGtold1/train/24861.png +../../data/yoloGtold1/train/24862.png +../../data/yoloGtold1/train/24863.png +../../data/yoloGtold1/train/24864.png +../../data/yoloGtold1/train/24865.png +../../data/yoloGtold1/train/24866.png +../../data/yoloGtold1/train/24867.png +../../data/yoloGtold1/train/24868.png +../../data/yoloGtold1/train/24869.png +../../data/yoloGtold1/train/24870.png +../../data/yoloGtold1/train/24871.png +../../data/yoloGtold1/train/24872.png +../../data/yoloGtold1/train/24873.png +../../data/yoloGtold1/train/24874.png +../../data/yoloGtold1/train/24875.png +../../data/yoloGtold1/train/24876.png +../../data/yoloGtold1/train/24877.png +../../data/yoloGtold1/train/24878.png +../../data/yoloGtold1/train/24879.png +../../data/yoloGtold1/train/24880.png +../../data/yoloGtold1/train/24881.png +../../data/yoloGtold1/train/24882.png +../../data/yoloGtold1/train/24883.png +../../data/yoloGtold1/train/24884.png +../../data/yoloGtold1/train/24885.png +../../data/yoloGtold1/train/24886.png +../../data/yoloGtold1/train/24887.png +../../data/yoloGtold1/train/24888.png +../../data/yoloGtold1/train/24889.png +../../data/yoloGtold1/train/24890.png +../../data/yoloGtold1/train/24891.png +../../data/yoloGtold1/train/24892.png +../../data/yoloGtold1/train/24893.png +../../data/yoloGtold1/train/24894.png +../../data/yoloGtold1/train/24895.png +../../data/yoloGtold1/train/24896.png +../../data/yoloGtold1/train/24897.png +../../data/yoloGtold1/train/24898.png +../../data/yoloGtold1/train/24899.png +../../data/yoloGtold1/train/24900.png +../../data/yoloGtold1/train/24901.png +../../data/yoloGtold1/train/24902.png +../../data/yoloGtold1/train/24903.png +../../data/yoloGtold1/train/24904.png +../../data/yoloGtold1/train/24905.png +../../data/yoloGtold1/train/24906.png +../../data/yoloGtold1/train/24907.png +../../data/yoloGtold1/train/24908.png +../../data/yoloGtold1/train/24909.png +../../data/yoloGtold1/train/24910.png +../../data/yoloGtold1/train/24911.png +../../data/yoloGtold1/train/24912.png +../../data/yoloGtold1/train/24913.png +../../data/yoloGtold1/train/24914.png +../../data/yoloGtold1/train/24915.png +../../data/yoloGtold1/train/24916.png +../../data/yoloGtold1/train/24917.png +../../data/yoloGtold1/train/24918.png +../../data/yoloGtold1/train/24919.png +../../data/yoloGtold1/train/24920.png +../../data/yoloGtold1/train/24921.png +../../data/yoloGtold1/train/24922.png +../../data/yoloGtold1/train/24923.png +../../data/yoloGtold1/train/24924.png +../../data/yoloGtold1/train/24925.png +../../data/yoloGtold1/train/24926.png +../../data/yoloGtold1/train/24927.png +../../data/yoloGtold1/train/24928.png +../../data/yoloGtold1/train/24929.png +../../data/yoloGtold1/train/24930.png +../../data/yoloGtold1/train/24931.png +../../data/yoloGtold1/train/24932.png +../../data/yoloGtold1/train/24933.png +../../data/yoloGtold1/train/24934.png +../../data/yoloGtold1/train/24935.png +../../data/yoloGtold1/train/24936.png +../../data/yoloGtold1/train/24937.png +../../data/yoloGtold1/train/24938.png +../../data/yoloGtold1/train/24939.png +../../data/yoloGtold1/train/24940.png +../../data/yoloGtold1/train/24941.png +../../data/yoloGtold1/train/24942.png +../../data/yoloGtold1/train/24943.png +../../data/yoloGtold1/train/24944.png +../../data/yoloGtold1/train/24945.png +../../data/yoloGtold1/train/24946.png +../../data/yoloGtold1/train/24947.png +../../data/yoloGtold1/train/24948.png +../../data/yoloGtold1/train/24949.png +../../data/yoloGtold1/train/24950.png +../../data/yoloGtold1/train/24951.png +../../data/yoloGtold1/train/24952.png +../../data/yoloGtold1/train/24953.png +../../data/yoloGtold1/train/24954.png +../../data/yoloGtold1/train/24955.png +../../data/yoloGtold1/train/24956.png +../../data/yoloGtold1/train/24957.png +../../data/yoloGtold1/train/24958.png +../../data/yoloGtold1/train/24959.png +../../data/yoloGtold1/train/24960.png +../../data/yoloGtold1/train/24961.png +../../data/yoloGtold1/train/24962.png +../../data/yoloGtold1/train/24963.png +../../data/yoloGtold1/train/24964.png +../../data/yoloGtold1/train/24965.png +../../data/yoloGtold1/train/24966.png +../../data/yoloGtold1/train/24967.png +../../data/yoloGtold1/train/24968.png +../../data/yoloGtold1/train/24969.png +../../data/yoloGtold1/train/24970.png +../../data/yoloGtold1/train/24971.png +../../data/yoloGtold1/train/24972.png +../../data/yoloGtold1/train/24973.png +../../data/yoloGtold1/train/24974.png +../../data/yoloGtold1/train/24975.png +../../data/yoloGtold1/train/24976.png +../../data/yoloGtold1/train/24977.png +../../data/yoloGtold1/train/24978.png +../../data/yoloGtold1/train/24979.png +../../data/yoloGtold1/train/24980.png +../../data/yoloGtold1/train/24981.png +../../data/yoloGtold1/train/24982.png +../../data/yoloGtold1/train/24983.png +../../data/yoloGtold1/train/24984.png +../../data/yoloGtold1/train/24985.png +../../data/yoloGtold1/train/24986.png +../../data/yoloGtold1/train/24987.png +../../data/yoloGtold1/train/24988.png +../../data/yoloGtold1/train/24989.png +../../data/yoloGtold1/train/24990.png +../../data/yoloGtold1/train/24991.png +../../data/yoloGtold1/train/24992.png +../../data/yoloGtold1/train/24993.png +../../data/yoloGtold1/train/24994.png +../../data/yoloGtold1/train/24995.png +../../data/yoloGtold1/train/24996.png +../../data/yoloGtold1/train/24997.png +../../data/yoloGtold1/train/24998.png +../../data/yoloGtold1/train/24999.png +../../data/yoloGtold1/train/25000.png +../../data/yoloGtold1/train/25001.png +../../data/yoloGtold1/train/25002.png +../../data/yoloGtold1/train/25003.png +../../data/yoloGtold1/train/25004.png +../../data/yoloGtold1/train/25005.png +../../data/yoloGtold1/train/25006.png +../../data/yoloGtold1/train/25007.png +../../data/yoloGtold1/train/25008.png +../../data/yoloGtold1/train/25009.png +../../data/yoloGtold1/train/25010.png +../../data/yoloGtold1/train/25011.png +../../data/yoloGtold1/train/25012.png +../../data/yoloGtold1/train/25013.png +../../data/yoloGtold1/train/25014.png +../../data/yoloGtold1/train/25015.png +../../data/yoloGtold1/train/25016.png +../../data/yoloGtold1/train/25017.png +../../data/yoloGtold1/train/25018.png +../../data/yoloGtold1/train/25019.png +../../data/yoloGtold1/train/25020.png +../../data/yoloGtold1/train/25021.png +../../data/yoloGtold1/train/25022.png +../../data/yoloGtold1/train/25023.png +../../data/yoloGtold1/train/25024.png +../../data/yoloGtold1/train/25025.png +../../data/yoloGtold1/train/25026.png +../../data/yoloGtold1/train/25027.png +../../data/yoloGtold1/train/25028.png +../../data/yoloGtold1/train/25029.png +../../data/yoloGtold1/train/25030.png +../../data/yoloGtold1/train/25031.png +../../data/yoloGtold1/train/25032.png +../../data/yoloGtold1/train/25033.png +../../data/yoloGtold1/train/25034.png +../../data/yoloGtold1/train/25035.png +../../data/yoloGtold1/train/25036.png +../../data/yoloGtold1/train/25037.png +../../data/yoloGtold1/train/25038.png +../../data/yoloGtold1/train/25039.png +../../data/yoloGtold1/train/25040.png +../../data/yoloGtold1/train/25041.png +../../data/yoloGtold1/train/25042.png +../../data/yoloGtold1/train/25043.png +../../data/yoloGtold1/train/25044.png +../../data/yoloGtold1/train/25045.png +../../data/yoloGtold1/train/25046.png +../../data/yoloGtold1/train/25047.png +../../data/yoloGtold1/train/25048.png +../../data/yoloGtold1/train/25049.png +../../data/yoloGtold1/train/25050.png +../../data/yoloGtold1/train/25051.png +../../data/yoloGtold1/train/25052.png +../../data/yoloGtold1/train/25053.png +../../data/yoloGtold1/train/25054.png +../../data/yoloGtold1/train/25055.png +../../data/yoloGtold1/train/25056.png +../../data/yoloGtold1/train/25057.png +../../data/yoloGtold1/train/25058.png +../../data/yoloGtold1/train/25059.png +../../data/yoloGtold1/train/25060.png +../../data/yoloGtold1/train/25061.png +../../data/yoloGtold1/train/25062.png +../../data/yoloGtold1/train/25063.png +../../data/yoloGtold1/train/25064.png +../../data/yoloGtold1/train/25065.png +../../data/yoloGtold1/train/25066.png +../../data/yoloGtold1/train/25067.png +../../data/yoloGtold1/train/25068.png +../../data/yoloGtold1/train/25069.png +../../data/yoloGtold1/train/25070.png +../../data/yoloGtold1/train/25071.png +../../data/yoloGtold1/train/25072.png +../../data/yoloGtold1/train/25073.png +../../data/yoloGtold1/train/25074.png +../../data/yoloGtold1/train/25075.png +../../data/yoloGtold1/train/25076.png +../../data/yoloGtold1/train/25077.png +../../data/yoloGtold1/train/25078.png +../../data/yoloGtold1/train/25079.png +../../data/yoloGtold1/train/25080.png +../../data/yoloGtold1/train/25081.png +../../data/yoloGtold1/train/25082.png +../../data/yoloGtold1/train/25083.png +../../data/yoloGtold1/train/25084.png +../../data/yoloGtold1/train/25085.png +../../data/yoloGtold1/train/25086.png +../../data/yoloGtold1/train/25087.png +../../data/yoloGtold1/train/25088.png +../../data/yoloGtold1/train/25089.png +../../data/yoloGtold1/train/25090.png +../../data/yoloGtold1/train/25091.png +../../data/yoloGtold1/train/25092.png +../../data/yoloGtold1/train/25093.png +../../data/yoloGtold1/train/25094.png +../../data/yoloGtold1/train/25095.png +../../data/yoloGtold1/train/25096.png +../../data/yoloGtold1/train/25097.png +../../data/yoloGtold1/train/25098.png +../../data/yoloGtold1/train/25099.png +../../data/yoloGtold1/train/25100.png +../../data/yoloGtold1/train/25101.png +../../data/yoloGtold1/train/25102.png +../../data/yoloGtold1/train/25103.png +../../data/yoloGtold1/train/25104.png +../../data/yoloGtold1/train/25105.png +../../data/yoloGtold1/train/25106.png +../../data/yoloGtold1/train/25107.png +../../data/yoloGtold1/train/25108.png +../../data/yoloGtold1/train/25109.png +../../data/yoloGtold1/train/25110.png +../../data/yoloGtold1/train/25111.png +../../data/yoloGtold1/train/25112.png +../../data/yoloGtold1/train/25113.png +../../data/yoloGtold1/train/25114.png +../../data/yoloGtold1/train/25115.png +../../data/yoloGtold1/train/25116.png +../../data/yoloGtold1/train/25117.png +../../data/yoloGtold1/train/25118.png +../../data/yoloGtold1/train/25119.png +../../data/yoloGtold1/train/25120.png +../../data/yoloGtold1/train/25121.png +../../data/yoloGtold1/train/25122.png +../../data/yoloGtold1/train/25123.png +../../data/yoloGtold1/train/25124.png +../../data/yoloGtold1/train/25125.png +../../data/yoloGtold1/train/25126.png +../../data/yoloGtold1/train/25127.png +../../data/yoloGtold1/train/25128.png +../../data/yoloGtold1/train/25129.png +../../data/yoloGtold1/train/25130.png +../../data/yoloGtold1/train/25131.png +../../data/yoloGtold1/train/25132.png +../../data/yoloGtold1/train/25133.png +../../data/yoloGtold1/train/25134.png +../../data/yoloGtold1/train/25135.png +../../data/yoloGtold1/train/25136.png +../../data/yoloGtold1/train/25137.png +../../data/yoloGtold1/train/25138.png +../../data/yoloGtold1/train/25139.png +../../data/yoloGtold1/train/25140.png +../../data/yoloGtold1/train/25141.png +../../data/yoloGtold1/train/25142.png +../../data/yoloGtold1/train/25143.png +../../data/yoloGtold1/train/25144.png +../../data/yoloGtold1/train/25145.png +../../data/yoloGtold1/train/25146.png +../../data/yoloGtold1/train/25147.png +../../data/yoloGtold1/train/25148.png +../../data/yoloGtold1/train/25149.png +../../data/yoloGtold1/train/25150.png +../../data/yoloGtold1/train/25151.png +../../data/yoloGtold1/train/25152.png +../../data/yoloGtold1/train/25153.png +../../data/yoloGtold1/train/25154.png +../../data/yoloGtold1/train/25155.png +../../data/yoloGtold1/train/25156.png +../../data/yoloGtold1/train/25157.png +../../data/yoloGtold1/train/25158.png +../../data/yoloGtold1/train/25159.png +../../data/yoloGtold1/train/25160.png +../../data/yoloGtold1/train/25161.png +../../data/yoloGtold1/train/25162.png +../../data/yoloGtold1/train/25163.png +../../data/yoloGtold1/train/25164.png +../../data/yoloGtold1/train/25165.png +../../data/yoloGtold1/train/25166.png +../../data/yoloGtold1/train/25167.png +../../data/yoloGtold1/train/25168.png +../../data/yoloGtold1/train/25169.png +../../data/yoloGtold1/train/25170.png +../../data/yoloGtold1/train/25171.png +../../data/yoloGtold1/train/25172.png +../../data/yoloGtold1/train/25173.png +../../data/yoloGtold1/train/25174.png +../../data/yoloGtold1/train/25175.png +../../data/yoloGtold1/train/25176.png +../../data/yoloGtold1/train/25177.png +../../data/yoloGtold1/train/25178.png +../../data/yoloGtold1/train/25179.png +../../data/yoloGtold1/train/25180.png +../../data/yoloGtold1/train/25181.png +../../data/yoloGtold1/train/25182.png +../../data/yoloGtold1/train/25183.png +../../data/yoloGtold1/train/25184.png +../../data/yoloGtold1/train/25185.png +../../data/yoloGtold1/train/25186.png +../../data/yoloGtold1/train/25187.png +../../data/yoloGtold1/train/25188.png +../../data/yoloGtold1/train/25189.png +../../data/yoloGtold1/train/25190.png +../../data/yoloGtold1/train/25191.png +../../data/yoloGtold1/train/25192.png +../../data/yoloGtold1/train/25193.png +../../data/yoloGtold1/train/25194.png +../../data/yoloGtold1/train/25195.png +../../data/yoloGtold1/train/25196.png +../../data/yoloGtold1/train/25197.png +../../data/yoloGtold1/train/25198.png +../../data/yoloGtold1/train/25199.png +../../data/yoloGtold1/train/25200.png +../../data/yoloGtold1/train/25201.png +../../data/yoloGtold1/train/25202.png +../../data/yoloGtold1/train/25203.png +../../data/yoloGtold1/train/25204.png +../../data/yoloGtold1/train/25205.png +../../data/yoloGtold1/train/25206.png +../../data/yoloGtold1/train/25207.png +../../data/yoloGtold1/train/25208.png +../../data/yoloGtold1/train/25209.png +../../data/yoloGtold1/train/25210.png +../../data/yoloGtold1/train/25211.png +../../data/yoloGtold1/train/25212.png +../../data/yoloGtold1/train/25213.png +../../data/yoloGtold1/train/25214.png +../../data/yoloGtold1/train/25215.png +../../data/yoloGtold1/train/25216.png +../../data/yoloGtold1/train/25217.png +../../data/yoloGtold1/train/25218.png +../../data/yoloGtold1/train/25219.png +../../data/yoloGtold1/train/25220.png +../../data/yoloGtold1/train/25221.png +../../data/yoloGtold1/train/25222.png +../../data/yoloGtold1/train/25223.png +../../data/yoloGtold1/train/25224.png +../../data/yoloGtold1/train/25225.png +../../data/yoloGtold1/train/25226.png +../../data/yoloGtold1/train/25227.png +../../data/yoloGtold1/train/25228.png +../../data/yoloGtold1/train/25229.png +../../data/yoloGtold1/train/25230.png +../../data/yoloGtold1/train/25231.png +../../data/yoloGtold1/train/25232.png +../../data/yoloGtold1/train/25233.png +../../data/yoloGtold1/train/25234.png +../../data/yoloGtold1/train/25235.png +../../data/yoloGtold1/train/25236.png +../../data/yoloGtold1/train/25237.png +../../data/yoloGtold1/train/25238.png +../../data/yoloGtold1/train/25239.png +../../data/yoloGtold1/train/25240.png +../../data/yoloGtold1/train/25241.png +../../data/yoloGtold1/train/25242.png +../../data/yoloGtold1/train/25243.png +../../data/yoloGtold1/train/25244.png +../../data/yoloGtold1/train/25245.png +../../data/yoloGtold1/train/25246.png +../../data/yoloGtold1/train/25247.png +../../data/yoloGtold1/train/25248.png +../../data/yoloGtold1/train/25249.png +../../data/yoloGtold1/train/25250.png +../../data/yoloGtold1/train/25251.png +../../data/yoloGtold1/train/25252.png +../../data/yoloGtold1/train/25253.png +../../data/yoloGtold1/train/25254.png +../../data/yoloGtold1/train/25255.png +../../data/yoloGtold1/train/25256.png +../../data/yoloGtold1/train/25257.png +../../data/yoloGtold1/train/25258.png +../../data/yoloGtold1/train/25259.png +../../data/yoloGtold1/train/25260.png +../../data/yoloGtold1/train/25261.png +../../data/yoloGtold1/train/25262.png +../../data/yoloGtold1/train/25263.png +../../data/yoloGtold1/train/25264.png +../../data/yoloGtold1/train/25265.png +../../data/yoloGtold1/train/25266.png +../../data/yoloGtold1/train/25267.png +../../data/yoloGtold1/train/25268.png +../../data/yoloGtold1/train/25269.png +../../data/yoloGtold1/train/25270.png +../../data/yoloGtold1/train/25271.png +../../data/yoloGtold1/train/25272.png +../../data/yoloGtold1/train/25273.png +../../data/yoloGtold1/train/25274.png +../../data/yoloGtold1/train/25275.png +../../data/yoloGtold1/train/25276.png +../../data/yoloGtold1/train/25277.png +../../data/yoloGtold1/train/25278.png +../../data/yoloGtold1/train/25279.png +../../data/yoloGtold1/train/25280.png +../../data/yoloGtold1/train/25281.png +../../data/yoloGtold1/train/25282.png +../../data/yoloGtold1/train/25283.png +../../data/yoloGtold1/train/25284.png +../../data/yoloGtold1/train/25285.png +../../data/yoloGtold1/train/25286.png +../../data/yoloGtold1/train/25287.png +../../data/yoloGtold1/train/25288.png +../../data/yoloGtold1/train/25289.png +../../data/yoloGtold1/train/25290.png +../../data/yoloGtold1/train/25291.png +../../data/yoloGtold1/train/25292.png +../../data/yoloGtold1/train/25293.png +../../data/yoloGtold1/train/25294.png +../../data/yoloGtold1/train/25295.png +../../data/yoloGtold1/train/25296.png +../../data/yoloGtold1/train/25297.png +../../data/yoloGtold1/train/25298.png +../../data/yoloGtold1/train/25299.png +../../data/yoloGtold1/train/25300.png +../../data/yoloGtold1/train/25301.png +../../data/yoloGtold1/train/25302.png +../../data/yoloGtold1/train/25303.png +../../data/yoloGtold1/train/25304.png +../../data/yoloGtold1/train/25305.png +../../data/yoloGtold1/train/25306.png +../../data/yoloGtold1/train/25307.png +../../data/yoloGtold1/train/25308.png +../../data/yoloGtold1/train/25309.png +../../data/yoloGtold1/train/25310.png +../../data/yoloGtold1/train/25311.png +../../data/yoloGtold1/train/25312.png +../../data/yoloGtold1/train/25313.png +../../data/yoloGtold1/train/25314.png +../../data/yoloGtold1/train/25315.png +../../data/yoloGtold1/train/25316.png +../../data/yoloGtold1/train/25317.png +../../data/yoloGtold1/train/25318.png +../../data/yoloGtold1/train/25319.png +../../data/yoloGtold1/train/25320.png +../../data/yoloGtold1/train/25321.png +../../data/yoloGtold1/train/25322.png +../../data/yoloGtold1/train/25323.png +../../data/yoloGtold1/train/25324.png +../../data/yoloGtold1/train/25325.png +../../data/yoloGtold1/train/25326.png +../../data/yoloGtold1/train/25327.png +../../data/yoloGtold1/train/25328.png +../../data/yoloGtold1/train/25329.png +../../data/yoloGtold1/train/25330.png +../../data/yoloGtold1/train/25331.png +../../data/yoloGtold1/train/25332.png +../../data/yoloGtold1/train/25333.png +../../data/yoloGtold1/train/25334.png +../../data/yoloGtold1/train/25335.png +../../data/yoloGtold1/train/25336.png +../../data/yoloGtold1/train/25337.png +../../data/yoloGtold1/train/25338.png +../../data/yoloGtold1/train/25339.png +../../data/yoloGtold1/train/25340.png +../../data/yoloGtold1/train/25341.png +../../data/yoloGtold1/train/25342.png +../../data/yoloGtold1/train/25343.png +../../data/yoloGtold1/train/25344.png +../../data/yoloGtold1/train/25345.png +../../data/yoloGtold1/train/25346.png +../../data/yoloGtold1/train/25347.png +../../data/yoloGtold1/train/25348.png +../../data/yoloGtold1/train/25349.png +../../data/yoloGtold1/train/25350.png +../../data/yoloGtold1/train/25351.png +../../data/yoloGtold1/train/25352.png +../../data/yoloGtold1/train/25353.png +../../data/yoloGtold1/train/25354.png +../../data/yoloGtold1/train/25355.png +../../data/yoloGtold1/train/25356.png +../../data/yoloGtold1/train/25357.png +../../data/yoloGtold1/train/25358.png +../../data/yoloGtold1/train/25359.png +../../data/yoloGtold1/train/25360.png +../../data/yoloGtold1/train/25361.png +../../data/yoloGtold1/train/25362.png +../../data/yoloGtold1/train/25363.png +../../data/yoloGtold1/train/25364.png +../../data/yoloGtold1/train/25365.png +../../data/yoloGtold1/train/25366.png +../../data/yoloGtold1/train/25367.png +../../data/yoloGtold1/train/25368.png +../../data/yoloGtold1/train/25369.png +../../data/yoloGtold1/train/25370.png +../../data/yoloGtold1/train/25371.png +../../data/yoloGtold1/train/25372.png +../../data/yoloGtold1/train/25373.png +../../data/yoloGtold1/train/25374.png +../../data/yoloGtold1/train/25375.png +../../data/yoloGtold1/train/25376.png +../../data/yoloGtold1/train/25377.png +../../data/yoloGtold1/train/25378.png +../../data/yoloGtold1/train/25379.png +../../data/yoloGtold1/train/25380.png +../../data/yoloGtold1/train/25381.png +../../data/yoloGtold1/train/25382.png +../../data/yoloGtold1/train/25383.png +../../data/yoloGtold1/train/25384.png +../../data/yoloGtold1/train/25385.png +../../data/yoloGtold1/train/25386.png +../../data/yoloGtold1/train/25387.png +../../data/yoloGtold1/train/25388.png +../../data/yoloGtold1/train/25389.png +../../data/yoloGtold1/train/25390.png +../../data/yoloGtold1/train/25391.png +../../data/yoloGtold1/train/25392.png +../../data/yoloGtold1/train/25393.png +../../data/yoloGtold1/train/25394.png +../../data/yoloGtold1/train/25395.png +../../data/yoloGtold1/train/25396.png +../../data/yoloGtold1/train/25397.png +../../data/yoloGtold1/train/25398.png +../../data/yoloGtold1/train/25399.png +../../data/yoloGtold1/train/25400.png +../../data/yoloGtold1/train/25401.png +../../data/yoloGtold1/train/25402.png +../../data/yoloGtold1/train/25403.png +../../data/yoloGtold1/train/25404.png +../../data/yoloGtold1/train/25405.png +../../data/yoloGtold1/train/25406.png +../../data/yoloGtold1/train/25407.png +../../data/yoloGtold1/train/25408.png +../../data/yoloGtold1/train/25409.png +../../data/yoloGtold1/train/25410.png +../../data/yoloGtold1/train/25411.png +../../data/yoloGtold1/train/25412.png +../../data/yoloGtold1/train/25413.png +../../data/yoloGtold1/train/25414.png +../../data/yoloGtold1/train/25415.png +../../data/yoloGtold1/train/25416.png +../../data/yoloGtold1/train/25417.png +../../data/yoloGtold1/train/25418.png +../../data/yoloGtold1/train/25419.png +../../data/yoloGtold1/train/25420.png +../../data/yoloGtold1/train/25421.png +../../data/yoloGtold1/train/25422.png +../../data/yoloGtold1/train/25423.png +../../data/yoloGtold1/train/25424.png +../../data/yoloGtold1/train/25425.png +../../data/yoloGtold1/train/25426.png +../../data/yoloGtold1/train/25427.png +../../data/yoloGtold1/train/25428.png +../../data/yoloGtold1/train/25429.png +../../data/yoloGtold1/train/25430.png +../../data/yoloGtold1/train/25431.png +../../data/yoloGtold1/train/25432.png +../../data/yoloGtold1/train/25433.png +../../data/yoloGtold1/train/25434.png +../../data/yoloGtold1/train/25435.png +../../data/yoloGtold1/train/25436.png +../../data/yoloGtold1/train/25437.png +../../data/yoloGtold1/train/25438.png +../../data/yoloGtold1/train/25439.png +../../data/yoloGtold1/train/25440.png +../../data/yoloGtold1/train/25441.png +../../data/yoloGtold1/train/25442.png +../../data/yoloGtold1/train/25443.png +../../data/yoloGtold1/train/25444.png +../../data/yoloGtold1/train/25445.png +../../data/yoloGtold1/train/25446.png +../../data/yoloGtold1/train/25447.png +../../data/yoloGtold1/train/25448.png +../../data/yoloGtold1/train/25449.png +../../data/yoloGtold1/train/25450.png +../../data/yoloGtold1/train/25451.png +../../data/yoloGtold1/train/25452.png +../../data/yoloGtold1/train/25453.png +../../data/yoloGtold1/train/25454.png +../../data/yoloGtold1/train/25455.png +../../data/yoloGtold1/train/25456.png +../../data/yoloGtold1/train/25457.png +../../data/yoloGtold1/train/25458.png +../../data/yoloGtold1/train/25459.png +../../data/yoloGtold1/train/25460.png +../../data/yoloGtold1/train/25461.png +../../data/yoloGtold1/train/25462.png +../../data/yoloGtold1/train/25463.png +../../data/yoloGtold1/train/25464.png +../../data/yoloGtold1/train/25465.png +../../data/yoloGtold1/train/25466.png +../../data/yoloGtold1/train/25467.png +../../data/yoloGtold1/train/25468.png +../../data/yoloGtold1/train/25469.png +../../data/yoloGtold1/train/25470.png +../../data/yoloGtold1/train/25471.png +../../data/yoloGtold1/train/25472.png +../../data/yoloGtold1/train/25473.png +../../data/yoloGtold1/train/25474.png +../../data/yoloGtold1/train/25475.png +../../data/yoloGtold1/train/25476.png +../../data/yoloGtold1/train/25477.png +../../data/yoloGtold1/train/25478.png +../../data/yoloGtold1/train/25479.png +../../data/yoloGtold1/train/25480.png +../../data/yoloGtold1/train/25481.png +../../data/yoloGtold1/train/25482.png +../../data/yoloGtold1/train/25483.png +../../data/yoloGtold1/train/25484.png +../../data/yoloGtold1/train/25485.png +../../data/yoloGtold1/train/25486.png +../../data/yoloGtold1/train/25487.png +../../data/yoloGtold1/train/25488.png +../../data/yoloGtold1/train/25489.png +../../data/yoloGtold1/train/25490.png +../../data/yoloGtold1/train/25491.png +../../data/yoloGtold1/train/25492.png +../../data/yoloGtold1/train/25493.png +../../data/yoloGtold1/train/25494.png +../../data/yoloGtold1/train/25495.png +../../data/yoloGtold1/train/25496.png +../../data/yoloGtold1/train/25497.png +../../data/yoloGtold1/train/25498.png +../../data/yoloGtold1/train/25499.png +../../data/yoloGtold1/train/25500.png +../../data/yoloGtold1/train/25501.png +../../data/yoloGtold1/train/25502.png +../../data/yoloGtold1/train/25503.png +../../data/yoloGtold1/train/25504.png +../../data/yoloGtold1/train/25505.png +../../data/yoloGtold1/train/25506.png +../../data/yoloGtold1/train/25507.png +../../data/yoloGtold1/train/25508.png +../../data/yoloGtold1/train/25509.png +../../data/yoloGtold1/train/25510.png +../../data/yoloGtold1/train/25511.png +../../data/yoloGtold1/train/25512.png +../../data/yoloGtold1/train/25513.png +../../data/yoloGtold1/train/25514.png +../../data/yoloGtold1/train/25515.png +../../data/yoloGtold1/train/25516.png +../../data/yoloGtold1/train/25517.png +../../data/yoloGtold1/train/25518.png +../../data/yoloGtold1/train/25519.png +../../data/yoloGtold1/train/25520.png +../../data/yoloGtold1/train/25521.png +../../data/yoloGtold1/train/25522.png +../../data/yoloGtold1/train/25523.png +../../data/yoloGtold1/train/25524.png +../../data/yoloGtold1/train/25525.png +../../data/yoloGtold1/train/25526.png +../../data/yoloGtold1/train/25527.png +../../data/yoloGtold1/train/25528.png +../../data/yoloGtold1/train/25529.png +../../data/yoloGtold1/train/25530.png +../../data/yoloGtold1/train/25531.png +../../data/yoloGtold1/train/25532.png +../../data/yoloGtold1/train/25533.png +../../data/yoloGtold1/train/25534.png +../../data/yoloGtold1/train/25535.png +../../data/yoloGtold1/train/25536.png +../../data/yoloGtold1/train/25537.png +../../data/yoloGtold1/train/25538.png +../../data/yoloGtold1/train/25539.png +../../data/yoloGtold1/train/25540.png +../../data/yoloGtold1/train/25541.png +../../data/yoloGtold1/train/25542.png +../../data/yoloGtold1/train/25543.png +../../data/yoloGtold1/train/25544.png +../../data/yoloGtold1/train/25545.png +../../data/yoloGtold1/train/25546.png +../../data/yoloGtold1/train/25547.png +../../data/yoloGtold1/train/25548.png +../../data/yoloGtold1/train/25549.png +../../data/yoloGtold1/train/25550.png +../../data/yoloGtold1/train/25551.png +../../data/yoloGtold1/train/25552.png +../../data/yoloGtold1/train/25553.png +../../data/yoloGtold1/train/25554.png +../../data/yoloGtold1/train/25555.png +../../data/yoloGtold1/train/25556.png +../../data/yoloGtold1/train/25557.png +../../data/yoloGtold1/train/25558.png +../../data/yoloGtold1/train/25559.png +../../data/yoloGtold1/train/25560.png +../../data/yoloGtold1/train/25561.png +../../data/yoloGtold1/train/25562.png +../../data/yoloGtold1/train/25563.png +../../data/yoloGtold1/train/25564.png +../../data/yoloGtold1/train/25565.png +../../data/yoloGtold1/train/25566.png +../../data/yoloGtold1/train/25567.png +../../data/yoloGtold1/train/25568.png +../../data/yoloGtold1/train/25569.png +../../data/yoloGtold1/train/25570.png +../../data/yoloGtold1/train/25571.png +../../data/yoloGtold1/train/25572.png +../../data/yoloGtold1/train/25573.png +../../data/yoloGtold1/train/25574.png +../../data/yoloGtold1/train/25575.png +../../data/yoloGtold1/train/25576.png +../../data/yoloGtold1/train/25577.png +../../data/yoloGtold1/train/25578.png +../../data/yoloGtold1/train/25579.png +../../data/yoloGtold1/train/25580.png +../../data/yoloGtold1/train/25581.png +../../data/yoloGtold1/train/25582.png +../../data/yoloGtold1/train/25583.png +../../data/yoloGtold1/train/25584.png +../../data/yoloGtold1/train/25585.png +../../data/yoloGtold1/train/25586.png +../../data/yoloGtold1/train/25587.png +../../data/yoloGtold1/train/25588.png +../../data/yoloGtold1/train/25589.png +../../data/yoloGtold1/train/25590.png +../../data/yoloGtold1/train/25591.png +../../data/yoloGtold1/train/25592.png +../../data/yoloGtold1/train/25593.png +../../data/yoloGtold1/train/25594.png +../../data/yoloGtold1/train/25595.png +../../data/yoloGtold1/train/25596.png +../../data/yoloGtold1/train/25597.png +../../data/yoloGtold1/train/25598.png +../../data/yoloGtold1/train/25599.png +../../data/yoloGtold1/train/25600.png +../../data/yoloGtold1/train/25601.png +../../data/yoloGtold1/train/25602.png +../../data/yoloGtold1/train/25603.png +../../data/yoloGtold1/train/25604.png +../../data/yoloGtold1/train/25605.png +../../data/yoloGtold1/train/25606.png +../../data/yoloGtold1/train/25607.png +../../data/yoloGtold1/train/25608.png +../../data/yoloGtold1/train/25609.png +../../data/yoloGtold1/train/25610.png +../../data/yoloGtold1/train/25611.png +../../data/yoloGtold1/train/25612.png +../../data/yoloGtold1/train/25613.png +../../data/yoloGtold1/train/25614.png +../../data/yoloGtold1/train/25615.png +../../data/yoloGtold1/train/25616.png +../../data/yoloGtold1/train/25617.png +../../data/yoloGtold1/train/25618.png +../../data/yoloGtold1/train/25619.png +../../data/yoloGtold1/train/25620.png +../../data/yoloGtold1/train/25621.png +../../data/yoloGtold1/train/25622.png +../../data/yoloGtold1/train/25623.png +../../data/yoloGtold1/train/25624.png +../../data/yoloGtold1/train/25625.png +../../data/yoloGtold1/train/25626.png +../../data/yoloGtold1/train/25627.png +../../data/yoloGtold1/train/25628.png +../../data/yoloGtold1/train/25629.png +../../data/yoloGtold1/train/25630.png +../../data/yoloGtold1/train/25631.png +../../data/yoloGtold1/train/25632.png +../../data/yoloGtold1/train/25633.png +../../data/yoloGtold1/train/25634.png +../../data/yoloGtold1/train/25635.png +../../data/yoloGtold1/train/25636.png +../../data/yoloGtold1/train/25637.png +../../data/yoloGtold1/train/25638.png +../../data/yoloGtold1/train/25639.png +../../data/yoloGtold1/train/25640.png +../../data/yoloGtold1/train/25641.png +../../data/yoloGtold1/train/25642.png +../../data/yoloGtold1/train/25643.png +../../data/yoloGtold1/train/25644.png +../../data/yoloGtold1/train/25645.png +../../data/yoloGtold1/train/25646.png +../../data/yoloGtold1/train/25647.png +../../data/yoloGtold1/train/25648.png +../../data/yoloGtold1/train/25649.png +../../data/yoloGtold1/train/25650.png +../../data/yoloGtold1/train/25651.png +../../data/yoloGtold1/train/25652.png +../../data/yoloGtold1/train/25653.png +../../data/yoloGtold1/train/25654.png +../../data/yoloGtold1/train/25655.png +../../data/yoloGtold1/train/25656.png +../../data/yoloGtold1/train/25657.png +../../data/yoloGtold1/train/25658.png +../../data/yoloGtold1/train/25659.png +../../data/yoloGtold1/train/25660.png +../../data/yoloGtold1/train/25661.png +../../data/yoloGtold1/train/25662.png +../../data/yoloGtold1/train/25663.png +../../data/yoloGtold1/train/25664.png +../../data/yoloGtold1/train/25665.png +../../data/yoloGtold1/train/25666.png +../../data/yoloGtold1/train/25667.png +../../data/yoloGtold1/train/25668.png +../../data/yoloGtold1/train/25669.png +../../data/yoloGtold1/train/25670.png +../../data/yoloGtold1/train/25671.png +../../data/yoloGtold1/train/25672.png +../../data/yoloGtold1/train/25673.png +../../data/yoloGtold1/train/25674.png +../../data/yoloGtold1/train/25675.png +../../data/yoloGtold1/train/25676.png +../../data/yoloGtold1/train/25677.png +../../data/yoloGtold1/train/25678.png +../../data/yoloGtold1/train/25679.png +../../data/yoloGtold1/train/25680.png +../../data/yoloGtold1/train/25681.png +../../data/yoloGtold1/train/25682.png +../../data/yoloGtold1/train/25683.png +../../data/yoloGtold1/train/25684.png +../../data/yoloGtold1/train/25685.png +../../data/yoloGtold1/train/25686.png +../../data/yoloGtold1/train/25687.png +../../data/yoloGtold1/train/25688.png +../../data/yoloGtold1/train/25689.png +../../data/yoloGtold1/train/25690.png +../../data/yoloGtold1/train/25691.png +../../data/yoloGtold1/train/25692.png +../../data/yoloGtold1/train/25693.png +../../data/yoloGtold1/train/25694.png +../../data/yoloGtold1/train/25695.png +../../data/yoloGtold1/train/25696.png +../../data/yoloGtold1/train/25697.png +../../data/yoloGtold1/train/25698.png +../../data/yoloGtold1/train/25699.png +../../data/yoloGtold1/train/25700.png +../../data/yoloGtold1/train/25701.png +../../data/yoloGtold1/train/25702.png +../../data/yoloGtold1/train/25703.png +../../data/yoloGtold1/train/25704.png +../../data/yoloGtold1/train/25705.png +../../data/yoloGtold1/train/25706.png +../../data/yoloGtold1/train/25707.png +../../data/yoloGtold1/train/25708.png +../../data/yoloGtold1/train/25709.png +../../data/yoloGtold1/train/25710.png +../../data/yoloGtold1/train/25711.png +../../data/yoloGtold1/train/25712.png +../../data/yoloGtold1/train/25713.png +../../data/yoloGtold1/train/25714.png +../../data/yoloGtold1/train/25715.png +../../data/yoloGtold1/train/25716.png +../../data/yoloGtold1/train/25717.png +../../data/yoloGtold1/train/25718.png +../../data/yoloGtold1/train/25719.png +../../data/yoloGtold1/train/25720.png +../../data/yoloGtold1/train/25721.png +../../data/yoloGtold1/train/25722.png +../../data/yoloGtold1/train/25723.png +../../data/yoloGtold1/train/25724.png +../../data/yoloGtold1/train/25725.png +../../data/yoloGtold1/train/25726.png +../../data/yoloGtold1/train/25727.png +../../data/yoloGtold1/train/25728.png +../../data/yoloGtold1/train/25729.png +../../data/yoloGtold1/train/25730.png +../../data/yoloGtold1/train/25731.png +../../data/yoloGtold1/train/25732.png +../../data/yoloGtold1/train/25733.png +../../data/yoloGtold1/train/25734.png +../../data/yoloGtold1/train/25735.png +../../data/yoloGtold1/train/25736.png +../../data/yoloGtold1/train/25737.png +../../data/yoloGtold1/train/25738.png +../../data/yoloGtold1/train/25739.png +../../data/yoloGtold1/train/25740.png +../../data/yoloGtold1/train/25741.png +../../data/yoloGtold1/train/25742.png +../../data/yoloGtold1/train/25743.png +../../data/yoloGtold1/train/25744.png +../../data/yoloGtold1/train/25745.png +../../data/yoloGtold1/train/25746.png +../../data/yoloGtold1/train/25747.png +../../data/yoloGtold1/train/25748.png +../../data/yoloGtold1/train/25749.png +../../data/yoloGtold1/train/25750.png +../../data/yoloGtold1/train/25751.png +../../data/yoloGtold1/train/25752.png +../../data/yoloGtold1/train/25753.png +../../data/yoloGtold1/train/25754.png +../../data/yoloGtold1/train/25755.png +../../data/yoloGtold1/train/25756.png +../../data/yoloGtold1/train/25757.png +../../data/yoloGtold1/train/25758.png +../../data/yoloGtold1/train/25759.png +../../data/yoloGtold1/train/25760.png +../../data/yoloGtold1/train/25761.png +../../data/yoloGtold1/train/25762.png +../../data/yoloGtold1/train/25763.png +../../data/yoloGtold1/train/25764.png +../../data/yoloGtold1/train/25765.png +../../data/yoloGtold1/train/25766.png +../../data/yoloGtold1/train/25767.png +../../data/yoloGtold1/train/25768.png +../../data/yoloGtold1/train/25769.png +../../data/yoloGtold1/train/25770.png +../../data/yoloGtold1/train/25771.png +../../data/yoloGtold1/train/25772.png +../../data/yoloGtold1/train/25773.png +../../data/yoloGtold1/train/25774.png +../../data/yoloGtold1/train/25775.png +../../data/yoloGtold1/train/25776.png +../../data/yoloGtold1/train/25777.png +../../data/yoloGtold1/train/25778.png +../../data/yoloGtold1/train/25779.png +../../data/yoloGtold1/train/25780.png +../../data/yoloGtold1/train/25781.png +../../data/yoloGtold1/train/25782.png +../../data/yoloGtold1/train/25783.png +../../data/yoloGtold1/train/25784.png +../../data/yoloGtold1/train/25785.png +../../data/yoloGtold1/train/25786.png +../../data/yoloGtold1/train/25787.png +../../data/yoloGtold1/train/25788.png +../../data/yoloGtold1/train/25789.png +../../data/yoloGtold1/train/25790.png +../../data/yoloGtold1/train/25791.png +../../data/yoloGtold1/train/25792.png +../../data/yoloGtold1/train/25793.png +../../data/yoloGtold1/train/25794.png +../../data/yoloGtold1/train/25795.png +../../data/yoloGtold1/train/25796.png +../../data/yoloGtold1/train/25797.png +../../data/yoloGtold1/train/25798.png +../../data/yoloGtold1/train/25799.png +../../data/yoloGtold1/train/25800.png +../../data/yoloGtold1/train/25801.png +../../data/yoloGtold1/train/25802.png +../../data/yoloGtold1/train/25803.png +../../data/yoloGtold1/train/25804.png +../../data/yoloGtold1/train/25805.png +../../data/yoloGtold1/train/25806.png +../../data/yoloGtold1/train/25807.png +../../data/yoloGtold1/train/25808.png +../../data/yoloGtold1/train/25809.png +../../data/yoloGtold1/train/25810.png +../../data/yoloGtold1/train/25811.png +../../data/yoloGtold1/train/25812.png +../../data/yoloGtold1/train/25813.png +../../data/yoloGtold1/train/25814.png +../../data/yoloGtold1/train/25815.png +../../data/yoloGtold1/train/25816.png +../../data/yoloGtold1/train/25817.png +../../data/yoloGtold1/train/25818.png +../../data/yoloGtold1/train/25819.png +../../data/yoloGtold1/train/25820.png +../../data/yoloGtold1/train/25821.png +../../data/yoloGtold1/train/25822.png +../../data/yoloGtold1/train/25823.png +../../data/yoloGtold1/train/25824.png +../../data/yoloGtold1/train/25825.png +../../data/yoloGtold1/train/25826.png +../../data/yoloGtold1/train/25827.png +../../data/yoloGtold1/train/25828.png +../../data/yoloGtold1/train/25829.png +../../data/yoloGtold1/train/25830.png +../../data/yoloGtold1/train/25831.png +../../data/yoloGtold1/train/25832.png +../../data/yoloGtold1/train/25833.png +../../data/yoloGtold1/train/25834.png +../../data/yoloGtold1/train/25835.png +../../data/yoloGtold1/train/25836.png +../../data/yoloGtold1/train/25837.png +../../data/yoloGtold1/train/25838.png +../../data/yoloGtold1/train/25839.png +../../data/yoloGtold1/train/25840.png +../../data/yoloGtold1/train/25841.png +../../data/yoloGtold1/train/25842.png +../../data/yoloGtold1/train/25843.png +../../data/yoloGtold1/train/25844.png +../../data/yoloGtold1/train/25845.png +../../data/yoloGtold1/train/25846.png +../../data/yoloGtold1/train/25847.png +../../data/yoloGtold1/train/25848.png +../../data/yoloGtold1/train/25849.png +../../data/yoloGtold1/train/25850.png +../../data/yoloGtold1/train/25851.png +../../data/yoloGtold1/train/25852.png +../../data/yoloGtold1/train/25853.png +../../data/yoloGtold1/train/25854.png +../../data/yoloGtold1/train/25855.png +../../data/yoloGtold1/train/25856.png +../../data/yoloGtold1/train/25857.png +../../data/yoloGtold1/train/25858.png +../../data/yoloGtold1/train/25859.png +../../data/yoloGtold1/train/25860.png +../../data/yoloGtold1/train/25861.png +../../data/yoloGtold1/train/25862.png +../../data/yoloGtold1/train/25863.png +../../data/yoloGtold1/train/25864.png +../../data/yoloGtold1/train/25865.png +../../data/yoloGtold1/train/25866.png +../../data/yoloGtold1/train/25867.png +../../data/yoloGtold1/train/25868.png +../../data/yoloGtold1/train/25869.png +../../data/yoloGtold1/train/25870.png +../../data/yoloGtold1/train/25871.png +../../data/yoloGtold1/train/25872.png +../../data/yoloGtold1/train/25873.png +../../data/yoloGtold1/train/25874.png +../../data/yoloGtold1/train/25875.png +../../data/yoloGtold1/train/25876.png +../../data/yoloGtold1/train/25877.png +../../data/yoloGtold1/train/25878.png +../../data/yoloGtold1/train/25879.png +../../data/yoloGtold1/train/25880.png +../../data/yoloGtold1/train/25881.png +../../data/yoloGtold1/train/25882.png +../../data/yoloGtold1/train/25883.png +../../data/yoloGtold1/train/25884.png +../../data/yoloGtold1/train/25885.png +../../data/yoloGtold1/train/25886.png +../../data/yoloGtold1/train/25887.png +../../data/yoloGtold1/train/25888.png +../../data/yoloGtold1/train/25889.png +../../data/yoloGtold1/train/25890.png +../../data/yoloGtold1/train/25891.png +../../data/yoloGtold1/train/25892.png +../../data/yoloGtold1/train/25893.png +../../data/yoloGtold1/train/25894.png +../../data/yoloGtold1/train/25895.png +../../data/yoloGtold1/train/25896.png +../../data/yoloGtold1/train/25897.png +../../data/yoloGtold1/train/25898.png +../../data/yoloGtold1/train/25899.png +../../data/yoloGtold1/train/25900.png +../../data/yoloGtold1/train/25901.png +../../data/yoloGtold1/train/25902.png +../../data/yoloGtold1/train/25903.png +../../data/yoloGtold1/train/25904.png +../../data/yoloGtold1/train/25905.png +../../data/yoloGtold1/train/25906.png +../../data/yoloGtold1/train/25907.png +../../data/yoloGtold1/train/25908.png +../../data/yoloGtold1/train/25909.png +../../data/yoloGtold1/train/25910.png +../../data/yoloGtold1/train/25911.png +../../data/yoloGtold1/train/25912.png +../../data/yoloGtold1/train/25913.png +../../data/yoloGtold1/train/25914.png +../../data/yoloGtold1/train/25915.png +../../data/yoloGtold1/train/25916.png +../../data/yoloGtold1/train/25917.png +../../data/yoloGtold1/train/25918.png +../../data/yoloGtold1/train/25919.png +../../data/yoloGtold1/train/25920.png +../../data/yoloGtold1/train/25921.png +../../data/yoloGtold1/train/25922.png +../../data/yoloGtold1/train/25923.png +../../data/yoloGtold1/train/25924.png +../../data/yoloGtold1/train/25925.png +../../data/yoloGtold1/train/25926.png +../../data/yoloGtold1/train/25927.png +../../data/yoloGtold1/train/25928.png +../../data/yoloGtold1/train/25929.png +../../data/yoloGtold1/train/25930.png +../../data/yoloGtold1/train/25931.png +../../data/yoloGtold1/train/25932.png +../../data/yoloGtold1/train/25933.png +../../data/yoloGtold1/train/25934.png +../../data/yoloGtold1/train/25935.png +../../data/yoloGtold1/train/25936.png +../../data/yoloGtold1/train/25937.png +../../data/yoloGtold1/train/25938.png +../../data/yoloGtold1/train/25939.png +../../data/yoloGtold1/train/25940.png +../../data/yoloGtold1/train/25941.png +../../data/yoloGtold1/train/25942.png +../../data/yoloGtold1/train/25943.png +../../data/yoloGtold1/train/25944.png +../../data/yoloGtold1/train/25945.png +../../data/yoloGtold1/train/25946.png +../../data/yoloGtold1/train/25947.png +../../data/yoloGtold1/train/25948.png +../../data/yoloGtold1/train/25949.png +../../data/yoloGtold1/train/25950.png +../../data/yoloGtold1/train/25951.png +../../data/yoloGtold1/train/25952.png +../../data/yoloGtold1/train/25953.png +../../data/yoloGtold1/train/25954.png +../../data/yoloGtold1/train/25955.png +../../data/yoloGtold1/train/25956.png +../../data/yoloGtold1/train/25957.png +../../data/yoloGtold1/train/25958.png +../../data/yoloGtold1/train/25959.png +../../data/yoloGtold1/train/25960.png +../../data/yoloGtold1/train/25961.png +../../data/yoloGtold1/train/25962.png +../../data/yoloGtold1/train/25963.png +../../data/yoloGtold1/train/25964.png +../../data/yoloGtold1/train/25965.png +../../data/yoloGtold1/train/25966.png +../../data/yoloGtold1/train/25967.png +../../data/yoloGtold1/train/25968.png +../../data/yoloGtold1/train/25969.png +../../data/yoloGtold1/train/25970.png +../../data/yoloGtold1/train/25971.png +../../data/yoloGtold1/train/25972.png +../../data/yoloGtold1/train/25973.png +../../data/yoloGtold1/train/25974.png +../../data/yoloGtold1/train/25975.png +../../data/yoloGtold1/train/25976.png +../../data/yoloGtold1/train/25977.png +../../data/yoloGtold1/train/25978.png +../../data/yoloGtold1/train/25979.png +../../data/yoloGtold1/train/25980.png +../../data/yoloGtold1/train/25981.png +../../data/yoloGtold1/train/25982.png +../../data/yoloGtold1/train/25983.png +../../data/yoloGtold1/train/25984.png +../../data/yoloGtold1/train/25985.png +../../data/yoloGtold1/train/25986.png +../../data/yoloGtold1/train/25987.png +../../data/yoloGtold1/train/25988.png +../../data/yoloGtold1/train/25989.png +../../data/yoloGtold1/train/25990.png +../../data/yoloGtold1/train/25991.png +../../data/yoloGtold1/train/25992.png +../../data/yoloGtold1/train/25993.png +../../data/yoloGtold1/train/25994.png +../../data/yoloGtold1/train/25995.png +../../data/yoloGtold1/train/25996.png +../../data/yoloGtold1/train/25997.png +../../data/yoloGtold1/train/25998.png +../../data/yoloGtold1/train/25999.png +../../data/yoloGtold1/train/26000.png +../../data/yoloGtold1/train/26001.png +../../data/yoloGtold1/train/26002.png +../../data/yoloGtold1/train/26003.png +../../data/yoloGtold1/train/26004.png +../../data/yoloGtold1/train/26005.png +../../data/yoloGtold1/train/26006.png +../../data/yoloGtold1/train/26007.png +../../data/yoloGtold1/train/26008.png +../../data/yoloGtold1/train/26009.png +../../data/yoloGtold1/train/26010.png +../../data/yoloGtold1/train/26011.png +../../data/yoloGtold1/train/26012.png +../../data/yoloGtold1/train/26013.png +../../data/yoloGtold1/train/26014.png +../../data/yoloGtold1/train/26015.png +../../data/yoloGtold1/train/26016.png +../../data/yoloGtold1/train/26017.png +../../data/yoloGtold1/train/26018.png +../../data/yoloGtold1/train/26019.png +../../data/yoloGtold1/train/26020.png +../../data/yoloGtold1/train/26021.png +../../data/yoloGtold1/train/26022.png +../../data/yoloGtold1/train/26023.png +../../data/yoloGtold1/train/26024.png +../../data/yoloGtold1/train/26025.png +../../data/yoloGtold1/train/26026.png +../../data/yoloGtold1/train/26027.png +../../data/yoloGtold1/train/26028.png +../../data/yoloGtold1/train/26029.png +../../data/yoloGtold1/train/26030.png +../../data/yoloGtold1/train/26031.png +../../data/yoloGtold1/train/26032.png +../../data/yoloGtold1/train/26033.png +../../data/yoloGtold1/train/26034.png +../../data/yoloGtold1/train/26035.png +../../data/yoloGtold1/train/26036.png +../../data/yoloGtold1/train/26037.png +../../data/yoloGtold1/train/26038.png +../../data/yoloGtold1/train/26039.png +../../data/yoloGtold1/train/26040.png +../../data/yoloGtold1/train/26041.png +../../data/yoloGtold1/train/26042.png +../../data/yoloGtold1/train/26043.png +../../data/yoloGtold1/train/26044.png +../../data/yoloGtold1/train/26045.png +../../data/yoloGtold1/train/26046.png +../../data/yoloGtold1/train/26047.png +../../data/yoloGtold1/train/26048.png +../../data/yoloGtold1/train/26049.png +../../data/yoloGtold1/train/26050.png +../../data/yoloGtold1/train/26051.png +../../data/yoloGtold1/train/26052.png +../../data/yoloGtold1/train/26053.png +../../data/yoloGtold1/train/26054.png +../../data/yoloGtold1/train/26055.png +../../data/yoloGtold1/train/26056.png +../../data/yoloGtold1/train/26057.png +../../data/yoloGtold1/train/26058.png +../../data/yoloGtold1/train/26059.png +../../data/yoloGtold1/train/26060.png +../../data/yoloGtold1/train/26061.png +../../data/yoloGtold1/train/26062.png +../../data/yoloGtold1/train/26063.png +../../data/yoloGtold1/train/26064.png +../../data/yoloGtold1/train/26065.png +../../data/yoloGtold1/train/26066.png +../../data/yoloGtold1/train/26067.png +../../data/yoloGtold1/train/26068.png +../../data/yoloGtold1/train/26069.png +../../data/yoloGtold1/train/26070.png +../../data/yoloGtold1/train/26071.png +../../data/yoloGtold1/train/26072.png +../../data/yoloGtold1/train/26073.png +../../data/yoloGtold1/train/26074.png +../../data/yoloGtold1/train/26075.png +../../data/yoloGtold1/train/26076.png +../../data/yoloGtold1/train/26077.png +../../data/yoloGtold1/train/26078.png +../../data/yoloGtold1/train/26079.png +../../data/yoloGtold1/train/26080.png +../../data/yoloGtold1/train/26081.png +../../data/yoloGtold1/train/26082.png +../../data/yoloGtold1/train/26083.png +../../data/yoloGtold1/train/26084.png +../../data/yoloGtold1/train/26085.png +../../data/yoloGtold1/train/26086.png +../../data/yoloGtold1/train/26087.png +../../data/yoloGtold1/train/26088.png +../../data/yoloGtold1/train/26089.png +../../data/yoloGtold1/train/26090.png +../../data/yoloGtold1/train/26091.png +../../data/yoloGtold1/train/26092.png +../../data/yoloGtold1/train/26093.png +../../data/yoloGtold1/train/26094.png +../../data/yoloGtold1/train/26095.png +../../data/yoloGtold1/train/26096.png +../../data/yoloGtold1/train/26097.png +../../data/yoloGtold1/train/26098.png +../../data/yoloGtold1/train/26099.png +../../data/yoloGtold1/train/26100.png +../../data/yoloGtold1/train/26101.png +../../data/yoloGtold1/train/26102.png +../../data/yoloGtold1/train/26103.png +../../data/yoloGtold1/train/26104.png +../../data/yoloGtold1/train/26105.png +../../data/yoloGtold1/train/26106.png +../../data/yoloGtold1/train/26107.png +../../data/yoloGtold1/train/26108.png +../../data/yoloGtold1/train/26109.png +../../data/yoloGtold1/train/26110.png +../../data/yoloGtold1/train/26111.png +../../data/yoloGtold1/train/26112.png +../../data/yoloGtold1/train/26113.png +../../data/yoloGtold1/train/26114.png +../../data/yoloGtold1/train/26115.png +../../data/yoloGtold1/train/26116.png +../../data/yoloGtold1/train/26117.png +../../data/yoloGtold1/train/26118.png +../../data/yoloGtold1/train/26119.png +../../data/yoloGtold1/train/26120.png +../../data/yoloGtold1/train/26121.png +../../data/yoloGtold1/train/26122.png +../../data/yoloGtold1/train/26123.png +../../data/yoloGtold1/train/26124.png +../../data/yoloGtold1/train/26125.png +../../data/yoloGtold1/train/26126.png +../../data/yoloGtold1/train/26127.png +../../data/yoloGtold1/train/26128.png +../../data/yoloGtold1/train/26129.png +../../data/yoloGtold1/train/26130.png +../../data/yoloGtold1/train/26131.png +../../data/yoloGtold1/train/26132.png +../../data/yoloGtold1/train/26133.png +../../data/yoloGtold1/train/26134.png +../../data/yoloGtold1/train/26135.png +../../data/yoloGtold1/train/26136.png +../../data/yoloGtold1/train/26137.png +../../data/yoloGtold1/train/26138.png +../../data/yoloGtold1/train/26139.png +../../data/yoloGtold1/train/26140.png +../../data/yoloGtold1/train/26141.png +../../data/yoloGtold1/train/26142.png +../../data/yoloGtold1/train/26143.png +../../data/yoloGtold1/train/26144.png +../../data/yoloGtold1/train/26145.png +../../data/yoloGtold1/train/26146.png +../../data/yoloGtold1/train/26147.png +../../data/yoloGtold1/train/26148.png +../../data/yoloGtold1/train/26149.png +../../data/yoloGtold1/train/26150.png +../../data/yoloGtold1/train/26151.png +../../data/yoloGtold1/train/26152.png +../../data/yoloGtold1/train/26153.png +../../data/yoloGtold1/train/26154.png +../../data/yoloGtold1/train/26155.png +../../data/yoloGtold1/train/26156.png +../../data/yoloGtold1/train/26157.png +../../data/yoloGtold1/train/26158.png +../../data/yoloGtold1/train/26159.png +../../data/yoloGtold1/train/26160.png +../../data/yoloGtold1/train/26161.png +../../data/yoloGtold1/train/26162.png +../../data/yoloGtold1/train/26163.png +../../data/yoloGtold1/train/26164.png +../../data/yoloGtold1/train/26165.png +../../data/yoloGtold1/train/26166.png +../../data/yoloGtold1/train/26167.png +../../data/yoloGtold1/train/26168.png +../../data/yoloGtold1/train/26169.png +../../data/yoloGtold1/train/26170.png +../../data/yoloGtold1/train/26171.png +../../data/yoloGtold1/train/26172.png +../../data/yoloGtold1/train/26173.png +../../data/yoloGtold1/train/26174.png +../../data/yoloGtold1/train/26175.png +../../data/yoloGtold1/train/26176.png +../../data/yoloGtold1/train/26177.png +../../data/yoloGtold1/train/26178.png +../../data/yoloGtold1/train/26179.png +../../data/yoloGtold1/train/26180.png +../../data/yoloGtold1/train/26181.png +../../data/yoloGtold1/train/26182.png +../../data/yoloGtold1/train/26183.png +../../data/yoloGtold1/train/26184.png +../../data/yoloGtold1/train/26185.png +../../data/yoloGtold1/train/26186.png +../../data/yoloGtold1/train/26187.png +../../data/yoloGtold1/train/26188.png +../../data/yoloGtold1/train/26189.png +../../data/yoloGtold1/train/26190.png +../../data/yoloGtold1/train/26191.png +../../data/yoloGtold1/train/26192.png +../../data/yoloGtold1/train/26193.png +../../data/yoloGtold1/train/26194.png +../../data/yoloGtold1/train/26195.png +../../data/yoloGtold1/train/26196.png +../../data/yoloGtold1/train/26197.png +../../data/yoloGtold1/train/26198.png +../../data/yoloGtold1/train/26199.png +../../data/yoloGtold1/train/26200.png +../../data/yoloGtold1/train/26201.png +../../data/yoloGtold1/train/26202.png +../../data/yoloGtold1/train/26203.png +../../data/yoloGtold1/train/26204.png +../../data/yoloGtold1/train/26205.png +../../data/yoloGtold1/train/26206.png +../../data/yoloGtold1/train/26207.png +../../data/yoloGtold1/train/26208.png +../../data/yoloGtold1/train/26209.png +../../data/yoloGtold1/train/26210.png +../../data/yoloGtold1/train/26211.png +../../data/yoloGtold1/train/26212.png +../../data/yoloGtold1/train/26213.png +../../data/yoloGtold1/train/26214.png +../../data/yoloGtold1/train/26215.png +../../data/yoloGtold1/train/26216.png +../../data/yoloGtold1/train/26217.png +../../data/yoloGtold1/train/26218.png +../../data/yoloGtold1/train/26219.png +../../data/yoloGtold1/train/26220.png +../../data/yoloGtold1/train/26221.png +../../data/yoloGtold1/train/26222.png +../../data/yoloGtold1/train/26223.png +../../data/yoloGtold1/train/26224.png +../../data/yoloGtold1/train/26225.png +../../data/yoloGtold1/train/26226.png +../../data/yoloGtold1/train/26227.png +../../data/yoloGtold1/train/26228.png +../../data/yoloGtold1/train/26229.png +../../data/yoloGtold1/train/26230.png +../../data/yoloGtold1/train/26231.png +../../data/yoloGtold1/train/26232.png +../../data/yoloGtold1/train/26233.png +../../data/yoloGtold1/train/26234.png +../../data/yoloGtold1/train/26235.png +../../data/yoloGtold1/train/26236.png +../../data/yoloGtold1/train/26237.png +../../data/yoloGtold1/train/26238.png +../../data/yoloGtold1/train/26239.png +../../data/yoloGtold1/train/26240.png +../../data/yoloGtold1/train/26241.png +../../data/yoloGtold1/train/26242.png +../../data/yoloGtold1/train/26243.png +../../data/yoloGtold1/train/26244.png +../../data/yoloGtold1/train/26245.png +../../data/yoloGtold1/train/26246.png +../../data/yoloGtold1/train/26247.png +../../data/yoloGtold1/train/26248.png +../../data/yoloGtold1/train/26249.png +../../data/yoloGtold1/train/26250.png +../../data/yoloGtold1/train/26251.png +../../data/yoloGtold1/train/26252.png +../../data/yoloGtold1/train/26253.png +../../data/yoloGtold1/train/26254.png +../../data/yoloGtold1/train/26255.png +../../data/yoloGtold1/train/26256.png +../../data/yoloGtold1/train/26257.png +../../data/yoloGtold1/train/26258.png +../../data/yoloGtold1/train/26259.png +../../data/yoloGtold1/train/26260.png +../../data/yoloGtold1/train/26261.png +../../data/yoloGtold1/train/26262.png +../../data/yoloGtold1/train/26263.png +../../data/yoloGtold1/train/26264.png +../../data/yoloGtold1/train/26265.png +../../data/yoloGtold1/train/26266.png +../../data/yoloGtold1/train/26267.png +../../data/yoloGtold1/train/26268.png +../../data/yoloGtold1/train/26269.png +../../data/yoloGtold1/train/26270.png +../../data/yoloGtold1/train/26271.png +../../data/yoloGtold1/train/26272.png +../../data/yoloGtold1/train/26273.png +../../data/yoloGtold1/train/26274.png +../../data/yoloGtold1/train/26275.png +../../data/yoloGtold1/train/26276.png +../../data/yoloGtold1/train/26277.png +../../data/yoloGtold1/train/26278.png +../../data/yoloGtold1/train/26279.png +../../data/yoloGtold1/train/26280.png +../../data/yoloGtold1/train/26281.png +../../data/yoloGtold1/train/26282.png +../../data/yoloGtold1/train/26283.png +../../data/yoloGtold1/train/26284.png +../../data/yoloGtold1/train/26285.png +../../data/yoloGtold1/train/26286.png +../../data/yoloGtold1/train/26287.png +../../data/yoloGtold1/train/26288.png +../../data/yoloGtold1/train/26289.png +../../data/yoloGtold1/train/26290.png +../../data/yoloGtold1/train/26291.png +../../data/yoloGtold1/train/26292.png +../../data/yoloGtold1/train/26293.png +../../data/yoloGtold1/train/26294.png +../../data/yoloGtold1/train/26295.png +../../data/yoloGtold1/train/26296.png +../../data/yoloGtold1/train/26297.png +../../data/yoloGtold1/train/26298.png +../../data/yoloGtold1/train/26299.png +../../data/yoloGtold1/train/26300.png +../../data/yoloGtold1/train/26301.png +../../data/yoloGtold1/train/26302.png +../../data/yoloGtold1/train/26303.png +../../data/yoloGtold1/train/26304.png +../../data/yoloGtold1/train/26305.png +../../data/yoloGtold1/train/26306.png +../../data/yoloGtold1/train/26307.png +../../data/yoloGtold1/train/26308.png +../../data/yoloGtold1/train/26309.png +../../data/yoloGtold1/train/26310.png +../../data/yoloGtold1/train/26311.png +../../data/yoloGtold1/train/26312.png +../../data/yoloGtold1/train/26313.png +../../data/yoloGtold1/train/26314.png +../../data/yoloGtold1/train/26315.png +../../data/yoloGtold1/train/26316.png +../../data/yoloGtold1/train/26317.png +../../data/yoloGtold1/train/26318.png +../../data/yoloGtold1/train/26319.png +../../data/yoloGtold1/train/26320.png +../../data/yoloGtold1/train/26321.png +../../data/yoloGtold1/train/26322.png +../../data/yoloGtold1/train/26323.png +../../data/yoloGtold1/train/26324.png +../../data/yoloGtold1/train/26325.png +../../data/yoloGtold1/train/26326.png +../../data/yoloGtold1/train/26327.png +../../data/yoloGtold1/train/26328.png +../../data/yoloGtold1/train/26329.png +../../data/yoloGtold1/train/26330.png +../../data/yoloGtold1/train/26331.png +../../data/yoloGtold1/train/26332.png +../../data/yoloGtold1/train/26333.png +../../data/yoloGtold1/train/26334.png +../../data/yoloGtold1/train/26335.png +../../data/yoloGtold1/train/26336.png +../../data/yoloGtold1/train/26337.png +../../data/yoloGtold1/train/26338.png +../../data/yoloGtold1/train/26339.png +../../data/yoloGtold1/train/26340.png +../../data/yoloGtold1/train/26341.png +../../data/yoloGtold1/train/26342.png +../../data/yoloGtold1/train/26343.png +../../data/yoloGtold1/train/26344.png +../../data/yoloGtold1/train/26345.png +../../data/yoloGtold1/train/26346.png +../../data/yoloGtold1/train/26347.png +../../data/yoloGtold1/train/26348.png +../../data/yoloGtold1/train/26349.png +../../data/yoloGtold1/train/26350.png +../../data/yoloGtold1/train/26351.png +../../data/yoloGtold1/train/26352.png +../../data/yoloGtold1/train/26353.png +../../data/yoloGtold1/train/26354.png +../../data/yoloGtold1/train/26355.png +../../data/yoloGtold1/train/26356.png +../../data/yoloGtold1/train/26357.png +../../data/yoloGtold1/train/26358.png +../../data/yoloGtold1/train/26359.png +../../data/yoloGtold1/train/26360.png +../../data/yoloGtold1/train/26361.png +../../data/yoloGtold1/train/26362.png +../../data/yoloGtold1/train/26363.png +../../data/yoloGtold1/train/26364.png +../../data/yoloGtold1/train/26365.png +../../data/yoloGtold1/train/26366.png +../../data/yoloGtold1/train/26367.png +../../data/yoloGtold1/train/26368.png +../../data/yoloGtold1/train/26369.png +../../data/yoloGtold1/train/26370.png +../../data/yoloGtold1/train/26371.png +../../data/yoloGtold1/train/26372.png +../../data/yoloGtold1/train/26373.png +../../data/yoloGtold1/train/26374.png +../../data/yoloGtold1/train/26375.png +../../data/yoloGtold1/train/26376.png +../../data/yoloGtold1/train/26377.png +../../data/yoloGtold1/train/26378.png +../../data/yoloGtold1/train/26379.png +../../data/yoloGtold1/train/26380.png +../../data/yoloGtold1/train/26381.png +../../data/yoloGtold1/train/26382.png +../../data/yoloGtold1/train/26383.png +../../data/yoloGtold1/train/26384.png +../../data/yoloGtold1/train/26385.png +../../data/yoloGtold1/train/26386.png +../../data/yoloGtold1/train/26387.png +../../data/yoloGtold1/train/26388.png +../../data/yoloGtold1/train/26389.png +../../data/yoloGtold1/train/26390.png +../../data/yoloGtold1/train/26391.png +../../data/yoloGtold1/train/26392.png +../../data/yoloGtold1/train/26393.png +../../data/yoloGtold1/train/26394.png +../../data/yoloGtold1/train/26395.png +../../data/yoloGtold1/train/26396.png +../../data/yoloGtold1/train/26397.png +../../data/yoloGtold1/train/26398.png +../../data/yoloGtold1/train/26399.png +../../data/yoloGtold1/train/26400.png +../../data/yoloGtold1/train/26401.png +../../data/yoloGtold1/train/26402.png +../../data/yoloGtold1/train/26403.png +../../data/yoloGtold1/train/26404.png +../../data/yoloGtold1/train/26405.png +../../data/yoloGtold1/train/26406.png +../../data/yoloGtold1/train/26407.png +../../data/yoloGtold1/train/26408.png +../../data/yoloGtold1/train/26409.png +../../data/yoloGtold1/train/26410.png +../../data/yoloGtold1/train/26411.png +../../data/yoloGtold1/train/26412.png +../../data/yoloGtold1/train/26413.png +../../data/yoloGtold1/train/26414.png +../../data/yoloGtold1/train/26415.png +../../data/yoloGtold1/train/26416.png +../../data/yoloGtold1/train/26417.png +../../data/yoloGtold1/train/26418.png +../../data/yoloGtold1/train/26419.png +../../data/yoloGtold1/train/26420.png +../../data/yoloGtold1/train/26421.png +../../data/yoloGtold1/train/26422.png +../../data/yoloGtold1/train/26423.png +../../data/yoloGtold1/train/26424.png +../../data/yoloGtold1/train/26425.png +../../data/yoloGtold1/train/26426.png +../../data/yoloGtold1/train/26427.png +../../data/yoloGtold1/train/26428.png +../../data/yoloGtold1/train/26429.png +../../data/yoloGtold1/train/26430.png +../../data/yoloGtold1/train/26431.png +../../data/yoloGtold1/train/26432.png +../../data/yoloGtold1/train/26433.png +../../data/yoloGtold1/train/26434.png +../../data/yoloGtold1/train/26435.png +../../data/yoloGtold1/train/26436.png +../../data/yoloGtold1/train/26437.png +../../data/yoloGtold1/train/26438.png +../../data/yoloGtold1/train/26439.png +../../data/yoloGtold1/train/26440.png +../../data/yoloGtold1/train/26441.png +../../data/yoloGtold1/train/26442.png +../../data/yoloGtold1/train/26443.png +../../data/yoloGtold1/train/26444.png +../../data/yoloGtold1/train/26445.png +../../data/yoloGtold1/train/26446.png +../../data/yoloGtold1/train/26447.png +../../data/yoloGtold1/train/26448.png +../../data/yoloGtold1/train/26449.png +../../data/yoloGtold1/train/26450.png +../../data/yoloGtold1/train/26451.png +../../data/yoloGtold1/train/26452.png +../../data/yoloGtold1/train/26453.png +../../data/yoloGtold1/train/26454.png +../../data/yoloGtold1/train/26455.png +../../data/yoloGtold1/train/26456.png +../../data/yoloGtold1/train/26457.png +../../data/yoloGtold1/train/26458.png +../../data/yoloGtold1/train/26459.png +../../data/yoloGtold1/train/26460.png +../../data/yoloGtold1/train/26461.png +../../data/yoloGtold1/train/26462.png +../../data/yoloGtold1/train/26463.png +../../data/yoloGtold1/train/26464.png +../../data/yoloGtold1/train/26465.png +../../data/yoloGtold1/train/26466.png +../../data/yoloGtold1/train/26467.png +../../data/yoloGtold1/train/26468.png +../../data/yoloGtold1/train/26469.png +../../data/yoloGtold1/train/26470.png +../../data/yoloGtold1/train/26471.png +../../data/yoloGtold1/train/26472.png +../../data/yoloGtold1/train/26473.png +../../data/yoloGtold1/train/26474.png +../../data/yoloGtold1/train/26475.png +../../data/yoloGtold1/train/26476.png +../../data/yoloGtold1/train/26477.png +../../data/yoloGtold1/train/26478.png +../../data/yoloGtold1/train/26479.png +../../data/yoloGtold1/train/26480.png +../../data/yoloGtold1/train/26481.png +../../data/yoloGtold1/train/26482.png +../../data/yoloGtold1/train/26483.png +../../data/yoloGtold1/train/26484.png +../../data/yoloGtold1/train/26485.png +../../data/yoloGtold1/train/26486.png +../../data/yoloGtold1/train/26487.png +../../data/yoloGtold1/train/26488.png +../../data/yoloGtold1/train/26489.png +../../data/yoloGtold1/train/26490.png +../../data/yoloGtold1/train/26491.png +../../data/yoloGtold1/train/26492.png +../../data/yoloGtold1/train/26493.png +../../data/yoloGtold1/train/26494.png +../../data/yoloGtold1/train/26495.png +../../data/yoloGtold1/train/26496.png +../../data/yoloGtold1/train/26497.png +../../data/yoloGtold1/train/26498.png +../../data/yoloGtold1/train/26499.png +../../data/yoloGtold1/train/26500.png +../../data/yoloGtold1/train/26501.png +../../data/yoloGtold1/train/26502.png +../../data/yoloGtold1/train/26503.png +../../data/yoloGtold1/train/26504.png +../../data/yoloGtold1/train/26505.png +../../data/yoloGtold1/train/26506.png +../../data/yoloGtold1/train/26507.png +../../data/yoloGtold1/train/26508.png +../../data/yoloGtold1/train/26509.png +../../data/yoloGtold1/train/26510.png +../../data/yoloGtold1/train/26511.png +../../data/yoloGtold1/train/26512.png +../../data/yoloGtold1/train/26513.png +../../data/yoloGtold1/train/26514.png +../../data/yoloGtold1/train/26515.png +../../data/yoloGtold1/train/26516.png +../../data/yoloGtold1/train/26517.png +../../data/yoloGtold1/train/26518.png +../../data/yoloGtold1/train/26519.png +../../data/yoloGtold1/train/26520.png +../../data/yoloGtold1/train/26521.png +../../data/yoloGtold1/train/26522.png +../../data/yoloGtold1/train/26523.png +../../data/yoloGtold1/train/26524.png +../../data/yoloGtold1/train/26525.png +../../data/yoloGtold1/train/26526.png +../../data/yoloGtold1/train/26527.png +../../data/yoloGtold1/train/26528.png +../../data/yoloGtold1/train/26529.png +../../data/yoloGtold1/train/26530.png +../../data/yoloGtold1/train/26531.png +../../data/yoloGtold1/train/26532.png +../../data/yoloGtold1/train/26533.png +../../data/yoloGtold1/train/26534.png +../../data/yoloGtold1/train/26535.png +../../data/yoloGtold1/train/26536.png +../../data/yoloGtold1/train/26537.png +../../data/yoloGtold1/train/26538.png +../../data/yoloGtold1/train/26539.png +../../data/yoloGtold1/train/26540.png +../../data/yoloGtold1/train/26541.png +../../data/yoloGtold1/train/26542.png +../../data/yoloGtold1/train/26543.png +../../data/yoloGtold1/train/26544.png +../../data/yoloGtold1/train/26545.png +../../data/yoloGtold1/train/26546.png +../../data/yoloGtold1/train/26547.png +../../data/yoloGtold1/train/26548.png +../../data/yoloGtold1/train/26549.png +../../data/yoloGtold1/train/26550.png +../../data/yoloGtold1/train/26551.png +../../data/yoloGtold1/train/26552.png +../../data/yoloGtold1/train/26553.png +../../data/yoloGtold1/train/26554.png +../../data/yoloGtold1/train/26555.png +../../data/yoloGtold1/train/26556.png +../../data/yoloGtold1/train/26557.png +../../data/yoloGtold1/train/26558.png +../../data/yoloGtold1/train/26559.png +../../data/yoloGtold1/train/26560.png +../../data/yoloGtold1/train/26561.png +../../data/yoloGtold1/train/26562.png +../../data/yoloGtold1/train/26563.png +../../data/yoloGtold1/train/26564.png +../../data/yoloGtold1/train/26565.png +../../data/yoloGtold1/train/26566.png +../../data/yoloGtold1/train/26567.png +../../data/yoloGtold1/train/26568.png +../../data/yoloGtold1/train/26569.png +../../data/yoloGtold1/train/26570.png +../../data/yoloGtold1/train/26571.png +../../data/yoloGtold1/train/26572.png +../../data/yoloGtold1/train/26573.png +../../data/yoloGtold1/train/26574.png +../../data/yoloGtold1/train/26575.png +../../data/yoloGtold1/train/26576.png +../../data/yoloGtold1/train/26577.png +../../data/yoloGtold1/train/26578.png +../../data/yoloGtold1/train/26579.png +../../data/yoloGtold1/train/26580.png +../../data/yoloGtold1/train/26581.png +../../data/yoloGtold1/train/26582.png +../../data/yoloGtold1/train/26583.png +../../data/yoloGtold1/train/26584.png +../../data/yoloGtold1/train/26585.png +../../data/yoloGtold1/train/26586.png +../../data/yoloGtold1/train/26587.png +../../data/yoloGtold1/train/26588.png +../../data/yoloGtold1/train/26589.png +../../data/yoloGtold1/train/26590.png +../../data/yoloGtold1/train/26591.png +../../data/yoloGtold1/train/26592.png +../../data/yoloGtold1/train/26593.png +../../data/yoloGtold1/train/26594.png +../../data/yoloGtold1/train/26595.png +../../data/yoloGtold1/train/26596.png +../../data/yoloGtold1/train/26597.png +../../data/yoloGtold1/train/26598.png +../../data/yoloGtold1/train/26599.png +../../data/yoloGtold1/train/26600.png +../../data/yoloGtold1/train/26601.png +../../data/yoloGtold1/train/26602.png +../../data/yoloGtold1/train/26603.png +../../data/yoloGtold1/train/26604.png +../../data/yoloGtold1/train/26605.png +../../data/yoloGtold1/train/26606.png +../../data/yoloGtold1/train/26607.png +../../data/yoloGtold1/train/26608.png +../../data/yoloGtold1/train/26609.png +../../data/yoloGtold1/train/26610.png +../../data/yoloGtold1/train/26611.png +../../data/yoloGtold1/train/26612.png +../../data/yoloGtold1/train/26613.png +../../data/yoloGtold1/train/26614.png +../../data/yoloGtold1/train/26615.png +../../data/yoloGtold1/train/26616.png +../../data/yoloGtold1/train/26617.png +../../data/yoloGtold1/train/26618.png +../../data/yoloGtold1/train/26619.png +../../data/yoloGtold1/train/26620.png +../../data/yoloGtold1/train/26621.png +../../data/yoloGtold1/train/26622.png +../../data/yoloGtold1/train/26623.png +../../data/yoloGtold1/train/26624.png +../../data/yoloGtold1/train/26625.png +../../data/yoloGtold1/train/26626.png +../../data/yoloGtold1/train/26627.png +../../data/yoloGtold1/train/26628.png +../../data/yoloGtold1/train/26629.png +../../data/yoloGtold1/train/26630.png +../../data/yoloGtold1/train/26631.png +../../data/yoloGtold1/train/26632.png +../../data/yoloGtold1/train/26633.png +../../data/yoloGtold1/train/26634.png +../../data/yoloGtold1/train/26635.png +../../data/yoloGtold1/train/26636.png +../../data/yoloGtold1/train/26637.png +../../data/yoloGtold1/train/26638.png +../../data/yoloGtold1/train/26639.png +../../data/yoloGtold1/train/26640.png +../../data/yoloGtold1/train/26641.png +../../data/yoloGtold1/train/26642.png +../../data/yoloGtold1/train/26643.png +../../data/yoloGtold1/train/26644.png +../../data/yoloGtold1/train/26645.png +../../data/yoloGtold1/train/26646.png +../../data/yoloGtold1/train/26647.png +../../data/yoloGtold1/train/26648.png +../../data/yoloGtold1/train/26649.png +../../data/yoloGtold1/train/26650.png +../../data/yoloGtold1/train/26651.png +../../data/yoloGtold1/train/26652.png +../../data/yoloGtold1/train/26653.png +../../data/yoloGtold1/train/26654.png +../../data/yoloGtold1/train/26655.png +../../data/yoloGtold1/train/26656.png +../../data/yoloGtold1/train/26657.png +../../data/yoloGtold1/train/26658.png +../../data/yoloGtold1/train/26659.png +../../data/yoloGtold1/train/26660.png +../../data/yoloGtold1/train/26661.png +../../data/yoloGtold1/train/26662.png +../../data/yoloGtold1/train/26663.png +../../data/yoloGtold1/train/26664.png +../../data/yoloGtold1/train/26665.png +../../data/yoloGtold1/train/26666.png +../../data/yoloGtold1/train/26667.png +../../data/yoloGtold1/train/26668.png +../../data/yoloGtold1/train/26669.png +../../data/yoloGtold1/train/26670.png +../../data/yoloGtold1/train/26671.png +../../data/yoloGtold1/train/26672.png +../../data/yoloGtold1/train/26673.png +../../data/yoloGtold1/train/26674.png +../../data/yoloGtold1/train/26675.png +../../data/yoloGtold1/train/26676.png +../../data/yoloGtold1/train/26677.png +../../data/yoloGtold1/train/26678.png +../../data/yoloGtold1/train/26679.png +../../data/yoloGtold1/train/26680.png +../../data/yoloGtold1/train/26681.png +../../data/yoloGtold1/train/26682.png +../../data/yoloGtold1/train/26683.png +../../data/yoloGtold1/train/26684.png +../../data/yoloGtold1/train/26685.png +../../data/yoloGtold1/train/26686.png +../../data/yoloGtold1/train/26687.png +../../data/yoloGtold1/train/26688.png +../../data/yoloGtold1/train/26689.png +../../data/yoloGtold1/train/26690.png +../../data/yoloGtold1/train/26691.png +../../data/yoloGtold1/train/26692.png +../../data/yoloGtold1/train/26693.png +../../data/yoloGtold1/train/26694.png +../../data/yoloGtold1/train/26695.png +../../data/yoloGtold1/train/26696.png +../../data/yoloGtold1/train/26697.png +../../data/yoloGtold1/train/26698.png +../../data/yoloGtold1/train/26699.png +../../data/yoloGtold1/train/26700.png +../../data/yoloGtold1/train/26701.png +../../data/yoloGtold1/train/26702.png +../../data/yoloGtold1/train/26703.png +../../data/yoloGtold1/train/26704.png +../../data/yoloGtold1/train/26705.png +../../data/yoloGtold1/train/26706.png +../../data/yoloGtold1/train/26707.png +../../data/yoloGtold1/train/26708.png +../../data/yoloGtold1/train/26709.png +../../data/yoloGtold1/train/26710.png +../../data/yoloGtold1/train/26711.png +../../data/yoloGtold1/train/26712.png +../../data/yoloGtold1/train/26713.png +../../data/yoloGtold1/train/26714.png +../../data/yoloGtold1/train/26715.png +../../data/yoloGtold1/train/26716.png +../../data/yoloGtold1/train/26717.png +../../data/yoloGtold1/train/26718.png +../../data/yoloGtold1/train/26719.png +../../data/yoloGtold1/train/26720.png +../../data/yoloGtold1/train/26721.png +../../data/yoloGtold1/train/26722.png +../../data/yoloGtold1/train/26723.png +../../data/yoloGtold1/train/26724.png +../../data/yoloGtold1/train/26725.png +../../data/yoloGtold1/train/26726.png +../../data/yoloGtold1/train/26727.png +../../data/yoloGtold1/train/26728.png +../../data/yoloGtold1/train/26729.png +../../data/yoloGtold1/train/26730.png +../../data/yoloGtold1/train/26731.png +../../data/yoloGtold1/train/26732.png +../../data/yoloGtold1/train/26733.png +../../data/yoloGtold1/train/26734.png +../../data/yoloGtold1/train/26735.png +../../data/yoloGtold1/train/26736.png +../../data/yoloGtold1/train/26737.png +../../data/yoloGtold1/train/26738.png +../../data/yoloGtold1/train/26739.png +../../data/yoloGtold1/train/26740.png +../../data/yoloGtold1/train/26741.png +../../data/yoloGtold1/train/26742.png +../../data/yoloGtold1/train/26743.png +../../data/yoloGtold1/train/26744.png +../../data/yoloGtold1/train/26745.png +../../data/yoloGtold1/train/26746.png +../../data/yoloGtold1/train/26747.png +../../data/yoloGtold1/train/26748.png +../../data/yoloGtold1/train/26749.png +../../data/yoloGtold1/train/26750.png +../../data/yoloGtold1/train/26751.png +../../data/yoloGtold1/train/26752.png +../../data/yoloGtold1/train/26753.png +../../data/yoloGtold1/train/26754.png +../../data/yoloGtold1/train/26755.png +../../data/yoloGtold1/train/26756.png +../../data/yoloGtold1/train/26757.png +../../data/yoloGtold1/train/26758.png +../../data/yoloGtold1/train/26759.png +../../data/yoloGtold1/train/26760.png +../../data/yoloGtold1/train/26761.png +../../data/yoloGtold1/train/26762.png +../../data/yoloGtold1/train/26763.png +../../data/yoloGtold1/train/26764.png +../../data/yoloGtold1/train/26765.png +../../data/yoloGtold1/train/26766.png +../../data/yoloGtold1/train/26767.png +../../data/yoloGtold1/train/26768.png +../../data/yoloGtold1/train/26769.png +../../data/yoloGtold1/train/26770.png +../../data/yoloGtold1/train/26771.png +../../data/yoloGtold1/train/26772.png +../../data/yoloGtold1/train/26773.png +../../data/yoloGtold1/train/26774.png +../../data/yoloGtold1/train/26775.png +../../data/yoloGtold1/train/26776.png +../../data/yoloGtold1/train/26777.png +../../data/yoloGtold1/train/26778.png +../../data/yoloGtold1/train/26779.png +../../data/yoloGtold1/train/26780.png +../../data/yoloGtold1/train/26781.png +../../data/yoloGtold1/train/26782.png +../../data/yoloGtold1/train/26783.png +../../data/yoloGtold1/train/26784.png +../../data/yoloGtold1/train/26785.png +../../data/yoloGtold1/train/26786.png +../../data/yoloGtold1/train/26787.png +../../data/yoloGtold1/train/26788.png +../../data/yoloGtold1/train/26789.png +../../data/yoloGtold1/train/26790.png +../../data/yoloGtold1/train/26791.png +../../data/yoloGtold1/train/26792.png +../../data/yoloGtold1/train/26793.png +../../data/yoloGtold1/train/26794.png +../../data/yoloGtold1/train/26795.png +../../data/yoloGtold1/train/26796.png +../../data/yoloGtold1/train/26797.png +../../data/yoloGtold1/train/26798.png +../../data/yoloGtold1/train/26799.png +../../data/yoloGtold1/train/26800.png +../../data/yoloGtold1/train/26801.png +../../data/yoloGtold1/train/26802.png +../../data/yoloGtold1/train/26803.png +../../data/yoloGtold1/train/26804.png +../../data/yoloGtold1/train/26805.png +../../data/yoloGtold1/train/26806.png +../../data/yoloGtold1/train/26807.png +../../data/yoloGtold1/train/26808.png +../../data/yoloGtold1/train/26809.png +../../data/yoloGtold1/train/26810.png +../../data/yoloGtold1/train/26811.png +../../data/yoloGtold1/train/26812.png +../../data/yoloGtold1/train/26813.png +../../data/yoloGtold1/train/26814.png +../../data/yoloGtold1/train/26815.png +../../data/yoloGtold1/train/26816.png +../../data/yoloGtold1/train/26817.png +../../data/yoloGtold1/train/26818.png +../../data/yoloGtold1/train/26819.png +../../data/yoloGtold1/train/26820.png +../../data/yoloGtold1/train/26821.png +../../data/yoloGtold1/train/26822.png +../../data/yoloGtold1/train/26823.png +../../data/yoloGtold1/train/26824.png +../../data/yoloGtold1/train/26825.png +../../data/yoloGtold1/train/26826.png +../../data/yoloGtold1/train/26827.png +../../data/yoloGtold1/train/26828.png +../../data/yoloGtold1/train/26829.png +../../data/yoloGtold1/train/26830.png +../../data/yoloGtold1/train/26831.png +../../data/yoloGtold1/train/26832.png +../../data/yoloGtold1/train/26833.png +../../data/yoloGtold1/train/26834.png +../../data/yoloGtold1/train/26835.png +../../data/yoloGtold1/train/26836.png +../../data/yoloGtold1/train/26837.png +../../data/yoloGtold1/train/26838.png +../../data/yoloGtold1/train/26839.png +../../data/yoloGtold1/train/26840.png +../../data/yoloGtold1/train/26841.png +../../data/yoloGtold1/train/26842.png +../../data/yoloGtold1/train/26843.png +../../data/yoloGtold1/train/26844.png +../../data/yoloGtold1/train/26845.png +../../data/yoloGtold1/train/26846.png +../../data/yoloGtold1/train/26847.png +../../data/yoloGtold1/train/26848.png +../../data/yoloGtold1/train/26849.png +../../data/yoloGtold1/train/26850.png +../../data/yoloGtold1/train/26851.png +../../data/yoloGtold1/train/26852.png +../../data/yoloGtold1/train/26853.png +../../data/yoloGtold1/train/26854.png +../../data/yoloGtold1/train/26855.png +../../data/yoloGtold1/train/26856.png +../../data/yoloGtold1/train/26857.png +../../data/yoloGtold1/train/26858.png +../../data/yoloGtold1/train/26859.png +../../data/yoloGtold1/train/26860.png +../../data/yoloGtold1/train/26861.png +../../data/yoloGtold1/train/26862.png +../../data/yoloGtold1/train/26863.png +../../data/yoloGtold1/train/26864.png +../../data/yoloGtold1/train/26865.png +../../data/yoloGtold1/train/26866.png +../../data/yoloGtold1/train/26867.png +../../data/yoloGtold1/train/26868.png +../../data/yoloGtold1/train/26869.png +../../data/yoloGtold1/train/26870.png +../../data/yoloGtold1/train/26871.png +../../data/yoloGtold1/train/26872.png +../../data/yoloGtold1/train/26873.png +../../data/yoloGtold1/train/26874.png +../../data/yoloGtold1/train/26875.png +../../data/yoloGtold1/train/26876.png +../../data/yoloGtold1/train/26877.png +../../data/yoloGtold1/train/26878.png +../../data/yoloGtold1/train/26879.png +../../data/yoloGtold1/train/26880.png +../../data/yoloGtold1/train/26881.png +../../data/yoloGtold1/train/26882.png +../../data/yoloGtold1/train/26883.png +../../data/yoloGtold1/train/26884.png +../../data/yoloGtold1/train/26885.png +../../data/yoloGtold1/train/26886.png +../../data/yoloGtold1/train/26887.png +../../data/yoloGtold1/train/26888.png +../../data/yoloGtold1/train/26889.png +../../data/yoloGtold1/train/26890.png +../../data/yoloGtold1/train/26891.png +../../data/yoloGtold1/train/26892.png +../../data/yoloGtold1/train/26893.png +../../data/yoloGtold1/train/26894.png +../../data/yoloGtold1/train/26895.png +../../data/yoloGtold1/train/26896.png +../../data/yoloGtold1/train/26897.png +../../data/yoloGtold1/train/26898.png +../../data/yoloGtold1/train/26899.png +../../data/yoloGtold1/train/26900.png +../../data/yoloGtold1/train/26901.png +../../data/yoloGtold1/train/26902.png +../../data/yoloGtold1/train/26903.png +../../data/yoloGtold1/train/26904.png +../../data/yoloGtold1/train/26905.png +../../data/yoloGtold1/train/26906.png +../../data/yoloGtold1/train/26907.png +../../data/yoloGtold1/train/26908.png +../../data/yoloGtold1/train/26909.png +../../data/yoloGtold1/train/26910.png +../../data/yoloGtold1/train/26911.png +../../data/yoloGtold1/train/26912.png +../../data/yoloGtold1/train/26913.png +../../data/yoloGtold1/train/26914.png +../../data/yoloGtold1/train/26915.png +../../data/yoloGtold1/train/26916.png +../../data/yoloGtold1/train/26917.png +../../data/yoloGtold1/train/26918.png +../../data/yoloGtold1/train/26919.png +../../data/yoloGtold1/train/26920.png +../../data/yoloGtold1/train/26921.png +../../data/yoloGtold1/train/26922.png +../../data/yoloGtold1/train/26923.png +../../data/yoloGtold1/train/26924.png +../../data/yoloGtold1/train/26925.png +../../data/yoloGtold1/train/26926.png +../../data/yoloGtold1/train/26927.png +../../data/yoloGtold1/train/26928.png +../../data/yoloGtold1/train/26929.png +../../data/yoloGtold1/train/26930.png +../../data/yoloGtold1/train/26931.png +../../data/yoloGtold1/train/26932.png +../../data/yoloGtold1/train/26933.png +../../data/yoloGtold1/train/26934.png +../../data/yoloGtold1/train/26935.png +../../data/yoloGtold1/train/26936.png +../../data/yoloGtold1/train/26937.png +../../data/yoloGtold1/train/26938.png +../../data/yoloGtold1/train/26939.png +../../data/yoloGtold1/train/26940.png +../../data/yoloGtold1/train/26941.png +../../data/yoloGtold1/train/26942.png +../../data/yoloGtold1/train/26943.png +../../data/yoloGtold1/train/26944.png +../../data/yoloGtold1/train/26945.png +../../data/yoloGtold1/train/26946.png +../../data/yoloGtold1/train/26947.png +../../data/yoloGtold1/train/26948.png +../../data/yoloGtold1/train/26949.png +../../data/yoloGtold1/train/26950.png +../../data/yoloGtold1/train/26951.png +../../data/yoloGtold1/train/26952.png +../../data/yoloGtold1/train/26953.png +../../data/yoloGtold1/train/26954.png +../../data/yoloGtold1/train/26955.png +../../data/yoloGtold1/train/26956.png +../../data/yoloGtold1/train/26957.png +../../data/yoloGtold1/train/26958.png +../../data/yoloGtold1/train/26959.png +../../data/yoloGtold1/train/26960.png +../../data/yoloGtold1/train/26961.png +../../data/yoloGtold1/train/26962.png +../../data/yoloGtold1/train/26963.png +../../data/yoloGtold1/train/26964.png +../../data/yoloGtold1/train/26965.png +../../data/yoloGtold1/train/26966.png +../../data/yoloGtold1/train/26967.png +../../data/yoloGtold1/train/26968.png +../../data/yoloGtold1/train/26969.png +../../data/yoloGtold1/train/26970.png +../../data/yoloGtold1/train/26971.png +../../data/yoloGtold1/train/26972.png +../../data/yoloGtold1/train/26973.png +../../data/yoloGtold1/train/26974.png +../../data/yoloGtold1/train/26975.png +../../data/yoloGtold1/train/26976.png +../../data/yoloGtold1/train/26977.png +../../data/yoloGtold1/train/26978.png +../../data/yoloGtold1/train/26979.png +../../data/yoloGtold1/train/26980.png +../../data/yoloGtold1/train/26981.png +../../data/yoloGtold1/train/26982.png +../../data/yoloGtold1/train/26983.png +../../data/yoloGtold1/train/26984.png +../../data/yoloGtold1/train/26985.png +../../data/yoloGtold1/train/26986.png +../../data/yoloGtold1/train/26987.png +../../data/yoloGtold1/train/26988.png +../../data/yoloGtold1/train/26989.png +../../data/yoloGtold1/train/26990.png +../../data/yoloGtold1/train/26991.png +../../data/yoloGtold1/train/26992.png +../../data/yoloGtold1/train/26993.png +../../data/yoloGtold1/train/26994.png +../../data/yoloGtold1/train/26995.png +../../data/yoloGtold1/train/26996.png +../../data/yoloGtold1/train/26997.png +../../data/yoloGtold1/train/26998.png +../../data/yoloGtold1/train/26999.png +../../data/yoloGtold1/train/27000.png +../../data/yoloGtold1/train/27001.png +../../data/yoloGtold1/train/27002.png +../../data/yoloGtold1/train/27003.png +../../data/yoloGtold1/train/27004.png +../../data/yoloGtold1/train/27005.png +../../data/yoloGtold1/train/27006.png +../../data/yoloGtold1/train/27007.png +../../data/yoloGtold1/train/27008.png +../../data/yoloGtold1/train/27009.png +../../data/yoloGtold1/train/27010.png +../../data/yoloGtold1/train/27011.png +../../data/yoloGtold1/train/27012.png +../../data/yoloGtold1/train/27013.png +../../data/yoloGtold1/train/27014.png +../../data/yoloGtold1/train/27015.png +../../data/yoloGtold1/train/27016.png +../../data/yoloGtold1/train/27017.png +../../data/yoloGtold1/train/27018.png +../../data/yoloGtold1/train/27019.png +../../data/yoloGtold1/train/27020.png +../../data/yoloGtold1/train/27021.png +../../data/yoloGtold1/train/27022.png +../../data/yoloGtold1/train/27023.png +../../data/yoloGtold1/train/27024.png +../../data/yoloGtold1/train/27025.png +../../data/yoloGtold1/train/27026.png +../../data/yoloGtold1/train/27027.png +../../data/yoloGtold1/train/27028.png +../../data/yoloGtold1/train/27029.png +../../data/yoloGtold1/train/27030.png +../../data/yoloGtold1/train/27031.png +../../data/yoloGtold1/train/27032.png +../../data/yoloGtold1/train/27033.png +../../data/yoloGtold1/train/27034.png +../../data/yoloGtold1/train/27035.png +../../data/yoloGtold1/train/27036.png +../../data/yoloGtold1/train/27037.png +../../data/yoloGtold1/train/27038.png +../../data/yoloGtold1/train/27039.png +../../data/yoloGtold1/train/27040.png +../../data/yoloGtold1/train/27041.png +../../data/yoloGtold1/train/27042.png +../../data/yoloGtold1/train/27043.png +../../data/yoloGtold1/train/27044.png +../../data/yoloGtold1/train/27045.png +../../data/yoloGtold1/train/27046.png +../../data/yoloGtold1/train/27047.png +../../data/yoloGtold1/train/27048.png +../../data/yoloGtold1/train/27049.png +../../data/yoloGtold1/train/27050.png +../../data/yoloGtold1/train/27051.png +../../data/yoloGtold1/train/27052.png +../../data/yoloGtold1/train/27053.png +../../data/yoloGtold1/train/27054.png +../../data/yoloGtold1/train/27055.png +../../data/yoloGtold1/train/27056.png +../../data/yoloGtold1/train/27057.png +../../data/yoloGtold1/train/27058.png +../../data/yoloGtold1/train/27059.png +../../data/yoloGtold1/train/27060.png +../../data/yoloGtold1/train/27061.png +../../data/yoloGtold1/train/27062.png +../../data/yoloGtold1/train/27063.png +../../data/yoloGtold1/train/27064.png +../../data/yoloGtold1/train/27065.png +../../data/yoloGtold1/train/27066.png +../../data/yoloGtold1/train/27067.png +../../data/yoloGtold1/train/27068.png +../../data/yoloGtold1/train/27069.png +../../data/yoloGtold1/train/27070.png +../../data/yoloGtold1/train/27071.png +../../data/yoloGtold1/train/27072.png +../../data/yoloGtold1/train/27073.png +../../data/yoloGtold1/train/27074.png +../../data/yoloGtold1/train/27075.png +../../data/yoloGtold1/train/27076.png +../../data/yoloGtold1/train/27077.png +../../data/yoloGtold1/train/27078.png +../../data/yoloGtold1/train/27079.png +../../data/yoloGtold1/train/27080.png +../../data/yoloGtold1/train/27081.png +../../data/yoloGtold1/train/27082.png +../../data/yoloGtold1/train/27083.png +../../data/yoloGtold1/train/27084.png +../../data/yoloGtold1/train/27085.png +../../data/yoloGtold1/train/27086.png +../../data/yoloGtold1/train/27087.png +../../data/yoloGtold1/train/27088.png +../../data/yoloGtold1/train/27089.png +../../data/yoloGtold1/train/27090.png +../../data/yoloGtold1/train/27091.png +../../data/yoloGtold1/train/27092.png +../../data/yoloGtold1/train/27093.png +../../data/yoloGtold1/train/27094.png +../../data/yoloGtold1/train/27095.png +../../data/yoloGtold1/train/27096.png +../../data/yoloGtold1/train/27097.png +../../data/yoloGtold1/train/27098.png +../../data/yoloGtold1/train/27099.png +../../data/yoloGtold1/train/27100.png +../../data/yoloGtold1/train/27101.png +../../data/yoloGtold1/train/27102.png +../../data/yoloGtold1/train/27103.png +../../data/yoloGtold1/train/27104.png +../../data/yoloGtold1/train/27105.png +../../data/yoloGtold1/train/27106.png +../../data/yoloGtold1/train/27107.png +../../data/yoloGtold1/train/27108.png +../../data/yoloGtold1/train/27109.png +../../data/yoloGtold1/train/27110.png +../../data/yoloGtold1/train/27111.png +../../data/yoloGtold1/train/27112.png +../../data/yoloGtold1/train/27113.png +../../data/yoloGtold1/train/27114.png +../../data/yoloGtold1/train/27115.png +../../data/yoloGtold1/train/27116.png +../../data/yoloGtold1/train/27117.png +../../data/yoloGtold1/train/27118.png +../../data/yoloGtold1/train/27119.png +../../data/yoloGtold1/train/27120.png +../../data/yoloGtold1/train/27121.png +../../data/yoloGtold1/train/27122.png +../../data/yoloGtold1/train/27123.png +../../data/yoloGtold1/train/27124.png +../../data/yoloGtold1/train/27125.png +../../data/yoloGtold1/train/27126.png +../../data/yoloGtold1/train/27127.png +../../data/yoloGtold1/train/27128.png +../../data/yoloGtold1/train/27129.png +../../data/yoloGtold1/train/27130.png +../../data/yoloGtold1/train/27131.png +../../data/yoloGtold1/train/27132.png +../../data/yoloGtold1/train/27133.png +../../data/yoloGtold1/train/27134.png +../../data/yoloGtold1/train/27135.png +../../data/yoloGtold1/train/27136.png +../../data/yoloGtold1/train/27137.png +../../data/yoloGtold1/train/27138.png +../../data/yoloGtold1/train/27139.png +../../data/yoloGtold1/train/27140.png +../../data/yoloGtold1/train/27141.png +../../data/yoloGtold1/train/27142.png +../../data/yoloGtold1/train/27143.png +../../data/yoloGtold1/train/27144.png +../../data/yoloGtold1/train/27145.png +../../data/yoloGtold1/train/27146.png +../../data/yoloGtold1/train/27147.png +../../data/yoloGtold1/train/27148.png +../../data/yoloGtold1/train/27149.png +../../data/yoloGtold1/train/27150.png +../../data/yoloGtold1/train/27151.png +../../data/yoloGtold1/train/27152.png +../../data/yoloGtold1/train/27153.png +../../data/yoloGtold1/train/27154.png +../../data/yoloGtold1/train/27155.png +../../data/yoloGtold1/train/27156.png +../../data/yoloGtold1/train/27157.png +../../data/yoloGtold1/train/27158.png +../../data/yoloGtold1/train/27159.png +../../data/yoloGtold1/train/27160.png +../../data/yoloGtold1/train/27161.png +../../data/yoloGtold1/train/27162.png +../../data/yoloGtold1/train/27163.png +../../data/yoloGtold1/train/27164.png +../../data/yoloGtold1/train/27165.png +../../data/yoloGtold1/train/27166.png +../../data/yoloGtold1/train/27167.png +../../data/yoloGtold1/train/27168.png +../../data/yoloGtold1/train/27169.png +../../data/yoloGtold1/train/27170.png +../../data/yoloGtold1/train/27171.png +../../data/yoloGtold1/train/27172.png +../../data/yoloGtold1/train/27173.png +../../data/yoloGtold1/train/27174.png +../../data/yoloGtold1/train/27175.png +../../data/yoloGtold1/train/27176.png +../../data/yoloGtold1/train/27177.png +../../data/yoloGtold1/train/27178.png +../../data/yoloGtold1/train/27179.png +../../data/yoloGtold1/train/27180.png +../../data/yoloGtold1/train/27181.png +../../data/yoloGtold1/train/27182.png +../../data/yoloGtold1/train/27183.png +../../data/yoloGtold1/train/27184.png +../../data/yoloGtold1/train/27185.png +../../data/yoloGtold1/train/27186.png +../../data/yoloGtold1/train/27187.png +../../data/yoloGtold1/train/27188.png +../../data/yoloGtold1/train/27189.png +../../data/yoloGtold1/train/27190.png +../../data/yoloGtold1/train/27191.png +../../data/yoloGtold1/train/27192.png +../../data/yoloGtold1/train/27193.png +../../data/yoloGtold1/train/27194.png +../../data/yoloGtold1/train/27195.png +../../data/yoloGtold1/train/27196.png +../../data/yoloGtold1/train/27197.png +../../data/yoloGtold1/train/27198.png +../../data/yoloGtold1/train/27199.png +../../data/yoloGtold1/train/27200.png +../../data/yoloGtold1/train/27201.png +../../data/yoloGtold1/train/27202.png +../../data/yoloGtold1/train/27203.png +../../data/yoloGtold1/train/27204.png +../../data/yoloGtold1/train/27205.png +../../data/yoloGtold1/train/27206.png +../../data/yoloGtold1/train/27207.png +../../data/yoloGtold1/train/27208.png +../../data/yoloGtold1/train/27209.png +../../data/yoloGtold1/train/27210.png +../../data/yoloGtold1/train/27211.png +../../data/yoloGtold1/train/27212.png +../../data/yoloGtold1/train/27213.png +../../data/yoloGtold1/train/27214.png +../../data/yoloGtold1/train/27215.png +../../data/yoloGtold1/train/27216.png +../../data/yoloGtold1/train/27217.png +../../data/yoloGtold1/train/27218.png +../../data/yoloGtold1/train/27219.png +../../data/yoloGtold1/train/27220.png +../../data/yoloGtold1/train/27221.png +../../data/yoloGtold1/train/27222.png +../../data/yoloGtold1/train/27223.png +../../data/yoloGtold1/train/27224.png +../../data/yoloGtold1/train/27225.png +../../data/yoloGtold1/train/27226.png +../../data/yoloGtold1/train/27227.png +../../data/yoloGtold1/train/27228.png +../../data/yoloGtold1/train/27229.png +../../data/yoloGtold1/train/27230.png +../../data/yoloGtold1/train/27231.png +../../data/yoloGtold1/train/27232.png +../../data/yoloGtold1/train/27233.png +../../data/yoloGtold1/train/27234.png +../../data/yoloGtold1/train/27235.png +../../data/yoloGtold1/train/27236.png +../../data/yoloGtold1/train/27237.png +../../data/yoloGtold1/train/27238.png +../../data/yoloGtold1/train/27239.png +../../data/yoloGtold1/train/27240.png +../../data/yoloGtold1/train/27241.png +../../data/yoloGtold1/train/27242.png +../../data/yoloGtold1/train/27243.png +../../data/yoloGtold1/train/27244.png +../../data/yoloGtold1/train/27245.png +../../data/yoloGtold1/train/27246.png +../../data/yoloGtold1/train/27247.png +../../data/yoloGtold1/train/27248.png +../../data/yoloGtold1/train/27249.png +../../data/yoloGtold1/train/27250.png +../../data/yoloGtold1/train/27251.png +../../data/yoloGtold1/train/27252.png +../../data/yoloGtold1/train/27253.png +../../data/yoloGtold1/train/27254.png +../../data/yoloGtold1/train/27255.png +../../data/yoloGtold1/train/27256.png +../../data/yoloGtold1/train/27257.png +../../data/yoloGtold1/train/27258.png +../../data/yoloGtold1/train/27259.png +../../data/yoloGtold1/train/27260.png +../../data/yoloGtold1/train/27261.png +../../data/yoloGtold1/train/27262.png +../../data/yoloGtold1/train/27263.png +../../data/yoloGtold1/train/27264.png +../../data/yoloGtold1/train/27265.png +../../data/yoloGtold1/train/27266.png +../../data/yoloGtold1/train/27267.png +../../data/yoloGtold1/train/27268.png +../../data/yoloGtold1/train/27269.png +../../data/yoloGtold1/train/27270.png +../../data/yoloGtold1/train/27271.png +../../data/yoloGtold1/train/27272.png +../../data/yoloGtold1/train/27273.png +../../data/yoloGtold1/train/27274.png +../../data/yoloGtold1/train/27275.png +../../data/yoloGtold1/train/27276.png +../../data/yoloGtold1/train/27277.png +../../data/yoloGtold1/train/27278.png +../../data/yoloGtold1/train/27279.png +../../data/yoloGtold1/train/27280.png +../../data/yoloGtold1/train/27281.png +../../data/yoloGtold1/train/27282.png +../../data/yoloGtold1/train/27283.png +../../data/yoloGtold1/train/27284.png +../../data/yoloGtold1/train/27285.png +../../data/yoloGtold1/train/27286.png +../../data/yoloGtold1/train/27287.png +../../data/yoloGtold1/train/27288.png +../../data/yoloGtold1/train/27289.png +../../data/yoloGtold1/train/27290.png +../../data/yoloGtold1/train/27291.png +../../data/yoloGtold1/train/27292.png +../../data/yoloGtold1/train/27293.png +../../data/yoloGtold1/train/27294.png +../../data/yoloGtold1/train/27295.png +../../data/yoloGtold1/train/27296.png +../../data/yoloGtold1/train/27297.png +../../data/yoloGtold1/train/27298.png +../../data/yoloGtold1/train/27299.png +../../data/yoloGtold1/train/27300.png +../../data/yoloGtold1/train/27301.png +../../data/yoloGtold1/train/27302.png +../../data/yoloGtold1/train/27303.png +../../data/yoloGtold1/train/27304.png +../../data/yoloGtold1/train/27305.png +../../data/yoloGtold1/train/27306.png +../../data/yoloGtold1/train/27307.png +../../data/yoloGtold1/train/27308.png +../../data/yoloGtold1/train/27309.png +../../data/yoloGtold1/train/27310.png +../../data/yoloGtold1/train/27311.png +../../data/yoloGtold1/train/27312.png +../../data/yoloGtold1/train/27313.png +../../data/yoloGtold1/train/27314.png +../../data/yoloGtold1/train/27315.png +../../data/yoloGtold1/train/27316.png +../../data/yoloGtold1/train/27317.png +../../data/yoloGtold1/train/27318.png +../../data/yoloGtold1/train/27319.png +../../data/yoloGtold1/train/27320.png +../../data/yoloGtold1/train/27321.png +../../data/yoloGtold1/train/27322.png +../../data/yoloGtold1/train/27323.png +../../data/yoloGtold1/train/27324.png +../../data/yoloGtold1/train/27325.png +../../data/yoloGtold1/train/27326.png +../../data/yoloGtold1/train/27327.png +../../data/yoloGtold1/train/27328.png +../../data/yoloGtold1/train/27329.png +../../data/yoloGtold1/train/27330.png +../../data/yoloGtold1/train/27331.png +../../data/yoloGtold1/train/27332.png +../../data/yoloGtold1/train/27333.png +../../data/yoloGtold1/train/27334.png +../../data/yoloGtold1/train/27335.png +../../data/yoloGtold1/train/27336.png +../../data/yoloGtold1/train/27337.png +../../data/yoloGtold1/train/27338.png +../../data/yoloGtold1/train/27339.png +../../data/yoloGtold1/train/27340.png +../../data/yoloGtold1/train/27341.png +../../data/yoloGtold1/train/27342.png +../../data/yoloGtold1/train/27343.png +../../data/yoloGtold1/train/27344.png +../../data/yoloGtold1/train/27345.png +../../data/yoloGtold1/train/27346.png +../../data/yoloGtold1/train/27347.png +../../data/yoloGtold1/train/27348.png +../../data/yoloGtold1/train/27349.png +../../data/yoloGtold1/train/27350.png +../../data/yoloGtold1/train/27351.png +../../data/yoloGtold1/train/27352.png +../../data/yoloGtold1/train/27353.png +../../data/yoloGtold1/train/27354.png +../../data/yoloGtold1/train/27355.png +../../data/yoloGtold1/train/27356.png +../../data/yoloGtold1/train/27357.png +../../data/yoloGtold1/train/27358.png +../../data/yoloGtold1/train/27359.png +../../data/yoloGtold1/train/27360.png +../../data/yoloGtold1/train/27361.png +../../data/yoloGtold1/train/27362.png +../../data/yoloGtold1/train/27363.png +../../data/yoloGtold1/train/27364.png +../../data/yoloGtold1/train/27365.png +../../data/yoloGtold1/train/27366.png +../../data/yoloGtold1/train/27367.png +../../data/yoloGtold1/train/27368.png +../../data/yoloGtold1/train/27369.png +../../data/yoloGtold1/train/27370.png +../../data/yoloGtold1/train/27371.png +../../data/yoloGtold1/train/27372.png +../../data/yoloGtold1/train/27373.png +../../data/yoloGtold1/train/27374.png +../../data/yoloGtold1/train/27375.png +../../data/yoloGtold1/train/27376.png +../../data/yoloGtold1/train/27377.png +../../data/yoloGtold1/train/27378.png +../../data/yoloGtold1/train/27379.png +../../data/yoloGtold1/train/27380.png +../../data/yoloGtold1/train/27381.png +../../data/yoloGtold1/train/27382.png +../../data/yoloGtold1/train/27383.png +../../data/yoloGtold1/train/27384.png +../../data/yoloGtold1/train/27385.png +../../data/yoloGtold1/train/27386.png +../../data/yoloGtold1/train/27387.png +../../data/yoloGtold1/train/27388.png +../../data/yoloGtold1/train/27389.png +../../data/yoloGtold1/train/27390.png +../../data/yoloGtold1/train/27391.png +../../data/yoloGtold1/train/27392.png +../../data/yoloGtold1/train/27393.png +../../data/yoloGtold1/train/27394.png +../../data/yoloGtold1/train/27395.png +../../data/yoloGtold1/train/27396.png +../../data/yoloGtold1/train/27397.png +../../data/yoloGtold1/train/27398.png +../../data/yoloGtold1/train/27399.png +../../data/yoloGtold1/train/27400.png +../../data/yoloGtold1/train/27401.png +../../data/yoloGtold1/train/27402.png +../../data/yoloGtold1/train/27403.png +../../data/yoloGtold1/train/27404.png +../../data/yoloGtold1/train/27405.png +../../data/yoloGtold1/train/27406.png +../../data/yoloGtold1/train/27407.png +../../data/yoloGtold1/train/27408.png +../../data/yoloGtold1/train/27409.png +../../data/yoloGtold1/train/27410.png +../../data/yoloGtold1/train/27411.png +../../data/yoloGtold1/train/27412.png +../../data/yoloGtold1/train/27413.png +../../data/yoloGtold1/train/27414.png +../../data/yoloGtold1/train/27415.png +../../data/yoloGtold1/train/27416.png +../../data/yoloGtold1/train/27417.png +../../data/yoloGtold1/train/27418.png +../../data/yoloGtold1/train/27419.png +../../data/yoloGtold1/train/27420.png +../../data/yoloGtold1/train/27421.png +../../data/yoloGtold1/train/27422.png +../../data/yoloGtold1/train/27423.png +../../data/yoloGtold1/train/27424.png +../../data/yoloGtold1/train/27425.png +../../data/yoloGtold1/train/27426.png +../../data/yoloGtold1/train/27427.png +../../data/yoloGtold1/train/27428.png +../../data/yoloGtold1/train/27429.png +../../data/yoloGtold1/train/27430.png +../../data/yoloGtold1/train/27431.png +../../data/yoloGtold1/train/27432.png +../../data/yoloGtold1/train/27433.png +../../data/yoloGtold1/train/27434.png +../../data/yoloGtold1/train/27435.png +../../data/yoloGtold1/train/27436.png +../../data/yoloGtold1/train/27437.png +../../data/yoloGtold1/train/27438.png +../../data/yoloGtold1/train/27439.png +../../data/yoloGtold1/train/27440.png +../../data/yoloGtold1/train/27441.png +../../data/yoloGtold1/train/27442.png +../../data/yoloGtold1/train/27443.png +../../data/yoloGtold1/train/27444.png +../../data/yoloGtold1/train/27445.png +../../data/yoloGtold1/train/27446.png +../../data/yoloGtold1/train/27447.png +../../data/yoloGtold1/train/27448.png +../../data/yoloGtold1/train/27449.png +../../data/yoloGtold1/train/27450.png +../../data/yoloGtold1/train/27451.png +../../data/yoloGtold1/train/27452.png +../../data/yoloGtold1/train/27453.png +../../data/yoloGtold1/train/27454.png +../../data/yoloGtold1/train/27455.png +../../data/yoloGtold1/train/27456.png +../../data/yoloGtold1/train/27457.png +../../data/yoloGtold1/train/27458.png +../../data/yoloGtold1/train/27459.png +../../data/yoloGtold1/train/27460.png +../../data/yoloGtold1/train/27461.png +../../data/yoloGtold1/train/27462.png +../../data/yoloGtold1/train/27463.png +../../data/yoloGtold1/train/27464.png +../../data/yoloGtold1/train/27465.png +../../data/yoloGtold1/train/27466.png +../../data/yoloGtold1/train/27467.png +../../data/yoloGtold1/train/27468.png +../../data/yoloGtold1/train/27469.png +../../data/yoloGtold1/train/27470.png +../../data/yoloGtold1/train/27471.png +../../data/yoloGtold1/train/27472.png +../../data/yoloGtold1/train/27473.png +../../data/yoloGtold1/train/27474.png +../../data/yoloGtold1/train/27475.png +../../data/yoloGtold1/train/27476.png +../../data/yoloGtold1/train/27477.png +../../data/yoloGtold1/train/27478.png +../../data/yoloGtold1/train/27479.png +../../data/yoloGtold1/train/27480.png +../../data/yoloGtold1/train/27481.png +../../data/yoloGtold1/train/27482.png +../../data/yoloGtold1/train/27483.png +../../data/yoloGtold1/train/27484.png +../../data/yoloGtold1/train/27485.png +../../data/yoloGtold1/train/27486.png +../../data/yoloGtold1/train/27487.png +../../data/yoloGtold1/train/27488.png +../../data/yoloGtold1/train/27489.png +../../data/yoloGtold1/train/27490.png +../../data/yoloGtold1/train/27491.png +../../data/yoloGtold1/train/27492.png +../../data/yoloGtold1/train/27493.png +../../data/yoloGtold1/train/27494.png +../../data/yoloGtold1/train/27495.png +../../data/yoloGtold1/train/27496.png +../../data/yoloGtold1/train/27497.png +../../data/yoloGtold1/train/27498.png +../../data/yoloGtold1/train/27499.png +../../data/yoloGtold1/train/27500.png +../../data/yoloGtold1/train/27501.png +../../data/yoloGtold1/train/27502.png +../../data/yoloGtold1/train/27503.png +../../data/yoloGtold1/train/27504.png +../../data/yoloGtold1/train/27505.png +../../data/yoloGtold1/train/27506.png +../../data/yoloGtold1/train/27507.png +../../data/yoloGtold1/train/27508.png +../../data/yoloGtold1/train/27509.png +../../data/yoloGtold1/train/27510.png +../../data/yoloGtold1/train/27511.png +../../data/yoloGtold1/train/27512.png +../../data/yoloGtold1/train/27513.png +../../data/yoloGtold1/train/27514.png +../../data/yoloGtold1/train/27515.png +../../data/yoloGtold1/train/27516.png +../../data/yoloGtold1/train/27517.png +../../data/yoloGtold1/train/27518.png +../../data/yoloGtold1/train/27519.png +../../data/yoloGtold1/train/27520.png +../../data/yoloGtold1/train/27521.png +../../data/yoloGtold1/train/27522.png +../../data/yoloGtold1/train/27523.png +../../data/yoloGtold1/train/27524.png +../../data/yoloGtold1/train/27525.png +../../data/yoloGtold1/train/27526.png +../../data/yoloGtold1/train/27527.png +../../data/yoloGtold1/train/27528.png +../../data/yoloGtold1/train/27529.png +../../data/yoloGtold1/train/27530.png +../../data/yoloGtold1/train/27531.png +../../data/yoloGtold1/train/27532.png +../../data/yoloGtold1/train/27533.png +../../data/yoloGtold1/train/27534.png +../../data/yoloGtold1/train/27535.png +../../data/yoloGtold1/train/27536.png +../../data/yoloGtold1/train/27537.png +../../data/yoloGtold1/train/27538.png +../../data/yoloGtold1/train/27539.png +../../data/yoloGtold1/train/27540.png +../../data/yoloGtold1/train/27541.png +../../data/yoloGtold1/train/27542.png +../../data/yoloGtold1/train/27543.png +../../data/yoloGtold1/train/27544.png +../../data/yoloGtold1/train/27545.png +../../data/yoloGtold1/train/27546.png +../../data/yoloGtold1/train/27547.png +../../data/yoloGtold1/train/27548.png +../../data/yoloGtold1/train/27549.png +../../data/yoloGtold1/train/27550.png +../../data/yoloGtold1/train/27551.png +../../data/yoloGtold1/train/27552.png +../../data/yoloGtold1/train/27553.png +../../data/yoloGtold1/train/27554.png +../../data/yoloGtold1/train/27555.png +../../data/yoloGtold1/train/27556.png +../../data/yoloGtold1/train/27557.png +../../data/yoloGtold1/train/27558.png +../../data/yoloGtold1/train/27559.png +../../data/yoloGtold1/train/27560.png +../../data/yoloGtold1/train/27561.png +../../data/yoloGtold1/train/27562.png +../../data/yoloGtold1/train/27563.png +../../data/yoloGtold1/train/27564.png +../../data/yoloGtold1/train/27565.png +../../data/yoloGtold1/train/27566.png +../../data/yoloGtold1/train/27567.png +../../data/yoloGtold1/train/27568.png +../../data/yoloGtold1/train/27569.png +../../data/yoloGtold1/train/27570.png +../../data/yoloGtold1/train/27571.png +../../data/yoloGtold1/train/27572.png +../../data/yoloGtold1/train/27573.png +../../data/yoloGtold1/train/27574.png +../../data/yoloGtold1/train/27575.png +../../data/yoloGtold1/train/27576.png +../../data/yoloGtold1/train/27577.png +../../data/yoloGtold1/train/27578.png +../../data/yoloGtold1/train/27579.png +../../data/yoloGtold1/train/27580.png +../../data/yoloGtold1/train/27581.png +../../data/yoloGtold1/train/27582.png +../../data/yoloGtold1/train/27583.png +../../data/yoloGtold1/train/27584.png +../../data/yoloGtold1/train/27585.png +../../data/yoloGtold1/train/27586.png +../../data/yoloGtold1/train/27587.png +../../data/yoloGtold1/train/27588.png +../../data/yoloGtold1/train/27589.png +../../data/yoloGtold1/train/27590.png +../../data/yoloGtold1/train/27591.png +../../data/yoloGtold1/train/27592.png +../../data/yoloGtold1/train/27593.png +../../data/yoloGtold1/train/27594.png +../../data/yoloGtold1/train/27595.png +../../data/yoloGtold1/train/27596.png +../../data/yoloGtold1/train/27597.png +../../data/yoloGtold1/train/27598.png +../../data/yoloGtold1/train/27599.png +../../data/yoloGtold1/train/27600.png +../../data/yoloGtold1/train/27601.png +../../data/yoloGtold1/train/27602.png +../../data/yoloGtold1/train/27603.png +../../data/yoloGtold1/train/27604.png +../../data/yoloGtold1/train/27605.png +../../data/yoloGtold1/train/27606.png +../../data/yoloGtold1/train/27607.png +../../data/yoloGtold1/train/27608.png +../../data/yoloGtold1/train/27609.png +../../data/yoloGtold1/train/27610.png +../../data/yoloGtold1/train/27611.png +../../data/yoloGtold1/train/27612.png +../../data/yoloGtold1/train/27613.png +../../data/yoloGtold1/train/27614.png +../../data/yoloGtold1/train/27615.png +../../data/yoloGtold1/train/27616.png +../../data/yoloGtold1/train/27617.png +../../data/yoloGtold1/train/27618.png +../../data/yoloGtold1/train/27619.png +../../data/yoloGtold1/train/27620.png +../../data/yoloGtold1/train/27621.png +../../data/yoloGtold1/train/27622.png +../../data/yoloGtold1/train/27623.png +../../data/yoloGtold1/train/27624.png +../../data/yoloGtold1/train/27625.png +../../data/yoloGtold1/train/27626.png +../../data/yoloGtold1/train/27627.png +../../data/yoloGtold1/train/27628.png +../../data/yoloGtold1/train/27629.png +../../data/yoloGtold1/train/27630.png +../../data/yoloGtold1/train/27631.png +../../data/yoloGtold1/train/27632.png +../../data/yoloGtold1/train/27633.png +../../data/yoloGtold1/train/27634.png +../../data/yoloGtold1/train/27635.png +../../data/yoloGtold1/train/27636.png +../../data/yoloGtold1/train/27637.png +../../data/yoloGtold1/train/27638.png +../../data/yoloGtold1/train/27639.png +../../data/yoloGtold1/train/27640.png +../../data/yoloGtold1/train/27641.png +../../data/yoloGtold1/train/27642.png +../../data/yoloGtold1/train/27643.png +../../data/yoloGtold1/train/27644.png +../../data/yoloGtold1/train/27645.png +../../data/yoloGtold1/train/27646.png +../../data/yoloGtold1/train/27647.png +../../data/yoloGtold1/train/27648.png +../../data/yoloGtold1/train/27649.png +../../data/yoloGtold1/train/27650.png +../../data/yoloGtold1/train/27651.png +../../data/yoloGtold1/train/27652.png +../../data/yoloGtold1/train/27653.png +../../data/yoloGtold1/train/27654.png +../../data/yoloGtold1/train/27655.png +../../data/yoloGtold1/train/27656.png +../../data/yoloGtold1/train/27657.png +../../data/yoloGtold1/train/27658.png +../../data/yoloGtold1/train/27659.png +../../data/yoloGtold1/train/27660.png +../../data/yoloGtold1/train/27661.png +../../data/yoloGtold1/train/27662.png +../../data/yoloGtold1/train/27663.png +../../data/yoloGtold1/train/27664.png +../../data/yoloGtold1/train/27665.png +../../data/yoloGtold1/train/27666.png +../../data/yoloGtold1/train/27667.png +../../data/yoloGtold1/train/27668.png +../../data/yoloGtold1/train/27669.png +../../data/yoloGtold1/train/27670.png +../../data/yoloGtold1/train/27671.png +../../data/yoloGtold1/train/27672.png +../../data/yoloGtold1/train/27673.png +../../data/yoloGtold1/train/27674.png +../../data/yoloGtold1/train/27675.png +../../data/yoloGtold1/train/27676.png +../../data/yoloGtold1/train/27677.png +../../data/yoloGtold1/train/27678.png +../../data/yoloGtold1/train/27679.png +../../data/yoloGtold1/train/27680.png +../../data/yoloGtold1/train/27681.png +../../data/yoloGtold1/train/27682.png +../../data/yoloGtold1/train/27683.png +../../data/yoloGtold1/train/27684.png +../../data/yoloGtold1/train/27685.png +../../data/yoloGtold1/train/27686.png +../../data/yoloGtold1/train/27687.png +../../data/yoloGtold1/train/27688.png +../../data/yoloGtold1/train/27689.png +../../data/yoloGtold1/train/27690.png +../../data/yoloGtold1/train/27691.png +../../data/yoloGtold1/train/27692.png +../../data/yoloGtold1/train/27693.png +../../data/yoloGtold1/train/27694.png +../../data/yoloGtold1/train/27695.png +../../data/yoloGtold1/train/27696.png +../../data/yoloGtold1/train/27697.png +../../data/yoloGtold1/train/27698.png +../../data/yoloGtold1/train/27699.png +../../data/yoloGtold1/train/27700.png +../../data/yoloGtold1/train/27701.png +../../data/yoloGtold1/train/27702.png +../../data/yoloGtold1/train/27703.png +../../data/yoloGtold1/train/27704.png +../../data/yoloGtold1/train/27705.png +../../data/yoloGtold1/train/27706.png +../../data/yoloGtold1/train/27707.png +../../data/yoloGtold1/train/27708.png +../../data/yoloGtold1/train/27709.png +../../data/yoloGtold1/train/27710.png +../../data/yoloGtold1/train/27711.png +../../data/yoloGtold1/train/27712.png +../../data/yoloGtold1/train/27713.png +../../data/yoloGtold1/train/27714.png +../../data/yoloGtold1/train/27715.png +../../data/yoloGtold1/train/27716.png +../../data/yoloGtold1/train/27717.png +../../data/yoloGtold1/train/27718.png +../../data/yoloGtold1/train/27719.png +../../data/yoloGtold1/train/27720.png +../../data/yoloGtold1/train/27721.png +../../data/yoloGtold1/train/27722.png +../../data/yoloGtold1/train/27723.png +../../data/yoloGtold1/train/27724.png +../../data/yoloGtold1/train/27725.png +../../data/yoloGtold1/train/27726.png +../../data/yoloGtold1/train/27727.png +../../data/yoloGtold1/train/27728.png +../../data/yoloGtold1/train/27729.png +../../data/yoloGtold1/train/27730.png +../../data/yoloGtold1/train/27731.png +../../data/yoloGtold1/train/27732.png +../../data/yoloGtold1/train/27733.png +../../data/yoloGtold1/train/27734.png +../../data/yoloGtold1/train/27735.png +../../data/yoloGtold1/train/27736.png +../../data/yoloGtold1/train/27737.png +../../data/yoloGtold1/train/27738.png +../../data/yoloGtold1/train/27739.png +../../data/yoloGtold1/train/27740.png +../../data/yoloGtold1/train/27741.png +../../data/yoloGtold1/train/27742.png +../../data/yoloGtold1/train/27743.png +../../data/yoloGtold1/train/27744.png +../../data/yoloGtold1/train/27745.png +../../data/yoloGtold1/train/27746.png +../../data/yoloGtold1/train/27747.png +../../data/yoloGtold1/train/27748.png +../../data/yoloGtold1/train/27749.png +../../data/yoloGtold1/train/27750.png +../../data/yoloGtold1/train/27751.png +../../data/yoloGtold1/train/27752.png +../../data/yoloGtold1/train/27753.png +../../data/yoloGtold1/train/27754.png +../../data/yoloGtold1/train/27755.png +../../data/yoloGtold1/train/27756.png +../../data/yoloGtold1/train/27757.png +../../data/yoloGtold1/train/27758.png +../../data/yoloGtold1/train/27759.png +../../data/yoloGtold1/train/27760.png +../../data/yoloGtold1/train/27761.png +../../data/yoloGtold1/train/27762.png +../../data/yoloGtold1/train/27763.png +../../data/yoloGtold1/train/27764.png +../../data/yoloGtold1/train/27765.png +../../data/yoloGtold1/train/27766.png +../../data/yoloGtold1/train/27767.png +../../data/yoloGtold1/train/27768.png +../../data/yoloGtold1/train/27769.png +../../data/yoloGtold1/train/27770.png +../../data/yoloGtold1/train/27771.png +../../data/yoloGtold1/train/27772.png +../../data/yoloGtold1/train/27773.png +../../data/yoloGtold1/train/27774.png +../../data/yoloGtold1/train/27775.png +../../data/yoloGtold1/train/27776.png +../../data/yoloGtold1/train/27777.png +../../data/yoloGtold1/train/27778.png +../../data/yoloGtold1/train/27779.png +../../data/yoloGtold1/train/27780.png +../../data/yoloGtold1/train/27781.png +../../data/yoloGtold1/train/27782.png +../../data/yoloGtold1/train/27783.png +../../data/yoloGtold1/train/27784.png +../../data/yoloGtold1/train/27785.png +../../data/yoloGtold1/train/27786.png +../../data/yoloGtold1/train/27787.png +../../data/yoloGtold1/train/27788.png +../../data/yoloGtold1/train/27789.png +../../data/yoloGtold1/train/27790.png +../../data/yoloGtold1/train/27791.png +../../data/yoloGtold1/train/27792.png +../../data/yoloGtold1/train/27793.png +../../data/yoloGtold1/train/27794.png +../../data/yoloGtold1/train/27795.png +../../data/yoloGtold1/train/27796.png +../../data/yoloGtold1/train/27797.png +../../data/yoloGtold1/train/27798.png +../../data/yoloGtold1/train/27799.png +../../data/yoloGtold1/train/27800.png +../../data/yoloGtold1/train/27801.png +../../data/yoloGtold1/train/27802.png +../../data/yoloGtold1/train/27803.png +../../data/yoloGtold1/train/27804.png +../../data/yoloGtold1/train/27805.png +../../data/yoloGtold1/train/27806.png +../../data/yoloGtold1/train/27807.png +../../data/yoloGtold1/train/27808.png +../../data/yoloGtold1/train/27809.png +../../data/yoloGtold1/train/27810.png +../../data/yoloGtold1/train/27811.png +../../data/yoloGtold1/train/27812.png +../../data/yoloGtold1/train/27813.png +../../data/yoloGtold1/train/27814.png +../../data/yoloGtold1/train/27815.png +../../data/yoloGtold1/train/27816.png +../../data/yoloGtold1/train/27817.png +../../data/yoloGtold1/train/27818.png +../../data/yoloGtold1/train/27819.png +../../data/yoloGtold1/train/27820.png +../../data/yoloGtold1/train/27821.png +../../data/yoloGtold1/train/27822.png +../../data/yoloGtold1/train/27823.png +../../data/yoloGtold1/train/27824.png +../../data/yoloGtold1/train/27825.png +../../data/yoloGtold1/train/27826.png +../../data/yoloGtold1/train/27827.png +../../data/yoloGtold1/train/27828.png +../../data/yoloGtold1/train/27829.png +../../data/yoloGtold1/train/27830.png +../../data/yoloGtold1/train/27831.png +../../data/yoloGtold1/train/27832.png +../../data/yoloGtold1/train/27833.png +../../data/yoloGtold1/train/27834.png +../../data/yoloGtold1/train/27835.png +../../data/yoloGtold1/train/27836.png +../../data/yoloGtold1/train/27837.png +../../data/yoloGtold1/train/27838.png +../../data/yoloGtold1/train/27839.png +../../data/yoloGtold1/train/27840.png +../../data/yoloGtold1/train/27841.png +../../data/yoloGtold1/train/27842.png +../../data/yoloGtold1/train/27843.png +../../data/yoloGtold1/train/27844.png +../../data/yoloGtold1/train/27845.png +../../data/yoloGtold1/train/27846.png +../../data/yoloGtold1/train/27847.png +../../data/yoloGtold1/train/27848.png +../../data/yoloGtold1/train/27849.png +../../data/yoloGtold1/train/27850.png +../../data/yoloGtold1/train/27851.png +../../data/yoloGtold1/train/27852.png +../../data/yoloGtold1/train/27853.png +../../data/yoloGtold1/train/27854.png +../../data/yoloGtold1/train/27855.png +../../data/yoloGtold1/train/27856.png +../../data/yoloGtold1/train/27857.png +../../data/yoloGtold1/train/27858.png +../../data/yoloGtold1/train/27859.png +../../data/yoloGtold1/train/27860.png +../../data/yoloGtold1/train/27861.png +../../data/yoloGtold1/train/27862.png +../../data/yoloGtold1/train/27863.png +../../data/yoloGtold1/train/27864.png +../../data/yoloGtold1/train/27865.png +../../data/yoloGtold1/train/27866.png +../../data/yoloGtold1/train/27867.png +../../data/yoloGtold1/train/27868.png +../../data/yoloGtold1/train/27869.png +../../data/yoloGtold1/train/27870.png +../../data/yoloGtold1/train/27871.png +../../data/yoloGtold1/train/27872.png +../../data/yoloGtold1/train/27873.png +../../data/yoloGtold1/train/27874.png +../../data/yoloGtold1/train/27875.png +../../data/yoloGtold1/train/27876.png +../../data/yoloGtold1/train/27877.png +../../data/yoloGtold1/train/27878.png +../../data/yoloGtold1/train/27879.png +../../data/yoloGtold1/train/27880.png +../../data/yoloGtold1/train/27881.png +../../data/yoloGtold1/train/27882.png +../../data/yoloGtold1/train/27883.png +../../data/yoloGtold1/train/27884.png +../../data/yoloGtold1/train/27885.png +../../data/yoloGtold1/train/27886.png +../../data/yoloGtold1/train/27887.png +../../data/yoloGtold1/train/27888.png +../../data/yoloGtold1/train/27889.png +../../data/yoloGtold1/train/27890.png +../../data/yoloGtold1/train/27891.png +../../data/yoloGtold1/train/27892.png +../../data/yoloGtold1/train/27893.png +../../data/yoloGtold1/train/27894.png +../../data/yoloGtold1/train/27895.png +../../data/yoloGtold1/train/27896.png +../../data/yoloGtold1/train/27897.png +../../data/yoloGtold1/train/27898.png +../../data/yoloGtold1/train/27899.png +../../data/yoloGtold1/train/27900.png +../../data/yoloGtold1/train/27901.png +../../data/yoloGtold1/train/27902.png +../../data/yoloGtold1/train/27903.png +../../data/yoloGtold1/train/27904.png +../../data/yoloGtold1/train/27905.png +../../data/yoloGtold1/train/27906.png +../../data/yoloGtold1/train/27907.png +../../data/yoloGtold1/train/27908.png +../../data/yoloGtold1/train/27909.png +../../data/yoloGtold1/train/27910.png +../../data/yoloGtold1/train/27911.png +../../data/yoloGtold1/train/27912.png +../../data/yoloGtold1/train/27913.png +../../data/yoloGtold1/train/27914.png +../../data/yoloGtold1/train/27915.png +../../data/yoloGtold1/train/27916.png +../../data/yoloGtold1/train/27917.png +../../data/yoloGtold1/train/27918.png +../../data/yoloGtold1/train/27919.png +../../data/yoloGtold1/train/27920.png +../../data/yoloGtold1/train/27921.png +../../data/yoloGtold1/train/27922.png +../../data/yoloGtold1/train/27923.png +../../data/yoloGtold1/train/27924.png +../../data/yoloGtold1/train/27925.png +../../data/yoloGtold1/train/27926.png +../../data/yoloGtold1/train/27927.png +../../data/yoloGtold1/train/27928.png +../../data/yoloGtold1/train/27929.png +../../data/yoloGtold1/train/27930.png +../../data/yoloGtold1/train/27931.png +../../data/yoloGtold1/train/27932.png +../../data/yoloGtold1/train/27933.png +../../data/yoloGtold1/train/27934.png +../../data/yoloGtold1/train/27935.png +../../data/yoloGtold1/train/27936.png +../../data/yoloGtold1/train/27937.png +../../data/yoloGtold1/train/27938.png +../../data/yoloGtold1/train/27939.png +../../data/yoloGtold1/train/27940.png +../../data/yoloGtold1/train/27941.png +../../data/yoloGtold1/train/27942.png +../../data/yoloGtold1/train/27943.png +../../data/yoloGtold1/train/27944.png +../../data/yoloGtold1/train/27945.png +../../data/yoloGtold1/train/27946.png +../../data/yoloGtold1/train/27947.png +../../data/yoloGtold1/train/27948.png +../../data/yoloGtold1/train/27949.png +../../data/yoloGtold1/train/27950.png +../../data/yoloGtold1/train/27951.png +../../data/yoloGtold1/train/27952.png +../../data/yoloGtold1/train/27953.png +../../data/yoloGtold1/train/27954.png +../../data/yoloGtold1/train/27955.png +../../data/yoloGtold1/train/27956.png +../../data/yoloGtold1/train/27957.png +../../data/yoloGtold1/train/27958.png +../../data/yoloGtold1/train/27959.png +../../data/yoloGtold1/train/27960.png +../../data/yoloGtold1/train/27961.png +../../data/yoloGtold1/train/27962.png +../../data/yoloGtold1/train/27963.png +../../data/yoloGtold1/train/27964.png +../../data/yoloGtold1/train/27965.png +../../data/yoloGtold1/train/27966.png +../../data/yoloGtold1/train/27967.png +../../data/yoloGtold1/train/27968.png +../../data/yoloGtold1/train/27969.png +../../data/yoloGtold1/train/27970.png +../../data/yoloGtold1/train/27971.png +../../data/yoloGtold1/train/27972.png +../../data/yoloGtold1/train/27973.png +../../data/yoloGtold1/train/27974.png +../../data/yoloGtold1/train/27975.png +../../data/yoloGtold1/train/27976.png +../../data/yoloGtold1/train/27977.png +../../data/yoloGtold1/train/27978.png +../../data/yoloGtold1/train/27979.png +../../data/yoloGtold1/train/27980.png +../../data/yoloGtold1/train/27981.png +../../data/yoloGtold1/train/27982.png +../../data/yoloGtold1/train/27983.png +../../data/yoloGtold1/train/27984.png +../../data/yoloGtold1/train/27985.png +../../data/yoloGtold1/train/27986.png +../../data/yoloGtold1/train/27987.png +../../data/yoloGtold1/train/27988.png +../../data/yoloGtold1/train/27989.png +../../data/yoloGtold1/train/27990.png +../../data/yoloGtold1/train/27991.png +../../data/yoloGtold1/train/27992.png +../../data/yoloGtold1/train/27993.png +../../data/yoloGtold1/train/27994.png +../../data/yoloGtold1/train/27995.png +../../data/yoloGtold1/train/27996.png +../../data/yoloGtold1/train/27997.png +../../data/yoloGtold1/train/27998.png +../../data/yoloGtold1/train/27999.png +../../data/yoloGtold1/train/28000.png +../../data/yoloGtold1/train/28001.png +../../data/yoloGtold1/train/28002.png +../../data/yoloGtold1/train/28003.png +../../data/yoloGtold1/train/28004.png +../../data/yoloGtold1/train/28005.png +../../data/yoloGtold1/train/28006.png +../../data/yoloGtold1/train/28007.png +../../data/yoloGtold1/train/28008.png +../../data/yoloGtold1/train/28009.png +../../data/yoloGtold1/train/28010.png +../../data/yoloGtold1/train/28011.png +../../data/yoloGtold1/train/28012.png +../../data/yoloGtold1/train/28013.png +../../data/yoloGtold1/train/28014.png +../../data/yoloGtold1/train/28015.png +../../data/yoloGtold1/train/28016.png +../../data/yoloGtold1/train/28017.png +../../data/yoloGtold1/train/28018.png +../../data/yoloGtold1/train/28019.png +../../data/yoloGtold1/train/28020.png +../../data/yoloGtold1/train/28021.png +../../data/yoloGtold1/train/28022.png +../../data/yoloGtold1/train/28023.png +../../data/yoloGtold1/train/28024.png +../../data/yoloGtold1/train/28025.png +../../data/yoloGtold1/train/28026.png +../../data/yoloGtold1/train/28027.png +../../data/yoloGtold1/train/28028.png +../../data/yoloGtold1/train/28029.png +../../data/yoloGtold1/train/28030.png +../../data/yoloGtold1/train/28031.png +../../data/yoloGtold1/train/28032.png +../../data/yoloGtold1/train/28033.png +../../data/yoloGtold1/train/28034.png +../../data/yoloGtold1/train/28035.png +../../data/yoloGtold1/train/28036.png +../../data/yoloGtold1/train/28037.png +../../data/yoloGtold1/train/28038.png +../../data/yoloGtold1/train/28039.png +../../data/yoloGtold1/train/28040.png +../../data/yoloGtold1/train/28041.png +../../data/yoloGtold1/train/28042.png +../../data/yoloGtold1/train/28043.png +../../data/yoloGtold1/train/28044.png +../../data/yoloGtold1/train/28045.png +../../data/yoloGtold1/train/28046.png +../../data/yoloGtold1/train/28047.png +../../data/yoloGtold1/train/28048.png +../../data/yoloGtold1/train/28049.png +../../data/yoloGtold1/train/28050.png +../../data/yoloGtold1/train/28051.png +../../data/yoloGtold1/train/28052.png +../../data/yoloGtold1/train/28053.png +../../data/yoloGtold1/train/28054.png +../../data/yoloGtold1/train/28055.png +../../data/yoloGtold1/train/28056.png +../../data/yoloGtold1/train/28057.png +../../data/yoloGtold1/train/28058.png +../../data/yoloGtold1/train/28059.png +../../data/yoloGtold1/train/28060.png +../../data/yoloGtold1/train/28061.png +../../data/yoloGtold1/train/28062.png +../../data/yoloGtold1/train/28063.png +../../data/yoloGtold1/train/28064.png +../../data/yoloGtold1/train/28065.png +../../data/yoloGtold1/train/28066.png +../../data/yoloGtold1/train/28067.png +../../data/yoloGtold1/train/28068.png +../../data/yoloGtold1/train/28069.png +../../data/yoloGtold1/train/28070.png +../../data/yoloGtold1/train/28071.png +../../data/yoloGtold1/train/28072.png +../../data/yoloGtold1/train/28073.png +../../data/yoloGtold1/train/28074.png +../../data/yoloGtold1/train/28075.png +../../data/yoloGtold1/train/28076.png +../../data/yoloGtold1/train/28077.png +../../data/yoloGtold1/train/28078.png +../../data/yoloGtold1/train/28079.png +../../data/yoloGtold1/train/28080.png +../../data/yoloGtold1/train/28081.png +../../data/yoloGtold1/train/28082.png +../../data/yoloGtold1/train/28083.png +../../data/yoloGtold1/train/28084.png +../../data/yoloGtold1/train/28085.png +../../data/yoloGtold1/train/28086.png +../../data/yoloGtold1/train/28087.png +../../data/yoloGtold1/train/28088.png +../../data/yoloGtold1/train/28089.png +../../data/yoloGtold1/train/28090.png +../../data/yoloGtold1/train/28091.png +../../data/yoloGtold1/train/28092.png +../../data/yoloGtold1/train/28093.png +../../data/yoloGtold1/train/28094.png +../../data/yoloGtold1/train/28095.png +../../data/yoloGtold1/train/28096.png +../../data/yoloGtold1/train/28097.png +../../data/yoloGtold1/train/28098.png +../../data/yoloGtold1/train/28099.png +../../data/yoloGtold1/train/28100.png +../../data/yoloGtold1/train/28101.png +../../data/yoloGtold1/train/28102.png +../../data/yoloGtold1/train/28103.png +../../data/yoloGtold1/train/28104.png +../../data/yoloGtold1/train/28105.png +../../data/yoloGtold1/train/28106.png +../../data/yoloGtold1/train/28107.png +../../data/yoloGtold1/train/28108.png +../../data/yoloGtold1/train/28109.png +../../data/yoloGtold1/train/28110.png +../../data/yoloGtold1/train/28111.png +../../data/yoloGtold1/train/28112.png +../../data/yoloGtold1/train/28113.png +../../data/yoloGtold1/train/28114.png +../../data/yoloGtold1/train/28115.png +../../data/yoloGtold1/train/28116.png +../../data/yoloGtold1/train/28117.png +../../data/yoloGtold1/train/28118.png +../../data/yoloGtold1/train/28119.png +../../data/yoloGtold1/train/28120.png +../../data/yoloGtold1/train/28121.png +../../data/yoloGtold1/train/28122.png +../../data/yoloGtold1/train/28123.png +../../data/yoloGtold1/train/28124.png +../../data/yoloGtold1/train/28125.png +../../data/yoloGtold1/train/28126.png +../../data/yoloGtold1/train/28127.png +../../data/yoloGtold1/train/28128.png +../../data/yoloGtold1/train/28129.png +../../data/yoloGtold1/train/28130.png +../../data/yoloGtold1/train/28131.png +../../data/yoloGtold1/train/28132.png +../../data/yoloGtold1/train/28133.png +../../data/yoloGtold1/train/28134.png +../../data/yoloGtold1/train/28135.png +../../data/yoloGtold1/train/28136.png +../../data/yoloGtold1/train/28137.png +../../data/yoloGtold1/train/28138.png +../../data/yoloGtold1/train/28139.png +../../data/yoloGtold1/train/28140.png +../../data/yoloGtold1/train/28141.png +../../data/yoloGtold1/train/28142.png +../../data/yoloGtold1/train/28143.png +../../data/yoloGtold1/train/28144.png +../../data/yoloGtold1/train/28145.png +../../data/yoloGtold1/train/28146.png +../../data/yoloGtold1/train/28147.png +../../data/yoloGtold1/train/28148.png +../../data/yoloGtold1/train/28149.png +../../data/yoloGtold1/train/28150.png +../../data/yoloGtold1/train/28151.png +../../data/yoloGtold1/train/28152.png +../../data/yoloGtold1/train/28153.png +../../data/yoloGtold1/train/28154.png +../../data/yoloGtold1/train/28155.png +../../data/yoloGtold1/train/28156.png +../../data/yoloGtold1/train/28157.png +../../data/yoloGtold1/train/28158.png +../../data/yoloGtold1/train/28159.png +../../data/yoloGtold1/train/28160.png +../../data/yoloGtold1/train/28161.png +../../data/yoloGtold1/train/28162.png +../../data/yoloGtold1/train/28163.png +../../data/yoloGtold1/train/28164.png +../../data/yoloGtold1/train/28165.png +../../data/yoloGtold1/train/28166.png +../../data/yoloGtold1/train/28167.png +../../data/yoloGtold1/train/28168.png +../../data/yoloGtold1/train/28169.png +../../data/yoloGtold1/train/28170.png +../../data/yoloGtold1/train/28171.png +../../data/yoloGtold1/train/28172.png +../../data/yoloGtold1/train/28173.png +../../data/yoloGtold1/train/28174.png +../../data/yoloGtold1/train/28175.png +../../data/yoloGtold1/train/28176.png +../../data/yoloGtold1/train/28177.png +../../data/yoloGtold1/train/28178.png +../../data/yoloGtold1/train/28179.png +../../data/yoloGtold1/train/28180.png +../../data/yoloGtold1/train/28181.png +../../data/yoloGtold1/train/28182.png +../../data/yoloGtold1/train/28183.png +../../data/yoloGtold1/train/28184.png +../../data/yoloGtold1/train/28185.png +../../data/yoloGtold1/train/28186.png +../../data/yoloGtold1/train/28187.png +../../data/yoloGtold1/train/28188.png +../../data/yoloGtold1/train/28189.png +../../data/yoloGtold1/train/28190.png +../../data/yoloGtold1/train/28191.png +../../data/yoloGtold1/train/28192.png +../../data/yoloGtold1/train/28193.png +../../data/yoloGtold1/train/28194.png +../../data/yoloGtold1/train/28195.png +../../data/yoloGtold1/train/28196.png +../../data/yoloGtold1/train/28197.png +../../data/yoloGtold1/train/28198.png +../../data/yoloGtold1/train/28199.png +../../data/yoloGtold1/train/28200.png +../../data/yoloGtold1/train/28201.png +../../data/yoloGtold1/train/28202.png +../../data/yoloGtold1/train/28203.png +../../data/yoloGtold1/train/28204.png +../../data/yoloGtold1/train/28205.png +../../data/yoloGtold1/train/28206.png +../../data/yoloGtold1/train/28207.png +../../data/yoloGtold1/train/28208.png +../../data/yoloGtold1/train/28209.png +../../data/yoloGtold1/train/28210.png +../../data/yoloGtold1/train/28211.png +../../data/yoloGtold1/train/28212.png +../../data/yoloGtold1/train/28213.png +../../data/yoloGtold1/train/28214.png +../../data/yoloGtold1/train/28215.png +../../data/yoloGtold1/train/28216.png +../../data/yoloGtold1/train/28217.png +../../data/yoloGtold1/train/28218.png +../../data/yoloGtold1/train/28219.png +../../data/yoloGtold1/train/28220.png +../../data/yoloGtold1/train/28221.png +../../data/yoloGtold1/train/28222.png +../../data/yoloGtold1/train/28223.png +../../data/yoloGtold1/train/28224.png +../../data/yoloGtold1/train/28225.png +../../data/yoloGtold1/train/28226.png +../../data/yoloGtold1/train/28227.png +../../data/yoloGtold1/train/28228.png +../../data/yoloGtold1/train/28229.png +../../data/yoloGtold1/train/28230.png +../../data/yoloGtold1/train/28231.png +../../data/yoloGtold1/train/28232.png +../../data/yoloGtold1/train/28233.png +../../data/yoloGtold1/train/28234.png +../../data/yoloGtold1/train/28235.png +../../data/yoloGtold1/train/28236.png +../../data/yoloGtold1/train/28237.png +../../data/yoloGtold1/train/28238.png +../../data/yoloGtold1/train/28239.png +../../data/yoloGtold1/train/28240.png +../../data/yoloGtold1/train/28241.png +../../data/yoloGtold1/train/28242.png +../../data/yoloGtold1/train/28243.png +../../data/yoloGtold1/train/28244.png +../../data/yoloGtold1/train/28245.png +../../data/yoloGtold1/train/28246.png +../../data/yoloGtold1/train/28247.png +../../data/yoloGtold1/train/28248.png +../../data/yoloGtold1/train/28249.png +../../data/yoloGtold1/train/28250.png +../../data/yoloGtold1/train/28251.png +../../data/yoloGtold1/train/28252.png +../../data/yoloGtold1/train/28253.png +../../data/yoloGtold1/train/28254.png +../../data/yoloGtold1/train/28255.png +../../data/yoloGtold1/train/28256.png +../../data/yoloGtold1/train/28257.png +../../data/yoloGtold1/train/28258.png +../../data/yoloGtold1/train/28259.png +../../data/yoloGtold1/train/28260.png +../../data/yoloGtold1/train/28261.png +../../data/yoloGtold1/train/28262.png +../../data/yoloGtold1/train/28263.png +../../data/yoloGtold1/train/28264.png +../../data/yoloGtold1/train/28265.png +../../data/yoloGtold1/train/28266.png +../../data/yoloGtold1/train/28267.png +../../data/yoloGtold1/train/28268.png +../../data/yoloGtold1/train/28269.png +../../data/yoloGtold1/train/28270.png +../../data/yoloGtold1/train/28271.png +../../data/yoloGtold1/train/28272.png +../../data/yoloGtold1/train/28273.png +../../data/yoloGtold1/train/28274.png +../../data/yoloGtold1/train/28275.png +../../data/yoloGtold1/train/28276.png +../../data/yoloGtold1/train/28277.png +../../data/yoloGtold1/train/28278.png +../../data/yoloGtold1/train/28279.png +../../data/yoloGtold1/train/28280.png +../../data/yoloGtold1/train/28281.png +../../data/yoloGtold1/train/28282.png +../../data/yoloGtold1/train/28283.png +../../data/yoloGtold1/train/28284.png +../../data/yoloGtold1/train/28285.png +../../data/yoloGtold1/train/28286.png +../../data/yoloGtold1/train/28287.png +../../data/yoloGtold1/train/28288.png +../../data/yoloGtold1/train/28289.png +../../data/yoloGtold1/train/28290.png +../../data/yoloGtold1/train/28291.png +../../data/yoloGtold1/train/28292.png +../../data/yoloGtold1/train/28293.png +../../data/yoloGtold1/train/28294.png +../../data/yoloGtold1/train/28295.png +../../data/yoloGtold1/train/28296.png +../../data/yoloGtold1/train/28297.png +../../data/yoloGtold1/train/28298.png +../../data/yoloGtold1/train/28299.png +../../data/yoloGtold1/train/28300.png +../../data/yoloGtold1/train/28301.png +../../data/yoloGtold1/train/28302.png +../../data/yoloGtold1/train/28303.png +../../data/yoloGtold1/train/28304.png +../../data/yoloGtold1/train/28305.png +../../data/yoloGtold1/train/28306.png +../../data/yoloGtold1/train/28307.png +../../data/yoloGtold1/train/28308.png +../../data/yoloGtold1/train/28309.png +../../data/yoloGtold1/train/28310.png +../../data/yoloGtold1/train/28311.png +../../data/yoloGtold1/train/28312.png +../../data/yoloGtold1/train/28313.png +../../data/yoloGtold1/train/28314.png +../../data/yoloGtold1/train/28315.png +../../data/yoloGtold1/train/28316.png +../../data/yoloGtold1/train/28317.png +../../data/yoloGtold1/train/28318.png +../../data/yoloGtold1/train/28319.png +../../data/yoloGtold1/train/28320.png +../../data/yoloGtold1/train/28321.png +../../data/yoloGtold1/train/28322.png +../../data/yoloGtold1/train/28323.png +../../data/yoloGtold1/train/28324.png +../../data/yoloGtold1/train/28325.png +../../data/yoloGtold1/train/28326.png +../../data/yoloGtold1/train/28327.png +../../data/yoloGtold1/train/28328.png +../../data/yoloGtold1/train/28329.png +../../data/yoloGtold1/train/28330.png +../../data/yoloGtold1/train/28331.png +../../data/yoloGtold1/train/28332.png +../../data/yoloGtold1/train/28333.png +../../data/yoloGtold1/train/28334.png +../../data/yoloGtold1/train/28335.png +../../data/yoloGtold1/train/28336.png +../../data/yoloGtold1/train/28337.png +../../data/yoloGtold1/train/28338.png +../../data/yoloGtold1/train/28339.png +../../data/yoloGtold1/train/28340.png +../../data/yoloGtold1/train/28341.png +../../data/yoloGtold1/train/28342.png +../../data/yoloGtold1/train/28343.png +../../data/yoloGtold1/train/28344.png +../../data/yoloGtold1/train/28345.png +../../data/yoloGtold1/train/28346.png +../../data/yoloGtold1/train/28347.png +../../data/yoloGtold1/train/28348.png +../../data/yoloGtold1/train/28349.png +../../data/yoloGtold1/train/28350.png +../../data/yoloGtold1/train/28351.png +../../data/yoloGtold1/train/28352.png +../../data/yoloGtold1/train/28353.png +../../data/yoloGtold1/train/28354.png +../../data/yoloGtold1/train/28355.png +../../data/yoloGtold1/train/28356.png +../../data/yoloGtold1/train/28357.png +../../data/yoloGtold1/train/28358.png +../../data/yoloGtold1/train/28359.png +../../data/yoloGtold1/train/28360.png +../../data/yoloGtold1/train/28361.png +../../data/yoloGtold1/train/28362.png +../../data/yoloGtold1/train/28363.png +../../data/yoloGtold1/train/28364.png +../../data/yoloGtold1/train/28365.png +../../data/yoloGtold1/train/28366.png +../../data/yoloGtold1/train/28367.png +../../data/yoloGtold1/train/28368.png +../../data/yoloGtold1/train/28369.png +../../data/yoloGtold1/train/28370.png +../../data/yoloGtold1/train/28371.png +../../data/yoloGtold1/train/28372.png +../../data/yoloGtold1/train/28373.png +../../data/yoloGtold1/train/28374.png +../../data/yoloGtold1/train/28375.png +../../data/yoloGtold1/train/28376.png +../../data/yoloGtold1/train/28377.png +../../data/yoloGtold1/train/28378.png +../../data/yoloGtold1/train/28379.png +../../data/yoloGtold1/train/28380.png +../../data/yoloGtold1/train/28381.png +../../data/yoloGtold1/train/28382.png +../../data/yoloGtold1/train/28383.png +../../data/yoloGtold1/train/28384.png +../../data/yoloGtold1/train/28385.png +../../data/yoloGtold1/train/28386.png +../../data/yoloGtold1/train/28387.png +../../data/yoloGtold1/train/28388.png +../../data/yoloGtold1/train/28389.png +../../data/yoloGtold1/train/28390.png +../../data/yoloGtold1/train/28391.png +../../data/yoloGtold1/train/28392.png +../../data/yoloGtold1/train/28393.png +../../data/yoloGtold1/train/28394.png +../../data/yoloGtold1/train/28395.png +../../data/yoloGtold1/train/28396.png +../../data/yoloGtold1/train/28397.png +../../data/yoloGtold1/train/28398.png +../../data/yoloGtold1/train/28399.png +../../data/yoloGtold1/train/28400.png +../../data/yoloGtold1/train/28401.png +../../data/yoloGtold1/train/28402.png +../../data/yoloGtold1/train/28403.png +../../data/yoloGtold1/train/28404.png +../../data/yoloGtold1/train/28405.png +../../data/yoloGtold1/train/28406.png +../../data/yoloGtold1/train/28407.png +../../data/yoloGtold1/train/28408.png +../../data/yoloGtold1/train/28409.png +../../data/yoloGtold1/train/28410.png +../../data/yoloGtold1/train/28411.png +../../data/yoloGtold1/train/28412.png +../../data/yoloGtold1/train/28413.png +../../data/yoloGtold1/train/28414.png +../../data/yoloGtold1/train/28415.png +../../data/yoloGtold1/train/28416.png +../../data/yoloGtold1/train/28417.png +../../data/yoloGtold1/train/28418.png +../../data/yoloGtold1/train/28419.png +../../data/yoloGtold1/train/28420.png +../../data/yoloGtold1/train/28421.png +../../data/yoloGtold1/train/28422.png +../../data/yoloGtold1/train/28423.png +../../data/yoloGtold1/train/28424.png +../../data/yoloGtold1/train/28425.png +../../data/yoloGtold1/train/28426.png +../../data/yoloGtold1/train/28427.png +../../data/yoloGtold1/train/28428.png +../../data/yoloGtold1/train/28429.png +../../data/yoloGtold1/train/28430.png +../../data/yoloGtold1/train/28431.png +../../data/yoloGtold1/train/28432.png +../../data/yoloGtold1/train/28433.png +../../data/yoloGtold1/train/28434.png +../../data/yoloGtold1/train/28435.png +../../data/yoloGtold1/train/28436.png +../../data/yoloGtold1/train/28437.png +../../data/yoloGtold1/train/28438.png +../../data/yoloGtold1/train/28439.png +../../data/yoloGtold1/train/28440.png +../../data/yoloGtold1/train/28441.png +../../data/yoloGtold1/train/28442.png +../../data/yoloGtold1/train/28443.png +../../data/yoloGtold1/train/28444.png +../../data/yoloGtold1/train/28445.png +../../data/yoloGtold1/train/28446.png +../../data/yoloGtold1/train/28447.png +../../data/yoloGtold1/train/28448.png +../../data/yoloGtold1/train/28449.png +../../data/yoloGtold1/train/28450.png +../../data/yoloGtold1/train/28451.png +../../data/yoloGtold1/train/28452.png +../../data/yoloGtold1/train/28453.png +../../data/yoloGtold1/train/28454.png +../../data/yoloGtold1/train/28455.png +../../data/yoloGtold1/train/28456.png +../../data/yoloGtold1/train/28457.png +../../data/yoloGtold1/train/28458.png +../../data/yoloGtold1/train/28459.png +../../data/yoloGtold1/train/28460.png +../../data/yoloGtold1/train/28461.png +../../data/yoloGtold1/train/28462.png +../../data/yoloGtold1/train/28463.png +../../data/yoloGtold1/train/28464.png +../../data/yoloGtold1/train/28465.png +../../data/yoloGtold1/train/28466.png +../../data/yoloGtold1/train/28467.png +../../data/yoloGtold1/train/28468.png +../../data/yoloGtold1/train/28469.png +../../data/yoloGtold1/train/28470.png +../../data/yoloGtold1/train/28471.png +../../data/yoloGtold1/train/28472.png +../../data/yoloGtold1/train/28473.png +../../data/yoloGtold1/train/28474.png +../../data/yoloGtold1/train/28475.png +../../data/yoloGtold1/train/28476.png +../../data/yoloGtold1/train/28477.png +../../data/yoloGtold1/train/28478.png +../../data/yoloGtold1/train/28479.png +../../data/yoloGtold1/train/28480.png +../../data/yoloGtold1/train/28481.png +../../data/yoloGtold1/train/28482.png +../../data/yoloGtold1/train/28483.png +../../data/yoloGtold1/train/28484.png +../../data/yoloGtold1/train/28485.png +../../data/yoloGtold1/train/28486.png +../../data/yoloGtold1/train/28487.png +../../data/yoloGtold1/train/28488.png +../../data/yoloGtold1/train/28489.png +../../data/yoloGtold1/train/28490.png +../../data/yoloGtold1/train/28491.png +../../data/yoloGtold1/train/28492.png +../../data/yoloGtold1/train/28493.png +../../data/yoloGtold1/train/28494.png +../../data/yoloGtold1/train/28495.png +../../data/yoloGtold1/train/28496.png +../../data/yoloGtold1/train/28497.png +../../data/yoloGtold1/train/28498.png +../../data/yoloGtold1/train/28499.png +../../data/yoloGtold1/train/28500.png +../../data/yoloGtold1/train/28501.png +../../data/yoloGtold1/train/28502.png +../../data/yoloGtold1/train/28503.png +../../data/yoloGtold1/train/28504.png +../../data/yoloGtold1/train/28505.png +../../data/yoloGtold1/train/28506.png +../../data/yoloGtold1/train/28507.png +../../data/yoloGtold1/train/28508.png +../../data/yoloGtold1/train/28509.png +../../data/yoloGtold1/train/28510.png +../../data/yoloGtold1/train/28511.png +../../data/yoloGtold1/train/28512.png +../../data/yoloGtold1/train/28513.png +../../data/yoloGtold1/train/28514.png +../../data/yoloGtold1/train/28515.png +../../data/yoloGtold1/train/28516.png +../../data/yoloGtold1/train/28517.png +../../data/yoloGtold1/train/28518.png +../../data/yoloGtold1/train/28519.png +../../data/yoloGtold1/train/28520.png +../../data/yoloGtold1/train/28521.png +../../data/yoloGtold1/train/28522.png +../../data/yoloGtold1/train/28523.png +../../data/yoloGtold1/train/28524.png +../../data/yoloGtold1/train/28525.png +../../data/yoloGtold1/train/28526.png +../../data/yoloGtold1/train/28527.png +../../data/yoloGtold1/train/28528.png +../../data/yoloGtold1/train/28529.png +../../data/yoloGtold1/train/28530.png +../../data/yoloGtold1/train/28531.png +../../data/yoloGtold1/train/28532.png +../../data/yoloGtold1/train/28533.png +../../data/yoloGtold1/train/28534.png +../../data/yoloGtold1/train/28535.png +../../data/yoloGtold1/train/28536.png +../../data/yoloGtold1/train/28537.png +../../data/yoloGtold1/train/28538.png +../../data/yoloGtold1/train/28539.png +../../data/yoloGtold1/train/28540.png +../../data/yoloGtold1/train/28541.png +../../data/yoloGtold1/train/28542.png +../../data/yoloGtold1/train/28543.png +../../data/yoloGtold1/train/28544.png +../../data/yoloGtold1/train/28545.png +../../data/yoloGtold1/train/28546.png +../../data/yoloGtold1/train/28547.png +../../data/yoloGtold1/train/28548.png +../../data/yoloGtold1/train/28549.png +../../data/yoloGtold1/train/28550.png +../../data/yoloGtold1/train/28551.png +../../data/yoloGtold1/train/28552.png +../../data/yoloGtold1/train/28553.png +../../data/yoloGtold1/train/28554.png +../../data/yoloGtold1/train/28555.png +../../data/yoloGtold1/train/28556.png +../../data/yoloGtold1/train/28557.png +../../data/yoloGtold1/train/28558.png +../../data/yoloGtold1/train/28559.png +../../data/yoloGtold1/train/28560.png +../../data/yoloGtold1/train/28561.png +../../data/yoloGtold1/train/28562.png +../../data/yoloGtold1/train/28563.png +../../data/yoloGtold1/train/28564.png +../../data/yoloGtold1/train/28565.png +../../data/yoloGtold1/train/28566.png +../../data/yoloGtold1/train/28567.png +../../data/yoloGtold1/train/28568.png +../../data/yoloGtold1/train/28569.png +../../data/yoloGtold1/train/28570.png +../../data/yoloGtold1/train/28571.png +../../data/yoloGtold1/train/28572.png +../../data/yoloGtold1/train/28573.png +../../data/yoloGtold1/train/28574.png +../../data/yoloGtold1/train/28575.png +../../data/yoloGtold1/train/28576.png +../../data/yoloGtold1/train/28577.png +../../data/yoloGtold1/train/28578.png +../../data/yoloGtold1/train/28579.png +../../data/yoloGtold1/train/28580.png +../../data/yoloGtold1/train/28581.png +../../data/yoloGtold1/train/28582.png +../../data/yoloGtold1/train/28583.png +../../data/yoloGtold1/train/28584.png +../../data/yoloGtold1/train/28585.png +../../data/yoloGtold1/train/28586.png +../../data/yoloGtold1/train/28587.png +../../data/yoloGtold1/train/28588.png +../../data/yoloGtold1/train/28589.png +../../data/yoloGtold1/train/28590.png +../../data/yoloGtold1/train/28591.png +../../data/yoloGtold1/train/28592.png +../../data/yoloGtold1/train/28593.png +../../data/yoloGtold1/train/28594.png +../../data/yoloGtold1/train/28595.png +../../data/yoloGtold1/train/28596.png +../../data/yoloGtold1/train/28597.png +../../data/yoloGtold1/train/28598.png +../../data/yoloGtold1/train/28599.png +../../data/yoloGtold1/train/28600.png +../../data/yoloGtold1/train/28601.png +../../data/yoloGtold1/train/28602.png +../../data/yoloGtold1/train/28603.png +../../data/yoloGtold1/train/28604.png +../../data/yoloGtold1/train/28605.png +../../data/yoloGtold1/train/28606.png +../../data/yoloGtold1/train/28607.png +../../data/yoloGtold1/train/28608.png +../../data/yoloGtold1/train/28609.png +../../data/yoloGtold1/train/28610.png +../../data/yoloGtold1/train/28611.png +../../data/yoloGtold1/train/28612.png +../../data/yoloGtold1/train/28613.png +../../data/yoloGtold1/train/28614.png +../../data/yoloGtold1/train/28615.png +../../data/yoloGtold1/train/28616.png +../../data/yoloGtold1/train/28617.png +../../data/yoloGtold1/train/28618.png +../../data/yoloGtold1/train/28619.png +../../data/yoloGtold1/train/28620.png +../../data/yoloGtold1/train/28621.png +../../data/yoloGtold1/train/28622.png +../../data/yoloGtold1/train/28623.png +../../data/yoloGtold1/train/28624.png +../../data/yoloGtold1/train/28625.png +../../data/yoloGtold1/train/28626.png +../../data/yoloGtold1/train/28627.png +../../data/yoloGtold1/train/28628.png +../../data/yoloGtold1/train/28629.png +../../data/yoloGtold1/train/28630.png +../../data/yoloGtold1/train/28631.png +../../data/yoloGtold1/train/28632.png +../../data/yoloGtold1/train/28633.png +../../data/yoloGtold1/train/28634.png +../../data/yoloGtold1/train/28635.png +../../data/yoloGtold1/train/28636.png +../../data/yoloGtold1/train/28637.png +../../data/yoloGtold1/train/28638.png +../../data/yoloGtold1/train/28639.png +../../data/yoloGtold1/train/28640.png +../../data/yoloGtold1/train/28641.png +../../data/yoloGtold1/train/28642.png +../../data/yoloGtold1/train/28643.png +../../data/yoloGtold1/train/28644.png +../../data/yoloGtold1/train/28645.png +../../data/yoloGtold1/train/28646.png +../../data/yoloGtold1/train/28647.png +../../data/yoloGtold1/train/28648.png +../../data/yoloGtold1/train/28649.png +../../data/yoloGtold1/train/28650.png +../../data/yoloGtold1/train/28651.png +../../data/yoloGtold1/train/28652.png +../../data/yoloGtold1/train/28653.png +../../data/yoloGtold1/train/28654.png +../../data/yoloGtold1/train/28655.png +../../data/yoloGtold1/train/28656.png +../../data/yoloGtold1/train/28657.png +../../data/yoloGtold1/train/28658.png +../../data/yoloGtold1/train/28659.png +../../data/yoloGtold1/train/28660.png +../../data/yoloGtold1/train/28661.png +../../data/yoloGtold1/train/28662.png +../../data/yoloGtold1/train/28663.png +../../data/yoloGtold1/train/28664.png +../../data/yoloGtold1/train/28665.png +../../data/yoloGtold1/train/28666.png +../../data/yoloGtold1/train/28667.png +../../data/yoloGtold1/train/28668.png +../../data/yoloGtold1/train/28669.png +../../data/yoloGtold1/train/28670.png +../../data/yoloGtold1/train/28671.png +../../data/yoloGtold1/train/28672.png +../../data/yoloGtold1/train/28673.png +../../data/yoloGtold1/train/28674.png +../../data/yoloGtold1/train/28675.png +../../data/yoloGtold1/train/28676.png +../../data/yoloGtold1/train/28677.png +../../data/yoloGtold1/train/28678.png +../../data/yoloGtold1/train/28679.png +../../data/yoloGtold1/train/28680.png +../../data/yoloGtold1/train/28681.png +../../data/yoloGtold1/train/28682.png +../../data/yoloGtold1/train/28683.png +../../data/yoloGtold1/train/28684.png +../../data/yoloGtold1/train/28685.png +../../data/yoloGtold1/train/28686.png +../../data/yoloGtold1/train/28687.png +../../data/yoloGtold1/train/28688.png +../../data/yoloGtold1/train/28689.png +../../data/yoloGtold1/train/28690.png +../../data/yoloGtold1/train/28691.png +../../data/yoloGtold1/train/28692.png +../../data/yoloGtold1/train/28693.png +../../data/yoloGtold1/train/28694.png +../../data/yoloGtold1/train/28695.png +../../data/yoloGtold1/train/28696.png +../../data/yoloGtold1/train/28697.png +../../data/yoloGtold1/train/28698.png +../../data/yoloGtold1/train/28699.png +../../data/yoloGtold1/train/28700.png +../../data/yoloGtold1/train/28701.png +../../data/yoloGtold1/train/28702.png +../../data/yoloGtold1/train/28703.png +../../data/yoloGtold1/train/28704.png +../../data/yoloGtold1/train/28705.png +../../data/yoloGtold1/train/28706.png +../../data/yoloGtold1/train/28707.png +../../data/yoloGtold1/train/28708.png +../../data/yoloGtold1/train/28709.png +../../data/yoloGtold1/train/28710.png +../../data/yoloGtold1/train/28711.png +../../data/yoloGtold1/train/28712.png +../../data/yoloGtold1/train/28713.png +../../data/yoloGtold1/train/28714.png +../../data/yoloGtold1/train/28715.png +../../data/yoloGtold1/train/28716.png +../../data/yoloGtold1/train/28717.png +../../data/yoloGtold1/train/28718.png +../../data/yoloGtold1/train/28719.png +../../data/yoloGtold1/train/28720.png +../../data/yoloGtold1/train/28721.png +../../data/yoloGtold1/train/28722.png +../../data/yoloGtold1/train/28723.png +../../data/yoloGtold1/train/28724.png +../../data/yoloGtold1/train/28725.png +../../data/yoloGtold1/train/28726.png +../../data/yoloGtold1/train/28727.png +../../data/yoloGtold1/train/28728.png +../../data/yoloGtold1/train/28729.png +../../data/yoloGtold1/train/28730.png +../../data/yoloGtold1/train/28731.png +../../data/yoloGtold1/train/28732.png +../../data/yoloGtold1/train/28733.png +../../data/yoloGtold1/train/28734.png +../../data/yoloGtold1/train/28735.png +../../data/yoloGtold1/train/28736.png +../../data/yoloGtold1/train/28737.png +../../data/yoloGtold1/train/28738.png +../../data/yoloGtold1/train/28739.png +../../data/yoloGtold1/train/28740.png +../../data/yoloGtold1/train/28741.png +../../data/yoloGtold1/train/28742.png +../../data/yoloGtold1/train/28743.png +../../data/yoloGtold1/train/28744.png +../../data/yoloGtold1/train/28745.png +../../data/yoloGtold1/train/28746.png +../../data/yoloGtold1/train/28747.png +../../data/yoloGtold1/train/28748.png +../../data/yoloGtold1/train/28749.png +../../data/yoloGtold1/train/28750.png +../../data/yoloGtold1/train/28751.png +../../data/yoloGtold1/train/28752.png +../../data/yoloGtold1/train/28753.png +../../data/yoloGtold1/train/28754.png +../../data/yoloGtold1/train/28755.png +../../data/yoloGtold1/train/28756.png +../../data/yoloGtold1/train/28757.png +../../data/yoloGtold1/train/28758.png +../../data/yoloGtold1/train/28759.png +../../data/yoloGtold1/train/28760.png +../../data/yoloGtold1/train/28761.png +../../data/yoloGtold1/train/28762.png +../../data/yoloGtold1/train/28763.png +../../data/yoloGtold1/train/28764.png +../../data/yoloGtold1/train/28765.png +../../data/yoloGtold1/train/28766.png +../../data/yoloGtold1/train/28767.png +../../data/yoloGtold1/train/28768.png +../../data/yoloGtold1/train/28769.png +../../data/yoloGtold1/train/28770.png +../../data/yoloGtold1/train/28771.png +../../data/yoloGtold1/train/28772.png +../../data/yoloGtold1/train/28773.png +../../data/yoloGtold1/train/28774.png +../../data/yoloGtold1/train/28775.png +../../data/yoloGtold1/train/28776.png +../../data/yoloGtold1/train/28777.png +../../data/yoloGtold1/train/28778.png +../../data/yoloGtold1/train/28779.png +../../data/yoloGtold1/train/28780.png +../../data/yoloGtold1/train/28781.png +../../data/yoloGtold1/train/28782.png +../../data/yoloGtold1/train/28783.png +../../data/yoloGtold1/train/28784.png +../../data/yoloGtold1/train/28785.png +../../data/yoloGtold1/train/28786.png +../../data/yoloGtold1/train/28787.png +../../data/yoloGtold1/train/28788.png +../../data/yoloGtold1/train/28789.png +../../data/yoloGtold1/train/28790.png +../../data/yoloGtold1/train/28791.png +../../data/yoloGtold1/train/28792.png +../../data/yoloGtold1/train/28793.png +../../data/yoloGtold1/train/28794.png +../../data/yoloGtold1/train/28795.png +../../data/yoloGtold1/train/28796.png +../../data/yoloGtold1/train/28797.png +../../data/yoloGtold1/train/28798.png +../../data/yoloGtold1/train/28799.png +../../data/yoloGtold1/train/28800.png +../../data/yoloGtold1/train/28801.png +../../data/yoloGtold1/train/28802.png +../../data/yoloGtold1/train/28803.png +../../data/yoloGtold1/train/28804.png +../../data/yoloGtold1/train/28805.png +../../data/yoloGtold1/train/28806.png +../../data/yoloGtold1/train/28807.png +../../data/yoloGtold1/train/28808.png +../../data/yoloGtold1/train/28809.png +../../data/yoloGtold1/train/28810.png +../../data/yoloGtold1/train/28811.png +../../data/yoloGtold1/train/28812.png +../../data/yoloGtold1/train/28813.png +../../data/yoloGtold1/train/28814.png +../../data/yoloGtold1/train/28815.png +../../data/yoloGtold1/train/28816.png +../../data/yoloGtold1/train/28817.png +../../data/yoloGtold1/train/28818.png +../../data/yoloGtold1/train/28819.png +../../data/yoloGtold1/train/28820.png +../../data/yoloGtold1/train/28821.png +../../data/yoloGtold1/train/28822.png +../../data/yoloGtold1/train/28823.png +../../data/yoloGtold1/train/28824.png +../../data/yoloGtold1/train/28825.png +../../data/yoloGtold1/train/28826.png +../../data/yoloGtold1/train/28827.png +../../data/yoloGtold1/train/28828.png +../../data/yoloGtold1/train/28829.png +../../data/yoloGtold1/train/28830.png +../../data/yoloGtold1/train/28831.png +../../data/yoloGtold1/train/28832.png +../../data/yoloGtold1/train/28833.png +../../data/yoloGtold1/train/28834.png +../../data/yoloGtold1/train/28835.png +../../data/yoloGtold1/train/28836.png +../../data/yoloGtold1/train/28837.png +../../data/yoloGtold1/train/28838.png +../../data/yoloGtold1/train/28839.png +../../data/yoloGtold1/train/28840.png +../../data/yoloGtold1/train/28841.png +../../data/yoloGtold1/train/28842.png +../../data/yoloGtold1/train/28843.png +../../data/yoloGtold1/train/28844.png +../../data/yoloGtold1/train/28845.png +../../data/yoloGtold1/train/28846.png +../../data/yoloGtold1/train/28847.png +../../data/yoloGtold1/train/28848.png +../../data/yoloGtold1/train/28849.png +../../data/yoloGtold1/train/28850.png +../../data/yoloGtold1/train/28851.png +../../data/yoloGtold1/train/28852.png +../../data/yoloGtold1/train/28853.png +../../data/yoloGtold1/train/28854.png +../../data/yoloGtold1/train/28855.png +../../data/yoloGtold1/train/28856.png +../../data/yoloGtold1/train/28857.png +../../data/yoloGtold1/train/28858.png +../../data/yoloGtold1/train/28859.png +../../data/yoloGtold1/train/28860.png +../../data/yoloGtold1/train/28861.png +../../data/yoloGtold1/train/28862.png +../../data/yoloGtold1/train/28863.png +../../data/yoloGtold1/train/28864.png +../../data/yoloGtold1/train/28865.png +../../data/yoloGtold1/train/28866.png +../../data/yoloGtold1/train/28867.png +../../data/yoloGtold1/train/28868.png +../../data/yoloGtold1/train/28869.png +../../data/yoloGtold1/train/28870.png +../../data/yoloGtold1/train/28871.png +../../data/yoloGtold1/train/28872.png +../../data/yoloGtold1/train/28873.png +../../data/yoloGtold1/train/28874.png +../../data/yoloGtold1/train/28875.png +../../data/yoloGtold1/train/28876.png +../../data/yoloGtold1/train/28877.png +../../data/yoloGtold1/train/28878.png +../../data/yoloGtold1/train/28879.png +../../data/yoloGtold1/train/28880.png +../../data/yoloGtold1/train/28881.png +../../data/yoloGtold1/train/28882.png +../../data/yoloGtold1/train/28883.png +../../data/yoloGtold1/train/28884.png +../../data/yoloGtold1/train/28885.png +../../data/yoloGtold1/train/28886.png +../../data/yoloGtold1/train/28887.png +../../data/yoloGtold1/train/28888.png +../../data/yoloGtold1/train/28889.png +../../data/yoloGtold1/train/28890.png +../../data/yoloGtold1/train/28891.png +../../data/yoloGtold1/train/28892.png +../../data/yoloGtold1/train/28893.png +../../data/yoloGtold1/train/28894.png +../../data/yoloGtold1/train/28895.png +../../data/yoloGtold1/train/28896.png +../../data/yoloGtold1/train/28897.png +../../data/yoloGtold1/train/28898.png +../../data/yoloGtold1/train/28899.png +../../data/yoloGtold1/train/28900.png +../../data/yoloGtold1/train/28901.png +../../data/yoloGtold1/train/28902.png +../../data/yoloGtold1/train/28903.png +../../data/yoloGtold1/train/28904.png +../../data/yoloGtold1/train/28905.png +../../data/yoloGtold1/train/28906.png +../../data/yoloGtold1/train/28907.png +../../data/yoloGtold1/train/28908.png +../../data/yoloGtold1/train/28909.png +../../data/yoloGtold1/train/28910.png +../../data/yoloGtold1/train/28911.png +../../data/yoloGtold1/train/28912.png +../../data/yoloGtold1/train/28913.png +../../data/yoloGtold1/train/28914.png +../../data/yoloGtold1/train/28915.png +../../data/yoloGtold1/train/28916.png +../../data/yoloGtold1/train/28917.png +../../data/yoloGtold1/train/28918.png +../../data/yoloGtold1/train/28919.png +../../data/yoloGtold1/train/28920.png +../../data/yoloGtold1/train/28921.png +../../data/yoloGtold1/train/28922.png +../../data/yoloGtold1/train/28923.png +../../data/yoloGtold1/train/28924.png +../../data/yoloGtold1/train/28925.png +../../data/yoloGtold1/train/28926.png +../../data/yoloGtold1/train/28927.png +../../data/yoloGtold1/train/28928.png +../../data/yoloGtold1/train/28929.png +../../data/yoloGtold1/train/28930.png +../../data/yoloGtold1/train/28931.png +../../data/yoloGtold1/train/28932.png +../../data/yoloGtold1/train/28933.png +../../data/yoloGtold1/train/28934.png +../../data/yoloGtold1/train/28935.png +../../data/yoloGtold1/train/28936.png +../../data/yoloGtold1/train/28937.png +../../data/yoloGtold1/train/28938.png +../../data/yoloGtold1/train/28939.png +../../data/yoloGtold1/train/28940.png +../../data/yoloGtold1/train/28941.png +../../data/yoloGtold1/train/28942.png +../../data/yoloGtold1/train/28943.png +../../data/yoloGtold1/train/28944.png +../../data/yoloGtold1/train/28945.png +../../data/yoloGtold1/train/28946.png +../../data/yoloGtold1/train/28947.png +../../data/yoloGtold1/train/28948.png +../../data/yoloGtold1/train/28949.png +../../data/yoloGtold1/train/28950.png +../../data/yoloGtold1/train/28951.png +../../data/yoloGtold1/train/28952.png +../../data/yoloGtold1/train/28953.png +../../data/yoloGtold1/train/28954.png +../../data/yoloGtold1/train/28955.png +../../data/yoloGtold1/train/28956.png +../../data/yoloGtold1/train/28957.png +../../data/yoloGtold1/train/28958.png +../../data/yoloGtold1/train/28959.png +../../data/yoloGtold1/train/28960.png +../../data/yoloGtold1/train/28961.png +../../data/yoloGtold1/train/28962.png +../../data/yoloGtold1/train/28963.png +../../data/yoloGtold1/train/28964.png +../../data/yoloGtold1/train/28965.png +../../data/yoloGtold1/train/28966.png +../../data/yoloGtold1/train/28967.png +../../data/yoloGtold1/train/28968.png +../../data/yoloGtold1/train/28969.png +../../data/yoloGtold1/train/28970.png +../../data/yoloGtold1/train/28971.png +../../data/yoloGtold1/train/28972.png +../../data/yoloGtold1/train/28973.png +../../data/yoloGtold1/train/28974.png +../../data/yoloGtold1/train/28975.png +../../data/yoloGtold1/train/28976.png +../../data/yoloGtold1/train/28977.png +../../data/yoloGtold1/train/28978.png +../../data/yoloGtold1/train/28979.png +../../data/yoloGtold1/train/28980.png +../../data/yoloGtold1/train/28981.png +../../data/yoloGtold1/train/28982.png +../../data/yoloGtold1/train/28983.png +../../data/yoloGtold1/train/28984.png +../../data/yoloGtold1/train/28985.png +../../data/yoloGtold1/train/28986.png +../../data/yoloGtold1/train/28987.png +../../data/yoloGtold1/train/28988.png +../../data/yoloGtold1/train/28989.png +../../data/yoloGtold1/train/28990.png +../../data/yoloGtold1/train/28991.png +../../data/yoloGtold1/train/28992.png +../../data/yoloGtold1/train/28993.png +../../data/yoloGtold1/train/28994.png +../../data/yoloGtold1/train/28995.png +../../data/yoloGtold1/train/28996.png +../../data/yoloGtold1/train/28997.png +../../data/yoloGtold1/train/28998.png +../../data/yoloGtold1/train/28999.png +../../data/yoloGtold1/train/29000.png +../../data/yoloGtold1/train/29001.png +../../data/yoloGtold1/train/29002.png +../../data/yoloGtold1/train/29003.png +../../data/yoloGtold1/train/29004.png +../../data/yoloGtold1/train/29005.png +../../data/yoloGtold1/train/29006.png +../../data/yoloGtold1/train/29007.png +../../data/yoloGtold1/train/29008.png +../../data/yoloGtold1/train/29009.png +../../data/yoloGtold1/train/29010.png +../../data/yoloGtold1/train/29011.png +../../data/yoloGtold1/train/29012.png +../../data/yoloGtold1/train/29013.png +../../data/yoloGtold1/train/29014.png +../../data/yoloGtold1/train/29015.png +../../data/yoloGtold1/train/29016.png +../../data/yoloGtold1/train/29017.png +../../data/yoloGtold1/train/29018.png +../../data/yoloGtold1/train/29019.png +../../data/yoloGtold1/train/29020.png +../../data/yoloGtold1/train/29021.png +../../data/yoloGtold1/train/29022.png +../../data/yoloGtold1/train/29023.png +../../data/yoloGtold1/train/29024.png +../../data/yoloGtold1/train/29025.png +../../data/yoloGtold1/train/29026.png +../../data/yoloGtold1/train/29027.png +../../data/yoloGtold1/train/29028.png +../../data/yoloGtold1/train/29029.png +../../data/yoloGtold1/train/29030.png +../../data/yoloGtold1/train/29031.png +../../data/yoloGtold1/train/29032.png +../../data/yoloGtold1/train/29033.png +../../data/yoloGtold1/train/29034.png +../../data/yoloGtold1/train/29035.png +../../data/yoloGtold1/train/29036.png +../../data/yoloGtold1/train/29037.png +../../data/yoloGtold1/train/29038.png +../../data/yoloGtold1/train/29039.png +../../data/yoloGtold1/train/29040.png +../../data/yoloGtold1/train/29041.png +../../data/yoloGtold1/train/29042.png +../../data/yoloGtold1/train/29043.png +../../data/yoloGtold1/train/29044.png +../../data/yoloGtold1/train/29045.png +../../data/yoloGtold1/train/29046.png +../../data/yoloGtold1/train/29047.png +../../data/yoloGtold1/train/29048.png +../../data/yoloGtold1/train/29049.png +../../data/yoloGtold1/train/29050.png +../../data/yoloGtold1/train/29051.png +../../data/yoloGtold1/train/29052.png +../../data/yoloGtold1/train/29053.png +../../data/yoloGtold1/train/29054.png +../../data/yoloGtold1/train/29055.png +../../data/yoloGtold1/train/29056.png +../../data/yoloGtold1/train/29057.png +../../data/yoloGtold1/train/29058.png +../../data/yoloGtold1/train/29059.png +../../data/yoloGtold1/train/29060.png +../../data/yoloGtold1/train/29061.png +../../data/yoloGtold1/train/29062.png +../../data/yoloGtold1/train/29063.png +../../data/yoloGtold1/train/29064.png +../../data/yoloGtold1/train/29065.png +../../data/yoloGtold1/train/29066.png +../../data/yoloGtold1/train/29067.png +../../data/yoloGtold1/train/29068.png +../../data/yoloGtold1/train/29069.png +../../data/yoloGtold1/train/29070.png +../../data/yoloGtold1/train/29071.png +../../data/yoloGtold1/train/29072.png +../../data/yoloGtold1/train/29073.png +../../data/yoloGtold1/train/29074.png +../../data/yoloGtold1/train/29075.png +../../data/yoloGtold1/train/29076.png +../../data/yoloGtold1/train/29077.png +../../data/yoloGtold1/train/29078.png +../../data/yoloGtold1/train/29079.png +../../data/yoloGtold1/train/29080.png +../../data/yoloGtold1/train/29081.png +../../data/yoloGtold1/train/29082.png +../../data/yoloGtold1/train/29083.png +../../data/yoloGtold1/train/29084.png +../../data/yoloGtold1/train/29085.png +../../data/yoloGtold1/train/29086.png +../../data/yoloGtold1/train/29087.png +../../data/yoloGtold1/train/29088.png +../../data/yoloGtold1/train/29089.png +../../data/yoloGtold1/train/29090.png +../../data/yoloGtold1/train/29091.png +../../data/yoloGtold1/train/29092.png +../../data/yoloGtold1/train/29093.png +../../data/yoloGtold1/train/29094.png +../../data/yoloGtold1/train/29095.png +../../data/yoloGtold1/train/29096.png +../../data/yoloGtold1/train/29097.png +../../data/yoloGtold1/train/29098.png +../../data/yoloGtold1/train/29099.png +../../data/yoloGtold1/train/29100.png +../../data/yoloGtold1/train/29101.png +../../data/yoloGtold1/train/29102.png +../../data/yoloGtold1/train/29103.png +../../data/yoloGtold1/train/29104.png +../../data/yoloGtold1/train/29105.png +../../data/yoloGtold1/train/29106.png +../../data/yoloGtold1/train/29107.png +../../data/yoloGtold1/train/29108.png +../../data/yoloGtold1/train/29109.png +../../data/yoloGtold1/train/29110.png +../../data/yoloGtold1/train/29111.png +../../data/yoloGtold1/train/29112.png +../../data/yoloGtold1/train/29113.png +../../data/yoloGtold1/train/29114.png +../../data/yoloGtold1/train/29115.png +../../data/yoloGtold1/train/29116.png +../../data/yoloGtold1/train/29117.png +../../data/yoloGtold1/train/29118.png +../../data/yoloGtold1/train/29119.png +../../data/yoloGtold1/train/29120.png +../../data/yoloGtold1/train/29121.png +../../data/yoloGtold1/train/29122.png +../../data/yoloGtold1/train/29123.png +../../data/yoloGtold1/train/29124.png +../../data/yoloGtold1/train/29125.png +../../data/yoloGtold1/train/29126.png +../../data/yoloGtold1/train/29127.png +../../data/yoloGtold1/train/29128.png +../../data/yoloGtold1/train/29129.png +../../data/yoloGtold1/train/29130.png +../../data/yoloGtold1/train/29131.png +../../data/yoloGtold1/train/29132.png +../../data/yoloGtold1/train/29133.png +../../data/yoloGtold1/train/29134.png +../../data/yoloGtold1/train/29135.png +../../data/yoloGtold1/train/29136.png +../../data/yoloGtold1/train/29137.png +../../data/yoloGtold1/train/29138.png +../../data/yoloGtold1/train/29139.png +../../data/yoloGtold1/train/29140.png +../../data/yoloGtold1/train/29141.png +../../data/yoloGtold1/train/29142.png +../../data/yoloGtold1/train/29143.png +../../data/yoloGtold1/train/29144.png +../../data/yoloGtold1/train/29145.png +../../data/yoloGtold1/train/29146.png +../../data/yoloGtold1/train/29147.png +../../data/yoloGtold1/train/29148.png +../../data/yoloGtold1/train/29149.png +../../data/yoloGtold1/train/29150.png +../../data/yoloGtold1/train/29151.png +../../data/yoloGtold1/train/29152.png +../../data/yoloGtold1/train/29153.png +../../data/yoloGtold1/train/29154.png +../../data/yoloGtold1/train/29155.png +../../data/yoloGtold1/train/29156.png +../../data/yoloGtold1/train/29157.png +../../data/yoloGtold1/train/29158.png +../../data/yoloGtold1/train/29159.png +../../data/yoloGtold1/train/29160.png +../../data/yoloGtold1/train/29161.png +../../data/yoloGtold1/train/29162.png +../../data/yoloGtold1/train/29163.png +../../data/yoloGtold1/train/29164.png +../../data/yoloGtold1/train/29165.png +../../data/yoloGtold1/train/29166.png +../../data/yoloGtold1/train/29167.png +../../data/yoloGtold1/train/29168.png +../../data/yoloGtold1/train/29169.png +../../data/yoloGtold1/train/29170.png +../../data/yoloGtold1/train/29171.png +../../data/yoloGtold1/train/29172.png +../../data/yoloGtold1/train/29173.png +../../data/yoloGtold1/train/29174.png +../../data/yoloGtold1/train/29175.png +../../data/yoloGtold1/train/29176.png +../../data/yoloGtold1/train/29177.png +../../data/yoloGtold1/train/29178.png +../../data/yoloGtold1/train/29179.png +../../data/yoloGtold1/train/29180.png +../../data/yoloGtold1/train/29181.png +../../data/yoloGtold1/train/29182.png +../../data/yoloGtold1/train/29183.png +../../data/yoloGtold1/train/29184.png +../../data/yoloGtold1/train/29185.png +../../data/yoloGtold1/train/29186.png +../../data/yoloGtold1/train/29187.png +../../data/yoloGtold1/train/29188.png +../../data/yoloGtold1/train/29189.png +../../data/yoloGtold1/train/29190.png +../../data/yoloGtold1/train/29191.png +../../data/yoloGtold1/train/29192.png +../../data/yoloGtold1/train/29193.png +../../data/yoloGtold1/train/29194.png +../../data/yoloGtold1/train/29195.png +../../data/yoloGtold1/train/29196.png +../../data/yoloGtold1/train/29197.png +../../data/yoloGtold1/train/29198.png +../../data/yoloGtold1/train/29199.png +../../data/yoloGtold1/train/29200.png +../../data/yoloGtold1/train/29201.png +../../data/yoloGtold1/train/29202.png +../../data/yoloGtold1/train/29203.png +../../data/yoloGtold1/train/29204.png +../../data/yoloGtold1/train/29205.png +../../data/yoloGtold1/train/29206.png +../../data/yoloGtold1/train/29207.png +../../data/yoloGtold1/train/29208.png +../../data/yoloGtold1/train/29209.png +../../data/yoloGtold1/train/29210.png +../../data/yoloGtold1/train/29211.png +../../data/yoloGtold1/train/29212.png +../../data/yoloGtold1/train/29213.png +../../data/yoloGtold1/train/29214.png +../../data/yoloGtold1/train/29215.png +../../data/yoloGtold1/train/29216.png +../../data/yoloGtold1/train/29217.png +../../data/yoloGtold1/train/29218.png +../../data/yoloGtold1/train/29219.png +../../data/yoloGtold1/train/29220.png +../../data/yoloGtold1/train/29221.png +../../data/yoloGtold1/train/29222.png +../../data/yoloGtold1/train/29223.png +../../data/yoloGtold1/train/29224.png +../../data/yoloGtold1/train/29225.png +../../data/yoloGtold1/train/29226.png +../../data/yoloGtold1/train/29227.png +../../data/yoloGtold1/train/29228.png +../../data/yoloGtold1/train/29229.png +../../data/yoloGtold1/train/29230.png +../../data/yoloGtold1/train/29231.png +../../data/yoloGtold1/train/29232.png +../../data/yoloGtold1/train/29233.png +../../data/yoloGtold1/train/29234.png +../../data/yoloGtold1/train/29235.png +../../data/yoloGtold1/train/29236.png +../../data/yoloGtold1/train/29237.png +../../data/yoloGtold1/train/29238.png +../../data/yoloGtold1/train/29239.png +../../data/yoloGtold1/train/29240.png +../../data/yoloGtold1/train/29241.png +../../data/yoloGtold1/train/29242.png +../../data/yoloGtold1/train/29243.png +../../data/yoloGtold1/train/29244.png +../../data/yoloGtold1/train/29245.png +../../data/yoloGtold1/train/29246.png +../../data/yoloGtold1/train/29247.png +../../data/yoloGtold1/train/29248.png +../../data/yoloGtold1/train/29249.png +../../data/yoloGtold1/train/29250.png +../../data/yoloGtold1/train/29251.png +../../data/yoloGtold1/train/29252.png +../../data/yoloGtold1/train/29253.png +../../data/yoloGtold1/train/29254.png +../../data/yoloGtold1/train/29255.png +../../data/yoloGtold1/train/29256.png +../../data/yoloGtold1/train/29257.png +../../data/yoloGtold1/train/29258.png +../../data/yoloGtold1/train/29259.png +../../data/yoloGtold1/train/29260.png +../../data/yoloGtold1/train/29261.png +../../data/yoloGtold1/train/29262.png +../../data/yoloGtold1/train/29263.png +../../data/yoloGtold1/train/29264.png +../../data/yoloGtold1/train/29265.png +../../data/yoloGtold1/train/29266.png +../../data/yoloGtold1/train/29267.png +../../data/yoloGtold1/train/29268.png +../../data/yoloGtold1/train/29269.png +../../data/yoloGtold1/train/29270.png +../../data/yoloGtold1/train/29271.png +../../data/yoloGtold1/train/29272.png +../../data/yoloGtold1/train/29273.png +../../data/yoloGtold1/train/29274.png +../../data/yoloGtold1/train/29275.png +../../data/yoloGtold1/train/29276.png +../../data/yoloGtold1/train/29277.png +../../data/yoloGtold1/train/29278.png +../../data/yoloGtold1/train/29279.png +../../data/yoloGtold1/train/29280.png +../../data/yoloGtold1/train/29281.png +../../data/yoloGtold1/train/29282.png +../../data/yoloGtold1/train/29283.png +../../data/yoloGtold1/train/29284.png +../../data/yoloGtold1/train/29285.png +../../data/yoloGtold1/train/29286.png +../../data/yoloGtold1/train/29287.png +../../data/yoloGtold1/train/29288.png +../../data/yoloGtold1/train/29289.png +../../data/yoloGtold1/train/29290.png +../../data/yoloGtold1/train/29291.png +../../data/yoloGtold1/train/29292.png +../../data/yoloGtold1/train/29293.png +../../data/yoloGtold1/train/29294.png +../../data/yoloGtold1/train/29295.png +../../data/yoloGtold1/train/29296.png +../../data/yoloGtold1/train/29297.png +../../data/yoloGtold1/train/29298.png +../../data/yoloGtold1/train/29299.png +../../data/yoloGtold1/train/29300.png +../../data/yoloGtold1/train/29301.png +../../data/yoloGtold1/train/29302.png +../../data/yoloGtold1/train/29303.png +../../data/yoloGtold1/train/29304.png +../../data/yoloGtold1/train/29305.png +../../data/yoloGtold1/train/29306.png +../../data/yoloGtold1/train/29307.png +../../data/yoloGtold1/train/29308.png +../../data/yoloGtold1/train/29309.png +../../data/yoloGtold1/train/29310.png +../../data/yoloGtold1/train/29311.png +../../data/yoloGtold1/train/29312.png +../../data/yoloGtold1/train/29313.png +../../data/yoloGtold1/train/29314.png +../../data/yoloGtold1/train/29315.png +../../data/yoloGtold1/train/29316.png +../../data/yoloGtold1/train/29317.png +../../data/yoloGtold1/train/29318.png +../../data/yoloGtold1/train/29319.png +../../data/yoloGtold1/train/29320.png +../../data/yoloGtold1/train/29321.png +../../data/yoloGtold1/train/29322.png +../../data/yoloGtold1/train/29323.png +../../data/yoloGtold1/train/29324.png +../../data/yoloGtold1/train/29325.png +../../data/yoloGtold1/train/29326.png +../../data/yoloGtold1/train/29327.png +../../data/yoloGtold1/train/29328.png +../../data/yoloGtold1/train/29329.png +../../data/yoloGtold1/train/29330.png +../../data/yoloGtold1/train/29331.png +../../data/yoloGtold1/train/29332.png +../../data/yoloGtold1/train/29333.png +../../data/yoloGtold1/train/29334.png +../../data/yoloGtold1/train/29335.png +../../data/yoloGtold1/train/29336.png +../../data/yoloGtold1/train/29337.png +../../data/yoloGtold1/train/29338.png +../../data/yoloGtold1/train/29339.png +../../data/yoloGtold1/train/29340.png +../../data/yoloGtold1/train/29341.png +../../data/yoloGtold1/train/29342.png +../../data/yoloGtold1/train/29343.png +../../data/yoloGtold1/train/29344.png +../../data/yoloGtold1/train/29345.png +../../data/yoloGtold1/train/29346.png +../../data/yoloGtold1/train/29347.png +../../data/yoloGtold1/train/29348.png +../../data/yoloGtold1/train/29349.png +../../data/yoloGtold1/train/29350.png +../../data/yoloGtold1/train/29351.png +../../data/yoloGtold1/train/29352.png +../../data/yoloGtold1/train/29353.png +../../data/yoloGtold1/train/29354.png +../../data/yoloGtold1/train/29355.png +../../data/yoloGtold1/train/29356.png +../../data/yoloGtold1/train/29357.png +../../data/yoloGtold1/train/29358.png +../../data/yoloGtold1/train/29359.png +../../data/yoloGtold1/train/29360.png +../../data/yoloGtold1/train/29361.png +../../data/yoloGtold1/train/29362.png +../../data/yoloGtold1/train/29363.png +../../data/yoloGtold1/train/29364.png +../../data/yoloGtold1/train/29365.png +../../data/yoloGtold1/train/29366.png +../../data/yoloGtold1/train/29367.png +../../data/yoloGtold1/train/29368.png +../../data/yoloGtold1/train/29369.png +../../data/yoloGtold1/train/29370.png +../../data/yoloGtold1/train/29371.png +../../data/yoloGtold1/train/29372.png +../../data/yoloGtold1/train/29373.png +../../data/yoloGtold1/train/29374.png +../../data/yoloGtold1/train/29375.png +../../data/yoloGtold1/train/29376.png +../../data/yoloGtold1/train/29377.png +../../data/yoloGtold1/train/29378.png +../../data/yoloGtold1/train/29379.png +../../data/yoloGtold1/train/29380.png +../../data/yoloGtold1/train/29381.png +../../data/yoloGtold1/train/29382.png +../../data/yoloGtold1/train/29383.png +../../data/yoloGtold1/train/29384.png +../../data/yoloGtold1/train/29385.png +../../data/yoloGtold1/train/29386.png +../../data/yoloGtold1/train/29387.png +../../data/yoloGtold1/train/29388.png +../../data/yoloGtold1/train/29389.png +../../data/yoloGtold1/train/29390.png +../../data/yoloGtold1/train/29391.png +../../data/yoloGtold1/train/29392.png +../../data/yoloGtold1/train/29393.png +../../data/yoloGtold1/train/29394.png +../../data/yoloGtold1/train/29395.png +../../data/yoloGtold1/train/29396.png +../../data/yoloGtold1/train/29397.png +../../data/yoloGtold1/train/29398.png +../../data/yoloGtold1/train/29399.png +../../data/yoloGtold1/train/29400.png +../../data/yoloGtold1/train/29401.png +../../data/yoloGtold1/train/29402.png +../../data/yoloGtold1/train/29403.png +../../data/yoloGtold1/train/29404.png +../../data/yoloGtold1/train/29405.png +../../data/yoloGtold1/train/29406.png +../../data/yoloGtold1/train/29407.png +../../data/yoloGtold1/train/29408.png +../../data/yoloGtold1/train/29409.png +../../data/yoloGtold1/train/29410.png +../../data/yoloGtold1/train/29411.png +../../data/yoloGtold1/train/29412.png +../../data/yoloGtold1/train/29413.png +../../data/yoloGtold1/train/29414.png +../../data/yoloGtold1/train/29415.png +../../data/yoloGtold1/train/29416.png +../../data/yoloGtold1/train/29417.png +../../data/yoloGtold1/train/29418.png +../../data/yoloGtold1/train/29419.png +../../data/yoloGtold1/train/29420.png +../../data/yoloGtold1/train/29421.png +../../data/yoloGtold1/train/29422.png +../../data/yoloGtold1/train/29423.png +../../data/yoloGtold1/train/29424.png +../../data/yoloGtold1/train/29425.png +../../data/yoloGtold1/train/29426.png +../../data/yoloGtold1/train/29427.png +../../data/yoloGtold1/train/29428.png +../../data/yoloGtold1/train/29429.png +../../data/yoloGtold1/train/29430.png +../../data/yoloGtold1/train/29431.png +../../data/yoloGtold1/train/29432.png +../../data/yoloGtold1/train/29433.png +../../data/yoloGtold1/train/29434.png +../../data/yoloGtold1/train/29435.png +../../data/yoloGtold1/train/29436.png +../../data/yoloGtold1/train/29437.png +../../data/yoloGtold1/train/29438.png +../../data/yoloGtold1/train/29439.png +../../data/yoloGtold1/train/29440.png +../../data/yoloGtold1/train/29441.png +../../data/yoloGtold1/train/29442.png +../../data/yoloGtold1/train/29443.png +../../data/yoloGtold1/train/29444.png +../../data/yoloGtold1/train/29445.png +../../data/yoloGtold1/train/29446.png +../../data/yoloGtold1/train/29447.png +../../data/yoloGtold1/train/29448.png +../../data/yoloGtold1/train/29449.png +../../data/yoloGtold1/train/29450.png +../../data/yoloGtold1/train/29451.png +../../data/yoloGtold1/train/29452.png +../../data/yoloGtold1/train/29453.png +../../data/yoloGtold1/train/29454.png +../../data/yoloGtold1/train/29455.png +../../data/yoloGtold1/train/29456.png +../../data/yoloGtold1/train/29457.png +../../data/yoloGtold1/train/29458.png +../../data/yoloGtold1/train/29459.png +../../data/yoloGtold1/train/29460.png +../../data/yoloGtold1/train/29461.png +../../data/yoloGtold1/train/29462.png +../../data/yoloGtold1/train/29463.png +../../data/yoloGtold1/train/29464.png +../../data/yoloGtold1/train/29465.png +../../data/yoloGtold1/train/29466.png +../../data/yoloGtold1/train/29467.png +../../data/yoloGtold1/train/29468.png +../../data/yoloGtold1/train/29469.png +../../data/yoloGtold1/train/29470.png +../../data/yoloGtold1/train/29471.png +../../data/yoloGtold1/train/29472.png +../../data/yoloGtold1/train/29473.png +../../data/yoloGtold1/train/29474.png +../../data/yoloGtold1/train/29475.png +../../data/yoloGtold1/train/29476.png +../../data/yoloGtold1/train/29477.png +../../data/yoloGtold1/train/29478.png +../../data/yoloGtold1/train/29479.png +../../data/yoloGtold1/train/29480.png +../../data/yoloGtold1/train/29481.png +../../data/yoloGtold1/train/29482.png +../../data/yoloGtold1/train/29483.png +../../data/yoloGtold1/train/29484.png +../../data/yoloGtold1/train/29485.png +../../data/yoloGtold1/train/29486.png +../../data/yoloGtold1/train/29487.png +../../data/yoloGtold1/train/29488.png +../../data/yoloGtold1/train/29489.png +../../data/yoloGtold1/train/29490.png +../../data/yoloGtold1/train/29491.png +../../data/yoloGtold1/train/29492.png +../../data/yoloGtold1/train/29493.png +../../data/yoloGtold1/train/29494.png +../../data/yoloGtold1/train/29495.png +../../data/yoloGtold1/train/29496.png +../../data/yoloGtold1/train/29497.png +../../data/yoloGtold1/train/29498.png +../../data/yoloGtold1/train/29499.png +../../data/yoloGtold1/train/29500.png +../../data/yoloGtold1/train/29501.png +../../data/yoloGtold1/train/29502.png +../../data/yoloGtold1/train/29503.png +../../data/yoloGtold1/train/29504.png +../../data/yoloGtold1/train/29505.png +../../data/yoloGtold1/train/29506.png +../../data/yoloGtold1/train/29507.png +../../data/yoloGtold1/train/29508.png +../../data/yoloGtold1/train/29509.png +../../data/yoloGtold1/train/29510.png +../../data/yoloGtold1/train/29511.png +../../data/yoloGtold1/train/29512.png +../../data/yoloGtold1/train/29513.png +../../data/yoloGtold1/train/29514.png +../../data/yoloGtold1/train/29515.png +../../data/yoloGtold1/train/29516.png +../../data/yoloGtold1/train/29517.png +../../data/yoloGtold1/train/29518.png +../../data/yoloGtold1/train/29519.png +../../data/yoloGtold1/train/29520.png +../../data/yoloGtold1/train/29521.png +../../data/yoloGtold1/train/29522.png +../../data/yoloGtold1/train/29523.png +../../data/yoloGtold1/train/29524.png +../../data/yoloGtold1/train/29525.png +../../data/yoloGtold1/train/29526.png +../../data/yoloGtold1/train/29527.png +../../data/yoloGtold1/train/29528.png +../../data/yoloGtold1/train/29529.png +../../data/yoloGtold1/train/29530.png +../../data/yoloGtold1/train/29531.png +../../data/yoloGtold1/train/29532.png +../../data/yoloGtold1/train/29533.png +../../data/yoloGtold1/train/29534.png +../../data/yoloGtold1/train/29535.png +../../data/yoloGtold1/train/29536.png +../../data/yoloGtold1/train/29537.png +../../data/yoloGtold1/train/29538.png +../../data/yoloGtold1/train/29539.png +../../data/yoloGtold1/train/29540.png +../../data/yoloGtold1/train/29541.png +../../data/yoloGtold1/train/29542.png +../../data/yoloGtold1/train/29543.png +../../data/yoloGtold1/train/29544.png +../../data/yoloGtold1/train/29545.png +../../data/yoloGtold1/train/29546.png +../../data/yoloGtold1/train/29547.png +../../data/yoloGtold1/train/29548.png +../../data/yoloGtold1/train/29549.png +../../data/yoloGtold1/train/29550.png +../../data/yoloGtold1/train/29551.png +../../data/yoloGtold1/train/29552.png +../../data/yoloGtold1/train/29553.png +../../data/yoloGtold1/train/29554.png +../../data/yoloGtold1/train/29555.png +../../data/yoloGtold1/train/29556.png +../../data/yoloGtold1/train/29557.png +../../data/yoloGtold1/train/29558.png +../../data/yoloGtold1/train/29559.png +../../data/yoloGtold1/train/29560.png +../../data/yoloGtold1/train/29561.png +../../data/yoloGtold1/train/29562.png +../../data/yoloGtold1/train/29563.png +../../data/yoloGtold1/train/29564.png +../../data/yoloGtold1/train/29565.png +../../data/yoloGtold1/train/29566.png +../../data/yoloGtold1/train/29567.png +../../data/yoloGtold1/train/29568.png +../../data/yoloGtold1/train/29569.png +../../data/yoloGtold1/train/29570.png +../../data/yoloGtold1/train/29571.png +../../data/yoloGtold1/train/29572.png +../../data/yoloGtold1/train/29573.png +../../data/yoloGtold1/train/29574.png +../../data/yoloGtold1/train/29575.png +../../data/yoloGtold1/train/29576.png +../../data/yoloGtold1/train/29577.png +../../data/yoloGtold1/train/29578.png +../../data/yoloGtold1/train/29579.png +../../data/yoloGtold1/train/29580.png +../../data/yoloGtold1/train/29581.png +../../data/yoloGtold1/train/29582.png +../../data/yoloGtold1/train/29583.png +../../data/yoloGtold1/train/29584.png +../../data/yoloGtold1/train/29585.png +../../data/yoloGtold1/train/29586.png +../../data/yoloGtold1/train/29587.png +../../data/yoloGtold1/train/29588.png +../../data/yoloGtold1/train/29589.png +../../data/yoloGtold1/train/29590.png +../../data/yoloGtold1/train/29591.png +../../data/yoloGtold1/train/29592.png +../../data/yoloGtold1/train/29593.png +../../data/yoloGtold1/train/29594.png +../../data/yoloGtold1/train/29595.png +../../data/yoloGtold1/train/29596.png +../../data/yoloGtold1/train/29597.png +../../data/yoloGtold1/train/29598.png +../../data/yoloGtold1/train/29599.png +../../data/yoloGtold1/train/29600.png +../../data/yoloGtold1/train/29601.png +../../data/yoloGtold1/train/29602.png +../../data/yoloGtold1/train/29603.png +../../data/yoloGtold1/train/29604.png +../../data/yoloGtold1/train/29605.png +../../data/yoloGtold1/train/29606.png +../../data/yoloGtold1/train/29607.png +../../data/yoloGtold1/train/29608.png +../../data/yoloGtold1/train/29609.png +../../data/yoloGtold1/train/29610.png +../../data/yoloGtold1/train/29611.png +../../data/yoloGtold1/train/29612.png +../../data/yoloGtold1/train/29613.png +../../data/yoloGtold1/train/29614.png +../../data/yoloGtold1/train/29615.png +../../data/yoloGtold1/train/29616.png +../../data/yoloGtold1/train/29617.png +../../data/yoloGtold1/train/29618.png +../../data/yoloGtold1/train/29619.png +../../data/yoloGtold1/train/29620.png +../../data/yoloGtold1/train/29621.png +../../data/yoloGtold1/train/29622.png +../../data/yoloGtold1/train/29623.png +../../data/yoloGtold1/train/29624.png +../../data/yoloGtold1/train/29625.png +../../data/yoloGtold1/train/29626.png +../../data/yoloGtold1/train/29627.png +../../data/yoloGtold1/train/29628.png +../../data/yoloGtold1/train/29629.png +../../data/yoloGtold1/train/29630.png +../../data/yoloGtold1/train/29631.png +../../data/yoloGtold1/train/29632.png +../../data/yoloGtold1/train/29633.png +../../data/yoloGtold1/train/29634.png +../../data/yoloGtold1/train/29635.png +../../data/yoloGtold1/train/29636.png +../../data/yoloGtold1/train/29637.png +../../data/yoloGtold1/train/29638.png +../../data/yoloGtold1/train/29639.png +../../data/yoloGtold1/train/29640.png +../../data/yoloGtold1/train/29641.png +../../data/yoloGtold1/train/29642.png +../../data/yoloGtold1/train/29643.png +../../data/yoloGtold1/train/29644.png +../../data/yoloGtold1/train/29645.png +../../data/yoloGtold1/train/29646.png +../../data/yoloGtold1/train/29647.png +../../data/yoloGtold1/train/29648.png +../../data/yoloGtold1/train/29649.png +../../data/yoloGtold1/train/29650.png +../../data/yoloGtold1/train/29651.png +../../data/yoloGtold1/train/29652.png +../../data/yoloGtold1/train/29653.png +../../data/yoloGtold1/train/29654.png +../../data/yoloGtold1/train/29655.png +../../data/yoloGtold1/train/29656.png +../../data/yoloGtold1/train/29657.png +../../data/yoloGtold1/train/29658.png +../../data/yoloGtold1/train/29659.png +../../data/yoloGtold1/train/29660.png +../../data/yoloGtold1/train/29661.png +../../data/yoloGtold1/train/29662.png +../../data/yoloGtold1/train/29663.png +../../data/yoloGtold1/train/29664.png +../../data/yoloGtold1/train/29665.png +../../data/yoloGtold1/train/29666.png +../../data/yoloGtold1/train/29667.png +../../data/yoloGtold1/train/29668.png +../../data/yoloGtold1/train/29669.png +../../data/yoloGtold1/train/29670.png +../../data/yoloGtold1/train/29671.png +../../data/yoloGtold1/train/29672.png +../../data/yoloGtold1/train/29673.png +../../data/yoloGtold1/train/29674.png +../../data/yoloGtold1/train/29675.png +../../data/yoloGtold1/train/29676.png +../../data/yoloGtold1/train/29677.png +../../data/yoloGtold1/train/29678.png +../../data/yoloGtold1/train/29679.png +../../data/yoloGtold1/train/29680.png +../../data/yoloGtold1/train/29681.png +../../data/yoloGtold1/train/29682.png +../../data/yoloGtold1/train/29683.png +../../data/yoloGtold1/train/29684.png +../../data/yoloGtold1/train/29685.png +../../data/yoloGtold1/train/29686.png +../../data/yoloGtold1/train/29687.png +../../data/yoloGtold1/train/29688.png +../../data/yoloGtold1/train/29689.png +../../data/yoloGtold1/train/29690.png +../../data/yoloGtold1/train/29691.png +../../data/yoloGtold1/train/29692.png +../../data/yoloGtold1/train/29693.png +../../data/yoloGtold1/train/29694.png +../../data/yoloGtold1/train/29695.png +../../data/yoloGtold1/train/29696.png +../../data/yoloGtold1/train/29697.png +../../data/yoloGtold1/train/29698.png +../../data/yoloGtold1/train/29699.png +../../data/yoloGtold1/train/29700.png +../../data/yoloGtold1/train/29701.png +../../data/yoloGtold1/train/29702.png +../../data/yoloGtold1/train/29703.png +../../data/yoloGtold1/train/29704.png +../../data/yoloGtold1/train/29705.png +../../data/yoloGtold1/train/29706.png +../../data/yoloGtold1/train/29707.png +../../data/yoloGtold1/train/29708.png +../../data/yoloGtold1/train/29709.png +../../data/yoloGtold1/train/29710.png +../../data/yoloGtold1/train/29711.png +../../data/yoloGtold1/train/29712.png +../../data/yoloGtold1/train/29713.png +../../data/yoloGtold1/train/29714.png +../../data/yoloGtold1/train/29715.png +../../data/yoloGtold1/train/29716.png +../../data/yoloGtold1/train/29717.png +../../data/yoloGtold1/train/29718.png +../../data/yoloGtold1/train/29719.png +../../data/yoloGtold1/train/29720.png +../../data/yoloGtold1/train/29721.png +../../data/yoloGtold1/train/29722.png +../../data/yoloGtold1/train/29723.png +../../data/yoloGtold1/train/29724.png +../../data/yoloGtold1/train/29725.png +../../data/yoloGtold1/train/29726.png +../../data/yoloGtold1/train/29727.png +../../data/yoloGtold1/train/29728.png +../../data/yoloGtold1/train/29729.png +../../data/yoloGtold1/train/29730.png +../../data/yoloGtold1/train/29731.png +../../data/yoloGtold1/train/29732.png +../../data/yoloGtold1/train/29733.png +../../data/yoloGtold1/train/29734.png +../../data/yoloGtold1/train/29735.png +../../data/yoloGtold1/train/29736.png +../../data/yoloGtold1/train/29737.png +../../data/yoloGtold1/train/29738.png +../../data/yoloGtold1/train/29739.png +../../data/yoloGtold1/train/29740.png +../../data/yoloGtold1/train/29741.png +../../data/yoloGtold1/train/29742.png +../../data/yoloGtold1/train/29743.png +../../data/yoloGtold1/train/29744.png +../../data/yoloGtold1/train/29745.png +../../data/yoloGtold1/train/29746.png +../../data/yoloGtold1/train/29747.png +../../data/yoloGtold1/train/29748.png +../../data/yoloGtold1/train/29749.png +../../data/yoloGtold1/train/29750.png +../../data/yoloGtold1/train/29751.png +../../data/yoloGtold1/train/29752.png +../../data/yoloGtold1/train/29753.png +../../data/yoloGtold1/train/29754.png +../../data/yoloGtold1/train/29755.png +../../data/yoloGtold1/train/29756.png +../../data/yoloGtold1/train/29757.png +../../data/yoloGtold1/train/29758.png +../../data/yoloGtold1/train/29759.png +../../data/yoloGtold1/train/29760.png +../../data/yoloGtold1/train/29761.png +../../data/yoloGtold1/train/29762.png +../../data/yoloGtold1/train/29763.png +../../data/yoloGtold1/train/29764.png +../../data/yoloGtold1/train/29765.png +../../data/yoloGtold1/train/29766.png +../../data/yoloGtold1/train/29767.png +../../data/yoloGtold1/train/29768.png +../../data/yoloGtold1/train/29769.png +../../data/yoloGtold1/train/29770.png +../../data/yoloGtold1/train/29771.png +../../data/yoloGtold1/train/29772.png +../../data/yoloGtold1/train/29773.png +../../data/yoloGtold1/train/29774.png +../../data/yoloGtold1/train/29775.png +../../data/yoloGtold1/train/29776.png +../../data/yoloGtold1/train/29777.png +../../data/yoloGtold1/train/29778.png +../../data/yoloGtold1/train/29779.png +../../data/yoloGtold1/train/29780.png +../../data/yoloGtold1/train/29781.png +../../data/yoloGtold1/train/29782.png +../../data/yoloGtold1/train/29783.png +../../data/yoloGtold1/train/29784.png +../../data/yoloGtold1/train/29785.png +../../data/yoloGtold1/train/29786.png +../../data/yoloGtold1/train/29787.png +../../data/yoloGtold1/train/29788.png +../../data/yoloGtold1/train/29789.png +../../data/yoloGtold1/train/29790.png +../../data/yoloGtold1/train/29791.png +../../data/yoloGtold1/train/29792.png +../../data/yoloGtold1/train/29793.png +../../data/yoloGtold1/train/29794.png +../../data/yoloGtold1/train/29795.png +../../data/yoloGtold1/train/29796.png +../../data/yoloGtold1/train/29797.png +../../data/yoloGtold1/train/29798.png +../../data/yoloGtold1/train/29799.png +../../data/yoloGtold1/train/29800.png +../../data/yoloGtold1/train/29801.png +../../data/yoloGtold1/train/29802.png +../../data/yoloGtold1/train/29803.png +../../data/yoloGtold1/train/29804.png +../../data/yoloGtold1/train/29805.png +../../data/yoloGtold1/train/29806.png +../../data/yoloGtold1/train/29807.png +../../data/yoloGtold1/train/29808.png +../../data/yoloGtold1/train/29809.png +../../data/yoloGtold1/train/29810.png +../../data/yoloGtold1/train/29811.png +../../data/yoloGtold1/train/29812.png +../../data/yoloGtold1/train/29813.png +../../data/yoloGtold1/train/29814.png +../../data/yoloGtold1/train/29815.png +../../data/yoloGtold1/train/29816.png +../../data/yoloGtold1/train/29817.png +../../data/yoloGtold1/train/29818.png +../../data/yoloGtold1/train/29819.png +../../data/yoloGtold1/train/29820.png +../../data/yoloGtold1/train/29821.png +../../data/yoloGtold1/train/29822.png +../../data/yoloGtold1/train/29823.png +../../data/yoloGtold1/train/29824.png +../../data/yoloGtold1/train/29825.png +../../data/yoloGtold1/train/29826.png +../../data/yoloGtold1/train/29827.png +../../data/yoloGtold1/train/29828.png +../../data/yoloGtold1/train/29829.png +../../data/yoloGtold1/train/29830.png +../../data/yoloGtold1/train/29831.png +../../data/yoloGtold1/train/29832.png +../../data/yoloGtold1/train/29833.png +../../data/yoloGtold1/train/29834.png +../../data/yoloGtold1/train/29835.png +../../data/yoloGtold1/train/29836.png +../../data/yoloGtold1/train/29837.png +../../data/yoloGtold1/train/29838.png +../../data/yoloGtold1/train/29839.png +../../data/yoloGtold1/train/29840.png +../../data/yoloGtold1/train/29841.png +../../data/yoloGtold1/train/29842.png +../../data/yoloGtold1/train/29843.png +../../data/yoloGtold1/train/29844.png +../../data/yoloGtold1/train/29845.png +../../data/yoloGtold1/train/29846.png +../../data/yoloGtold1/train/29847.png +../../data/yoloGtold1/train/29848.png +../../data/yoloGtold1/train/29849.png +../../data/yoloGtold1/train/29850.png +../../data/yoloGtold1/train/29851.png +../../data/yoloGtold1/train/29852.png +../../data/yoloGtold1/train/29853.png +../../data/yoloGtold1/train/29854.png +../../data/yoloGtold1/train/29855.png +../../data/yoloGtold1/train/29856.png +../../data/yoloGtold1/train/29857.png +../../data/yoloGtold1/train/29858.png +../../data/yoloGtold1/train/29859.png +../../data/yoloGtold1/train/29860.png +../../data/yoloGtold1/train/29861.png +../../data/yoloGtold1/train/29862.png +../../data/yoloGtold1/train/29863.png +../../data/yoloGtold1/train/29864.png +../../data/yoloGtold1/train/29865.png +../../data/yoloGtold1/train/29866.png +../../data/yoloGtold1/train/29867.png +../../data/yoloGtold1/train/29868.png +../../data/yoloGtold1/train/29869.png +../../data/yoloGtold1/train/29870.png +../../data/yoloGtold1/train/29871.png +../../data/yoloGtold1/train/29872.png +../../data/yoloGtold1/train/29873.png +../../data/yoloGtold1/train/29874.png +../../data/yoloGtold1/train/29875.png +../../data/yoloGtold1/train/29876.png +../../data/yoloGtold1/train/29877.png +../../data/yoloGtold1/train/29878.png +../../data/yoloGtold1/train/29879.png +../../data/yoloGtold1/train/29880.png +../../data/yoloGtold1/train/29881.png +../../data/yoloGtold1/train/29882.png +../../data/yoloGtold1/train/29883.png +../../data/yoloGtold1/train/29884.png +../../data/yoloGtold1/train/29885.png +../../data/yoloGtold1/train/29886.png +../../data/yoloGtold1/train/29887.png +../../data/yoloGtold1/train/29888.png +../../data/yoloGtold1/train/29889.png +../../data/yoloGtold1/train/29890.png +../../data/yoloGtold1/train/29891.png +../../data/yoloGtold1/train/29892.png +../../data/yoloGtold1/train/29893.png +../../data/yoloGtold1/train/29894.png +../../data/yoloGtold1/train/29895.png +../../data/yoloGtold1/train/29896.png +../../data/yoloGtold1/train/29897.png +../../data/yoloGtold1/train/29898.png +../../data/yoloGtold1/train/29899.png +../../data/yoloGtold1/train/29900.png +../../data/yoloGtold1/train/29901.png +../../data/yoloGtold1/train/29902.png +../../data/yoloGtold1/train/29903.png +../../data/yoloGtold1/train/29904.png +../../data/yoloGtold1/train/29905.png +../../data/yoloGtold1/train/29906.png +../../data/yoloGtold1/train/29907.png +../../data/yoloGtold1/train/29908.png +../../data/yoloGtold1/train/29909.png +../../data/yoloGtold1/train/29910.png +../../data/yoloGtold1/train/29911.png +../../data/yoloGtold1/train/29912.png +../../data/yoloGtold1/train/29913.png +../../data/yoloGtold1/train/29914.png +../../data/yoloGtold1/train/29915.png +../../data/yoloGtold1/train/29916.png +../../data/yoloGtold1/train/29917.png +../../data/yoloGtold1/train/29918.png +../../data/yoloGtold1/train/29919.png +../../data/yoloGtold1/train/29920.png +../../data/yoloGtold1/train/29921.png +../../data/yoloGtold1/train/29922.png +../../data/yoloGtold1/train/29923.png +../../data/yoloGtold1/train/29924.png +../../data/yoloGtold1/train/29925.png +../../data/yoloGtold1/train/29926.png +../../data/yoloGtold1/train/29927.png +../../data/yoloGtold1/train/29928.png +../../data/yoloGtold1/train/29929.png +../../data/yoloGtold1/train/29930.png +../../data/yoloGtold1/train/29931.png +../../data/yoloGtold1/train/29932.png +../../data/yoloGtold1/train/29933.png +../../data/yoloGtold1/train/29934.png +../../data/yoloGtold1/train/29935.png +../../data/yoloGtold1/train/29936.png +../../data/yoloGtold1/train/29937.png +../../data/yoloGtold1/train/29938.png +../../data/yoloGtold1/train/29939.png +../../data/yoloGtold1/train/29940.png +../../data/yoloGtold1/train/29941.png +../../data/yoloGtold1/train/29942.png +../../data/yoloGtold1/train/29943.png +../../data/yoloGtold1/train/29944.png +../../data/yoloGtold1/train/29945.png +../../data/yoloGtold1/train/29946.png +../../data/yoloGtold1/train/29947.png +../../data/yoloGtold1/train/29948.png +../../data/yoloGtold1/train/29949.png +../../data/yoloGtold1/train/29950.png +../../data/yoloGtold1/train/29951.png +../../data/yoloGtold1/train/29952.png +../../data/yoloGtold1/train/29953.png +../../data/yoloGtold1/train/29954.png +../../data/yoloGtold1/train/29955.png +../../data/yoloGtold1/train/29956.png +../../data/yoloGtold1/train/29957.png +../../data/yoloGtold1/train/29958.png +../../data/yoloGtold1/train/29959.png +../../data/yoloGtold1/train/29960.png +../../data/yoloGtold1/train/29961.png +../../data/yoloGtold1/train/29962.png +../../data/yoloGtold1/train/29963.png +../../data/yoloGtold1/train/29964.png +../../data/yoloGtold1/train/29965.png +../../data/yoloGtold1/train/29966.png +../../data/yoloGtold1/train/29967.png +../../data/yoloGtold1/train/29968.png +../../data/yoloGtold1/train/29969.png +../../data/yoloGtold1/train/29970.png +../../data/yoloGtold1/train/29971.png +../../data/yoloGtold1/train/29972.png +../../data/yoloGtold1/train/29973.png +../../data/yoloGtold1/train/29974.png +../../data/yoloGtold1/train/29975.png +../../data/yoloGtold1/train/29976.png +../../data/yoloGtold1/train/29977.png +../../data/yoloGtold1/train/29978.png +../../data/yoloGtold1/train/29979.png +../../data/yoloGtold1/train/29980.png +../../data/yoloGtold1/train/29981.png +../../data/yoloGtold1/train/29982.png +../../data/yoloGtold1/train/29983.png +../../data/yoloGtold1/train/29984.png +../../data/yoloGtold1/train/29985.png +../../data/yoloGtold1/train/29986.png +../../data/yoloGtold1/train/29987.png +../../data/yoloGtold1/train/29988.png +../../data/yoloGtold1/train/29989.png +../../data/yoloGtold1/train/29990.png +../../data/yoloGtold1/train/29991.png +../../data/yoloGtold1/train/29992.png +../../data/yoloGtold1/train/29993.png +../../data/yoloGtold1/train/29994.png +../../data/yoloGtold1/train/29995.png +../../data/yoloGtold1/train/29996.png +../../data/yoloGtold1/train/29997.png +../../data/yoloGtold1/train/29998.png +../../data/yoloGtold1/train/29999.png +../../data/yoloGtold1/train/30000.png +../../data/yoloGtold1/train/30001.png +../../data/yoloGtold1/train/30002.png +../../data/yoloGtold1/train/30003.png +../../data/yoloGtold1/train/30004.png +../../data/yoloGtold1/train/30005.png +../../data/yoloGtold1/train/30006.png +../../data/yoloGtold1/train/30007.png +../../data/yoloGtold1/train/30008.png +../../data/yoloGtold1/train/30009.png +../../data/yoloGtold1/train/30010.png +../../data/yoloGtold1/train/30011.png +../../data/yoloGtold1/train/30012.png +../../data/yoloGtold1/train/30013.png +../../data/yoloGtold1/train/30014.png +../../data/yoloGtold1/train/30015.png +../../data/yoloGtold1/train/30016.png +../../data/yoloGtold1/train/30017.png +../../data/yoloGtold1/train/30018.png +../../data/yoloGtold1/train/30019.png +../../data/yoloGtold1/train/30020.png +../../data/yoloGtold1/train/30021.png +../../data/yoloGtold1/train/30022.png +../../data/yoloGtold1/train/30023.png +../../data/yoloGtold1/train/30024.png +../../data/yoloGtold1/train/30025.png +../../data/yoloGtold1/train/30026.png +../../data/yoloGtold1/train/30027.png +../../data/yoloGtold1/train/30028.png +../../data/yoloGtold1/train/30029.png +../../data/yoloGtold1/train/30030.png +../../data/yoloGtold1/train/30031.png +../../data/yoloGtold1/train/30032.png +../../data/yoloGtold1/train/30033.png +../../data/yoloGtold1/train/30034.png +../../data/yoloGtold1/train/30035.png +../../data/yoloGtold1/train/30036.png +../../data/yoloGtold1/train/30037.png +../../data/yoloGtold1/train/30038.png +../../data/yoloGtold1/train/30039.png +../../data/yoloGtold1/train/30040.png +../../data/yoloGtold1/train/30041.png +../../data/yoloGtold1/train/30042.png +../../data/yoloGtold1/train/30043.png +../../data/yoloGtold1/train/30044.png +../../data/yoloGtold1/train/30045.png +../../data/yoloGtold1/train/30046.png +../../data/yoloGtold1/train/30047.png +../../data/yoloGtold1/train/30048.png +../../data/yoloGtold1/train/30049.png +../../data/yoloGtold1/train/30050.png +../../data/yoloGtold1/train/30051.png +../../data/yoloGtold1/train/30052.png +../../data/yoloGtold1/train/30053.png +../../data/yoloGtold1/train/30054.png +../../data/yoloGtold1/train/30055.png +../../data/yoloGtold1/train/30056.png +../../data/yoloGtold1/train/30057.png +../../data/yoloGtold1/train/30058.png +../../data/yoloGtold1/train/30059.png +../../data/yoloGtold1/train/30060.png +../../data/yoloGtold1/train/30061.png +../../data/yoloGtold1/train/30062.png +../../data/yoloGtold1/train/30063.png +../../data/yoloGtold1/train/30064.png +../../data/yoloGtold1/train/30065.png +../../data/yoloGtold1/train/30066.png +../../data/yoloGtold1/train/30067.png +../../data/yoloGtold1/train/30068.png +../../data/yoloGtold1/train/30069.png +../../data/yoloGtold1/train/30070.png +../../data/yoloGtold1/train/30071.png +../../data/yoloGtold1/train/30072.png +../../data/yoloGtold1/train/30073.png +../../data/yoloGtold1/train/30074.png +../../data/yoloGtold1/train/30075.png +../../data/yoloGtold1/train/30076.png +../../data/yoloGtold1/train/30077.png +../../data/yoloGtold1/train/30078.png +../../data/yoloGtold1/train/30079.png +../../data/yoloGtold1/train/30080.png +../../data/yoloGtold1/train/30081.png +../../data/yoloGtold1/train/30082.png +../../data/yoloGtold1/train/30083.png +../../data/yoloGtold1/train/30084.png +../../data/yoloGtold1/train/30085.png +../../data/yoloGtold1/train/30086.png +../../data/yoloGtold1/train/30087.png +../../data/yoloGtold1/train/30088.png +../../data/yoloGtold1/train/30089.png +../../data/yoloGtold1/train/30090.png +../../data/yoloGtold1/train/30091.png +../../data/yoloGtold1/train/30092.png +../../data/yoloGtold1/train/30093.png +../../data/yoloGtold1/train/30094.png +../../data/yoloGtold1/train/30095.png +../../data/yoloGtold1/train/30096.png +../../data/yoloGtold1/train/30097.png +../../data/yoloGtold1/train/30098.png +../../data/yoloGtold1/train/30099.png +../../data/yoloGtold1/train/30100.png +../../data/yoloGtold1/train/30101.png +../../data/yoloGtold1/train/30102.png +../../data/yoloGtold1/train/30103.png +../../data/yoloGtold1/train/30104.png +../../data/yoloGtold1/train/30105.png +../../data/yoloGtold1/train/30106.png +../../data/yoloGtold1/train/30107.png +../../data/yoloGtold1/train/30108.png +../../data/yoloGtold1/train/30109.png +../../data/yoloGtold1/train/30110.png +../../data/yoloGtold1/train/30111.png +../../data/yoloGtold1/train/30112.png +../../data/yoloGtold1/train/30113.png +../../data/yoloGtold1/train/30114.png +../../data/yoloGtold1/train/30115.png +../../data/yoloGtold1/train/30116.png +../../data/yoloGtold1/train/30117.png +../../data/yoloGtold1/train/30118.png +../../data/yoloGtold1/train/30119.png +../../data/yoloGtold1/train/30120.png +../../data/yoloGtold1/train/30121.png +../../data/yoloGtold1/train/30122.png +../../data/yoloGtold1/train/30123.png +../../data/yoloGtold1/train/30124.png +../../data/yoloGtold1/train/30125.png +../../data/yoloGtold1/train/30126.png +../../data/yoloGtold1/train/30127.png +../../data/yoloGtold1/train/30128.png +../../data/yoloGtold1/train/30129.png +../../data/yoloGtold1/train/30130.png +../../data/yoloGtold1/train/30131.png +../../data/yoloGtold1/train/30132.png +../../data/yoloGtold1/train/30133.png +../../data/yoloGtold1/train/30134.png +../../data/yoloGtold1/train/30135.png +../../data/yoloGtold1/train/30136.png +../../data/yoloGtold1/train/30137.png +../../data/yoloGtold1/train/30138.png +../../data/yoloGtold1/train/30139.png +../../data/yoloGtold1/train/30140.png +../../data/yoloGtold1/train/30141.png +../../data/yoloGtold1/train/30142.png +../../data/yoloGtold1/train/30143.png +../../data/yoloGtold1/train/30144.png +../../data/yoloGtold1/train/30145.png +../../data/yoloGtold1/train/30146.png +../../data/yoloGtold1/train/30147.png +../../data/yoloGtold1/train/30148.png +../../data/yoloGtold1/train/30149.png +../../data/yoloGtold1/train/30150.png +../../data/yoloGtold1/train/30151.png +../../data/yoloGtold1/train/30152.png +../../data/yoloGtold1/train/30153.png +../../data/yoloGtold1/train/30154.png +../../data/yoloGtold1/train/30155.png +../../data/yoloGtold1/train/30156.png +../../data/yoloGtold1/train/30157.png +../../data/yoloGtold1/train/30158.png +../../data/yoloGtold1/train/30159.png +../../data/yoloGtold1/train/30160.png +../../data/yoloGtold1/train/30161.png +../../data/yoloGtold1/train/30162.png +../../data/yoloGtold1/train/30163.png +../../data/yoloGtold1/train/30164.png +../../data/yoloGtold1/train/30165.png +../../data/yoloGtold1/train/30166.png +../../data/yoloGtold1/train/30167.png +../../data/yoloGtold1/train/30168.png +../../data/yoloGtold1/train/30169.png +../../data/yoloGtold1/train/30170.png +../../data/yoloGtold1/train/30171.png +../../data/yoloGtold1/train/30172.png +../../data/yoloGtold1/train/30173.png +../../data/yoloGtold1/train/30174.png +../../data/yoloGtold1/train/30175.png +../../data/yoloGtold1/train/30176.png +../../data/yoloGtold1/train/30177.png +../../data/yoloGtold1/train/30178.png +../../data/yoloGtold1/train/30179.png +../../data/yoloGtold1/train/30180.png +../../data/yoloGtold1/train/30181.png +../../data/yoloGtold1/train/30182.png +../../data/yoloGtold1/train/30183.png +../../data/yoloGtold1/train/30184.png +../../data/yoloGtold1/train/30185.png +../../data/yoloGtold1/train/30186.png +../../data/yoloGtold1/train/30187.png +../../data/yoloGtold1/train/30188.png +../../data/yoloGtold1/train/30189.png +../../data/yoloGtold1/train/30190.png +../../data/yoloGtold1/train/30191.png +../../data/yoloGtold1/train/30192.png +../../data/yoloGtold1/train/30193.png +../../data/yoloGtold1/train/30194.png +../../data/yoloGtold1/train/30195.png +../../data/yoloGtold1/train/30196.png +../../data/yoloGtold1/train/30197.png +../../data/yoloGtold1/train/30198.png +../../data/yoloGtold1/train/30199.png +../../data/yoloGtold1/train/30200.png +../../data/yoloGtold1/train/30201.png +../../data/yoloGtold1/train/30202.png +../../data/yoloGtold1/train/30203.png +../../data/yoloGtold1/train/30204.png +../../data/yoloGtold1/train/30205.png +../../data/yoloGtold1/train/30206.png +../../data/yoloGtold1/train/30207.png +../../data/yoloGtold1/train/30208.png +../../data/yoloGtold1/train/30209.png +../../data/yoloGtold1/train/30210.png +../../data/yoloGtold1/train/30211.png +../../data/yoloGtold1/train/30212.png +../../data/yoloGtold1/train/30213.png +../../data/yoloGtold1/train/30214.png +../../data/yoloGtold1/train/30215.png +../../data/yoloGtold1/train/30216.png +../../data/yoloGtold1/train/30217.png +../../data/yoloGtold1/train/30218.png +../../data/yoloGtold1/train/30219.png +../../data/yoloGtold1/train/30220.png +../../data/yoloGtold1/train/30221.png +../../data/yoloGtold1/train/30222.png +../../data/yoloGtold1/train/30223.png +../../data/yoloGtold1/train/30224.png +../../data/yoloGtold1/train/30225.png +../../data/yoloGtold1/train/30226.png +../../data/yoloGtold1/train/30227.png +../../data/yoloGtold1/train/30228.png +../../data/yoloGtold1/train/30229.png +../../data/yoloGtold1/train/30230.png +../../data/yoloGtold1/train/30231.png +../../data/yoloGtold1/train/30232.png +../../data/yoloGtold1/train/30233.png +../../data/yoloGtold1/train/30234.png +../../data/yoloGtold1/train/30235.png +../../data/yoloGtold1/train/30236.png +../../data/yoloGtold1/train/30237.png +../../data/yoloGtold1/train/30238.png +../../data/yoloGtold1/train/30239.png +../../data/yoloGtold1/train/30240.png +../../data/yoloGtold1/train/30241.png +../../data/yoloGtold1/train/30242.png +../../data/yoloGtold1/train/30243.png +../../data/yoloGtold1/train/30244.png +../../data/yoloGtold1/train/30245.png +../../data/yoloGtold1/train/30246.png +../../data/yoloGtold1/train/30247.png +../../data/yoloGtold1/train/30248.png +../../data/yoloGtold1/train/30249.png +../../data/yoloGtold1/train/30250.png +../../data/yoloGtold1/train/30251.png +../../data/yoloGtold1/train/30252.png +../../data/yoloGtold1/train/30253.png +../../data/yoloGtold1/train/30254.png +../../data/yoloGtold1/train/30255.png +../../data/yoloGtold1/train/30256.png +../../data/yoloGtold1/train/30257.png +../../data/yoloGtold1/train/30258.png +../../data/yoloGtold1/train/30259.png +../../data/yoloGtold1/train/30260.png +../../data/yoloGtold1/train/30261.png +../../data/yoloGtold1/train/30262.png +../../data/yoloGtold1/train/30263.png +../../data/yoloGtold1/train/30264.png +../../data/yoloGtold1/train/30265.png +../../data/yoloGtold1/train/30266.png +../../data/yoloGtold1/train/30267.png +../../data/yoloGtold1/train/30268.png +../../data/yoloGtold1/train/30269.png +../../data/yoloGtold1/train/30270.png +../../data/yoloGtold1/train/30271.png +../../data/yoloGtold1/train/30272.png +../../data/yoloGtold1/train/30273.png +../../data/yoloGtold1/train/30274.png +../../data/yoloGtold1/train/30275.png +../../data/yoloGtold1/train/30276.png +../../data/yoloGtold1/train/30277.png +../../data/yoloGtold1/train/30278.png +../../data/yoloGtold1/train/30279.png +../../data/yoloGtold1/train/30280.png +../../data/yoloGtold1/train/30281.png +../../data/yoloGtold1/train/30282.png +../../data/yoloGtold1/train/30283.png +../../data/yoloGtold1/train/30284.png +../../data/yoloGtold1/train/30285.png +../../data/yoloGtold1/train/30286.png +../../data/yoloGtold1/train/30287.png +../../data/yoloGtold1/train/30288.png +../../data/yoloGtold1/train/30289.png +../../data/yoloGtold1/train/30290.png +../../data/yoloGtold1/train/30291.png +../../data/yoloGtold1/train/30292.png +../../data/yoloGtold1/train/30293.png +../../data/yoloGtold1/train/30294.png +../../data/yoloGtold1/train/30295.png +../../data/yoloGtold1/train/30296.png +../../data/yoloGtold1/train/30297.png +../../data/yoloGtold1/train/30298.png +../../data/yoloGtold1/train/30299.png +../../data/yoloGtold1/train/30300.png +../../data/yoloGtold1/train/30301.png +../../data/yoloGtold1/train/30302.png +../../data/yoloGtold1/train/30303.png +../../data/yoloGtold1/train/30304.png +../../data/yoloGtold1/train/30305.png +../../data/yoloGtold1/train/30306.png +../../data/yoloGtold1/train/30307.png +../../data/yoloGtold1/train/30308.png +../../data/yoloGtold1/train/30309.png +../../data/yoloGtold1/train/30310.png +../../data/yoloGtold1/train/30311.png +../../data/yoloGtold1/train/30312.png +../../data/yoloGtold1/train/30313.png +../../data/yoloGtold1/train/30314.png +../../data/yoloGtold1/train/30315.png +../../data/yoloGtold1/train/30316.png +../../data/yoloGtold1/train/30317.png +../../data/yoloGtold1/train/30318.png +../../data/yoloGtold1/train/30319.png +../../data/yoloGtold1/train/30320.png +../../data/yoloGtold1/train/30321.png +../../data/yoloGtold1/train/30322.png +../../data/yoloGtold1/train/30323.png +../../data/yoloGtold1/train/30324.png +../../data/yoloGtold1/train/30325.png +../../data/yoloGtold1/train/30326.png +../../data/yoloGtold1/train/30327.png +../../data/yoloGtold1/train/30328.png +../../data/yoloGtold1/train/30329.png +../../data/yoloGtold1/train/30330.png +../../data/yoloGtold1/train/30331.png +../../data/yoloGtold1/train/30332.png +../../data/yoloGtold1/train/30333.png +../../data/yoloGtold1/train/30334.png +../../data/yoloGtold1/train/30335.png +../../data/yoloGtold1/train/30336.png +../../data/yoloGtold1/train/30337.png +../../data/yoloGtold1/train/30338.png +../../data/yoloGtold1/train/30339.png +../../data/yoloGtold1/train/30340.png +../../data/yoloGtold1/train/30341.png +../../data/yoloGtold1/train/30342.png +../../data/yoloGtold1/train/30343.png +../../data/yoloGtold1/train/30344.png +../../data/yoloGtold1/train/30345.png +../../data/yoloGtold1/train/30346.png +../../data/yoloGtold1/train/30347.png +../../data/yoloGtold1/train/30348.png +../../data/yoloGtold1/train/30349.png +../../data/yoloGtold1/train/30350.png +../../data/yoloGtold1/train/30351.png +../../data/yoloGtold1/train/30352.png +../../data/yoloGtold1/train/30353.png +../../data/yoloGtold1/train/30354.png +../../data/yoloGtold1/train/30355.png +../../data/yoloGtold1/train/30356.png +../../data/yoloGtold1/train/30357.png +../../data/yoloGtold1/train/30358.png +../../data/yoloGtold1/train/30359.png +../../data/yoloGtold1/train/30360.png +../../data/yoloGtold1/train/30361.png +../../data/yoloGtold1/train/30362.png +../../data/yoloGtold1/train/30363.png +../../data/yoloGtold1/train/30364.png +../../data/yoloGtold1/train/30365.png +../../data/yoloGtold1/train/30366.png +../../data/yoloGtold1/train/30367.png +../../data/yoloGtold1/train/30368.png +../../data/yoloGtold1/train/30369.png +../../data/yoloGtold1/train/30370.png +../../data/yoloGtold1/train/30371.png +../../data/yoloGtold1/train/30372.png +../../data/yoloGtold1/train/30373.png +../../data/yoloGtold1/train/30374.png +../../data/yoloGtold1/train/30375.png +../../data/yoloGtold1/train/30376.png +../../data/yoloGtold1/train/30377.png +../../data/yoloGtold1/train/30378.png +../../data/yoloGtold1/train/30379.png +../../data/yoloGtold1/train/30380.png +../../data/yoloGtold1/train/30381.png +../../data/yoloGtold1/train/30382.png +../../data/yoloGtold1/train/30383.png +../../data/yoloGtold1/train/30384.png +../../data/yoloGtold1/train/30385.png +../../data/yoloGtold1/train/30386.png +../../data/yoloGtold1/train/30387.png +../../data/yoloGtold1/train/30388.png +../../data/yoloGtold1/train/30389.png +../../data/yoloGtold1/train/30390.png +../../data/yoloGtold1/train/30391.png +../../data/yoloGtold1/train/30392.png +../../data/yoloGtold1/train/30393.png +../../data/yoloGtold1/train/30394.png +../../data/yoloGtold1/train/30395.png +../../data/yoloGtold1/train/30396.png +../../data/yoloGtold1/train/30397.png +../../data/yoloGtold1/train/30398.png +../../data/yoloGtold1/train/30399.png +../../data/yoloGtold1/train/30400.png +../../data/yoloGtold1/train/30401.png +../../data/yoloGtold1/train/30402.png +../../data/yoloGtold1/train/30403.png +../../data/yoloGtold1/train/30404.png +../../data/yoloGtold1/train/30405.png +../../data/yoloGtold1/train/30406.png +../../data/yoloGtold1/train/30407.png +../../data/yoloGtold1/train/30408.png +../../data/yoloGtold1/train/30409.png +../../data/yoloGtold1/train/30410.png +../../data/yoloGtold1/train/30411.png +../../data/yoloGtold1/train/30412.png +../../data/yoloGtold1/train/30413.png +../../data/yoloGtold1/train/30414.png +../../data/yoloGtold1/train/30415.png +../../data/yoloGtold1/train/30416.png +../../data/yoloGtold1/train/30417.png +../../data/yoloGtold1/train/30418.png +../../data/yoloGtold1/train/30419.png +../../data/yoloGtold1/train/30420.png +../../data/yoloGtold1/train/30421.png +../../data/yoloGtold1/train/30422.png +../../data/yoloGtold1/train/30423.png +../../data/yoloGtold1/train/30424.png +../../data/yoloGtold1/train/30425.png +../../data/yoloGtold1/train/30426.png +../../data/yoloGtold1/train/30427.png +../../data/yoloGtold1/train/30428.png +../../data/yoloGtold1/train/30429.png +../../data/yoloGtold1/train/30430.png +../../data/yoloGtold1/train/30431.png +../../data/yoloGtold1/train/30432.png +../../data/yoloGtold1/train/30433.png +../../data/yoloGtold1/train/30434.png +../../data/yoloGtold1/train/30435.png +../../data/yoloGtold1/train/30436.png +../../data/yoloGtold1/train/30437.png +../../data/yoloGtold1/train/30438.png +../../data/yoloGtold1/train/30439.png +../../data/yoloGtold1/train/30440.png +../../data/yoloGtold1/train/30441.png +../../data/yoloGtold1/train/30442.png +../../data/yoloGtold1/train/30443.png +../../data/yoloGtold1/train/30444.png +../../data/yoloGtold1/train/30445.png +../../data/yoloGtold1/train/30446.png +../../data/yoloGtold1/train/30447.png +../../data/yoloGtold1/train/30448.png +../../data/yoloGtold1/train/30449.png +../../data/yoloGtold1/train/30450.png +../../data/yoloGtold1/train/30451.png +../../data/yoloGtold1/train/30452.png +../../data/yoloGtold1/train/30453.png +../../data/yoloGtold1/train/30454.png +../../data/yoloGtold1/train/30455.png +../../data/yoloGtold1/train/30456.png +../../data/yoloGtold1/train/30457.png +../../data/yoloGtold1/train/30458.png +../../data/yoloGtold1/train/30459.png +../../data/yoloGtold1/train/30460.png +../../data/yoloGtold1/train/30461.png +../../data/yoloGtold1/train/30462.png +../../data/yoloGtold1/train/30463.png +../../data/yoloGtold1/train/30464.png +../../data/yoloGtold1/train/30465.png +../../data/yoloGtold1/train/30466.png +../../data/yoloGtold1/train/30467.png +../../data/yoloGtold1/train/30468.png +../../data/yoloGtold1/train/30469.png +../../data/yoloGtold1/train/30470.png +../../data/yoloGtold1/train/30471.png +../../data/yoloGtold1/train/30472.png +../../data/yoloGtold1/train/30473.png +../../data/yoloGtold1/train/30474.png +../../data/yoloGtold1/train/30475.png +../../data/yoloGtold1/train/30476.png +../../data/yoloGtold1/train/30477.png +../../data/yoloGtold1/train/30478.png +../../data/yoloGtold1/train/30479.png +../../data/yoloGtold1/train/30480.png +../../data/yoloGtold1/train/30481.png +../../data/yoloGtold1/train/30482.png +../../data/yoloGtold1/train/30483.png +../../data/yoloGtold1/train/30484.png +../../data/yoloGtold1/train/30485.png +../../data/yoloGtold1/train/30486.png +../../data/yoloGtold1/train/30487.png +../../data/yoloGtold1/train/30488.png +../../data/yoloGtold1/train/30489.png +../../data/yoloGtold1/train/30490.png +../../data/yoloGtold1/train/30491.png +../../data/yoloGtold1/train/30492.png +../../data/yoloGtold1/train/30493.png +../../data/yoloGtold1/train/30494.png +../../data/yoloGtold1/train/30495.png +../../data/yoloGtold1/train/30496.png +../../data/yoloGtold1/train/30497.png +../../data/yoloGtold1/train/30498.png +../../data/yoloGtold1/train/30499.png +../../data/yoloGtold1/train/30500.png +../../data/yoloGtold1/train/30501.png +../../data/yoloGtold1/train/30502.png +../../data/yoloGtold1/train/30503.png +../../data/yoloGtold1/train/30504.png +../../data/yoloGtold1/train/30505.png +../../data/yoloGtold1/train/30506.png +../../data/yoloGtold1/train/30507.png +../../data/yoloGtold1/train/30508.png +../../data/yoloGtold1/train/30509.png +../../data/yoloGtold1/train/30510.png +../../data/yoloGtold1/train/30511.png +../../data/yoloGtold1/train/30512.png +../../data/yoloGtold1/train/30513.png +../../data/yoloGtold1/train/30514.png +../../data/yoloGtold1/train/30515.png +../../data/yoloGtold1/train/30516.png +../../data/yoloGtold1/train/30517.png +../../data/yoloGtold1/train/30518.png +../../data/yoloGtold1/train/30519.png +../../data/yoloGtold1/train/30520.png +../../data/yoloGtold1/train/30521.png +../../data/yoloGtold1/train/30522.png +../../data/yoloGtold1/train/30523.png +../../data/yoloGtold1/train/30524.png +../../data/yoloGtold1/train/30525.png +../../data/yoloGtold1/train/30526.png +../../data/yoloGtold1/train/30527.png +../../data/yoloGtold1/train/30528.png +../../data/yoloGtold1/train/30529.png +../../data/yoloGtold1/train/30530.png +../../data/yoloGtold1/train/30531.png +../../data/yoloGtold1/train/30532.png +../../data/yoloGtold1/train/30533.png +../../data/yoloGtold1/train/30534.png +../../data/yoloGtold1/train/30535.png +../../data/yoloGtold1/train/30536.png +../../data/yoloGtold1/train/30537.png +../../data/yoloGtold1/train/30538.png +../../data/yoloGtold1/train/30539.png +../../data/yoloGtold1/train/30540.png +../../data/yoloGtold1/train/30541.png +../../data/yoloGtold1/train/30542.png +../../data/yoloGtold1/train/30543.png +../../data/yoloGtold1/train/30544.png +../../data/yoloGtold1/train/30545.png +../../data/yoloGtold1/train/30546.png +../../data/yoloGtold1/train/30547.png +../../data/yoloGtold1/train/30548.png +../../data/yoloGtold1/train/30549.png +../../data/yoloGtold1/train/30550.png +../../data/yoloGtold1/train/30551.png +../../data/yoloGtold1/train/30552.png +../../data/yoloGtold1/train/30553.png +../../data/yoloGtold1/train/30554.png +../../data/yoloGtold1/train/30555.png +../../data/yoloGtold1/train/30556.png +../../data/yoloGtold1/train/30557.png +../../data/yoloGtold1/train/30558.png +../../data/yoloGtold1/train/30559.png +../../data/yoloGtold1/train/30560.png +../../data/yoloGtold1/train/30561.png +../../data/yoloGtold1/train/30562.png +../../data/yoloGtold1/train/30563.png +../../data/yoloGtold1/train/30564.png +../../data/yoloGtold1/train/30565.png +../../data/yoloGtold1/train/30566.png +../../data/yoloGtold1/train/30567.png +../../data/yoloGtold1/train/30568.png +../../data/yoloGtold1/train/30569.png +../../data/yoloGtold1/train/30570.png +../../data/yoloGtold1/train/30571.png +../../data/yoloGtold1/train/30572.png +../../data/yoloGtold1/train/30573.png +../../data/yoloGtold1/train/30574.png +../../data/yoloGtold1/train/30575.png +../../data/yoloGtold1/train/30576.png +../../data/yoloGtold1/train/30577.png +../../data/yoloGtold1/train/30578.png +../../data/yoloGtold1/train/30579.png +../../data/yoloGtold1/train/30580.png +../../data/yoloGtold1/train/30581.png +../../data/yoloGtold1/train/30582.png +../../data/yoloGtold1/train/30583.png +../../data/yoloGtold1/train/30584.png +../../data/yoloGtold1/train/30585.png +../../data/yoloGtold1/train/30586.png +../../data/yoloGtold1/train/30587.png +../../data/yoloGtold1/train/30588.png +../../data/yoloGtold1/train/30589.png +../../data/yoloGtold1/train/30590.png +../../data/yoloGtold1/train/30591.png +../../data/yoloGtold1/train/30592.png +../../data/yoloGtold1/train/30593.png +../../data/yoloGtold1/train/30594.png +../../data/yoloGtold1/train/30595.png +../../data/yoloGtold1/train/30596.png +../../data/yoloGtold1/train/30597.png +../../data/yoloGtold1/train/30598.png +../../data/yoloGtold1/train/30599.png +../../data/yoloGtold1/train/30600.png +../../data/yoloGtold1/train/30601.png +../../data/yoloGtold1/train/30602.png +../../data/yoloGtold1/train/30603.png +../../data/yoloGtold1/train/30604.png +../../data/yoloGtold1/train/30605.png +../../data/yoloGtold1/train/30606.png +../../data/yoloGtold1/train/30607.png +../../data/yoloGtold1/train/30608.png +../../data/yoloGtold1/train/30609.png +../../data/yoloGtold1/train/30610.png +../../data/yoloGtold1/train/30611.png +../../data/yoloGtold1/train/30612.png +../../data/yoloGtold1/train/30613.png +../../data/yoloGtold1/train/30614.png +../../data/yoloGtold1/train/30615.png +../../data/yoloGtold1/train/30616.png +../../data/yoloGtold1/train/30617.png +../../data/yoloGtold1/train/30618.png +../../data/yoloGtold1/train/30619.png +../../data/yoloGtold1/train/30620.png +../../data/yoloGtold1/train/30621.png +../../data/yoloGtold1/train/30622.png +../../data/yoloGtold1/train/30623.png +../../data/yoloGtold1/train/30624.png +../../data/yoloGtold1/train/30625.png +../../data/yoloGtold1/train/30626.png +../../data/yoloGtold1/train/30627.png +../../data/yoloGtold1/train/30628.png +../../data/yoloGtold1/train/30629.png +../../data/yoloGtold1/train/30630.png +../../data/yoloGtold1/train/30631.png +../../data/yoloGtold1/train/30632.png +../../data/yoloGtold1/train/30633.png +../../data/yoloGtold1/train/30634.png +../../data/yoloGtold1/train/30635.png +../../data/yoloGtold1/train/30636.png +../../data/yoloGtold1/train/30637.png +../../data/yoloGtold1/train/30638.png +../../data/yoloGtold1/train/30639.png +../../data/yoloGtold1/train/30640.png +../../data/yoloGtold1/train/30641.png +../../data/yoloGtold1/train/30642.png +../../data/yoloGtold1/train/30643.png +../../data/yoloGtold1/train/30644.png +../../data/yoloGtold1/train/30645.png +../../data/yoloGtold1/train/30646.png +../../data/yoloGtold1/train/30647.png +../../data/yoloGtold1/train/30648.png +../../data/yoloGtold1/train/30649.png +../../data/yoloGtold1/train/30650.png +../../data/yoloGtold1/train/30651.png +../../data/yoloGtold1/train/30652.png +../../data/yoloGtold1/train/30653.png +../../data/yoloGtold1/train/30654.png +../../data/yoloGtold1/train/30655.png +../../data/yoloGtold1/train/30656.png +../../data/yoloGtold1/train/30657.png +../../data/yoloGtold1/train/30658.png +../../data/yoloGtold1/train/30659.png +../../data/yoloGtold1/train/30660.png +../../data/yoloGtold1/train/30661.png +../../data/yoloGtold1/train/30662.png +../../data/yoloGtold1/train/30663.png +../../data/yoloGtold1/train/30664.png +../../data/yoloGtold1/train/30665.png +../../data/yoloGtold1/train/30666.png +../../data/yoloGtold1/train/30667.png +../../data/yoloGtold1/train/30668.png +../../data/yoloGtold1/train/30669.png +../../data/yoloGtold1/train/30670.png +../../data/yoloGtold1/train/30671.png +../../data/yoloGtold1/train/30672.png +../../data/yoloGtold1/train/30673.png +../../data/yoloGtold1/train/30674.png +../../data/yoloGtold1/train/30675.png +../../data/yoloGtold1/train/30676.png +../../data/yoloGtold1/train/30677.png +../../data/yoloGtold1/train/30678.png +../../data/yoloGtold1/train/30679.png +../../data/yoloGtold1/train/30680.png +../../data/yoloGtold1/train/30681.png +../../data/yoloGtold1/train/30682.png +../../data/yoloGtold1/train/30683.png +../../data/yoloGtold1/train/30684.png +../../data/yoloGtold1/train/30685.png +../../data/yoloGtold1/train/30686.png +../../data/yoloGtold1/train/30687.png +../../data/yoloGtold1/train/30688.png +../../data/yoloGtold1/train/30689.png +../../data/yoloGtold1/train/30690.png +../../data/yoloGtold1/train/30691.png +../../data/yoloGtold1/train/30692.png +../../data/yoloGtold1/train/30693.png +../../data/yoloGtold1/train/30694.png +../../data/yoloGtold1/train/30695.png +../../data/yoloGtold1/train/30696.png +../../data/yoloGtold1/train/30697.png +../../data/yoloGtold1/train/30698.png +../../data/yoloGtold1/train/30699.png +../../data/yoloGtold1/train/30700.png +../../data/yoloGtold1/train/30701.png +../../data/yoloGtold1/train/30702.png +../../data/yoloGtold1/train/30703.png +../../data/yoloGtold1/train/30704.png +../../data/yoloGtold1/train/30705.png +../../data/yoloGtold1/train/30706.png +../../data/yoloGtold1/train/30707.png +../../data/yoloGtold1/train/30708.png +../../data/yoloGtold1/train/30709.png +../../data/yoloGtold1/train/30710.png +../../data/yoloGtold1/train/30711.png +../../data/yoloGtold1/train/30712.png +../../data/yoloGtold1/train/30713.png +../../data/yoloGtold1/train/30714.png +../../data/yoloGtold1/train/30715.png +../../data/yoloGtold1/train/30716.png +../../data/yoloGtold1/train/30717.png +../../data/yoloGtold1/train/30718.png +../../data/yoloGtold1/train/30719.png +../../data/yoloGtold1/train/30720.png +../../data/yoloGtold1/train/30721.png +../../data/yoloGtold1/train/30722.png +../../data/yoloGtold1/train/30723.png +../../data/yoloGtold1/train/30724.png +../../data/yoloGtold1/train/30725.png +../../data/yoloGtold1/train/30726.png +../../data/yoloGtold1/train/30727.png +../../data/yoloGtold1/train/30728.png +../../data/yoloGtold1/train/30729.png +../../data/yoloGtold1/train/30730.png +../../data/yoloGtold1/train/30731.png +../../data/yoloGtold1/train/30732.png +../../data/yoloGtold1/train/30733.png +../../data/yoloGtold1/train/30734.png +../../data/yoloGtold1/train/30735.png +../../data/yoloGtold1/train/30736.png +../../data/yoloGtold1/train/30737.png +../../data/yoloGtold1/train/30738.png +../../data/yoloGtold1/train/30739.png +../../data/yoloGtold1/train/30740.png +../../data/yoloGtold1/train/30741.png +../../data/yoloGtold1/train/30742.png +../../data/yoloGtold1/train/30743.png +../../data/yoloGtold1/train/30744.png +../../data/yoloGtold1/train/30745.png +../../data/yoloGtold1/train/30746.png +../../data/yoloGtold1/train/30747.png +../../data/yoloGtold1/train/30748.png +../../data/yoloGtold1/train/30749.png +../../data/yoloGtold1/train/30750.png +../../data/yoloGtold1/train/30751.png +../../data/yoloGtold1/train/30752.png +../../data/yoloGtold1/train/30753.png +../../data/yoloGtold1/train/30754.png +../../data/yoloGtold1/train/30755.png +../../data/yoloGtold1/train/30756.png +../../data/yoloGtold1/train/30757.png +../../data/yoloGtold1/train/30758.png +../../data/yoloGtold1/train/30759.png +../../data/yoloGtold1/train/30760.png +../../data/yoloGtold1/train/30761.png +../../data/yoloGtold1/train/30762.png +../../data/yoloGtold1/train/30763.png +../../data/yoloGtold1/train/30764.png +../../data/yoloGtold1/train/30765.png +../../data/yoloGtold1/train/30766.png +../../data/yoloGtold1/train/30767.png +../../data/yoloGtold1/train/30768.png +../../data/yoloGtold1/train/30769.png +../../data/yoloGtold1/train/30770.png +../../data/yoloGtold1/train/30771.png +../../data/yoloGtold1/train/30772.png +../../data/yoloGtold1/train/30773.png +../../data/yoloGtold1/train/30774.png +../../data/yoloGtold1/train/30775.png +../../data/yoloGtold1/train/30776.png +../../data/yoloGtold1/train/30777.png +../../data/yoloGtold1/train/30778.png +../../data/yoloGtold1/train/30779.png +../../data/yoloGtold1/train/30780.png +../../data/yoloGtold1/train/30781.png +../../data/yoloGtold1/train/30782.png +../../data/yoloGtold1/train/30783.png +../../data/yoloGtold1/train/30784.png +../../data/yoloGtold1/train/30785.png +../../data/yoloGtold1/train/30786.png +../../data/yoloGtold1/train/30787.png +../../data/yoloGtold1/train/30788.png +../../data/yoloGtold1/train/30789.png +../../data/yoloGtold1/train/30790.png +../../data/yoloGtold1/train/30791.png +../../data/yoloGtold1/train/30792.png +../../data/yoloGtold1/train/30793.png +../../data/yoloGtold1/train/30794.png +../../data/yoloGtold1/train/30795.png +../../data/yoloGtold1/train/30796.png +../../data/yoloGtold1/train/30797.png +../../data/yoloGtold1/train/30798.png +../../data/yoloGtold1/train/30799.png +../../data/yoloGtold1/train/30800.png +../../data/yoloGtold1/train/30801.png +../../data/yoloGtold1/train/30802.png +../../data/yoloGtold1/train/30803.png +../../data/yoloGtold1/train/30804.png +../../data/yoloGtold1/train/30805.png +../../data/yoloGtold1/train/30806.png +../../data/yoloGtold1/train/30807.png +../../data/yoloGtold1/train/30808.png +../../data/yoloGtold1/train/30809.png +../../data/yoloGtold1/train/30810.png +../../data/yoloGtold1/train/30811.png +../../data/yoloGtold1/train/30812.png +../../data/yoloGtold1/train/30813.png +../../data/yoloGtold1/train/30814.png +../../data/yoloGtold1/train/30815.png +../../data/yoloGtold1/train/30816.png +../../data/yoloGtold1/train/30817.png +../../data/yoloGtold1/train/30818.png +../../data/yoloGtold1/train/30819.png +../../data/yoloGtold1/train/30820.png +../../data/yoloGtold1/train/30821.png +../../data/yoloGtold1/train/30822.png +../../data/yoloGtold1/train/30823.png +../../data/yoloGtold1/train/30824.png +../../data/yoloGtold1/train/30825.png +../../data/yoloGtold1/train/30826.png +../../data/yoloGtold1/train/30827.png +../../data/yoloGtold1/train/30828.png +../../data/yoloGtold1/train/30829.png +../../data/yoloGtold1/train/30830.png +../../data/yoloGtold1/train/30831.png +../../data/yoloGtold1/train/30832.png +../../data/yoloGtold1/train/30833.png +../../data/yoloGtold1/train/30834.png +../../data/yoloGtold1/train/30835.png +../../data/yoloGtold1/train/30836.png +../../data/yoloGtold1/train/30837.png +../../data/yoloGtold1/train/30838.png +../../data/yoloGtold1/train/30839.png +../../data/yoloGtold1/train/30840.png +../../data/yoloGtold1/train/30841.png +../../data/yoloGtold1/train/30842.png +../../data/yoloGtold1/train/30843.png +../../data/yoloGtold1/train/30844.png +../../data/yoloGtold1/train/30845.png +../../data/yoloGtold1/train/30846.png +../../data/yoloGtold1/train/30847.png +../../data/yoloGtold1/train/30848.png +../../data/yoloGtold1/train/30849.png +../../data/yoloGtold1/train/30850.png +../../data/yoloGtold1/train/30851.png +../../data/yoloGtold1/train/30852.png +../../data/yoloGtold1/train/30853.png +../../data/yoloGtold1/train/30854.png +../../data/yoloGtold1/train/30855.png +../../data/yoloGtold1/train/30856.png +../../data/yoloGtold1/train/30857.png +../../data/yoloGtold1/train/30858.png +../../data/yoloGtold1/train/30859.png +../../data/yoloGtold1/train/30860.png +../../data/yoloGtold1/train/30861.png +../../data/yoloGtold1/train/30862.png +../../data/yoloGtold1/train/30863.png +../../data/yoloGtold1/train/30864.png +../../data/yoloGtold1/train/30865.png +../../data/yoloGtold1/train/30866.png +../../data/yoloGtold1/train/30867.png +../../data/yoloGtold1/train/30868.png +../../data/yoloGtold1/train/30869.png +../../data/yoloGtold1/train/30870.png +../../data/yoloGtold1/train/30871.png +../../data/yoloGtold1/train/30872.png +../../data/yoloGtold1/train/30873.png +../../data/yoloGtold1/train/30874.png +../../data/yoloGtold1/train/30875.png +../../data/yoloGtold1/train/30876.png +../../data/yoloGtold1/train/30877.png +../../data/yoloGtold1/train/30878.png +../../data/yoloGtold1/train/30879.png +../../data/yoloGtold1/train/30880.png +../../data/yoloGtold1/train/30881.png +../../data/yoloGtold1/train/30882.png +../../data/yoloGtold1/train/30883.png +../../data/yoloGtold1/train/30884.png +../../data/yoloGtold1/train/30885.png +../../data/yoloGtold1/train/30886.png +../../data/yoloGtold1/train/30887.png +../../data/yoloGtold1/train/30888.png +../../data/yoloGtold1/train/30889.png +../../data/yoloGtold1/train/30890.png +../../data/yoloGtold1/train/30891.png +../../data/yoloGtold1/train/30892.png +../../data/yoloGtold1/train/30893.png +../../data/yoloGtold1/train/30894.png +../../data/yoloGtold1/train/30895.png +../../data/yoloGtold1/train/30896.png +../../data/yoloGtold1/train/30897.png +../../data/yoloGtold1/train/30898.png +../../data/yoloGtold1/train/30899.png +../../data/yoloGtold1/train/30900.png +../../data/yoloGtold1/train/30901.png +../../data/yoloGtold1/train/30902.png +../../data/yoloGtold1/train/30903.png +../../data/yoloGtold1/train/30904.png +../../data/yoloGtold1/train/30905.png +../../data/yoloGtold1/train/30906.png +../../data/yoloGtold1/train/30907.png +../../data/yoloGtold1/train/30908.png +../../data/yoloGtold1/train/30909.png +../../data/yoloGtold1/train/30910.png +../../data/yoloGtold1/train/30911.png +../../data/yoloGtold1/train/30912.png +../../data/yoloGtold1/train/30913.png +../../data/yoloGtold1/train/30914.png +../../data/yoloGtold1/train/30915.png +../../data/yoloGtold1/train/30916.png +../../data/yoloGtold1/train/30917.png +../../data/yoloGtold1/train/30918.png +../../data/yoloGtold1/train/30919.png +../../data/yoloGtold1/train/30920.png +../../data/yoloGtold1/train/30921.png +../../data/yoloGtold1/train/30922.png +../../data/yoloGtold1/train/30923.png +../../data/yoloGtold1/train/30924.png +../../data/yoloGtold1/train/30925.png +../../data/yoloGtold1/train/30926.png +../../data/yoloGtold1/train/30927.png +../../data/yoloGtold1/train/30928.png +../../data/yoloGtold1/train/30929.png +../../data/yoloGtold1/train/30930.png +../../data/yoloGtold1/train/30931.png +../../data/yoloGtold1/train/30932.png +../../data/yoloGtold1/train/30933.png +../../data/yoloGtold1/train/30934.png +../../data/yoloGtold1/train/30935.png +../../data/yoloGtold1/train/30936.png +../../data/yoloGtold1/train/30937.png +../../data/yoloGtold1/train/30938.png +../../data/yoloGtold1/train/30939.png +../../data/yoloGtold1/train/30940.png +../../data/yoloGtold1/train/30941.png +../../data/yoloGtold1/train/30942.png +../../data/yoloGtold1/train/30943.png +../../data/yoloGtold1/train/30944.png +../../data/yoloGtold1/train/30945.png +../../data/yoloGtold1/train/30946.png +../../data/yoloGtold1/train/30947.png +../../data/yoloGtold1/train/30948.png +../../data/yoloGtold1/train/30949.png +../../data/yoloGtold1/train/30950.png +../../data/yoloGtold1/train/30951.png +../../data/yoloGtold1/train/30952.png +../../data/yoloGtold1/train/30953.png +../../data/yoloGtold1/train/30954.png +../../data/yoloGtold1/train/30955.png +../../data/yoloGtold1/train/30956.png +../../data/yoloGtold1/train/30957.png +../../data/yoloGtold1/train/30958.png +../../data/yoloGtold1/train/30959.png +../../data/yoloGtold1/train/30960.png +../../data/yoloGtold1/train/30961.png +../../data/yoloGtold1/train/30962.png +../../data/yoloGtold1/train/30963.png +../../data/yoloGtold1/train/30964.png +../../data/yoloGtold1/train/30965.png +../../data/yoloGtold1/train/30966.png +../../data/yoloGtold1/train/30967.png +../../data/yoloGtold1/train/30968.png +../../data/yoloGtold1/train/30969.png +../../data/yoloGtold1/train/30970.png +../../data/yoloGtold1/train/30971.png +../../data/yoloGtold1/train/30972.png +../../data/yoloGtold1/train/30973.png +../../data/yoloGtold1/train/30974.png +../../data/yoloGtold1/train/30975.png +../../data/yoloGtold1/train/30976.png +../../data/yoloGtold1/train/30977.png +../../data/yoloGtold1/train/30978.png +../../data/yoloGtold1/train/30979.png +../../data/yoloGtold1/train/30980.png +../../data/yoloGtold1/train/30981.png +../../data/yoloGtold1/train/30982.png +../../data/yoloGtold1/train/30983.png +../../data/yoloGtold1/train/30984.png +../../data/yoloGtold1/train/30985.png +../../data/yoloGtold1/train/30986.png +../../data/yoloGtold1/train/30987.png +../../data/yoloGtold1/train/30988.png +../../data/yoloGtold1/train/30989.png +../../data/yoloGtold1/train/30990.png +../../data/yoloGtold1/train/30991.png +../../data/yoloGtold1/train/30992.png +../../data/yoloGtold1/train/30993.png +../../data/yoloGtold1/train/30994.png +../../data/yoloGtold1/train/30995.png +../../data/yoloGtold1/train/30996.png +../../data/yoloGtold1/train/30997.png +../../data/yoloGtold1/train/30998.png +../../data/yoloGtold1/train/30999.png +../../data/yoloGtold1/train/31000.png +../../data/yoloGtold1/train/31001.png +../../data/yoloGtold1/train/31002.png +../../data/yoloGtold1/train/31003.png +../../data/yoloGtold1/train/31004.png +../../data/yoloGtold1/train/31005.png +../../data/yoloGtold1/train/31006.png +../../data/yoloGtold1/train/31007.png +../../data/yoloGtold1/train/31008.png +../../data/yoloGtold1/train/31009.png +../../data/yoloGtold1/train/31010.png +../../data/yoloGtold1/train/31011.png +../../data/yoloGtold1/train/31012.png +../../data/yoloGtold1/train/31013.png +../../data/yoloGtold1/train/31014.png +../../data/yoloGtold1/train/31015.png +../../data/yoloGtold1/train/31016.png +../../data/yoloGtold1/train/31017.png +../../data/yoloGtold1/train/31018.png +../../data/yoloGtold1/train/31019.png +../../data/yoloGtold1/train/31020.png +../../data/yoloGtold1/train/31021.png +../../data/yoloGtold1/train/31022.png +../../data/yoloGtold1/train/31023.png +../../data/yoloGtold1/train/31024.png +../../data/yoloGtold1/train/31025.png +../../data/yoloGtold1/train/31026.png +../../data/yoloGtold1/train/31027.png +../../data/yoloGtold1/train/31028.png +../../data/yoloGtold1/train/31029.png +../../data/yoloGtold1/train/31030.png +../../data/yoloGtold1/train/31031.png +../../data/yoloGtold1/train/31032.png +../../data/yoloGtold1/train/31033.png +../../data/yoloGtold1/train/31034.png +../../data/yoloGtold1/train/31035.png +../../data/yoloGtold1/train/31036.png +../../data/yoloGtold1/train/31037.png +../../data/yoloGtold1/train/31038.png +../../data/yoloGtold1/train/31039.png +../../data/yoloGtold1/train/31040.png +../../data/yoloGtold1/train/31041.png +../../data/yoloGtold1/train/31042.png +../../data/yoloGtold1/train/31043.png +../../data/yoloGtold1/train/31044.png +../../data/yoloGtold1/train/31045.png +../../data/yoloGtold1/train/31046.png +../../data/yoloGtold1/train/31047.png +../../data/yoloGtold1/train/31048.png +../../data/yoloGtold1/train/31049.png +../../data/yoloGtold1/train/31050.png +../../data/yoloGtold1/train/31051.png +../../data/yoloGtold1/train/31052.png +../../data/yoloGtold1/train/31053.png +../../data/yoloGtold1/train/31054.png +../../data/yoloGtold1/train/31055.png +../../data/yoloGtold1/train/31056.png +../../data/yoloGtold1/train/31057.png +../../data/yoloGtold1/train/31058.png +../../data/yoloGtold1/train/31059.png +../../data/yoloGtold1/train/31060.png +../../data/yoloGtold1/train/31061.png +../../data/yoloGtold1/train/31062.png +../../data/yoloGtold1/train/31063.png +../../data/yoloGtold1/train/31064.png +../../data/yoloGtold1/train/31065.png +../../data/yoloGtold1/train/31066.png +../../data/yoloGtold1/train/31067.png +../../data/yoloGtold1/train/31068.png +../../data/yoloGtold1/train/31069.png +../../data/yoloGtold1/train/31070.png +../../data/yoloGtold1/train/31071.png +../../data/yoloGtold1/train/31072.png +../../data/yoloGtold1/train/31073.png +../../data/yoloGtold1/train/31074.png +../../data/yoloGtold1/train/31075.png +../../data/yoloGtold1/train/31076.png +../../data/yoloGtold1/train/31077.png +../../data/yoloGtold1/train/31078.png +../../data/yoloGtold1/train/31079.png +../../data/yoloGtold1/train/31080.png +../../data/yoloGtold1/train/31081.png +../../data/yoloGtold1/train/31082.png +../../data/yoloGtold1/train/31083.png +../../data/yoloGtold1/train/31084.png +../../data/yoloGtold1/train/31085.png +../../data/yoloGtold1/train/31086.png +../../data/yoloGtold1/train/31087.png +../../data/yoloGtold1/train/31088.png +../../data/yoloGtold1/train/31089.png +../../data/yoloGtold1/train/31090.png +../../data/yoloGtold1/train/31091.png +../../data/yoloGtold1/train/31092.png +../../data/yoloGtold1/train/31093.png +../../data/yoloGtold1/train/31094.png +../../data/yoloGtold1/train/31095.png +../../data/yoloGtold1/train/31096.png +../../data/yoloGtold1/train/31097.png +../../data/yoloGtold1/train/31098.png +../../data/yoloGtold1/train/31099.png +../../data/yoloGtold1/train/31100.png +../../data/yoloGtold1/train/31101.png +../../data/yoloGtold1/train/31102.png +../../data/yoloGtold1/train/31103.png +../../data/yoloGtold1/train/31104.png +../../data/yoloGtold1/train/31105.png +../../data/yoloGtold1/train/31106.png +../../data/yoloGtold1/train/31107.png +../../data/yoloGtold1/train/31108.png +../../data/yoloGtold1/train/31109.png +../../data/yoloGtold1/train/31110.png +../../data/yoloGtold1/train/31111.png +../../data/yoloGtold1/train/31112.png +../../data/yoloGtold1/train/31113.png +../../data/yoloGtold1/train/31114.png +../../data/yoloGtold1/train/31115.png +../../data/yoloGtold1/train/31116.png +../../data/yoloGtold1/train/31117.png +../../data/yoloGtold1/train/31118.png +../../data/yoloGtold1/train/31119.png +../../data/yoloGtold1/train/31120.png +../../data/yoloGtold1/train/31121.png +../../data/yoloGtold1/train/31122.png +../../data/yoloGtold1/train/31123.png +../../data/yoloGtold1/train/31124.png +../../data/yoloGtold1/train/31125.png +../../data/yoloGtold1/train/31126.png +../../data/yoloGtold1/train/31127.png +../../data/yoloGtold1/train/31128.png +../../data/yoloGtold1/train/31129.png +../../data/yoloGtold1/train/31130.png +../../data/yoloGtold1/train/31131.png +../../data/yoloGtold1/train/31132.png +../../data/yoloGtold1/train/31133.png +../../data/yoloGtold1/train/31134.png +../../data/yoloGtold1/train/31135.png +../../data/yoloGtold1/train/31136.png +../../data/yoloGtold1/train/31137.png +../../data/yoloGtold1/train/31138.png +../../data/yoloGtold1/train/31139.png +../../data/yoloGtold1/train/31140.png +../../data/yoloGtold1/train/31141.png +../../data/yoloGtold1/train/31142.png +../../data/yoloGtold1/train/31143.png +../../data/yoloGtold1/train/31144.png +../../data/yoloGtold1/train/31145.png +../../data/yoloGtold1/train/31146.png +../../data/yoloGtold1/train/31147.png +../../data/yoloGtold1/train/31148.png +../../data/yoloGtold1/train/31149.png +../../data/yoloGtold1/train/31150.png +../../data/yoloGtold1/train/31151.png +../../data/yoloGtold1/train/31152.png +../../data/yoloGtold1/train/31153.png +../../data/yoloGtold1/train/31154.png +../../data/yoloGtold1/train/31155.png +../../data/yoloGtold1/train/31156.png +../../data/yoloGtold1/train/31157.png +../../data/yoloGtold1/train/31158.png +../../data/yoloGtold1/train/31159.png +../../data/yoloGtold1/train/31160.png +../../data/yoloGtold1/train/31161.png +../../data/yoloGtold1/train/31162.png +../../data/yoloGtold1/train/31163.png +../../data/yoloGtold1/train/31164.png +../../data/yoloGtold1/train/31165.png +../../data/yoloGtold1/train/31166.png +../../data/yoloGtold1/train/31167.png +../../data/yoloGtold1/train/31168.png +../../data/yoloGtold1/train/31169.png +../../data/yoloGtold1/train/31170.png +../../data/yoloGtold1/train/31171.png +../../data/yoloGtold1/train/31172.png +../../data/yoloGtold1/train/31173.png +../../data/yoloGtold1/train/31174.png +../../data/yoloGtold1/train/31175.png +../../data/yoloGtold1/train/31176.png +../../data/yoloGtold1/train/31177.png +../../data/yoloGtold1/train/31178.png +../../data/yoloGtold1/train/31179.png +../../data/yoloGtold1/train/31180.png +../../data/yoloGtold1/train/31181.png +../../data/yoloGtold1/train/31182.png +../../data/yoloGtold1/train/31183.png +../../data/yoloGtold1/train/31184.png +../../data/yoloGtold1/train/31185.png +../../data/yoloGtold1/train/31186.png +../../data/yoloGtold1/train/31187.png +../../data/yoloGtold1/train/31188.png +../../data/yoloGtold1/train/31189.png +../../data/yoloGtold1/train/31190.png +../../data/yoloGtold1/train/31191.png +../../data/yoloGtold1/train/31192.png +../../data/yoloGtold1/train/31193.png +../../data/yoloGtold1/train/31194.png +../../data/yoloGtold1/train/31195.png +../../data/yoloGtold1/train/31196.png +../../data/yoloGtold1/train/31197.png +../../data/yoloGtold1/train/31198.png +../../data/yoloGtold1/train/31199.png +../../data/yoloGtold1/train/31200.png +../../data/yoloGtold1/train/31201.png +../../data/yoloGtold1/train/31202.png +../../data/yoloGtold1/train/31203.png +../../data/yoloGtold1/train/31204.png +../../data/yoloGtold1/train/31205.png +../../data/yoloGtold1/train/31206.png +../../data/yoloGtold1/train/31207.png +../../data/yoloGtold1/train/31208.png +../../data/yoloGtold1/train/31209.png +../../data/yoloGtold1/train/31210.png +../../data/yoloGtold1/train/31211.png +../../data/yoloGtold1/train/31212.png +../../data/yoloGtold1/train/31213.png +../../data/yoloGtold1/train/31214.png +../../data/yoloGtold1/train/31215.png +../../data/yoloGtold1/train/31216.png +../../data/yoloGtold1/train/31217.png +../../data/yoloGtold1/train/31218.png +../../data/yoloGtold1/train/31219.png +../../data/yoloGtold1/train/31220.png +../../data/yoloGtold1/train/31221.png +../../data/yoloGtold1/train/31222.png +../../data/yoloGtold1/train/31223.png +../../data/yoloGtold1/train/31224.png +../../data/yoloGtold1/train/31225.png +../../data/yoloGtold1/train/31226.png +../../data/yoloGtold1/train/31227.png +../../data/yoloGtold1/train/31228.png +../../data/yoloGtold1/train/31229.png +../../data/yoloGtold1/train/31230.png +../../data/yoloGtold1/train/31231.png +../../data/yoloGtold1/train/31232.png +../../data/yoloGtold1/train/31233.png +../../data/yoloGtold1/train/31234.png +../../data/yoloGtold1/train/31235.png +../../data/yoloGtold1/train/31236.png +../../data/yoloGtold1/train/31237.png +../../data/yoloGtold1/train/31238.png +../../data/yoloGtold1/train/31239.png +../../data/yoloGtold1/train/31240.png +../../data/yoloGtold1/train/31241.png +../../data/yoloGtold1/train/31242.png +../../data/yoloGtold1/train/31243.png +../../data/yoloGtold1/train/31244.png +../../data/yoloGtold1/train/31245.png +../../data/yoloGtold1/train/31246.png +../../data/yoloGtold1/train/31247.png +../../data/yoloGtold1/train/31248.png +../../data/yoloGtold1/train/31249.png +../../data/yoloGtold1/train/31250.png +../../data/yoloGtold1/train/31251.png +../../data/yoloGtold1/train/31252.png +../../data/yoloGtold1/train/31253.png +../../data/yoloGtold1/train/31254.png +../../data/yoloGtold1/train/31255.png +../../data/yoloGtold1/train/31256.png +../../data/yoloGtold1/train/31257.png +../../data/yoloGtold1/train/31258.png +../../data/yoloGtold1/train/31259.png +../../data/yoloGtold1/train/31260.png +../../data/yoloGtold1/train/31261.png +../../data/yoloGtold1/train/31262.png +../../data/yoloGtold1/train/31263.png +../../data/yoloGtold1/train/31264.png +../../data/yoloGtold1/train/31265.png +../../data/yoloGtold1/train/31266.png +../../data/yoloGtold1/train/31267.png +../../data/yoloGtold1/train/31268.png +../../data/yoloGtold1/train/31269.png +../../data/yoloGtold1/train/31270.png +../../data/yoloGtold1/train/31271.png +../../data/yoloGtold1/train/31272.png +../../data/yoloGtold1/train/31273.png +../../data/yoloGtold1/train/31274.png +../../data/yoloGtold1/train/31275.png +../../data/yoloGtold1/train/31276.png +../../data/yoloGtold1/train/31277.png +../../data/yoloGtold1/train/31278.png +../../data/yoloGtold1/train/31279.png +../../data/yoloGtold1/train/31280.png +../../data/yoloGtold1/train/31281.png +../../data/yoloGtold1/train/31282.png +../../data/yoloGtold1/train/31283.png +../../data/yoloGtold1/train/31284.png +../../data/yoloGtold1/train/31285.png +../../data/yoloGtold1/train/31286.png +../../data/yoloGtold1/train/31287.png +../../data/yoloGtold1/train/31288.png +../../data/yoloGtold1/train/31289.png +../../data/yoloGtold1/train/31290.png +../../data/yoloGtold1/train/31291.png +../../data/yoloGtold1/train/31292.png +../../data/yoloGtold1/train/31293.png +../../data/yoloGtold1/train/31294.png +../../data/yoloGtold1/train/31295.png +../../data/yoloGtold1/train/31296.png +../../data/yoloGtold1/train/31297.png +../../data/yoloGtold1/train/31298.png +../../data/yoloGtold1/train/31299.png +../../data/yoloGtold1/train/31300.png +../../data/yoloGtold1/train/31301.png +../../data/yoloGtold1/train/31302.png +../../data/yoloGtold1/train/31303.png +../../data/yoloGtold1/train/31304.png +../../data/yoloGtold1/train/31305.png +../../data/yoloGtold1/train/31306.png +../../data/yoloGtold1/train/31307.png +../../data/yoloGtold1/train/31308.png +../../data/yoloGtold1/train/31309.png +../../data/yoloGtold1/train/31310.png +../../data/yoloGtold1/train/31311.png +../../data/yoloGtold1/train/31312.png +../../data/yoloGtold1/train/31313.png +../../data/yoloGtold1/train/31314.png +../../data/yoloGtold1/train/31315.png +../../data/yoloGtold1/train/31316.png +../../data/yoloGtold1/train/31317.png +../../data/yoloGtold1/train/31318.png +../../data/yoloGtold1/train/31319.png +../../data/yoloGtold1/train/31320.png +../../data/yoloGtold1/train/31321.png +../../data/yoloGtold1/train/31322.png +../../data/yoloGtold1/train/31323.png +../../data/yoloGtold1/train/31324.png +../../data/yoloGtold1/train/31325.png +../../data/yoloGtold1/train/31326.png +../../data/yoloGtold1/train/31327.png +../../data/yoloGtold1/train/31328.png +../../data/yoloGtold1/train/31329.png +../../data/yoloGtold1/train/31330.png +../../data/yoloGtold1/train/31331.png +../../data/yoloGtold1/train/31332.png +../../data/yoloGtold1/train/31333.png +../../data/yoloGtold1/train/31334.png +../../data/yoloGtold1/train/31335.png +../../data/yoloGtold1/train/31336.png +../../data/yoloGtold1/train/31337.png +../../data/yoloGtold1/train/31338.png +../../data/yoloGtold1/train/31339.png +../../data/yoloGtold1/train/31340.png +../../data/yoloGtold1/train/31341.png +../../data/yoloGtold1/train/31342.png +../../data/yoloGtold1/train/31343.png +../../data/yoloGtold1/train/31344.png +../../data/yoloGtold1/train/31345.png +../../data/yoloGtold1/train/31346.png +../../data/yoloGtold1/train/31347.png +../../data/yoloGtold1/train/31348.png +../../data/yoloGtold1/train/31349.png +../../data/yoloGtold1/train/31350.png +../../data/yoloGtold1/train/31351.png +../../data/yoloGtold1/train/31352.png +../../data/yoloGtold1/train/31353.png +../../data/yoloGtold1/train/31354.png +../../data/yoloGtold1/train/31355.png +../../data/yoloGtold1/train/31356.png +../../data/yoloGtold1/train/31357.png +../../data/yoloGtold1/train/31358.png +../../data/yoloGtold1/train/31359.png +../../data/yoloGtold1/train/31360.png +../../data/yoloGtold1/train/31361.png +../../data/yoloGtold1/train/31362.png +../../data/yoloGtold1/train/31363.png +../../data/yoloGtold1/train/31364.png +../../data/yoloGtold1/train/31365.png +../../data/yoloGtold1/train/31366.png +../../data/yoloGtold1/train/31367.png +../../data/yoloGtold1/train/31368.png +../../data/yoloGtold1/train/31369.png +../../data/yoloGtold1/train/31370.png +../../data/yoloGtold1/train/31371.png +../../data/yoloGtold1/train/31372.png +../../data/yoloGtold1/train/31373.png +../../data/yoloGtold1/train/31374.png +../../data/yoloGtold1/train/31375.png +../../data/yoloGtold1/train/31376.png +../../data/yoloGtold1/train/31377.png +../../data/yoloGtold1/train/31378.png +../../data/yoloGtold1/train/31379.png +../../data/yoloGtold1/train/31380.png +../../data/yoloGtold1/train/31381.png +../../data/yoloGtold1/train/31382.png +../../data/yoloGtold1/train/31383.png +../../data/yoloGtold1/train/31384.png +../../data/yoloGtold1/train/31385.png +../../data/yoloGtold1/train/31386.png +../../data/yoloGtold1/train/31387.png +../../data/yoloGtold1/train/31388.png +../../data/yoloGtold1/train/31389.png +../../data/yoloGtold1/train/31390.png +../../data/yoloGtold1/train/31391.png +../../data/yoloGtold1/train/31392.png +../../data/yoloGtold1/train/31393.png +../../data/yoloGtold1/train/31394.png +../../data/yoloGtold1/train/31395.png +../../data/yoloGtold1/train/31396.png +../../data/yoloGtold1/train/31397.png +../../data/yoloGtold1/train/31398.png +../../data/yoloGtold1/train/31399.png +../../data/yoloGtold1/train/31400.png +../../data/yoloGtold1/train/31401.png +../../data/yoloGtold1/train/31402.png +../../data/yoloGtold1/train/31403.png +../../data/yoloGtold1/train/31404.png +../../data/yoloGtold1/train/31405.png +../../data/yoloGtold1/train/31406.png +../../data/yoloGtold1/train/31407.png +../../data/yoloGtold1/train/31408.png +../../data/yoloGtold1/train/31409.png +../../data/yoloGtold1/train/31410.png +../../data/yoloGtold1/train/31411.png +../../data/yoloGtold1/train/31412.png +../../data/yoloGtold1/train/31413.png +../../data/yoloGtold1/train/31414.png +../../data/yoloGtold1/train/31415.png +../../data/yoloGtold1/train/31416.png +../../data/yoloGtold1/train/31417.png +../../data/yoloGtold1/train/31418.png +../../data/yoloGtold1/train/31419.png +../../data/yoloGtold1/train/31420.png +../../data/yoloGtold1/train/31421.png +../../data/yoloGtold1/train/31422.png +../../data/yoloGtold1/train/31423.png +../../data/yoloGtold1/train/31424.png +../../data/yoloGtold1/train/31425.png +../../data/yoloGtold1/train/31426.png +../../data/yoloGtold1/train/31427.png +../../data/yoloGtold1/train/31428.png +../../data/yoloGtold1/train/31429.png +../../data/yoloGtold1/train/31430.png +../../data/yoloGtold1/train/31431.png +../../data/yoloGtold1/train/31432.png +../../data/yoloGtold1/train/31433.png +../../data/yoloGtold1/train/31434.png +../../data/yoloGtold1/train/31435.png +../../data/yoloGtold1/train/31436.png +../../data/yoloGtold1/train/31437.png +../../data/yoloGtold1/train/31438.png +../../data/yoloGtold1/train/31439.png +../../data/yoloGtold1/train/31440.png +../../data/yoloGtold1/train/31441.png +../../data/yoloGtold1/train/31442.png +../../data/yoloGtold1/train/31443.png +../../data/yoloGtold1/train/31444.png +../../data/yoloGtold1/train/31445.png +../../data/yoloGtold1/train/31446.png +../../data/yoloGtold1/train/31447.png +../../data/yoloGtold1/train/31448.png +../../data/yoloGtold1/train/31449.png +../../data/yoloGtold1/train/31450.png +../../data/yoloGtold1/train/31451.png +../../data/yoloGtold1/train/31452.png +../../data/yoloGtold1/train/31453.png +../../data/yoloGtold1/train/31454.png +../../data/yoloGtold1/train/31455.png +../../data/yoloGtold1/train/31456.png +../../data/yoloGtold1/train/31457.png +../../data/yoloGtold1/train/31458.png +../../data/yoloGtold1/train/31459.png +../../data/yoloGtold1/train/31460.png +../../data/yoloGtold1/train/31461.png +../../data/yoloGtold1/train/31462.png +../../data/yoloGtold1/train/31463.png +../../data/yoloGtold1/train/31464.png +../../data/yoloGtold1/train/31465.png +../../data/yoloGtold1/train/31466.png +../../data/yoloGtold1/train/31467.png +../../data/yoloGtold1/train/31468.png +../../data/yoloGtold1/train/31469.png +../../data/yoloGtold1/train/31470.png +../../data/yoloGtold1/train/31471.png +../../data/yoloGtold1/train/31472.png +../../data/yoloGtold1/train/31473.png +../../data/yoloGtold1/train/31474.png +../../data/yoloGtold1/train/31475.png +../../data/yoloGtold1/train/31476.png +../../data/yoloGtold1/train/31477.png +../../data/yoloGtold1/train/31478.png +../../data/yoloGtold1/train/31479.png +../../data/yoloGtold1/train/31480.png +../../data/yoloGtold1/train/31481.png +../../data/yoloGtold1/train/31482.png +../../data/yoloGtold1/train/31483.png +../../data/yoloGtold1/train/31484.png +../../data/yoloGtold1/train/31485.png +../../data/yoloGtold1/train/31486.png +../../data/yoloGtold1/train/31487.png +../../data/yoloGtold1/train/31488.png +../../data/yoloGtold1/train/31489.png +../../data/yoloGtold1/train/31490.png +../../data/yoloGtold1/train/31491.png +../../data/yoloGtold1/train/31492.png +../../data/yoloGtold1/train/31493.png +../../data/yoloGtold1/train/31494.png +../../data/yoloGtold1/train/31495.png +../../data/yoloGtold1/train/31496.png +../../data/yoloGtold1/train/31497.png +../../data/yoloGtold1/train/31498.png +../../data/yoloGtold1/train/31499.png +../../data/yoloGtold1/train/31500.png +../../data/yoloGtold1/train/31501.png +../../data/yoloGtold1/train/31502.png +../../data/yoloGtold1/train/31503.png +../../data/yoloGtold1/train/31504.png +../../data/yoloGtold1/train/31505.png +../../data/yoloGtold1/train/31506.png +../../data/yoloGtold1/train/31507.png +../../data/yoloGtold1/train/31508.png +../../data/yoloGtold1/train/31509.png +../../data/yoloGtold1/train/31510.png +../../data/yoloGtold1/train/31511.png +../../data/yoloGtold1/train/31512.png +../../data/yoloGtold1/train/31513.png +../../data/yoloGtold1/train/31514.png +../../data/yoloGtold1/train/31515.png +../../data/yoloGtold1/train/31516.png +../../data/yoloGtold1/train/31517.png +../../data/yoloGtold1/train/31518.png +../../data/yoloGtold1/train/31519.png +../../data/yoloGtold1/train/31520.png +../../data/yoloGtold1/train/31521.png +../../data/yoloGtold1/train/31522.png +../../data/yoloGtold1/train/31523.png +../../data/yoloGtold1/train/31524.png +../../data/yoloGtold1/train/31525.png +../../data/yoloGtold1/train/31526.png +../../data/yoloGtold1/train/31527.png +../../data/yoloGtold1/train/31528.png +../../data/yoloGtold1/train/31529.png +../../data/yoloGtold1/train/31530.png +../../data/yoloGtold1/train/31531.png +../../data/yoloGtold1/train/31532.png +../../data/yoloGtold1/train/31533.png +../../data/yoloGtold1/train/31534.png +../../data/yoloGtold1/train/31535.png +../../data/yoloGtold1/train/31536.png +../../data/yoloGtold1/train/31537.png +../../data/yoloGtold1/train/31538.png +../../data/yoloGtold1/train/31539.png +../../data/yoloGtold1/train/31540.png +../../data/yoloGtold1/train/31541.png +../../data/yoloGtold1/train/31542.png +../../data/yoloGtold1/train/31543.png +../../data/yoloGtold1/train/31544.png +../../data/yoloGtold1/train/31545.png +../../data/yoloGtold1/train/31546.png +../../data/yoloGtold1/train/31547.png +../../data/yoloGtold1/train/31548.png +../../data/yoloGtold1/train/31549.png +../../data/yoloGtold1/train/31550.png +../../data/yoloGtold1/train/31551.png +../../data/yoloGtold1/train/31552.png +../../data/yoloGtold1/train/31553.png +../../data/yoloGtold1/train/31554.png +../../data/yoloGtold1/train/31555.png +../../data/yoloGtold1/train/31556.png +../../data/yoloGtold1/train/31557.png +../../data/yoloGtold1/train/31558.png +../../data/yoloGtold1/train/31559.png +../../data/yoloGtold1/train/31560.png +../../data/yoloGtold1/train/31561.png +../../data/yoloGtold1/train/31562.png +../../data/yoloGtold1/train/31563.png +../../data/yoloGtold1/train/31564.png +../../data/yoloGtold1/train/31565.png +../../data/yoloGtold1/train/31566.png +../../data/yoloGtold1/train/31567.png +../../data/yoloGtold1/train/31568.png +../../data/yoloGtold1/train/31569.png +../../data/yoloGtold1/train/31570.png +../../data/yoloGtold1/train/31571.png +../../data/yoloGtold1/train/31572.png +../../data/yoloGtold1/train/31573.png +../../data/yoloGtold1/train/31574.png +../../data/yoloGtold1/train/31575.png +../../data/yoloGtold1/train/31576.png +../../data/yoloGtold1/train/31577.png +../../data/yoloGtold1/train/31578.png +../../data/yoloGtold1/train/31579.png +../../data/yoloGtold1/train/31580.png +../../data/yoloGtold1/train/31581.png +../../data/yoloGtold1/train/31582.png +../../data/yoloGtold1/train/31583.png +../../data/yoloGtold1/train/31584.png +../../data/yoloGtold1/train/31585.png +../../data/yoloGtold1/train/31586.png +../../data/yoloGtold1/train/31587.png +../../data/yoloGtold1/train/31588.png +../../data/yoloGtold1/train/31589.png +../../data/yoloGtold1/train/31590.png +../../data/yoloGtold1/train/31591.png +../../data/yoloGtold1/train/31592.png +../../data/yoloGtold1/train/31593.png +../../data/yoloGtold1/train/31594.png +../../data/yoloGtold1/train/31595.png +../../data/yoloGtold1/train/31596.png +../../data/yoloGtold1/train/31597.png +../../data/yoloGtold1/train/31598.png +../../data/yoloGtold1/train/31599.png +../../data/yoloGtold1/train/31600.png +../../data/yoloGtold1/train/31601.png +../../data/yoloGtold1/train/31602.png +../../data/yoloGtold1/train/31603.png +../../data/yoloGtold1/train/31604.png +../../data/yoloGtold1/train/31605.png +../../data/yoloGtold1/train/31606.png +../../data/yoloGtold1/train/31607.png +../../data/yoloGtold1/train/31608.png +../../data/yoloGtold1/train/31609.png +../../data/yoloGtold1/train/31610.png +../../data/yoloGtold1/train/31611.png +../../data/yoloGtold1/train/31612.png +../../data/yoloGtold1/train/31613.png +../../data/yoloGtold1/train/31614.png +../../data/yoloGtold1/train/31615.png +../../data/yoloGtold1/train/31616.png +../../data/yoloGtold1/train/31617.png +../../data/yoloGtold1/train/31618.png +../../data/yoloGtold1/train/31619.png +../../data/yoloGtold1/train/31620.png +../../data/yoloGtold1/train/31621.png +../../data/yoloGtold1/train/31622.png +../../data/yoloGtold1/train/31623.png +../../data/yoloGtold1/train/31624.png +../../data/yoloGtold1/train/31625.png +../../data/yoloGtold1/train/31626.png +../../data/yoloGtold1/train/31627.png +../../data/yoloGtold1/train/31628.png +../../data/yoloGtold1/train/31629.png +../../data/yoloGtold1/train/31630.png +../../data/yoloGtold1/train/31631.png +../../data/yoloGtold1/train/31632.png +../../data/yoloGtold1/train/31633.png +../../data/yoloGtold1/train/31634.png +../../data/yoloGtold1/train/31635.png +../../data/yoloGtold1/train/31636.png +../../data/yoloGtold1/train/31637.png +../../data/yoloGtold1/train/31638.png +../../data/yoloGtold1/train/31639.png +../../data/yoloGtold1/train/31640.png +../../data/yoloGtold1/train/31641.png +../../data/yoloGtold1/train/31642.png +../../data/yoloGtold1/train/31643.png +../../data/yoloGtold1/train/31644.png +../../data/yoloGtold1/train/31645.png +../../data/yoloGtold1/train/31646.png +../../data/yoloGtold1/train/31647.png +../../data/yoloGtold1/train/31648.png +../../data/yoloGtold1/train/31649.png +../../data/yoloGtold1/train/31650.png +../../data/yoloGtold1/train/31651.png +../../data/yoloGtold1/train/31652.png +../../data/yoloGtold1/train/31653.png +../../data/yoloGtold1/train/31654.png +../../data/yoloGtold1/train/31655.png +../../data/yoloGtold1/train/31656.png +../../data/yoloGtold1/train/31657.png +../../data/yoloGtold1/train/31658.png +../../data/yoloGtold1/train/31659.png +../../data/yoloGtold1/train/31660.png +../../data/yoloGtold1/train/31661.png +../../data/yoloGtold1/train/31662.png +../../data/yoloGtold1/train/31663.png +../../data/yoloGtold1/train/31664.png +../../data/yoloGtold1/train/31665.png +../../data/yoloGtold1/train/31666.png +../../data/yoloGtold1/train/31667.png +../../data/yoloGtold1/train/31668.png +../../data/yoloGtold1/train/31669.png +../../data/yoloGtold1/train/31670.png +../../data/yoloGtold1/train/31671.png +../../data/yoloGtold1/train/31672.png +../../data/yoloGtold1/train/31673.png +../../data/yoloGtold1/train/31674.png +../../data/yoloGtold1/train/31675.png +../../data/yoloGtold1/train/31676.png +../../data/yoloGtold1/train/31677.png +../../data/yoloGtold1/train/31678.png +../../data/yoloGtold1/train/31679.png +../../data/yoloGtold1/train/31680.png +../../data/yoloGtold1/train/31681.png +../../data/yoloGtold1/train/31682.png +../../data/yoloGtold1/train/31683.png +../../data/yoloGtold1/train/31684.png +../../data/yoloGtold1/train/31685.png +../../data/yoloGtold1/train/31686.png +../../data/yoloGtold1/train/31687.png +../../data/yoloGtold1/train/31688.png +../../data/yoloGtold1/train/31689.png +../../data/yoloGtold1/train/31690.png +../../data/yoloGtold1/train/31691.png +../../data/yoloGtold1/train/31692.png +../../data/yoloGtold1/train/31693.png +../../data/yoloGtold1/train/31694.png +../../data/yoloGtold1/train/31695.png +../../data/yoloGtold1/train/31696.png +../../data/yoloGtold1/train/31697.png +../../data/yoloGtold1/train/31698.png +../../data/yoloGtold1/train/31699.png +../../data/yoloGtold1/train/31700.png +../../data/yoloGtold1/train/31701.png +../../data/yoloGtold1/train/31702.png +../../data/yoloGtold1/train/31703.png +../../data/yoloGtold1/train/31704.png +../../data/yoloGtold1/train/31705.png +../../data/yoloGtold1/train/31706.png +../../data/yoloGtold1/train/31707.png +../../data/yoloGtold1/train/31708.png +../../data/yoloGtold1/train/31709.png +../../data/yoloGtold1/train/31710.png +../../data/yoloGtold1/train/31711.png +../../data/yoloGtold1/train/31712.png +../../data/yoloGtold1/train/31713.png +../../data/yoloGtold1/train/31714.png +../../data/yoloGtold1/train/31715.png +../../data/yoloGtold1/train/31716.png +../../data/yoloGtold1/train/31717.png +../../data/yoloGtold1/train/31718.png +../../data/yoloGtold1/train/31719.png +../../data/yoloGtold1/train/31720.png +../../data/yoloGtold1/train/31721.png +../../data/yoloGtold1/train/31722.png +../../data/yoloGtold1/train/31723.png +../../data/yoloGtold1/train/31724.png +../../data/yoloGtold1/train/31725.png +../../data/yoloGtold1/train/31726.png +../../data/yoloGtold1/train/31727.png +../../data/yoloGtold1/train/31728.png +../../data/yoloGtold1/train/31729.png +../../data/yoloGtold1/train/31730.png +../../data/yoloGtold1/train/31731.png +../../data/yoloGtold1/train/31732.png +../../data/yoloGtold1/train/31733.png +../../data/yoloGtold1/train/31734.png +../../data/yoloGtold1/train/31735.png +../../data/yoloGtold1/train/31736.png +../../data/yoloGtold1/train/31737.png +../../data/yoloGtold1/train/31738.png +../../data/yoloGtold1/train/31739.png +../../data/yoloGtold1/train/31740.png +../../data/yoloGtold1/train/31741.png +../../data/yoloGtold1/train/31742.png +../../data/yoloGtold1/train/31743.png +../../data/yoloGtold1/train/31744.png +../../data/yoloGtold1/train/31745.png +../../data/yoloGtold1/train/31746.png +../../data/yoloGtold1/train/31747.png +../../data/yoloGtold1/train/31748.png +../../data/yoloGtold1/train/31749.png +../../data/yoloGtold1/train/31750.png +../../data/yoloGtold1/train/31751.png +../../data/yoloGtold1/train/31752.png +../../data/yoloGtold1/train/31753.png +../../data/yoloGtold1/train/31754.png +../../data/yoloGtold1/train/31755.png +../../data/yoloGtold1/train/31756.png +../../data/yoloGtold1/train/31757.png +../../data/yoloGtold1/train/31758.png +../../data/yoloGtold1/train/31759.png +../../data/yoloGtold1/train/31760.png +../../data/yoloGtold1/train/31761.png +../../data/yoloGtold1/train/31762.png +../../data/yoloGtold1/train/31763.png +../../data/yoloGtold1/train/31764.png +../../data/yoloGtold1/train/31765.png +../../data/yoloGtold1/train/31766.png +../../data/yoloGtold1/train/31767.png +../../data/yoloGtold1/train/31768.png +../../data/yoloGtold1/train/31769.png +../../data/yoloGtold1/train/31770.png +../../data/yoloGtold1/train/31771.png +../../data/yoloGtold1/train/31772.png +../../data/yoloGtold1/train/31773.png +../../data/yoloGtold1/train/31774.png +../../data/yoloGtold1/train/31775.png +../../data/yoloGtold1/train/31776.png +../../data/yoloGtold1/train/31777.png +../../data/yoloGtold1/train/31778.png +../../data/yoloGtold1/train/31779.png +../../data/yoloGtold1/train/31780.png +../../data/yoloGtold1/train/31781.png +../../data/yoloGtold1/train/31782.png +../../data/yoloGtold1/train/31783.png +../../data/yoloGtold1/train/31784.png +../../data/yoloGtold1/train/31785.png +../../data/yoloGtold1/train/31786.png +../../data/yoloGtold1/train/31787.png +../../data/yoloGtold1/train/31788.png +../../data/yoloGtold1/train/31789.png +../../data/yoloGtold1/train/31790.png +../../data/yoloGtold1/train/31791.png +../../data/yoloGtold1/train/31792.png +../../data/yoloGtold1/train/31793.png +../../data/yoloGtold1/train/31794.png +../../data/yoloGtold1/train/31795.png +../../data/yoloGtold1/train/31796.png +../../data/yoloGtold1/train/31797.png +../../data/yoloGtold1/train/31798.png +../../data/yoloGtold1/train/31799.png +../../data/yoloGtold1/train/31800.png +../../data/yoloGtold1/train/31801.png +../../data/yoloGtold1/train/31802.png +../../data/yoloGtold1/train/31803.png +../../data/yoloGtold1/train/31804.png +../../data/yoloGtold1/train/31805.png +../../data/yoloGtold1/train/31806.png +../../data/yoloGtold1/train/31807.png +../../data/yoloGtold1/train/31808.png +../../data/yoloGtold1/train/31809.png +../../data/yoloGtold1/train/31810.png +../../data/yoloGtold1/train/31811.png +../../data/yoloGtold1/train/31812.png +../../data/yoloGtold1/train/31813.png +../../data/yoloGtold1/train/31814.png +../../data/yoloGtold1/train/31815.png +../../data/yoloGtold1/train/31816.png +../../data/yoloGtold1/train/31817.png +../../data/yoloGtold1/train/31818.png +../../data/yoloGtold1/train/31819.png +../../data/yoloGtold1/train/31820.png +../../data/yoloGtold1/train/31821.png +../../data/yoloGtold1/train/31822.png +../../data/yoloGtold1/train/31823.png +../../data/yoloGtold1/train/31824.png +../../data/yoloGtold1/train/31825.png +../../data/yoloGtold1/train/31826.png +../../data/yoloGtold1/train/31827.png +../../data/yoloGtold1/train/31828.png +../../data/yoloGtold1/train/31829.png +../../data/yoloGtold1/train/31830.png +../../data/yoloGtold1/train/31831.png +../../data/yoloGtold1/train/31832.png +../../data/yoloGtold1/train/31833.png +../../data/yoloGtold1/train/31834.png +../../data/yoloGtold1/train/31835.png +../../data/yoloGtold1/train/31836.png +../../data/yoloGtold1/train/31837.png +../../data/yoloGtold1/train/31838.png +../../data/yoloGtold1/train/31839.png +../../data/yoloGtold1/train/31840.png +../../data/yoloGtold1/train/31841.png +../../data/yoloGtold1/train/31842.png +../../data/yoloGtold1/train/31843.png +../../data/yoloGtold1/train/31844.png +../../data/yoloGtold1/train/31845.png +../../data/yoloGtold1/train/31846.png +../../data/yoloGtold1/train/31847.png +../../data/yoloGtold1/train/31848.png +../../data/yoloGtold1/train/31849.png +../../data/yoloGtold1/train/31850.png +../../data/yoloGtold1/train/31851.png +../../data/yoloGtold1/train/31852.png +../../data/yoloGtold1/train/31853.png +../../data/yoloGtold1/train/31854.png +../../data/yoloGtold1/train/31855.png +../../data/yoloGtold1/train/31856.png +../../data/yoloGtold1/train/31857.png +../../data/yoloGtold1/train/31858.png +../../data/yoloGtold1/train/31859.png +../../data/yoloGtold1/train/31860.png +../../data/yoloGtold1/train/31861.png +../../data/yoloGtold1/train/31862.png +../../data/yoloGtold1/train/31863.png +../../data/yoloGtold1/train/31864.png +../../data/yoloGtold1/train/31865.png +../../data/yoloGtold1/train/31866.png +../../data/yoloGtold1/train/31867.png +../../data/yoloGtold1/train/31868.png +../../data/yoloGtold1/train/31869.png +../../data/yoloGtold1/train/31870.png +../../data/yoloGtold1/train/31871.png +../../data/yoloGtold1/train/31872.png +../../data/yoloGtold1/train/31873.png +../../data/yoloGtold1/train/31874.png +../../data/yoloGtold1/train/31875.png +../../data/yoloGtold1/train/31876.png +../../data/yoloGtold1/train/31877.png +../../data/yoloGtold1/train/31878.png +../../data/yoloGtold1/train/31879.png +../../data/yoloGtold1/train/31880.png +../../data/yoloGtold1/train/31881.png +../../data/yoloGtold1/train/31882.png +../../data/yoloGtold1/train/31883.png +../../data/yoloGtold1/train/31884.png +../../data/yoloGtold1/train/31885.png +../../data/yoloGtold1/train/31886.png +../../data/yoloGtold1/train/31887.png +../../data/yoloGtold1/train/31888.png +../../data/yoloGtold1/train/31889.png +../../data/yoloGtold1/train/31890.png +../../data/yoloGtold1/train/31891.png +../../data/yoloGtold1/train/31892.png +../../data/yoloGtold1/train/31893.png +../../data/yoloGtold1/train/31894.png +../../data/yoloGtold1/train/31895.png +../../data/yoloGtold1/train/31896.png +../../data/yoloGtold1/train/31897.png +../../data/yoloGtold1/train/31898.png +../../data/yoloGtold1/train/31899.png +../../data/yoloGtold1/train/31900.png +../../data/yoloGtold1/train/31901.png +../../data/yoloGtold1/train/31902.png +../../data/yoloGtold1/train/31903.png +../../data/yoloGtold1/train/31904.png +../../data/yoloGtold1/train/31905.png +../../data/yoloGtold1/train/31906.png +../../data/yoloGtold1/train/31907.png +../../data/yoloGtold1/train/31908.png +../../data/yoloGtold1/train/31909.png +../../data/yoloGtold1/train/31910.png +../../data/yoloGtold1/train/31911.png +../../data/yoloGtold1/train/31912.png +../../data/yoloGtold1/train/31913.png +../../data/yoloGtold1/train/31914.png +../../data/yoloGtold1/train/31915.png +../../data/yoloGtold1/train/31916.png +../../data/yoloGtold1/train/31917.png +../../data/yoloGtold1/train/31918.png +../../data/yoloGtold1/train/31919.png +../../data/yoloGtold1/train/31920.png +../../data/yoloGtold1/train/31921.png +../../data/yoloGtold1/train/31922.png +../../data/yoloGtold1/train/31923.png +../../data/yoloGtold1/train/31924.png +../../data/yoloGtold1/train/31925.png +../../data/yoloGtold1/train/31926.png +../../data/yoloGtold1/train/31927.png +../../data/yoloGtold1/train/31928.png +../../data/yoloGtold1/train/31929.png +../../data/yoloGtold1/train/31930.png +../../data/yoloGtold1/train/31931.png +../../data/yoloGtold1/train/31932.png +../../data/yoloGtold1/train/31933.png +../../data/yoloGtold1/train/31934.png +../../data/yoloGtold1/train/31935.png +../../data/yoloGtold1/train/31936.png +../../data/yoloGtold1/train/31937.png +../../data/yoloGtold1/train/31938.png +../../data/yoloGtold1/train/31939.png +../../data/yoloGtold1/train/31940.png +../../data/yoloGtold1/train/31941.png +../../data/yoloGtold1/train/31942.png +../../data/yoloGtold1/train/31943.png +../../data/yoloGtold1/train/31944.png +../../data/yoloGtold1/train/31945.png +../../data/yoloGtold1/train/31946.png +../../data/yoloGtold1/train/31947.png +../../data/yoloGtold1/train/31948.png +../../data/yoloGtold1/train/31949.png +../../data/yoloGtold1/train/31950.png +../../data/yoloGtold1/train/31951.png +../../data/yoloGtold1/train/31952.png +../../data/yoloGtold1/train/31953.png +../../data/yoloGtold1/train/31954.png +../../data/yoloGtold1/train/31955.png +../../data/yoloGtold1/train/31956.png +../../data/yoloGtold1/train/31957.png +../../data/yoloGtold1/train/31958.png +../../data/yoloGtold1/train/31959.png +../../data/yoloGtold1/train/31960.png +../../data/yoloGtold1/train/31961.png +../../data/yoloGtold1/train/31962.png +../../data/yoloGtold1/train/31963.png +../../data/yoloGtold1/train/31964.png +../../data/yoloGtold1/train/31965.png +../../data/yoloGtold1/train/31966.png +../../data/yoloGtold1/train/31967.png +../../data/yoloGtold1/train/31968.png +../../data/yoloGtold1/train/31969.png +../../data/yoloGtold1/train/31970.png +../../data/yoloGtold1/train/31971.png +../../data/yoloGtold1/train/31972.png +../../data/yoloGtold1/train/31973.png +../../data/yoloGtold1/train/31974.png +../../data/yoloGtold1/train/31975.png +../../data/yoloGtold1/train/31976.png +../../data/yoloGtold1/train/31977.png +../../data/yoloGtold1/train/31978.png +../../data/yoloGtold1/train/31979.png +../../data/yoloGtold1/train/31980.png +../../data/yoloGtold1/train/31981.png +../../data/yoloGtold1/train/31982.png +../../data/yoloGtold1/train/31983.png +../../data/yoloGtold1/train/31984.png +../../data/yoloGtold1/train/31985.png +../../data/yoloGtold1/train/31986.png +../../data/yoloGtold1/train/31987.png +../../data/yoloGtold1/train/31988.png +../../data/yoloGtold1/train/31989.png +../../data/yoloGtold1/train/31990.png +../../data/yoloGtold1/train/31991.png +../../data/yoloGtold1/train/31992.png +../../data/yoloGtold1/train/31993.png +../../data/yoloGtold1/train/31994.png +../../data/yoloGtold1/train/31995.png +../../data/yoloGtold1/train/31996.png +../../data/yoloGtold1/train/31997.png +../../data/yoloGtold1/train/31998.png +../../data/yoloGtold1/train/31999.png +../../data/yoloGtold1/train/32000.png +../../data/yoloGtold1/train/32001.png +../../data/yoloGtold1/train/32002.png +../../data/yoloGtold1/train/32003.png +../../data/yoloGtold1/train/32004.png +../../data/yoloGtold1/train/32005.png +../../data/yoloGtold1/train/32006.png +../../data/yoloGtold1/train/32007.png +../../data/yoloGtold1/train/32008.png +../../data/yoloGtold1/train/32009.png +../../data/yoloGtold1/train/32010.png +../../data/yoloGtold1/train/32011.png +../../data/yoloGtold1/train/32012.png +../../data/yoloGtold1/train/32013.png +../../data/yoloGtold1/train/32014.png +../../data/yoloGtold1/train/32015.png +../../data/yoloGtold1/train/32016.png +../../data/yoloGtold1/train/32017.png +../../data/yoloGtold1/train/32018.png +../../data/yoloGtold1/train/32019.png +../../data/yoloGtold1/train/32020.png +../../data/yoloGtold1/train/32021.png +../../data/yoloGtold1/train/32022.png +../../data/yoloGtold1/train/32023.png +../../data/yoloGtold1/train/32024.png +../../data/yoloGtold1/train/32025.png +../../data/yoloGtold1/train/32026.png +../../data/yoloGtold1/train/32027.png +../../data/yoloGtold1/train/32028.png +../../data/yoloGtold1/train/32029.png +../../data/yoloGtold1/train/32030.png +../../data/yoloGtold1/train/32031.png +../../data/yoloGtold1/train/32032.png +../../data/yoloGtold1/train/32033.png +../../data/yoloGtold1/train/32034.png +../../data/yoloGtold1/train/32035.png +../../data/yoloGtold1/train/32036.png +../../data/yoloGtold1/train/32037.png +../../data/yoloGtold1/train/32038.png +../../data/yoloGtold1/train/32039.png +../../data/yoloGtold1/train/32040.png +../../data/yoloGtold1/train/32041.png +../../data/yoloGtold1/train/32042.png +../../data/yoloGtold1/train/32043.png +../../data/yoloGtold1/train/32044.png +../../data/yoloGtold1/train/32045.png +../../data/yoloGtold1/train/32046.png +../../data/yoloGtold1/train/32047.png +../../data/yoloGtold1/train/32048.png +../../data/yoloGtold1/train/32049.png +../../data/yoloGtold1/train/32050.png +../../data/yoloGtold1/train/32051.png +../../data/yoloGtold1/train/32052.png +../../data/yoloGtold1/train/32053.png +../../data/yoloGtold1/train/32054.png +../../data/yoloGtold1/train/32055.png +../../data/yoloGtold1/train/32056.png +../../data/yoloGtold1/train/32057.png +../../data/yoloGtold1/train/32058.png +../../data/yoloGtold1/train/32059.png +../../data/yoloGtold1/train/32060.png +../../data/yoloGtold1/train/32061.png +../../data/yoloGtold1/train/32062.png +../../data/yoloGtold1/train/32063.png +../../data/yoloGtold1/train/32064.png +../../data/yoloGtold1/train/32065.png +../../data/yoloGtold1/train/32066.png +../../data/yoloGtold1/train/32067.png +../../data/yoloGtold1/train/32068.png +../../data/yoloGtold1/train/32069.png +../../data/yoloGtold1/train/32070.png +../../data/yoloGtold1/train/32071.png +../../data/yoloGtold1/train/32072.png +../../data/yoloGtold1/train/32073.png +../../data/yoloGtold1/train/32074.png +../../data/yoloGtold1/train/32075.png +../../data/yoloGtold1/train/32076.png +../../data/yoloGtold1/train/32077.png +../../data/yoloGtold1/train/32078.png +../../data/yoloGtold1/train/32079.png +../../data/yoloGtold1/train/32080.png +../../data/yoloGtold1/train/32081.png +../../data/yoloGtold1/train/32082.png +../../data/yoloGtold1/train/32083.png +../../data/yoloGtold1/train/32084.png +../../data/yoloGtold1/train/32085.png +../../data/yoloGtold1/train/32086.png +../../data/yoloGtold1/train/32087.png +../../data/yoloGtold1/train/32088.png +../../data/yoloGtold1/train/32089.png +../../data/yoloGtold1/train/32090.png +../../data/yoloGtold1/train/32091.png +../../data/yoloGtold1/train/32092.png +../../data/yoloGtold1/train/32093.png +../../data/yoloGtold1/train/32094.png +../../data/yoloGtold1/train/32095.png +../../data/yoloGtold1/train/32096.png +../../data/yoloGtold1/train/32097.png +../../data/yoloGtold1/train/32098.png +../../data/yoloGtold1/train/32099.png +../../data/yoloGtold1/train/32100.png +../../data/yoloGtold1/train/32101.png +../../data/yoloGtold1/train/32102.png +../../data/yoloGtold1/train/32103.png +../../data/yoloGtold1/train/32104.png +../../data/yoloGtold1/train/32105.png +../../data/yoloGtold1/train/32106.png +../../data/yoloGtold1/train/32107.png +../../data/yoloGtold1/train/32108.png +../../data/yoloGtold1/train/32109.png +../../data/yoloGtold1/train/32110.png +../../data/yoloGtold1/train/32111.png +../../data/yoloGtold1/train/32112.png +../../data/yoloGtold1/train/32113.png +../../data/yoloGtold1/train/32114.png +../../data/yoloGtold1/train/32115.png +../../data/yoloGtold1/train/32116.png +../../data/yoloGtold1/train/32117.png +../../data/yoloGtold1/train/32118.png +../../data/yoloGtold1/train/32119.png +../../data/yoloGtold1/train/32120.png +../../data/yoloGtold1/train/32121.png +../../data/yoloGtold1/train/32122.png +../../data/yoloGtold1/train/32123.png +../../data/yoloGtold1/train/32124.png +../../data/yoloGtold1/train/32125.png +../../data/yoloGtold1/train/32126.png +../../data/yoloGtold1/train/32127.png +../../data/yoloGtold1/train/32128.png +../../data/yoloGtold1/train/32129.png +../../data/yoloGtold1/train/32130.png +../../data/yoloGtold1/train/32131.png +../../data/yoloGtold1/train/32132.png +../../data/yoloGtold1/train/32133.png +../../data/yoloGtold1/train/32134.png +../../data/yoloGtold1/train/32135.png +../../data/yoloGtold1/train/32136.png +../../data/yoloGtold1/train/32137.png +../../data/yoloGtold1/train/32138.png +../../data/yoloGtold1/train/32139.png +../../data/yoloGtold1/train/32140.png +../../data/yoloGtold1/train/32141.png +../../data/yoloGtold1/train/32142.png +../../data/yoloGtold1/train/32143.png +../../data/yoloGtold1/train/32144.png +../../data/yoloGtold1/train/32145.png +../../data/yoloGtold1/train/32146.png +../../data/yoloGtold1/train/32147.png +../../data/yoloGtold1/train/32148.png +../../data/yoloGtold1/train/32149.png +../../data/yoloGtold1/train/32150.png +../../data/yoloGtold1/train/32151.png +../../data/yoloGtold1/train/32152.png +../../data/yoloGtold1/train/32153.png +../../data/yoloGtold1/train/32154.png +../../data/yoloGtold1/train/32155.png +../../data/yoloGtold1/train/32156.png +../../data/yoloGtold1/train/32157.png +../../data/yoloGtold1/train/32158.png +../../data/yoloGtold1/train/32159.png +../../data/yoloGtold1/train/32160.png +../../data/yoloGtold1/train/32161.png +../../data/yoloGtold1/train/32162.png +../../data/yoloGtold1/train/32163.png +../../data/yoloGtold1/train/32164.png +../../data/yoloGtold1/train/32165.png +../../data/yoloGtold1/train/32166.png +../../data/yoloGtold1/train/32167.png +../../data/yoloGtold1/train/32168.png +../../data/yoloGtold1/train/32169.png +../../data/yoloGtold1/train/32170.png +../../data/yoloGtold1/train/32171.png +../../data/yoloGtold1/train/32172.png +../../data/yoloGtold1/train/32173.png +../../data/yoloGtold1/train/32174.png +../../data/yoloGtold1/train/32175.png +../../data/yoloGtold1/train/32176.png +../../data/yoloGtold1/train/32177.png +../../data/yoloGtold1/train/32178.png +../../data/yoloGtold1/train/32179.png +../../data/yoloGtold1/train/32180.png +../../data/yoloGtold1/train/32181.png +../../data/yoloGtold1/train/32182.png +../../data/yoloGtold1/train/32183.png +../../data/yoloGtold1/train/32184.png +../../data/yoloGtold1/train/32185.png +../../data/yoloGtold1/train/32186.png +../../data/yoloGtold1/train/32187.png +../../data/yoloGtold1/train/32188.png +../../data/yoloGtold1/train/32189.png +../../data/yoloGtold1/train/32190.png +../../data/yoloGtold1/train/32191.png +../../data/yoloGtold1/train/32192.png +../../data/yoloGtold1/train/32193.png +../../data/yoloGtold1/train/32194.png +../../data/yoloGtold1/train/32195.png +../../data/yoloGtold1/train/32196.png +../../data/yoloGtold1/train/32197.png +../../data/yoloGtold1/train/32198.png +../../data/yoloGtold1/train/32199.png +../../data/yoloGtold1/train/32200.png +../../data/yoloGtold1/train/32201.png +../../data/yoloGtold1/train/32202.png +../../data/yoloGtold1/train/32203.png +../../data/yoloGtold1/train/32204.png +../../data/yoloGtold1/train/32205.png +../../data/yoloGtold1/train/32206.png +../../data/yoloGtold1/train/32207.png +../../data/yoloGtold1/train/32208.png +../../data/yoloGtold1/train/32209.png +../../data/yoloGtold1/train/32210.png +../../data/yoloGtold1/train/32211.png +../../data/yoloGtold1/train/32212.png +../../data/yoloGtold1/train/32213.png +../../data/yoloGtold1/train/32214.png +../../data/yoloGtold1/train/32215.png +../../data/yoloGtold1/train/32216.png +../../data/yoloGtold1/train/32217.png +../../data/yoloGtold1/train/32218.png +../../data/yoloGtold1/train/32219.png +../../data/yoloGtold1/train/32220.png +../../data/yoloGtold1/train/32221.png +../../data/yoloGtold1/train/32222.png +../../data/yoloGtold1/train/32223.png +../../data/yoloGtold1/train/32224.png +../../data/yoloGtold1/train/32225.png +../../data/yoloGtold1/train/32226.png +../../data/yoloGtold1/train/32227.png +../../data/yoloGtold1/train/32228.png +../../data/yoloGtold1/train/32229.png +../../data/yoloGtold1/train/32230.png +../../data/yoloGtold1/train/32231.png +../../data/yoloGtold1/train/32232.png +../../data/yoloGtold1/train/32233.png +../../data/yoloGtold1/train/32234.png +../../data/yoloGtold1/train/32235.png +../../data/yoloGtold1/train/32236.png +../../data/yoloGtold1/train/32237.png +../../data/yoloGtold1/train/32238.png +../../data/yoloGtold1/train/32239.png +../../data/yoloGtold1/train/32240.png +../../data/yoloGtold1/train/32241.png +../../data/yoloGtold1/train/32242.png +../../data/yoloGtold1/train/32243.png +../../data/yoloGtold1/train/32244.png +../../data/yoloGtold1/train/32245.png +../../data/yoloGtold1/train/32246.png +../../data/yoloGtold1/train/32247.png +../../data/yoloGtold1/train/32248.png +../../data/yoloGtold1/train/32249.png +../../data/yoloGtold1/train/32250.png +../../data/yoloGtold1/train/32251.png +../../data/yoloGtold1/train/32252.png +../../data/yoloGtold1/train/32253.png +../../data/yoloGtold1/train/32254.png +../../data/yoloGtold1/train/32255.png +../../data/yoloGtold1/train/32256.png +../../data/yoloGtold1/train/32257.png +../../data/yoloGtold1/train/32258.png +../../data/yoloGtold1/train/32259.png +../../data/yoloGtold1/train/32260.png +../../data/yoloGtold1/train/32261.png +../../data/yoloGtold1/train/32262.png +../../data/yoloGtold1/train/32263.png +../../data/yoloGtold1/train/32264.png +../../data/yoloGtold1/train/32265.png +../../data/yoloGtold1/train/32266.png +../../data/yoloGtold1/train/32267.png +../../data/yoloGtold1/train/32268.png +../../data/yoloGtold1/train/32269.png +../../data/yoloGtold1/train/32270.png +../../data/yoloGtold1/train/32271.png +../../data/yoloGtold1/train/32272.png +../../data/yoloGtold1/train/32273.png +../../data/yoloGtold1/train/32274.png +../../data/yoloGtold1/train/32275.png +../../data/yoloGtold1/train/32276.png +../../data/yoloGtold1/train/32277.png +../../data/yoloGtold1/train/32278.png +../../data/yoloGtold1/train/32279.png +../../data/yoloGtold1/train/32280.png +../../data/yoloGtold1/train/32281.png +../../data/yoloGtold1/train/32282.png +../../data/yoloGtold1/train/32283.png +../../data/yoloGtold1/train/32284.png +../../data/yoloGtold1/train/32285.png +../../data/yoloGtold1/train/32286.png +../../data/yoloGtold1/train/32287.png +../../data/yoloGtold1/train/32288.png +../../data/yoloGtold1/train/32289.png +../../data/yoloGtold1/train/32290.png +../../data/yoloGtold1/train/32291.png +../../data/yoloGtold1/train/32292.png +../../data/yoloGtold1/train/32293.png +../../data/yoloGtold1/train/32294.png +../../data/yoloGtold1/train/32295.png +../../data/yoloGtold1/train/32296.png +../../data/yoloGtold1/train/32297.png +../../data/yoloGtold1/train/32298.png +../../data/yoloGtold1/train/32299.png +../../data/yoloGtold1/train/32300.png +../../data/yoloGtold1/train/32301.png +../../data/yoloGtold1/train/32302.png +../../data/yoloGtold1/train/32303.png +../../data/yoloGtold1/train/32304.png +../../data/yoloGtold1/train/32305.png +../../data/yoloGtold1/train/32306.png +../../data/yoloGtold1/train/32307.png +../../data/yoloGtold1/train/32308.png +../../data/yoloGtold1/train/32309.png +../../data/yoloGtold1/train/32310.png +../../data/yoloGtold1/train/32311.png +../../data/yoloGtold1/train/32312.png +../../data/yoloGtold1/train/32313.png +../../data/yoloGtold1/train/32314.png +../../data/yoloGtold1/train/32315.png +../../data/yoloGtold1/train/32316.png +../../data/yoloGtold1/train/32317.png +../../data/yoloGtold1/train/32318.png +../../data/yoloGtold1/train/32319.png +../../data/yoloGtold1/train/32320.png +../../data/yoloGtold1/train/32321.png +../../data/yoloGtold1/train/32322.png +../../data/yoloGtold1/train/32323.png +../../data/yoloGtold1/train/32324.png +../../data/yoloGtold1/train/32325.png +../../data/yoloGtold1/train/32326.png +../../data/yoloGtold1/train/32327.png +../../data/yoloGtold1/train/32328.png +../../data/yoloGtold1/train/32329.png +../../data/yoloGtold1/train/32330.png +../../data/yoloGtold1/train/32331.png +../../data/yoloGtold1/train/32332.png +../../data/yoloGtold1/train/32333.png +../../data/yoloGtold1/train/32334.png +../../data/yoloGtold1/train/32335.png +../../data/yoloGtold1/train/32336.png +../../data/yoloGtold1/train/32337.png +../../data/yoloGtold1/train/32338.png +../../data/yoloGtold1/train/32339.png +../../data/yoloGtold1/train/32340.png +../../data/yoloGtold1/train/32341.png +../../data/yoloGtold1/train/32342.png +../../data/yoloGtold1/train/32343.png +../../data/yoloGtold1/train/32344.png +../../data/yoloGtold1/train/32345.png +../../data/yoloGtold1/train/32346.png +../../data/yoloGtold1/train/32347.png +../../data/yoloGtold1/train/32348.png +../../data/yoloGtold1/train/32349.png +../../data/yoloGtold1/train/32350.png +../../data/yoloGtold1/train/32351.png +../../data/yoloGtold1/train/32352.png +../../data/yoloGtold1/train/32353.png +../../data/yoloGtold1/train/32354.png +../../data/yoloGtold1/train/32355.png +../../data/yoloGtold1/train/32356.png +../../data/yoloGtold1/train/32357.png +../../data/yoloGtold1/train/32358.png +../../data/yoloGtold1/train/32359.png +../../data/yoloGtold1/train/32360.png +../../data/yoloGtold1/train/32361.png +../../data/yoloGtold1/train/32362.png +../../data/yoloGtold1/train/32363.png +../../data/yoloGtold1/train/32364.png +../../data/yoloGtold1/train/32365.png +../../data/yoloGtold1/train/32366.png +../../data/yoloGtold1/train/32367.png +../../data/yoloGtold1/train/32368.png +../../data/yoloGtold1/train/32369.png +../../data/yoloGtold1/train/32370.png +../../data/yoloGtold1/train/32371.png +../../data/yoloGtold1/train/32372.png +../../data/yoloGtold1/train/32373.png +../../data/yoloGtold1/train/32374.png +../../data/yoloGtold1/train/32375.png +../../data/yoloGtold1/train/32376.png +../../data/yoloGtold1/train/32377.png +../../data/yoloGtold1/train/32378.png +../../data/yoloGtold1/train/32379.png +../../data/yoloGtold1/train/32380.png +../../data/yoloGtold1/train/32381.png +../../data/yoloGtold1/train/32382.png +../../data/yoloGtold1/train/32383.png +../../data/yoloGtold1/train/32384.png +../../data/yoloGtold1/train/32385.png +../../data/yoloGtold1/train/32386.png +../../data/yoloGtold1/train/32387.png +../../data/yoloGtold1/train/32388.png +../../data/yoloGtold1/train/32389.png +../../data/yoloGtold1/train/32390.png +../../data/yoloGtold1/train/32391.png +../../data/yoloGtold1/train/32392.png +../../data/yoloGtold1/train/32393.png +../../data/yoloGtold1/train/32394.png +../../data/yoloGtold1/train/32395.png +../../data/yoloGtold1/train/32396.png +../../data/yoloGtold1/train/32397.png +../../data/yoloGtold1/train/32398.png +../../data/yoloGtold1/train/32399.png +../../data/yoloGtold1/train/32400.png +../../data/yoloGtold1/train/32401.png +../../data/yoloGtold1/train/32402.png +../../data/yoloGtold1/train/32403.png +../../data/yoloGtold1/train/32404.png +../../data/yoloGtold1/train/32405.png +../../data/yoloGtold1/train/32406.png +../../data/yoloGtold1/train/32407.png +../../data/yoloGtold1/train/32408.png +../../data/yoloGtold1/train/32409.png +../../data/yoloGtold1/train/32410.png +../../data/yoloGtold1/train/32411.png +../../data/yoloGtold1/train/32412.png +../../data/yoloGtold1/train/32413.png +../../data/yoloGtold1/train/32414.png +../../data/yoloGtold1/train/32415.png +../../data/yoloGtold1/train/32416.png +../../data/yoloGtold1/train/32417.png +../../data/yoloGtold1/train/32418.png +../../data/yoloGtold1/train/32419.png +../../data/yoloGtold1/train/32420.png +../../data/yoloGtold1/train/32421.png +../../data/yoloGtold1/train/32422.png +../../data/yoloGtold1/train/32423.png +../../data/yoloGtold1/train/32424.png +../../data/yoloGtold1/train/32425.png +../../data/yoloGtold1/train/32426.png +../../data/yoloGtold1/train/32427.png +../../data/yoloGtold1/train/32428.png +../../data/yoloGtold1/train/32429.png +../../data/yoloGtold1/train/32430.png +../../data/yoloGtold1/train/32431.png +../../data/yoloGtold1/train/32432.png +../../data/yoloGtold1/train/32433.png +../../data/yoloGtold1/train/32434.png +../../data/yoloGtold1/train/32435.png +../../data/yoloGtold1/train/32436.png +../../data/yoloGtold1/train/32437.png +../../data/yoloGtold1/train/32438.png +../../data/yoloGtold1/train/32439.png +../../data/yoloGtold1/train/32440.png +../../data/yoloGtold1/train/32441.png +../../data/yoloGtold1/train/32442.png +../../data/yoloGtold1/train/32443.png +../../data/yoloGtold1/train/32444.png +../../data/yoloGtold1/train/32445.png +../../data/yoloGtold1/train/32446.png +../../data/yoloGtold1/train/32447.png +../../data/yoloGtold1/train/32448.png +../../data/yoloGtold1/train/32449.png +../../data/yoloGtold1/train/32450.png +../../data/yoloGtold1/train/32451.png +../../data/yoloGtold1/train/32452.png +../../data/yoloGtold1/train/32453.png +../../data/yoloGtold1/train/32454.png +../../data/yoloGtold1/train/32455.png +../../data/yoloGtold1/train/32456.png +../../data/yoloGtold1/train/32457.png +../../data/yoloGtold1/train/32458.png +../../data/yoloGtold1/train/32459.png +../../data/yoloGtold1/train/32460.png +../../data/yoloGtold1/train/32461.png +../../data/yoloGtold1/train/32462.png +../../data/yoloGtold1/train/32463.png +../../data/yoloGtold1/train/32464.png +../../data/yoloGtold1/train/32465.png +../../data/yoloGtold1/train/32466.png +../../data/yoloGtold1/train/32467.png +../../data/yoloGtold1/train/32468.png +../../data/yoloGtold1/train/32469.png +../../data/yoloGtold1/train/32470.png +../../data/yoloGtold1/train/32471.png +../../data/yoloGtold1/train/32472.png +../../data/yoloGtold1/train/32473.png +../../data/yoloGtold1/train/32474.png +../../data/yoloGtold1/train/32475.png +../../data/yoloGtold1/train/32476.png +../../data/yoloGtold1/train/32477.png +../../data/yoloGtold1/train/32478.png +../../data/yoloGtold1/train/32479.png +../../data/yoloGtold1/train/32480.png +../../data/yoloGtold1/train/32481.png +../../data/yoloGtold1/train/32482.png +../../data/yoloGtold1/train/32483.png +../../data/yoloGtold1/train/32484.png +../../data/yoloGtold1/train/32485.png +../../data/yoloGtold1/train/32486.png +../../data/yoloGtold1/train/32487.png +../../data/yoloGtold1/train/32488.png +../../data/yoloGtold1/train/32489.png +../../data/yoloGtold1/train/32490.png +../../data/yoloGtold1/train/32491.png +../../data/yoloGtold1/train/32492.png +../../data/yoloGtold1/train/32493.png +../../data/yoloGtold1/train/32494.png +../../data/yoloGtold1/train/32495.png +../../data/yoloGtold1/train/32496.png +../../data/yoloGtold1/train/32497.png +../../data/yoloGtold1/train/32498.png +../../data/yoloGtold1/train/32499.png +../../data/yoloGtold1/train/32500.png +../../data/yoloGtold1/train/32501.png +../../data/yoloGtold1/train/32502.png +../../data/yoloGtold1/train/32503.png +../../data/yoloGtold1/train/32504.png +../../data/yoloGtold1/train/32505.png +../../data/yoloGtold1/train/32506.png +../../data/yoloGtold1/train/32507.png +../../data/yoloGtold1/train/32508.png +../../data/yoloGtold1/train/32509.png +../../data/yoloGtold1/train/32510.png +../../data/yoloGtold1/train/32511.png +../../data/yoloGtold1/train/32512.png +../../data/yoloGtold1/train/32513.png +../../data/yoloGtold1/train/32514.png +../../data/yoloGtold1/train/32515.png +../../data/yoloGtold1/train/32516.png +../../data/yoloGtold1/train/32517.png +../../data/yoloGtold1/train/32518.png +../../data/yoloGtold1/train/32519.png +../../data/yoloGtold1/train/32520.png +../../data/yoloGtold1/train/32521.png +../../data/yoloGtold1/train/32522.png +../../data/yoloGtold1/train/32523.png +../../data/yoloGtold1/train/32524.png +../../data/yoloGtold1/train/32525.png +../../data/yoloGtold1/train/32526.png +../../data/yoloGtold1/train/32527.png +../../data/yoloGtold1/train/32528.png +../../data/yoloGtold1/train/32529.png +../../data/yoloGtold1/train/32530.png +../../data/yoloGtold1/train/32531.png +../../data/yoloGtold1/train/32532.png +../../data/yoloGtold1/train/32533.png +../../data/yoloGtold1/train/32534.png +../../data/yoloGtold1/train/32535.png +../../data/yoloGtold1/train/32536.png +../../data/yoloGtold1/train/32537.png +../../data/yoloGtold1/train/32538.png +../../data/yoloGtold1/train/32539.png +../../data/yoloGtold1/train/32540.png +../../data/yoloGtold1/train/32541.png +../../data/yoloGtold1/train/32542.png +../../data/yoloGtold1/train/32543.png +../../data/yoloGtold1/train/32544.png +../../data/yoloGtold1/train/32545.png +../../data/yoloGtold1/train/32546.png +../../data/yoloGtold1/train/32547.png +../../data/yoloGtold1/train/32548.png +../../data/yoloGtold1/train/32549.png +../../data/yoloGtold1/train/32550.png +../../data/yoloGtold1/train/32551.png +../../data/yoloGtold1/train/32552.png +../../data/yoloGtold1/train/32553.png +../../data/yoloGtold1/train/32554.png +../../data/yoloGtold1/train/32555.png +../../data/yoloGtold1/train/32556.png +../../data/yoloGtold1/train/32557.png +../../data/yoloGtold1/train/32558.png +../../data/yoloGtold1/train/32559.png +../../data/yoloGtold1/train/32560.png +../../data/yoloGtold1/train/32561.png +../../data/yoloGtold1/train/32562.png +../../data/yoloGtold1/train/32563.png +../../data/yoloGtold1/train/32564.png +../../data/yoloGtold1/train/32565.png +../../data/yoloGtold1/train/32566.png +../../data/yoloGtold1/train/32567.png +../../data/yoloGtold1/train/32568.png +../../data/yoloGtold1/train/32569.png +../../data/yoloGtold1/train/32570.png +../../data/yoloGtold1/train/32571.png +../../data/yoloGtold1/train/32572.png +../../data/yoloGtold1/train/32573.png +../../data/yoloGtold1/train/32574.png +../../data/yoloGtold1/train/32575.png +../../data/yoloGtold1/train/32576.png +../../data/yoloGtold1/train/32577.png +../../data/yoloGtold1/train/32578.png +../../data/yoloGtold1/train/32579.png +../../data/yoloGtold1/train/32580.png +../../data/yoloGtold1/train/32581.png +../../data/yoloGtold1/train/32582.png +../../data/yoloGtold1/train/32583.png +../../data/yoloGtold1/train/32584.png +../../data/yoloGtold1/train/32585.png +../../data/yoloGtold1/train/32586.png +../../data/yoloGtold1/train/32587.png +../../data/yoloGtold1/train/32588.png +../../data/yoloGtold1/train/32589.png +../../data/yoloGtold1/train/32590.png +../../data/yoloGtold1/train/32591.png +../../data/yoloGtold1/train/32592.png +../../data/yoloGtold1/train/32593.png +../../data/yoloGtold1/train/32594.png +../../data/yoloGtold1/train/32595.png +../../data/yoloGtold1/train/32596.png +../../data/yoloGtold1/train/32597.png +../../data/yoloGtold1/train/32598.png +../../data/yoloGtold1/train/32599.png +../../data/yoloGtold1/train/32600.png +../../data/yoloGtold1/train/32601.png +../../data/yoloGtold1/train/32602.png +../../data/yoloGtold1/train/32603.png +../../data/yoloGtold1/train/32604.png +../../data/yoloGtold1/train/32605.png +../../data/yoloGtold1/train/32606.png +../../data/yoloGtold1/train/32607.png +../../data/yoloGtold1/train/32608.png +../../data/yoloGtold1/train/32609.png +../../data/yoloGtold1/train/32610.png +../../data/yoloGtold1/train/32611.png +../../data/yoloGtold1/train/32612.png +../../data/yoloGtold1/train/32613.png +../../data/yoloGtold1/train/32614.png +../../data/yoloGtold1/train/32615.png +../../data/yoloGtold1/train/32616.png +../../data/yoloGtold1/train/32617.png +../../data/yoloGtold1/train/32618.png +../../data/yoloGtold1/train/32619.png +../../data/yoloGtold1/train/32620.png +../../data/yoloGtold1/train/32621.png +../../data/yoloGtold1/train/32622.png +../../data/yoloGtold1/train/32623.png +../../data/yoloGtold1/train/32624.png +../../data/yoloGtold1/train/32625.png +../../data/yoloGtold1/train/32626.png +../../data/yoloGtold1/train/32627.png +../../data/yoloGtold1/train/32628.png +../../data/yoloGtold1/train/32629.png +../../data/yoloGtold1/train/32630.png +../../data/yoloGtold1/train/32631.png +../../data/yoloGtold1/train/32632.png +../../data/yoloGtold1/train/32633.png +../../data/yoloGtold1/train/32634.png +../../data/yoloGtold1/train/32635.png +../../data/yoloGtold1/train/32636.png +../../data/yoloGtold1/train/32637.png +../../data/yoloGtold1/train/32638.png +../../data/yoloGtold1/train/32639.png +../../data/yoloGtold1/train/32640.png +../../data/yoloGtold1/train/32641.png +../../data/yoloGtold1/train/32642.png +../../data/yoloGtold1/train/32643.png +../../data/yoloGtold1/train/32644.png +../../data/yoloGtold1/train/32645.png +../../data/yoloGtold1/train/32646.png +../../data/yoloGtold1/train/32647.png +../../data/yoloGtold1/train/32648.png +../../data/yoloGtold1/train/32649.png +../../data/yoloGtold1/train/32650.png +../../data/yoloGtold1/train/32651.png +../../data/yoloGtold1/train/32652.png +../../data/yoloGtold1/train/32653.png +../../data/yoloGtold1/train/32654.png +../../data/yoloGtold1/train/32655.png +../../data/yoloGtold1/train/32656.png +../../data/yoloGtold1/train/32657.png +../../data/yoloGtold1/train/32658.png +../../data/yoloGtold1/train/32659.png +../../data/yoloGtold1/train/32660.png +../../data/yoloGtold1/train/32661.png +../../data/yoloGtold1/train/32662.png +../../data/yoloGtold1/train/32663.png +../../data/yoloGtold1/train/32664.png +../../data/yoloGtold1/train/32665.png +../../data/yoloGtold1/train/32666.png +../../data/yoloGtold1/train/32667.png +../../data/yoloGtold1/train/32668.png +../../data/yoloGtold1/train/32669.png +../../data/yoloGtold1/train/32670.png +../../data/yoloGtold1/train/32671.png +../../data/yoloGtold1/train/32672.png +../../data/yoloGtold1/train/32673.png +../../data/yoloGtold1/train/32674.png +../../data/yoloGtold1/train/32675.png +../../data/yoloGtold1/train/32676.png +../../data/yoloGtold1/train/32677.png +../../data/yoloGtold1/train/32678.png +../../data/yoloGtold1/train/32679.png +../../data/yoloGtold1/train/32680.png +../../data/yoloGtold1/train/32681.png +../../data/yoloGtold1/train/32682.png +../../data/yoloGtold1/train/32683.png +../../data/yoloGtold1/train/32684.png +../../data/yoloGtold1/train/32685.png +../../data/yoloGtold1/train/32686.png +../../data/yoloGtold1/train/32687.png +../../data/yoloGtold1/train/32688.png +../../data/yoloGtold1/train/32689.png +../../data/yoloGtold1/train/32690.png +../../data/yoloGtold1/train/32691.png +../../data/yoloGtold1/train/32692.png +../../data/yoloGtold1/train/32693.png +../../data/yoloGtold1/train/32694.png +../../data/yoloGtold1/train/32695.png +../../data/yoloGtold1/train/32696.png +../../data/yoloGtold1/train/32697.png +../../data/yoloGtold1/train/32698.png +../../data/yoloGtold1/train/32699.png +../../data/yoloGtold1/train/32700.png +../../data/yoloGtold1/train/32701.png +../../data/yoloGtold1/train/32702.png +../../data/yoloGtold1/train/32703.png +../../data/yoloGtold1/train/32704.png +../../data/yoloGtold1/train/32705.png +../../data/yoloGtold1/train/32706.png +../../data/yoloGtold1/train/32707.png +../../data/yoloGtold1/train/32708.png +../../data/yoloGtold1/train/32709.png +../../data/yoloGtold1/train/32710.png +../../data/yoloGtold1/train/32711.png +../../data/yoloGtold1/train/32712.png +../../data/yoloGtold1/train/32713.png +../../data/yoloGtold1/train/32714.png +../../data/yoloGtold1/train/32715.png +../../data/yoloGtold1/train/32716.png +../../data/yoloGtold1/train/32717.png +../../data/yoloGtold1/train/32718.png +../../data/yoloGtold1/train/32719.png +../../data/yoloGtold1/train/32720.png +../../data/yoloGtold1/train/32721.png +../../data/yoloGtold1/train/32722.png +../../data/yoloGtold1/train/32723.png +../../data/yoloGtold1/train/32724.png +../../data/yoloGtold1/train/32725.png +../../data/yoloGtold1/train/32726.png +../../data/yoloGtold1/train/32727.png +../../data/yoloGtold1/train/32728.png +../../data/yoloGtold1/train/32729.png +../../data/yoloGtold1/train/32730.png +../../data/yoloGtold1/train/32731.png +../../data/yoloGtold1/train/32732.png +../../data/yoloGtold1/train/32733.png +../../data/yoloGtold1/train/32734.png +../../data/yoloGtold1/train/32735.png +../../data/yoloGtold1/train/32736.png +../../data/yoloGtold1/train/32737.png +../../data/yoloGtold1/train/32738.png +../../data/yoloGtold1/train/32739.png +../../data/yoloGtold1/train/32740.png +../../data/yoloGtold1/train/32741.png +../../data/yoloGtold1/train/32742.png +../../data/yoloGtold1/train/32743.png +../../data/yoloGtold1/train/32744.png +../../data/yoloGtold1/train/32745.png +../../data/yoloGtold1/train/32746.png +../../data/yoloGtold1/train/32747.png +../../data/yoloGtold1/train/32748.png +../../data/yoloGtold1/train/32749.png +../../data/yoloGtold1/train/32750.png +../../data/yoloGtold1/train/32751.png +../../data/yoloGtold1/train/32752.png +../../data/yoloGtold1/train/32753.png +../../data/yoloGtold1/train/32754.png +../../data/yoloGtold1/train/32755.png +../../data/yoloGtold1/train/32756.png +../../data/yoloGtold1/train/32757.png +../../data/yoloGtold1/train/32758.png +../../data/yoloGtold1/train/32759.png +../../data/yoloGtold1/train/32760.png +../../data/yoloGtold1/train/32761.png +../../data/yoloGtold1/train/32762.png +../../data/yoloGtold1/train/32763.png +../../data/yoloGtold1/train/32764.png +../../data/yoloGtold1/train/32765.png +../../data/yoloGtold1/train/32766.png +../../data/yoloGtold1/train/32767.png +../../data/yoloGtold1/train/32768.png +../../data/yoloGtold1/train/32769.png +../../data/yoloGtold1/train/32770.png +../../data/yoloGtold1/train/32771.png +../../data/yoloGtold1/train/32772.png +../../data/yoloGtold1/train/32773.png +../../data/yoloGtold1/train/32774.png +../../data/yoloGtold1/train/32775.png +../../data/yoloGtold1/train/32776.png +../../data/yoloGtold1/train/32777.png +../../data/yoloGtold1/train/32778.png +../../data/yoloGtold1/train/32779.png +../../data/yoloGtold1/train/32780.png +../../data/yoloGtold1/train/32781.png +../../data/yoloGtold1/train/32782.png +../../data/yoloGtold1/train/32783.png +../../data/yoloGtold1/train/32784.png +../../data/yoloGtold1/train/32785.png +../../data/yoloGtold1/train/32786.png +../../data/yoloGtold1/train/32787.png +../../data/yoloGtold1/train/32788.png +../../data/yoloGtold1/train/32789.png +../../data/yoloGtold1/train/32790.png +../../data/yoloGtold1/train/32791.png +../../data/yoloGtold1/train/32792.png +../../data/yoloGtold1/train/32793.png +../../data/yoloGtold1/train/32794.png +../../data/yoloGtold1/train/32795.png +../../data/yoloGtold1/train/32796.png +../../data/yoloGtold1/train/32797.png +../../data/yoloGtold1/train/32798.png +../../data/yoloGtold1/train/32799.png +../../data/yoloGtold1/train/32800.png +../../data/yoloGtold1/train/32801.png +../../data/yoloGtold1/train/32802.png +../../data/yoloGtold1/train/32803.png +../../data/yoloGtold1/train/32804.png +../../data/yoloGtold1/train/32805.png +../../data/yoloGtold1/train/32806.png +../../data/yoloGtold1/train/32807.png +../../data/yoloGtold1/train/32808.png +../../data/yoloGtold1/train/32809.png +../../data/yoloGtold1/train/32810.png +../../data/yoloGtold1/train/32811.png +../../data/yoloGtold1/train/32812.png +../../data/yoloGtold1/train/32813.png +../../data/yoloGtold1/train/32814.png +../../data/yoloGtold1/train/32815.png +../../data/yoloGtold1/train/32816.png +../../data/yoloGtold1/train/32817.png +../../data/yoloGtold1/train/32818.png +../../data/yoloGtold1/train/32819.png +../../data/yoloGtold1/train/32820.png +../../data/yoloGtold1/train/32821.png +../../data/yoloGtold1/train/32822.png +../../data/yoloGtold1/train/32823.png +../../data/yoloGtold1/train/32824.png +../../data/yoloGtold1/train/32825.png +../../data/yoloGtold1/train/32826.png +../../data/yoloGtold1/train/32827.png +../../data/yoloGtold1/train/32828.png +../../data/yoloGtold1/train/32829.png +../../data/yoloGtold1/train/32830.png +../../data/yoloGtold1/train/32831.png +../../data/yoloGtold1/train/32832.png +../../data/yoloGtold1/train/32833.png +../../data/yoloGtold1/train/32834.png +../../data/yoloGtold1/train/32835.png +../../data/yoloGtold1/train/32836.png +../../data/yoloGtold1/train/32837.png +../../data/yoloGtold1/train/32838.png +../../data/yoloGtold1/train/32839.png +../../data/yoloGtold1/train/32840.png +../../data/yoloGtold1/train/32841.png +../../data/yoloGtold1/train/32842.png +../../data/yoloGtold1/train/32843.png +../../data/yoloGtold1/train/32844.png +../../data/yoloGtold1/train/32845.png +../../data/yoloGtold1/train/32846.png +../../data/yoloGtold1/train/32847.png +../../data/yoloGtold1/train/32848.png +../../data/yoloGtold1/train/32849.png +../../data/yoloGtold1/train/32850.png +../../data/yoloGtold1/train/32851.png +../../data/yoloGtold1/train/32852.png +../../data/yoloGtold1/train/32853.png +../../data/yoloGtold1/train/32854.png +../../data/yoloGtold1/train/32855.png +../../data/yoloGtold1/train/32856.png +../../data/yoloGtold1/train/32857.png +../../data/yoloGtold1/train/32858.png +../../data/yoloGtold1/train/32859.png +../../data/yoloGtold1/train/32860.png +../../data/yoloGtold1/train/32861.png +../../data/yoloGtold1/train/32862.png +../../data/yoloGtold1/train/32863.png +../../data/yoloGtold1/train/32864.png +../../data/yoloGtold1/train/32865.png +../../data/yoloGtold1/train/32866.png +../../data/yoloGtold1/train/32867.png +../../data/yoloGtold1/train/32868.png +../../data/yoloGtold1/train/32869.png +../../data/yoloGtold1/train/32870.png +../../data/yoloGtold1/train/32871.png +../../data/yoloGtold1/train/32872.png +../../data/yoloGtold1/train/32873.png +../../data/yoloGtold1/train/32874.png +../../data/yoloGtold1/train/32875.png +../../data/yoloGtold1/train/32876.png +../../data/yoloGtold1/train/32877.png +../../data/yoloGtold1/train/32878.png +../../data/yoloGtold1/train/32879.png +../../data/yoloGtold1/train/32880.png +../../data/yoloGtold1/train/32881.png +../../data/yoloGtold1/train/32882.png +../../data/yoloGtold1/train/32883.png +../../data/yoloGtold1/train/32884.png +../../data/yoloGtold1/train/32885.png +../../data/yoloGtold1/train/32886.png +../../data/yoloGtold1/train/32887.png +../../data/yoloGtold1/train/32888.png +../../data/yoloGtold1/train/32889.png +../../data/yoloGtold1/train/32890.png +../../data/yoloGtold1/train/32891.png +../../data/yoloGtold1/train/32892.png +../../data/yoloGtold1/train/32893.png +../../data/yoloGtold1/train/32894.png +../../data/yoloGtold1/train/32895.png +../../data/yoloGtold1/train/32896.png +../../data/yoloGtold1/train/32897.png +../../data/yoloGtold1/train/32898.png +../../data/yoloGtold1/train/32899.png +../../data/yoloGtold1/train/32900.png +../../data/yoloGtold1/train/32901.png +../../data/yoloGtold1/train/32902.png +../../data/yoloGtold1/train/32903.png +../../data/yoloGtold1/train/32904.png +../../data/yoloGtold1/train/32905.png +../../data/yoloGtold1/train/32906.png +../../data/yoloGtold1/train/32907.png +../../data/yoloGtold1/train/32908.png +../../data/yoloGtold1/train/32909.png +../../data/yoloGtold1/train/32910.png +../../data/yoloGtold1/train/32911.png +../../data/yoloGtold1/train/32912.png +../../data/yoloGtold1/train/32913.png +../../data/yoloGtold1/train/32914.png +../../data/yoloGtold1/train/32915.png +../../data/yoloGtold1/train/32916.png +../../data/yoloGtold1/train/32917.png +../../data/yoloGtold1/train/32918.png +../../data/yoloGtold1/train/32919.png +../../data/yoloGtold1/train/32920.png +../../data/yoloGtold1/train/32921.png +../../data/yoloGtold1/train/32922.png +../../data/yoloGtold1/train/32923.png +../../data/yoloGtold1/train/32924.png +../../data/yoloGtold1/train/32925.png +../../data/yoloGtold1/train/32926.png +../../data/yoloGtold1/train/32927.png +../../data/yoloGtold1/train/32928.png +../../data/yoloGtold1/train/32929.png +../../data/yoloGtold1/train/32930.png +../../data/yoloGtold1/train/32931.png +../../data/yoloGtold1/train/32932.png +../../data/yoloGtold1/train/32933.png +../../data/yoloGtold1/train/32934.png +../../data/yoloGtold1/train/32935.png +../../data/yoloGtold1/train/32936.png +../../data/yoloGtold1/train/32937.png +../../data/yoloGtold1/train/32938.png +../../data/yoloGtold1/train/32939.png +../../data/yoloGtold1/train/32940.png +../../data/yoloGtold1/train/32941.png +../../data/yoloGtold1/train/32942.png +../../data/yoloGtold1/train/32943.png +../../data/yoloGtold1/train/32944.png +../../data/yoloGtold1/train/32945.png +../../data/yoloGtold1/train/32946.png +../../data/yoloGtold1/train/32947.png +../../data/yoloGtold1/train/32948.png +../../data/yoloGtold1/train/32949.png +../../data/yoloGtold1/train/32950.png +../../data/yoloGtold1/train/32951.png +../../data/yoloGtold1/train/32952.png +../../data/yoloGtold1/train/32953.png +../../data/yoloGtold1/train/32954.png +../../data/yoloGtold1/train/32955.png +../../data/yoloGtold1/train/32956.png +../../data/yoloGtold1/train/32957.png +../../data/yoloGtold1/train/32958.png +../../data/yoloGtold1/train/32959.png +../../data/yoloGtold1/train/32960.png +../../data/yoloGtold1/train/32961.png +../../data/yoloGtold1/train/32962.png +../../data/yoloGtold1/train/32963.png +../../data/yoloGtold1/train/32964.png +../../data/yoloGtold1/train/32965.png +../../data/yoloGtold1/train/32966.png +../../data/yoloGtold1/train/32967.png +../../data/yoloGtold1/train/32968.png +../../data/yoloGtold1/train/32969.png +../../data/yoloGtold1/train/32970.png +../../data/yoloGtold1/train/32971.png +../../data/yoloGtold1/train/32972.png +../../data/yoloGtold1/train/32973.png +../../data/yoloGtold1/train/32974.png +../../data/yoloGtold1/train/32975.png +../../data/yoloGtold1/train/32976.png +../../data/yoloGtold1/train/32977.png +../../data/yoloGtold1/train/32978.png +../../data/yoloGtold1/train/32979.png +../../data/yoloGtold1/train/32980.png +../../data/yoloGtold1/train/32981.png +../../data/yoloGtold1/train/32982.png +../../data/yoloGtold1/train/32983.png +../../data/yoloGtold1/train/32984.png +../../data/yoloGtold1/train/32985.png +../../data/yoloGtold1/train/32986.png +../../data/yoloGtold1/train/32987.png +../../data/yoloGtold1/train/32988.png +../../data/yoloGtold1/train/32989.png +../../data/yoloGtold1/train/32990.png +../../data/yoloGtold1/train/32991.png +../../data/yoloGtold1/train/32992.png +../../data/yoloGtold1/train/32993.png +../../data/yoloGtold1/train/32994.png +../../data/yoloGtold1/train/32995.png +../../data/yoloGtold1/train/32996.png +../../data/yoloGtold1/train/32997.png +../../data/yoloGtold1/train/32998.png +../../data/yoloGtold1/train/32999.png +../../data/yoloGtold1/train/33000.png +../../data/yoloGtold1/train/33001.png +../../data/yoloGtold1/train/33002.png +../../data/yoloGtold1/train/33003.png +../../data/yoloGtold1/train/33004.png +../../data/yoloGtold1/train/33005.png +../../data/yoloGtold1/train/33006.png +../../data/yoloGtold1/train/33007.png +../../data/yoloGtold1/train/33008.png +../../data/yoloGtold1/train/33009.png +../../data/yoloGtold1/train/33010.png +../../data/yoloGtold1/train/33011.png +../../data/yoloGtold1/train/33012.png +../../data/yoloGtold1/train/33013.png +../../data/yoloGtold1/train/33014.png +../../data/yoloGtold1/train/33015.png +../../data/yoloGtold1/train/33016.png +../../data/yoloGtold1/train/33017.png +../../data/yoloGtold1/train/33018.png +../../data/yoloGtold1/train/33019.png +../../data/yoloGtold1/train/33020.png +../../data/yoloGtold1/train/33021.png +../../data/yoloGtold1/train/33022.png +../../data/yoloGtold1/train/33023.png +../../data/yoloGtold1/train/33024.png +../../data/yoloGtold1/train/33025.png +../../data/yoloGtold1/train/33026.png +../../data/yoloGtold1/train/33027.png +../../data/yoloGtold1/train/33028.png +../../data/yoloGtold1/train/33029.png +../../data/yoloGtold1/train/33030.png +../../data/yoloGtold1/train/33031.png +../../data/yoloGtold1/train/33032.png +../../data/yoloGtold1/train/33033.png +../../data/yoloGtold1/train/33034.png +../../data/yoloGtold1/train/33035.png +../../data/yoloGtold1/train/33036.png +../../data/yoloGtold1/train/33037.png +../../data/yoloGtold1/train/33038.png +../../data/yoloGtold1/train/33039.png +../../data/yoloGtold1/train/33040.png +../../data/yoloGtold1/train/33041.png +../../data/yoloGtold1/train/33042.png +../../data/yoloGtold1/train/33043.png +../../data/yoloGtold1/train/33044.png +../../data/yoloGtold1/train/33045.png +../../data/yoloGtold1/train/33046.png +../../data/yoloGtold1/train/33047.png +../../data/yoloGtold1/train/33048.png +../../data/yoloGtold1/train/33049.png +../../data/yoloGtold1/train/33050.png +../../data/yoloGtold1/train/33051.png +../../data/yoloGtold1/train/33052.png +../../data/yoloGtold1/train/33053.png +../../data/yoloGtold1/train/33054.png +../../data/yoloGtold1/train/33055.png +../../data/yoloGtold1/train/33056.png +../../data/yoloGtold1/train/33057.png +../../data/yoloGtold1/train/33058.png +../../data/yoloGtold1/train/33059.png +../../data/yoloGtold1/train/33060.png +../../data/yoloGtold1/train/33061.png +../../data/yoloGtold1/train/33062.png +../../data/yoloGtold1/train/33063.png +../../data/yoloGtold1/train/33064.png +../../data/yoloGtold1/train/33065.png +../../data/yoloGtold1/train/33066.png +../../data/yoloGtold1/train/33067.png +../../data/yoloGtold1/train/33068.png +../../data/yoloGtold1/train/33069.png +../../data/yoloGtold1/train/33070.png +../../data/yoloGtold1/train/33071.png +../../data/yoloGtold1/train/33072.png +../../data/yoloGtold1/train/33073.png +../../data/yoloGtold1/train/33074.png +../../data/yoloGtold1/train/33075.png +../../data/yoloGtold1/train/33076.png +../../data/yoloGtold1/train/33077.png +../../data/yoloGtold1/train/33078.png +../../data/yoloGtold1/train/33079.png +../../data/yoloGtold1/train/33080.png +../../data/yoloGtold1/train/33081.png +../../data/yoloGtold1/train/33082.png +../../data/yoloGtold1/train/33083.png +../../data/yoloGtold1/train/33084.png +../../data/yoloGtold1/train/33085.png +../../data/yoloGtold1/train/33086.png +../../data/yoloGtold1/train/33087.png +../../data/yoloGtold1/train/33088.png +../../data/yoloGtold1/train/33089.png +../../data/yoloGtold1/train/33090.png +../../data/yoloGtold1/train/33091.png +../../data/yoloGtold1/train/33092.png +../../data/yoloGtold1/train/33093.png +../../data/yoloGtold1/train/33094.png +../../data/yoloGtold1/train/33095.png +../../data/yoloGtold1/train/33096.png +../../data/yoloGtold1/train/33097.png +../../data/yoloGtold1/train/33098.png +../../data/yoloGtold1/train/33099.png +../../data/yoloGtold1/train/33100.png +../../data/yoloGtold1/train/33101.png +../../data/yoloGtold1/train/33102.png +../../data/yoloGtold1/train/33103.png +../../data/yoloGtold1/train/33104.png +../../data/yoloGtold1/train/33105.png +../../data/yoloGtold1/train/33106.png +../../data/yoloGtold1/train/33107.png +../../data/yoloGtold1/train/33108.png +../../data/yoloGtold1/train/33109.png +../../data/yoloGtold1/train/33110.png +../../data/yoloGtold1/train/33111.png +../../data/yoloGtold1/train/33112.png +../../data/yoloGtold1/train/33113.png +../../data/yoloGtold1/train/33114.png +../../data/yoloGtold1/train/33115.png +../../data/yoloGtold1/train/33116.png +../../data/yoloGtold1/train/33117.png +../../data/yoloGtold1/train/33118.png +../../data/yoloGtold1/train/33119.png +../../data/yoloGtold1/train/33120.png +../../data/yoloGtold1/train/33121.png +../../data/yoloGtold1/train/33122.png +../../data/yoloGtold1/train/33123.png +../../data/yoloGtold1/train/33124.png +../../data/yoloGtold1/train/33125.png +../../data/yoloGtold1/train/33126.png +../../data/yoloGtold1/train/33127.png +../../data/yoloGtold1/train/33128.png +../../data/yoloGtold1/train/33129.png +../../data/yoloGtold1/train/33130.png +../../data/yoloGtold1/train/33131.png +../../data/yoloGtold1/train/33132.png +../../data/yoloGtold1/train/33133.png +../../data/yoloGtold1/train/33134.png +../../data/yoloGtold1/train/33135.png +../../data/yoloGtold1/train/33136.png +../../data/yoloGtold1/train/33137.png +../../data/yoloGtold1/train/33138.png +../../data/yoloGtold1/train/33139.png +../../data/yoloGtold1/train/33140.png +../../data/yoloGtold1/train/33141.png +../../data/yoloGtold1/train/33142.png +../../data/yoloGtold1/train/33143.png +../../data/yoloGtold1/train/33144.png +../../data/yoloGtold1/train/33145.png +../../data/yoloGtold1/train/33146.png +../../data/yoloGtold1/train/33147.png +../../data/yoloGtold1/train/33148.png +../../data/yoloGtold1/train/33149.png +../../data/yoloGtold1/train/33150.png +../../data/yoloGtold1/train/33151.png +../../data/yoloGtold1/train/33152.png +../../data/yoloGtold1/train/33153.png +../../data/yoloGtold1/train/33154.png +../../data/yoloGtold1/train/33155.png +../../data/yoloGtold1/train/33156.png +../../data/yoloGtold1/train/33157.png +../../data/yoloGtold1/train/33158.png +../../data/yoloGtold1/train/33159.png +../../data/yoloGtold1/train/33160.png +../../data/yoloGtold1/train/33161.png +../../data/yoloGtold1/train/33162.png +../../data/yoloGtold1/train/33163.png +../../data/yoloGtold1/train/33164.png +../../data/yoloGtold1/train/33165.png +../../data/yoloGtold1/train/33166.png +../../data/yoloGtold1/train/33167.png +../../data/yoloGtold1/train/33168.png +../../data/yoloGtold1/train/33169.png +../../data/yoloGtold1/train/33170.png +../../data/yoloGtold1/train/33171.png +../../data/yoloGtold1/train/33172.png +../../data/yoloGtold1/train/33173.png +../../data/yoloGtold1/train/33174.png +../../data/yoloGtold1/train/33175.png +../../data/yoloGtold1/train/33176.png +../../data/yoloGtold1/train/33177.png +../../data/yoloGtold1/train/33178.png +../../data/yoloGtold1/train/33179.png +../../data/yoloGtold1/train/33180.png +../../data/yoloGtold1/train/33181.png +../../data/yoloGtold1/train/33182.png +../../data/yoloGtold1/train/33183.png +../../data/yoloGtold1/train/33184.png +../../data/yoloGtold1/train/33185.png +../../data/yoloGtold1/train/33186.png +../../data/yoloGtold1/train/33187.png +../../data/yoloGtold1/train/33188.png +../../data/yoloGtold1/train/33189.png +../../data/yoloGtold1/train/33190.png +../../data/yoloGtold1/train/33191.png +../../data/yoloGtold1/train/33192.png +../../data/yoloGtold1/train/33193.png +../../data/yoloGtold1/train/33194.png +../../data/yoloGtold1/train/33195.png +../../data/yoloGtold1/train/33196.png +../../data/yoloGtold1/train/33197.png +../../data/yoloGtold1/train/33198.png +../../data/yoloGtold1/train/33199.png +../../data/yoloGtold1/train/33200.png +../../data/yoloGtold1/train/33201.png +../../data/yoloGtold1/train/33202.png +../../data/yoloGtold1/train/33203.png +../../data/yoloGtold1/train/33204.png +../../data/yoloGtold1/train/33205.png +../../data/yoloGtold1/train/33206.png +../../data/yoloGtold1/train/33207.png +../../data/yoloGtold1/train/33208.png +../../data/yoloGtold1/train/33209.png +../../data/yoloGtold1/train/33210.png +../../data/yoloGtold1/train/33211.png +../../data/yoloGtold1/train/33212.png +../../data/yoloGtold1/train/33213.png +../../data/yoloGtold1/train/33214.png +../../data/yoloGtold1/train/33215.png +../../data/yoloGtold1/train/33216.png +../../data/yoloGtold1/train/33217.png +../../data/yoloGtold1/train/33218.png +../../data/yoloGtold1/train/33219.png +../../data/yoloGtold1/train/33220.png +../../data/yoloGtold1/train/33221.png +../../data/yoloGtold1/train/33222.png +../../data/yoloGtold1/train/33223.png +../../data/yoloGtold1/train/33224.png +../../data/yoloGtold1/train/33225.png +../../data/yoloGtold1/train/33226.png +../../data/yoloGtold1/train/33227.png +../../data/yoloGtold1/train/33228.png +../../data/yoloGtold1/train/33229.png +../../data/yoloGtold1/train/33230.png +../../data/yoloGtold1/train/33231.png +../../data/yoloGtold1/train/33232.png +../../data/yoloGtold1/train/33233.png +../../data/yoloGtold1/train/33234.png +../../data/yoloGtold1/train/33235.png +../../data/yoloGtold1/train/33236.png +../../data/yoloGtold1/train/33237.png +../../data/yoloGtold1/train/33238.png +../../data/yoloGtold1/train/33239.png +../../data/yoloGtold1/train/33240.png +../../data/yoloGtold1/train/33241.png +../../data/yoloGtold1/train/33242.png +../../data/yoloGtold1/train/33243.png +../../data/yoloGtold1/train/33244.png +../../data/yoloGtold1/train/33245.png +../../data/yoloGtold1/train/33246.png +../../data/yoloGtold1/train/33247.png +../../data/yoloGtold1/train/33248.png +../../data/yoloGtold1/train/33249.png +../../data/yoloGtold1/train/33250.png +../../data/yoloGtold1/train/33251.png +../../data/yoloGtold1/train/33252.png +../../data/yoloGtold1/train/33253.png +../../data/yoloGtold1/train/33254.png +../../data/yoloGtold1/train/33255.png +../../data/yoloGtold1/train/33256.png +../../data/yoloGtold1/train/33257.png +../../data/yoloGtold1/train/33258.png +../../data/yoloGtold1/train/33259.png +../../data/yoloGtold1/train/33260.png +../../data/yoloGtold1/train/33261.png +../../data/yoloGtold1/train/33262.png +../../data/yoloGtold1/train/33263.png +../../data/yoloGtold1/train/33264.png +../../data/yoloGtold1/train/33265.png +../../data/yoloGtold1/train/33266.png +../../data/yoloGtold1/train/33267.png +../../data/yoloGtold1/train/33268.png +../../data/yoloGtold1/train/33269.png +../../data/yoloGtold1/train/33270.png +../../data/yoloGtold1/train/33271.png +../../data/yoloGtold1/train/33272.png +../../data/yoloGtold1/train/33273.png +../../data/yoloGtold1/train/33274.png +../../data/yoloGtold1/train/33275.png +../../data/yoloGtold1/train/33276.png +../../data/yoloGtold1/train/33277.png +../../data/yoloGtold1/train/33278.png +../../data/yoloGtold1/train/33279.png +../../data/yoloGtold1/train/33280.png +../../data/yoloGtold1/train/33281.png +../../data/yoloGtold1/train/33282.png +../../data/yoloGtold1/train/33283.png +../../data/yoloGtold1/train/33284.png +../../data/yoloGtold1/train/33285.png +../../data/yoloGtold1/train/33286.png +../../data/yoloGtold1/train/33287.png +../../data/yoloGtold1/train/33288.png +../../data/yoloGtold1/train/33289.png +../../data/yoloGtold1/train/33290.png +../../data/yoloGtold1/train/33291.png +../../data/yoloGtold1/train/33292.png +../../data/yoloGtold1/train/33293.png +../../data/yoloGtold1/train/33294.png +../../data/yoloGtold1/train/33295.png +../../data/yoloGtold1/train/33296.png +../../data/yoloGtold1/train/33297.png +../../data/yoloGtold1/train/33298.png +../../data/yoloGtold1/train/33299.png +../../data/yoloGtold1/train/33300.png +../../data/yoloGtold1/train/33301.png +../../data/yoloGtold1/train/33302.png +../../data/yoloGtold1/train/33303.png +../../data/yoloGtold1/train/33304.png +../../data/yoloGtold1/train/33305.png +../../data/yoloGtold1/train/33306.png +../../data/yoloGtold1/train/33307.png +../../data/yoloGtold1/train/33308.png +../../data/yoloGtold1/train/33309.png +../../data/yoloGtold1/train/33310.png +../../data/yoloGtold1/train/33311.png +../../data/yoloGtold1/train/33312.png +../../data/yoloGtold1/train/33313.png +../../data/yoloGtold1/train/33314.png +../../data/yoloGtold1/train/33315.png +../../data/yoloGtold1/train/33316.png +../../data/yoloGtold1/train/33317.png +../../data/yoloGtold1/train/33318.png +../../data/yoloGtold1/train/33319.png +../../data/yoloGtold1/train/33320.png +../../data/yoloGtold1/train/33321.png +../../data/yoloGtold1/train/33322.png +../../data/yoloGtold1/train/33323.png +../../data/yoloGtold1/train/33324.png +../../data/yoloGtold1/train/33325.png +../../data/yoloGtold1/train/33326.png +../../data/yoloGtold1/train/33327.png +../../data/yoloGtold1/train/33328.png +../../data/yoloGtold1/train/33329.png +../../data/yoloGtold1/train/33330.png +../../data/yoloGtold1/train/33331.png +../../data/yoloGtold1/train/33332.png +../../data/yoloGtold1/train/33333.png +../../data/yoloGtold1/train/33334.png +../../data/yoloGtold1/train/33335.png +../../data/yoloGtold1/train/33336.png +../../data/yoloGtold1/train/33337.png +../../data/yoloGtold1/train/33338.png +../../data/yoloGtold1/train/33339.png +../../data/yoloGtold1/train/33340.png +../../data/yoloGtold1/train/33341.png +../../data/yoloGtold1/train/33342.png +../../data/yoloGtold1/train/33343.png +../../data/yoloGtold1/train/33344.png +../../data/yoloGtold1/train/33345.png +../../data/yoloGtold1/train/33346.png +../../data/yoloGtold1/train/33347.png +../../data/yoloGtold1/train/33348.png +../../data/yoloGtold1/train/33349.png +../../data/yoloGtold1/train/33350.png +../../data/yoloGtold1/train/33351.png +../../data/yoloGtold1/train/33352.png +../../data/yoloGtold1/train/33353.png +../../data/yoloGtold1/train/33354.png +../../data/yoloGtold1/train/33355.png +../../data/yoloGtold1/train/33356.png +../../data/yoloGtold1/train/33357.png +../../data/yoloGtold1/train/33358.png +../../data/yoloGtold1/train/33359.png +../../data/yoloGtold1/train/33360.png +../../data/yoloGtold1/train/33361.png +../../data/yoloGtold1/train/33362.png +../../data/yoloGtold1/train/33363.png +../../data/yoloGtold1/train/33364.png +../../data/yoloGtold1/train/33365.png +../../data/yoloGtold1/train/33366.png +../../data/yoloGtold1/train/33367.png +../../data/yoloGtold1/train/33368.png +../../data/yoloGtold1/train/33369.png +../../data/yoloGtold1/train/33370.png +../../data/yoloGtold1/train/33371.png +../../data/yoloGtold1/train/33372.png +../../data/yoloGtold1/train/33373.png +../../data/yoloGtold1/train/33374.png +../../data/yoloGtold1/train/33375.png +../../data/yoloGtold1/train/33376.png +../../data/yoloGtold1/train/33377.png +../../data/yoloGtold1/train/33378.png +../../data/yoloGtold1/train/33379.png +../../data/yoloGtold1/train/33380.png +../../data/yoloGtold1/train/33381.png +../../data/yoloGtold1/train/33382.png +../../data/yoloGtold1/train/33383.png +../../data/yoloGtold1/train/33384.png +../../data/yoloGtold1/train/33385.png +../../data/yoloGtold1/train/33386.png +../../data/yoloGtold1/train/33387.png +../../data/yoloGtold1/train/33388.png +../../data/yoloGtold1/train/33389.png +../../data/yoloGtold1/train/33390.png +../../data/yoloGtold1/train/33391.png +../../data/yoloGtold1/train/33392.png +../../data/yoloGtold1/train/33393.png +../../data/yoloGtold1/train/33394.png +../../data/yoloGtold1/train/33395.png +../../data/yoloGtold1/train/33396.png +../../data/yoloGtold1/train/33397.png +../../data/yoloGtold1/train/33398.png +../../data/yoloGtold1/train/33399.png +../../data/yoloGtold1/train/33400.png +../../data/yoloGtold1/train/33401.png +../../data/yoloGtold1/train/33402.png +../../data/yoloGtold1/train/33403.png +../../data/yoloGtold1/train/33404.png +../../data/yoloGtold1/train/33405.png +../../data/yoloGtold1/train/33406.png +../../data/yoloGtold1/train/33407.png +../../data/yoloGtold1/train/33408.png +../../data/yoloGtold1/train/33409.png +../../data/yoloGtold1/train/33410.png +../../data/yoloGtold1/train/33411.png +../../data/yoloGtold1/train/33412.png +../../data/yoloGtold1/train/33413.png +../../data/yoloGtold1/train/33414.png +../../data/yoloGtold1/train/33415.png +../../data/yoloGtold1/train/33416.png +../../data/yoloGtold1/train/33417.png +../../data/yoloGtold1/train/33418.png +../../data/yoloGtold1/train/33419.png +../../data/yoloGtold1/train/33420.png +../../data/yoloGtold1/train/33421.png +../../data/yoloGtold1/train/33422.png +../../data/yoloGtold1/train/33423.png +../../data/yoloGtold1/train/33424.png +../../data/yoloGtold1/train/33425.png +../../data/yoloGtold1/train/33426.png +../../data/yoloGtold1/train/33427.png +../../data/yoloGtold1/train/33428.png +../../data/yoloGtold1/train/33429.png +../../data/yoloGtold1/train/33430.png +../../data/yoloGtold1/train/33431.png +../../data/yoloGtold1/train/33432.png +../../data/yoloGtold1/train/33433.png +../../data/yoloGtold1/train/33434.png +../../data/yoloGtold1/train/33435.png +../../data/yoloGtold1/train/33436.png +../../data/yoloGtold1/train/33437.png +../../data/yoloGtold1/train/33438.png +../../data/yoloGtold1/train/33439.png +../../data/yoloGtold1/train/33440.png +../../data/yoloGtold1/train/33441.png +../../data/yoloGtold1/train/33442.png +../../data/yoloGtold1/train/33443.png +../../data/yoloGtold1/train/33444.png +../../data/yoloGtold1/train/33445.png +../../data/yoloGtold1/train/33446.png +../../data/yoloGtold1/train/33447.png +../../data/yoloGtold1/train/33448.png +../../data/yoloGtold1/train/33449.png +../../data/yoloGtold1/train/33450.png +../../data/yoloGtold1/train/33451.png +../../data/yoloGtold1/train/33452.png +../../data/yoloGtold1/train/33453.png +../../data/yoloGtold1/train/33454.png +../../data/yoloGtold1/train/33455.png +../../data/yoloGtold1/train/33456.png +../../data/yoloGtold1/train/33457.png +../../data/yoloGtold1/train/33458.png +../../data/yoloGtold1/train/33459.png +../../data/yoloGtold1/train/33460.png +../../data/yoloGtold1/train/33461.png +../../data/yoloGtold1/train/33462.png +../../data/yoloGtold1/train/33463.png +../../data/yoloGtold1/train/33464.png +../../data/yoloGtold1/train/33465.png +../../data/yoloGtold1/train/33466.png +../../data/yoloGtold1/train/33467.png +../../data/yoloGtold1/train/33468.png +../../data/yoloGtold1/train/33469.png +../../data/yoloGtold1/train/33470.png +../../data/yoloGtold1/train/33471.png +../../data/yoloGtold1/train/33472.png +../../data/yoloGtold1/train/33473.png +../../data/yoloGtold1/train/33474.png +../../data/yoloGtold1/train/33475.png +../../data/yoloGtold1/train/33476.png +../../data/yoloGtold1/train/33477.png +../../data/yoloGtold1/train/33478.png +../../data/yoloGtold1/train/33479.png +../../data/yoloGtold1/train/33480.png +../../data/yoloGtold1/train/33481.png +../../data/yoloGtold1/train/33482.png +../../data/yoloGtold1/train/33483.png +../../data/yoloGtold1/train/33484.png +../../data/yoloGtold1/train/33485.png +../../data/yoloGtold1/train/33486.png +../../data/yoloGtold1/train/33487.png +../../data/yoloGtold1/train/33488.png +../../data/yoloGtold1/train/33489.png +../../data/yoloGtold1/train/33490.png +../../data/yoloGtold1/train/33491.png +../../data/yoloGtold1/train/33492.png +../../data/yoloGtold1/train/33493.png +../../data/yoloGtold1/train/33494.png +../../data/yoloGtold1/train/33495.png +../../data/yoloGtold1/train/33496.png +../../data/yoloGtold1/train/33497.png +../../data/yoloGtold1/train/33498.png +../../data/yoloGtold1/train/33499.png +../../data/yoloGtold1/train/33500.png +../../data/yoloGtold1/train/33501.png +../../data/yoloGtold1/train/33502.png +../../data/yoloGtold1/train/33503.png +../../data/yoloGtold1/train/33504.png +../../data/yoloGtold1/train/33505.png +../../data/yoloGtold1/train/33506.png +../../data/yoloGtold1/train/33507.png +../../data/yoloGtold1/train/33508.png +../../data/yoloGtold1/train/33509.png +../../data/yoloGtold1/train/33510.png +../../data/yoloGtold1/train/33511.png +../../data/yoloGtold1/train/33512.png +../../data/yoloGtold1/train/33513.png +../../data/yoloGtold1/train/33514.png +../../data/yoloGtold1/train/33515.png +../../data/yoloGtold1/train/33516.png +../../data/yoloGtold1/train/33517.png +../../data/yoloGtold1/train/33518.png +../../data/yoloGtold1/train/33519.png +../../data/yoloGtold1/train/33520.png +../../data/yoloGtold1/train/33521.png +../../data/yoloGtold1/train/33522.png +../../data/yoloGtold1/train/33523.png +../../data/yoloGtold1/train/33524.png +../../data/yoloGtold1/train/33525.png +../../data/yoloGtold1/train/33526.png +../../data/yoloGtold1/train/33527.png +../../data/yoloGtold1/train/33528.png +../../data/yoloGtold1/train/33529.png +../../data/yoloGtold1/train/33530.png +../../data/yoloGtold1/train/33531.png +../../data/yoloGtold1/train/33532.png +../../data/yoloGtold1/train/33533.png +../../data/yoloGtold1/train/33534.png +../../data/yoloGtold1/train/33535.png +../../data/yoloGtold1/train/33536.png +../../data/yoloGtold1/train/33537.png +../../data/yoloGtold1/train/33538.png +../../data/yoloGtold1/train/33539.png +../../data/yoloGtold1/train/33540.png +../../data/yoloGtold1/train/33541.png +../../data/yoloGtold1/train/33542.png +../../data/yoloGtold1/train/33543.png +../../data/yoloGtold1/train/33544.png +../../data/yoloGtold1/train/33545.png +../../data/yoloGtold1/train/33546.png +../../data/yoloGtold1/train/33547.png +../../data/yoloGtold1/train/33548.png +../../data/yoloGtold1/train/33549.png +../../data/yoloGtold1/train/33550.png +../../data/yoloGtold1/train/33551.png +../../data/yoloGtold1/train/33552.png +../../data/yoloGtold1/train/33553.png +../../data/yoloGtold1/train/33554.png +../../data/yoloGtold1/train/33555.png +../../data/yoloGtold1/train/33556.png +../../data/yoloGtold1/train/33557.png +../../data/yoloGtold1/train/33558.png +../../data/yoloGtold1/train/33559.png +../../data/yoloGtold1/train/33560.png +../../data/yoloGtold1/train/33561.png +../../data/yoloGtold1/train/33562.png +../../data/yoloGtold1/train/33563.png +../../data/yoloGtold1/train/33564.png +../../data/yoloGtold1/train/33565.png +../../data/yoloGtold1/train/33566.png +../../data/yoloGtold1/train/33567.png +../../data/yoloGtold1/train/33568.png +../../data/yoloGtold1/train/33569.png +../../data/yoloGtold1/train/33570.png +../../data/yoloGtold1/train/33571.png +../../data/yoloGtold1/train/33572.png +../../data/yoloGtold1/train/33573.png +../../data/yoloGtold1/train/33574.png +../../data/yoloGtold1/train/33575.png +../../data/yoloGtold1/train/33576.png +../../data/yoloGtold1/train/33577.png +../../data/yoloGtold1/train/33578.png +../../data/yoloGtold1/train/33579.png +../../data/yoloGtold1/train/33580.png +../../data/yoloGtold1/train/33581.png +../../data/yoloGtold1/train/33582.png +../../data/yoloGtold1/train/33583.png +../../data/yoloGtold1/train/33584.png +../../data/yoloGtold1/train/33585.png +../../data/yoloGtold1/train/33586.png +../../data/yoloGtold1/train/33587.png +../../data/yoloGtold1/train/33588.png +../../data/yoloGtold1/train/33589.png +../../data/yoloGtold1/train/33590.png +../../data/yoloGtold1/train/33591.png +../../data/yoloGtold1/train/33592.png +../../data/yoloGtold1/train/33593.png +../../data/yoloGtold1/train/33594.png +../../data/yoloGtold1/train/33595.png +../../data/yoloGtold1/train/33596.png +../../data/yoloGtold1/train/33597.png +../../data/yoloGtold1/train/33598.png +../../data/yoloGtold1/train/33599.png +../../data/yoloGtold1/train/33600.png +../../data/yoloGtold1/train/33601.png +../../data/yoloGtold1/train/33602.png +../../data/yoloGtold1/train/33603.png +../../data/yoloGtold1/train/33604.png +../../data/yoloGtold1/train/33605.png +../../data/yoloGtold1/train/33606.png +../../data/yoloGtold1/train/33607.png +../../data/yoloGtold1/train/33608.png +../../data/yoloGtold1/train/33609.png +../../data/yoloGtold1/train/33610.png +../../data/yoloGtold1/train/33611.png +../../data/yoloGtold1/train/33612.png +../../data/yoloGtold1/train/33613.png +../../data/yoloGtold1/train/33614.png +../../data/yoloGtold1/train/33615.png +../../data/yoloGtold1/train/33616.png +../../data/yoloGtold1/train/33617.png +../../data/yoloGtold1/train/33618.png +../../data/yoloGtold1/train/33619.png +../../data/yoloGtold1/train/33620.png +../../data/yoloGtold1/train/33621.png +../../data/yoloGtold1/train/33622.png +../../data/yoloGtold1/train/33623.png +../../data/yoloGtold1/train/33624.png +../../data/yoloGtold1/train/33625.png +../../data/yoloGtold1/train/33626.png +../../data/yoloGtold1/train/33627.png +../../data/yoloGtold1/train/33628.png +../../data/yoloGtold1/train/33629.png +../../data/yoloGtold1/train/33630.png +../../data/yoloGtold1/train/33631.png +../../data/yoloGtold1/train/33632.png +../../data/yoloGtold1/train/33633.png +../../data/yoloGtold1/train/33634.png +../../data/yoloGtold1/train/33635.png +../../data/yoloGtold1/train/33636.png +../../data/yoloGtold1/train/33637.png +../../data/yoloGtold1/train/33638.png +../../data/yoloGtold1/train/33639.png +../../data/yoloGtold1/train/33640.png +../../data/yoloGtold1/train/33641.png +../../data/yoloGtold1/train/33642.png +../../data/yoloGtold1/train/33643.png +../../data/yoloGtold1/train/33644.png +../../data/yoloGtold1/train/33645.png +../../data/yoloGtold1/train/33646.png +../../data/yoloGtold1/train/33647.png +../../data/yoloGtold1/train/33648.png +../../data/yoloGtold1/train/33649.png +../../data/yoloGtold1/train/33650.png +../../data/yoloGtold1/train/33651.png +../../data/yoloGtold1/train/33652.png +../../data/yoloGtold1/train/33653.png +../../data/yoloGtold1/train/33654.png +../../data/yoloGtold1/train/33655.png +../../data/yoloGtold1/train/33656.png +../../data/yoloGtold1/train/33657.png +../../data/yoloGtold1/train/33658.png +../../data/yoloGtold1/train/33659.png +../../data/yoloGtold1/train/33660.png +../../data/yoloGtold1/train/33661.png +../../data/yoloGtold1/train/33662.png +../../data/yoloGtold1/train/33663.png +../../data/yoloGtold1/train/33664.png +../../data/yoloGtold1/train/33665.png +../../data/yoloGtold1/train/33666.png +../../data/yoloGtold1/train/33667.png +../../data/yoloGtold1/train/33668.png +../../data/yoloGtold1/train/33669.png +../../data/yoloGtold1/train/33670.png +../../data/yoloGtold1/train/33671.png +../../data/yoloGtold1/train/33672.png +../../data/yoloGtold1/train/33673.png +../../data/yoloGtold1/train/33674.png +../../data/yoloGtold1/train/33675.png +../../data/yoloGtold1/train/33676.png +../../data/yoloGtold1/train/33677.png +../../data/yoloGtold1/train/33678.png +../../data/yoloGtold1/train/33679.png +../../data/yoloGtold1/train/33680.png +../../data/yoloGtold1/train/33681.png +../../data/yoloGtold1/train/33682.png +../../data/yoloGtold1/train/33683.png +../../data/yoloGtold1/train/33684.png +../../data/yoloGtold1/train/33685.png +../../data/yoloGtold1/train/33686.png +../../data/yoloGtold1/train/33687.png +../../data/yoloGtold1/train/33688.png +../../data/yoloGtold1/train/33689.png +../../data/yoloGtold1/train/33690.png +../../data/yoloGtold1/train/33691.png +../../data/yoloGtold1/train/33692.png +../../data/yoloGtold1/train/33693.png +../../data/yoloGtold1/train/33694.png +../../data/yoloGtold1/train/33695.png +../../data/yoloGtold1/train/33696.png +../../data/yoloGtold1/train/33697.png +../../data/yoloGtold1/train/33698.png +../../data/yoloGtold1/train/33699.png +../../data/yoloGtold1/train/33700.png +../../data/yoloGtold1/train/33701.png +../../data/yoloGtold1/train/33702.png +../../data/yoloGtold1/train/33703.png +../../data/yoloGtold1/train/33704.png +../../data/yoloGtold1/train/33705.png +../../data/yoloGtold1/train/33706.png +../../data/yoloGtold1/train/33707.png +../../data/yoloGtold1/train/33708.png +../../data/yoloGtold1/train/33709.png +../../data/yoloGtold1/train/33710.png +../../data/yoloGtold1/train/33711.png +../../data/yoloGtold1/train/33712.png +../../data/yoloGtold1/train/33713.png +../../data/yoloGtold1/train/33714.png +../../data/yoloGtold1/train/33715.png +../../data/yoloGtold1/train/33716.png +../../data/yoloGtold1/train/33717.png +../../data/yoloGtold1/train/33718.png +../../data/yoloGtold1/train/33719.png +../../data/yoloGtold1/train/33720.png +../../data/yoloGtold1/train/33721.png +../../data/yoloGtold1/train/33722.png +../../data/yoloGtold1/train/33723.png +../../data/yoloGtold1/train/33724.png +../../data/yoloGtold1/train/33725.png +../../data/yoloGtold1/train/33726.png +../../data/yoloGtold1/train/33727.png +../../data/yoloGtold1/train/33728.png +../../data/yoloGtold1/train/33729.png +../../data/yoloGtold1/train/33730.png +../../data/yoloGtold1/train/33731.png +../../data/yoloGtold1/train/33732.png +../../data/yoloGtold1/train/33733.png +../../data/yoloGtold1/train/33734.png +../../data/yoloGtold1/train/33735.png +../../data/yoloGtold1/train/33736.png +../../data/yoloGtold1/train/33737.png +../../data/yoloGtold1/train/33738.png +../../data/yoloGtold1/train/33739.png +../../data/yoloGtold1/train/33740.png +../../data/yoloGtold1/train/33741.png +../../data/yoloGtold1/train/33742.png +../../data/yoloGtold1/train/33743.png +../../data/yoloGtold1/train/33744.png +../../data/yoloGtold1/train/33745.png +../../data/yoloGtold1/train/33746.png +../../data/yoloGtold1/train/33747.png +../../data/yoloGtold1/train/33748.png +../../data/yoloGtold1/train/33749.png +../../data/yoloGtold1/train/33750.png +../../data/yoloGtold1/train/33751.png +../../data/yoloGtold1/train/33752.png +../../data/yoloGtold1/train/33753.png +../../data/yoloGtold1/train/33754.png +../../data/yoloGtold1/train/33755.png +../../data/yoloGtold1/train/33756.png +../../data/yoloGtold1/train/33757.png +../../data/yoloGtold1/train/33758.png +../../data/yoloGtold1/train/33759.png +../../data/yoloGtold1/train/33760.png +../../data/yoloGtold1/train/33761.png +../../data/yoloGtold1/train/33762.png +../../data/yoloGtold1/train/33763.png +../../data/yoloGtold1/train/33764.png +../../data/yoloGtold1/train/33765.png +../../data/yoloGtold1/train/33766.png +../../data/yoloGtold1/train/33767.png +../../data/yoloGtold1/train/33768.png +../../data/yoloGtold1/train/33769.png +../../data/yoloGtold1/train/33770.png +../../data/yoloGtold1/train/33771.png +../../data/yoloGtold1/train/33772.png +../../data/yoloGtold1/train/33773.png +../../data/yoloGtold1/train/33774.png +../../data/yoloGtold1/train/33775.png +../../data/yoloGtold1/train/33776.png +../../data/yoloGtold1/train/33777.png +../../data/yoloGtold1/train/33778.png +../../data/yoloGtold1/train/33779.png +../../data/yoloGtold1/train/33780.png +../../data/yoloGtold1/train/33781.png +../../data/yoloGtold1/train/33782.png +../../data/yoloGtold1/train/33783.png +../../data/yoloGtold1/train/33784.png +../../data/yoloGtold1/train/33785.png +../../data/yoloGtold1/train/33786.png +../../data/yoloGtold1/train/33787.png +../../data/yoloGtold1/train/33788.png +../../data/yoloGtold1/train/33789.png +../../data/yoloGtold1/train/33790.png +../../data/yoloGtold1/train/33791.png +../../data/yoloGtold1/train/33792.png +../../data/yoloGtold1/train/33793.png +../../data/yoloGtold1/train/33794.png +../../data/yoloGtold1/train/33795.png +../../data/yoloGtold1/train/33796.png +../../data/yoloGtold1/train/33797.png +../../data/yoloGtold1/train/33798.png +../../data/yoloGtold1/train/33799.png +../../data/yoloGtold1/train/33800.png +../../data/yoloGtold1/train/33801.png +../../data/yoloGtold1/train/33802.png +../../data/yoloGtold1/train/33803.png +../../data/yoloGtold1/train/33804.png +../../data/yoloGtold1/train/33805.png +../../data/yoloGtold1/train/33806.png +../../data/yoloGtold1/train/33807.png +../../data/yoloGtold1/train/33808.png +../../data/yoloGtold1/train/33809.png +../../data/yoloGtold1/train/33810.png +../../data/yoloGtold1/train/33811.png +../../data/yoloGtold1/train/33812.png +../../data/yoloGtold1/train/33813.png +../../data/yoloGtold1/train/33814.png +../../data/yoloGtold1/train/33815.png +../../data/yoloGtold1/train/33816.png +../../data/yoloGtold1/train/33817.png +../../data/yoloGtold1/train/33818.png +../../data/yoloGtold1/train/33819.png +../../data/yoloGtold1/train/33820.png +../../data/yoloGtold1/train/33821.png +../../data/yoloGtold1/train/33822.png +../../data/yoloGtold1/train/33823.png +../../data/yoloGtold1/train/33824.png +../../data/yoloGtold1/train/33825.png +../../data/yoloGtold1/train/33826.png +../../data/yoloGtold1/train/33827.png +../../data/yoloGtold1/train/33828.png +../../data/yoloGtold1/train/33829.png +../../data/yoloGtold1/train/33830.png +../../data/yoloGtold1/train/33831.png +../../data/yoloGtold1/train/33832.png +../../data/yoloGtold1/train/33833.png +../../data/yoloGtold1/train/33834.png +../../data/yoloGtold1/train/33835.png +../../data/yoloGtold1/train/33836.png +../../data/yoloGtold1/train/33837.png +../../data/yoloGtold1/train/33838.png +../../data/yoloGtold1/train/33839.png +../../data/yoloGtold1/train/33840.png +../../data/yoloGtold1/train/33841.png +../../data/yoloGtold1/train/33842.png +../../data/yoloGtold1/train/33843.png +../../data/yoloGtold1/train/33844.png +../../data/yoloGtold1/train/33845.png +../../data/yoloGtold1/train/33846.png +../../data/yoloGtold1/train/33847.png +../../data/yoloGtold1/train/33848.png +../../data/yoloGtold1/train/33849.png +../../data/yoloGtold1/train/33850.png +../../data/yoloGtold1/train/33851.png +../../data/yoloGtold1/train/33852.png +../../data/yoloGtold1/train/33853.png +../../data/yoloGtold1/train/33854.png +../../data/yoloGtold1/train/33855.png +../../data/yoloGtold1/train/33856.png +../../data/yoloGtold1/train/33857.png +../../data/yoloGtold1/train/33858.png +../../data/yoloGtold1/train/33859.png +../../data/yoloGtold1/train/33860.png +../../data/yoloGtold1/train/33861.png +../../data/yoloGtold1/train/33862.png +../../data/yoloGtold1/train/33863.png +../../data/yoloGtold1/train/33864.png +../../data/yoloGtold1/train/33865.png +../../data/yoloGtold1/train/33866.png +../../data/yoloGtold1/train/33867.png +../../data/yoloGtold1/train/33868.png +../../data/yoloGtold1/train/33869.png +../../data/yoloGtold1/train/33870.png +../../data/yoloGtold1/train/33871.png +../../data/yoloGtold1/train/33872.png +../../data/yoloGtold1/train/33873.png +../../data/yoloGtold1/train/33874.png +../../data/yoloGtold1/train/33875.png +../../data/yoloGtold1/train/33876.png +../../data/yoloGtold1/train/33877.png +../../data/yoloGtold1/train/33878.png +../../data/yoloGtold1/train/33879.png +../../data/yoloGtold1/train/33880.png +../../data/yoloGtold1/train/33881.png +../../data/yoloGtold1/train/33882.png +../../data/yoloGtold1/train/33883.png +../../data/yoloGtold1/train/33884.png +../../data/yoloGtold1/train/33885.png +../../data/yoloGtold1/train/33886.png +../../data/yoloGtold1/train/33887.png +../../data/yoloGtold1/train/33888.png +../../data/yoloGtold1/train/33889.png +../../data/yoloGtold1/train/33890.png +../../data/yoloGtold1/train/33891.png +../../data/yoloGtold1/train/33892.png +../../data/yoloGtold1/train/33893.png +../../data/yoloGtold1/train/33894.png +../../data/yoloGtold1/train/33895.png +../../data/yoloGtold1/train/33896.png +../../data/yoloGtold1/train/33897.png +../../data/yoloGtold1/train/33898.png +../../data/yoloGtold1/train/33899.png +../../data/yoloGtold1/train/33900.png +../../data/yoloGtold1/train/33901.png +../../data/yoloGtold1/train/33902.png +../../data/yoloGtold1/train/33903.png +../../data/yoloGtold1/train/33904.png +../../data/yoloGtold1/train/33905.png +../../data/yoloGtold1/train/33906.png +../../data/yoloGtold1/train/33907.png +../../data/yoloGtold1/train/33908.png +../../data/yoloGtold1/train/33909.png +../../data/yoloGtold1/train/33910.png +../../data/yoloGtold1/train/33911.png +../../data/yoloGtold1/train/33912.png +../../data/yoloGtold1/train/33913.png +../../data/yoloGtold1/train/33914.png +../../data/yoloGtold1/train/33915.png +../../data/yoloGtold1/train/33916.png +../../data/yoloGtold1/train/33917.png +../../data/yoloGtold1/train/33918.png +../../data/yoloGtold1/train/33919.png +../../data/yoloGtold1/train/33920.png +../../data/yoloGtold1/train/33921.png +../../data/yoloGtold1/train/33922.png +../../data/yoloGtold1/train/33923.png +../../data/yoloGtold1/train/33924.png +../../data/yoloGtold1/train/33925.png +../../data/yoloGtold1/train/33926.png +../../data/yoloGtold1/train/33927.png +../../data/yoloGtold1/train/33928.png +../../data/yoloGtold1/train/33929.png +../../data/yoloGtold1/train/33930.png +../../data/yoloGtold1/train/33931.png +../../data/yoloGtold1/train/33932.png +../../data/yoloGtold1/train/33933.png +../../data/yoloGtold1/train/33934.png +../../data/yoloGtold1/train/33935.png +../../data/yoloGtold1/train/33936.png +../../data/yoloGtold1/train/33937.png +../../data/yoloGtold1/train/33938.png +../../data/yoloGtold1/train/33939.png +../../data/yoloGtold1/train/33940.png +../../data/yoloGtold1/train/33941.png +../../data/yoloGtold1/train/33942.png +../../data/yoloGtold1/train/33943.png +../../data/yoloGtold1/train/33944.png +../../data/yoloGtold1/train/33945.png +../../data/yoloGtold1/train/33946.png +../../data/yoloGtold1/train/33947.png +../../data/yoloGtold1/train/33948.png +../../data/yoloGtold1/train/33949.png +../../data/yoloGtold1/train/33950.png +../../data/yoloGtold1/train/33951.png +../../data/yoloGtold1/train/33952.png +../../data/yoloGtold1/train/33953.png +../../data/yoloGtold1/train/33954.png +../../data/yoloGtold1/train/33955.png +../../data/yoloGtold1/train/33956.png +../../data/yoloGtold1/train/33957.png +../../data/yoloGtold1/train/33958.png +../../data/yoloGtold1/train/33959.png +../../data/yoloGtold1/train/33960.png +../../data/yoloGtold1/train/33961.png +../../data/yoloGtold1/train/33962.png +../../data/yoloGtold1/train/33963.png +../../data/yoloGtold1/train/33964.png +../../data/yoloGtold1/train/33965.png +../../data/yoloGtold1/train/33966.png +../../data/yoloGtold1/train/33967.png +../../data/yoloGtold1/train/33968.png +../../data/yoloGtold1/train/33969.png +../../data/yoloGtold1/train/33970.png +../../data/yoloGtold1/train/33971.png +../../data/yoloGtold1/train/33972.png +../../data/yoloGtold1/train/33973.png +../../data/yoloGtold1/train/33974.png +../../data/yoloGtold1/train/33975.png +../../data/yoloGtold1/train/33976.png +../../data/yoloGtold1/train/33977.png +../../data/yoloGtold1/train/33978.png +../../data/yoloGtold1/train/33979.png +../../data/yoloGtold1/train/33980.png +../../data/yoloGtold1/train/33981.png +../../data/yoloGtold1/train/33982.png +../../data/yoloGtold1/train/33983.png +../../data/yoloGtold1/train/33984.png +../../data/yoloGtold1/train/33985.png +../../data/yoloGtold1/train/33986.png +../../data/yoloGtold1/train/33987.png +../../data/yoloGtold1/train/33988.png +../../data/yoloGtold1/train/33989.png +../../data/yoloGtold1/train/33990.png +../../data/yoloGtold1/train/33991.png +../../data/yoloGtold1/train/33992.png +../../data/yoloGtold1/train/33993.png +../../data/yoloGtold1/train/33994.png +../../data/yoloGtold1/train/33995.png +../../data/yoloGtold1/train/33996.png +../../data/yoloGtold1/train/33997.png +../../data/yoloGtold1/train/33998.png +../../data/yoloGtold1/train/33999.png +../../data/yoloGtold1/train/34000.png +../../data/yoloGtold1/train/34001.png +../../data/yoloGtold1/train/34002.png +../../data/yoloGtold1/train/34003.png +../../data/yoloGtold1/train/34004.png +../../data/yoloGtold1/train/34005.png +../../data/yoloGtold1/train/34006.png +../../data/yoloGtold1/train/34007.png +../../data/yoloGtold1/train/34008.png +../../data/yoloGtold1/train/34009.png +../../data/yoloGtold1/train/34010.png +../../data/yoloGtold1/train/34011.png +../../data/yoloGtold1/train/34012.png +../../data/yoloGtold1/train/34013.png +../../data/yoloGtold1/train/34014.png +../../data/yoloGtold1/train/34015.png +../../data/yoloGtold1/train/34016.png +../../data/yoloGtold1/train/34017.png +../../data/yoloGtold1/train/34018.png +../../data/yoloGtold1/train/34019.png +../../data/yoloGtold1/train/34020.png +../../data/yoloGtold1/train/34021.png +../../data/yoloGtold1/train/34022.png +../../data/yoloGtold1/train/34023.png +../../data/yoloGtold1/train/34024.png +../../data/yoloGtold1/train/34025.png +../../data/yoloGtold1/train/34026.png +../../data/yoloGtold1/train/34027.png +../../data/yoloGtold1/train/34028.png +../../data/yoloGtold1/train/34029.png +../../data/yoloGtold1/train/34030.png +../../data/yoloGtold1/train/34031.png +../../data/yoloGtold1/train/34032.png +../../data/yoloGtold1/train/34033.png +../../data/yoloGtold1/train/34034.png +../../data/yoloGtold1/train/34035.png +../../data/yoloGtold1/train/34036.png +../../data/yoloGtold1/train/34037.png +../../data/yoloGtold1/train/34038.png +../../data/yoloGtold1/train/34039.png +../../data/yoloGtold1/train/34040.png +../../data/yoloGtold1/train/34041.png +../../data/yoloGtold1/train/34042.png +../../data/yoloGtold1/train/34043.png +../../data/yoloGtold1/train/34044.png +../../data/yoloGtold1/train/34045.png +../../data/yoloGtold1/train/34046.png +../../data/yoloGtold1/train/34047.png +../../data/yoloGtold1/train/34048.png +../../data/yoloGtold1/train/34049.png +../../data/yoloGtold1/train/34050.png +../../data/yoloGtold1/train/34051.png +../../data/yoloGtold1/train/34052.png +../../data/yoloGtold1/train/34053.png +../../data/yoloGtold1/train/34054.png +../../data/yoloGtold1/train/34055.png +../../data/yoloGtold1/train/34056.png +../../data/yoloGtold1/train/34057.png +../../data/yoloGtold1/train/34058.png +../../data/yoloGtold1/train/34059.png +../../data/yoloGtold1/train/34060.png +../../data/yoloGtold1/train/34061.png +../../data/yoloGtold1/train/34062.png +../../data/yoloGtold1/train/34063.png +../../data/yoloGtold1/train/34064.png +../../data/yoloGtold1/train/34065.png +../../data/yoloGtold1/train/34066.png +../../data/yoloGtold1/train/34067.png +../../data/yoloGtold1/train/34068.png +../../data/yoloGtold1/train/34069.png +../../data/yoloGtold1/train/34070.png +../../data/yoloGtold1/train/34071.png +../../data/yoloGtold1/train/34072.png +../../data/yoloGtold1/train/34073.png +../../data/yoloGtold1/train/34074.png +../../data/yoloGtold1/train/34075.png +../../data/yoloGtold1/train/34076.png +../../data/yoloGtold1/train/34077.png +../../data/yoloGtold1/train/34078.png +../../data/yoloGtold1/train/34079.png +../../data/yoloGtold1/train/34080.png +../../data/yoloGtold1/train/34081.png +../../data/yoloGtold1/train/34082.png +../../data/yoloGtold1/train/34083.png +../../data/yoloGtold1/train/34084.png +../../data/yoloGtold1/train/34085.png +../../data/yoloGtold1/train/34086.png +../../data/yoloGtold1/train/34087.png +../../data/yoloGtold1/train/34088.png +../../data/yoloGtold1/train/34089.png +../../data/yoloGtold1/train/34090.png +../../data/yoloGtold1/train/34091.png +../../data/yoloGtold1/train/34092.png +../../data/yoloGtold1/train/34093.png +../../data/yoloGtold1/train/34094.png +../../data/yoloGtold1/train/34095.png +../../data/yoloGtold1/train/34096.png +../../data/yoloGtold1/train/34097.png +../../data/yoloGtold1/train/34098.png +../../data/yoloGtold1/train/34099.png +../../data/yoloGtold1/train/34100.png +../../data/yoloGtold1/train/34101.png +../../data/yoloGtold1/train/34102.png +../../data/yoloGtold1/train/34103.png +../../data/yoloGtold1/train/34104.png +../../data/yoloGtold1/train/34105.png +../../data/yoloGtold1/train/34106.png +../../data/yoloGtold1/train/34107.png +../../data/yoloGtold1/train/34108.png +../../data/yoloGtold1/train/34109.png +../../data/yoloGtold1/train/34110.png +../../data/yoloGtold1/train/34111.png +../../data/yoloGtold1/train/34112.png +../../data/yoloGtold1/train/34113.png +../../data/yoloGtold1/train/34114.png +../../data/yoloGtold1/train/34115.png +../../data/yoloGtold1/train/34116.png +../../data/yoloGtold1/train/34117.png +../../data/yoloGtold1/train/34118.png +../../data/yoloGtold1/train/34119.png +../../data/yoloGtold1/train/34120.png +../../data/yoloGtold1/train/34121.png +../../data/yoloGtold1/train/34122.png +../../data/yoloGtold1/train/34123.png +../../data/yoloGtold1/train/34124.png +../../data/yoloGtold1/train/34125.png +../../data/yoloGtold1/train/34126.png +../../data/yoloGtold1/train/34127.png +../../data/yoloGtold1/train/34128.png +../../data/yoloGtold1/train/34129.png +../../data/yoloGtold1/train/34130.png +../../data/yoloGtold1/train/34131.png +../../data/yoloGtold1/train/34132.png +../../data/yoloGtold1/train/34133.png +../../data/yoloGtold1/train/34134.png +../../data/yoloGtold1/train/34135.png +../../data/yoloGtold1/train/34136.png +../../data/yoloGtold1/train/34137.png +../../data/yoloGtold1/train/34138.png +../../data/yoloGtold1/train/34139.png +../../data/yoloGtold1/train/34140.png +../../data/yoloGtold1/train/34141.png +../../data/yoloGtold1/train/34142.png +../../data/yoloGtold1/train/34143.png +../../data/yoloGtold1/train/34144.png +../../data/yoloGtold1/train/34145.png +../../data/yoloGtold1/train/34146.png +../../data/yoloGtold1/train/34147.png +../../data/yoloGtold1/train/34148.png +../../data/yoloGtold1/train/34149.png +../../data/yoloGtold1/train/34150.png +../../data/yoloGtold1/train/34151.png +../../data/yoloGtold1/train/34152.png +../../data/yoloGtold1/train/34153.png +../../data/yoloGtold1/train/34154.png +../../data/yoloGtold1/train/34155.png +../../data/yoloGtold1/train/34156.png +../../data/yoloGtold1/train/34157.png +../../data/yoloGtold1/train/34158.png +../../data/yoloGtold1/train/34159.png +../../data/yoloGtold1/train/34160.png +../../data/yoloGtold1/train/34161.png +../../data/yoloGtold1/train/34162.png +../../data/yoloGtold1/train/34163.png +../../data/yoloGtold1/train/34164.png +../../data/yoloGtold1/train/34165.png +../../data/yoloGtold1/train/34166.png +../../data/yoloGtold1/train/34167.png +../../data/yoloGtold1/train/34168.png +../../data/yoloGtold1/train/34169.png +../../data/yoloGtold1/train/34170.png +../../data/yoloGtold1/train/34171.png +../../data/yoloGtold1/train/34172.png +../../data/yoloGtold1/train/34173.png +../../data/yoloGtold1/train/34174.png +../../data/yoloGtold1/train/34175.png +../../data/yoloGtold1/train/34176.png +../../data/yoloGtold1/train/34177.png +../../data/yoloGtold1/train/34178.png +../../data/yoloGtold1/train/34179.png +../../data/yoloGtold1/train/34180.png +../../data/yoloGtold1/train/34181.png +../../data/yoloGtold1/train/34182.png +../../data/yoloGtold1/train/34183.png +../../data/yoloGtold1/train/34184.png +../../data/yoloGtold1/train/34185.png +../../data/yoloGtold1/train/34186.png +../../data/yoloGtold1/train/34187.png +../../data/yoloGtold1/train/34188.png +../../data/yoloGtold1/train/34189.png +../../data/yoloGtold1/train/34190.png +../../data/yoloGtold1/train/34191.png +../../data/yoloGtold1/train/34192.png +../../data/yoloGtold1/train/34193.png +../../data/yoloGtold1/train/34194.png +../../data/yoloGtold1/train/34195.png +../../data/yoloGtold1/train/34196.png +../../data/yoloGtold1/train/34197.png +../../data/yoloGtold1/train/34198.png +../../data/yoloGtold1/train/34199.png +../../data/yoloGtold1/train/34200.png +../../data/yoloGtold1/train/34201.png +../../data/yoloGtold1/train/34202.png +../../data/yoloGtold1/train/34203.png +../../data/yoloGtold1/train/34204.png +../../data/yoloGtold1/train/34205.png +../../data/yoloGtold1/train/34206.png +../../data/yoloGtold1/train/34207.png +../../data/yoloGtold1/train/34208.png +../../data/yoloGtold1/train/34209.png +../../data/yoloGtold1/train/34210.png +../../data/yoloGtold1/train/34211.png +../../data/yoloGtold1/train/34212.png +../../data/yoloGtold1/train/34213.png +../../data/yoloGtold1/train/34214.png +../../data/yoloGtold1/train/34215.png +../../data/yoloGtold1/train/34216.png +../../data/yoloGtold1/train/34217.png +../../data/yoloGtold1/train/34218.png +../../data/yoloGtold1/train/34219.png +../../data/yoloGtold1/train/34220.png +../../data/yoloGtold1/train/34221.png +../../data/yoloGtold1/train/34222.png +../../data/yoloGtold1/train/34223.png +../../data/yoloGtold1/train/34224.png +../../data/yoloGtold1/train/34225.png +../../data/yoloGtold1/train/34226.png +../../data/yoloGtold1/train/34227.png +../../data/yoloGtold1/train/34228.png +../../data/yoloGtold1/train/34229.png +../../data/yoloGtold1/train/34230.png +../../data/yoloGtold1/train/34231.png +../../data/yoloGtold1/train/34232.png +../../data/yoloGtold1/train/34233.png +../../data/yoloGtold1/train/34234.png +../../data/yoloGtold1/train/34235.png +../../data/yoloGtold1/train/34236.png +../../data/yoloGtold1/train/34237.png +../../data/yoloGtold1/train/34238.png +../../data/yoloGtold1/train/34239.png +../../data/yoloGtold1/train/34240.png +../../data/yoloGtold1/train/34241.png +../../data/yoloGtold1/train/34242.png +../../data/yoloGtold1/train/34243.png +../../data/yoloGtold1/train/34244.png +../../data/yoloGtold1/train/34245.png +../../data/yoloGtold1/train/34246.png +../../data/yoloGtold1/train/34247.png +../../data/yoloGtold1/train/34248.png +../../data/yoloGtold1/train/34249.png +../../data/yoloGtold1/train/34250.png +../../data/yoloGtold1/train/34251.png +../../data/yoloGtold1/train/34252.png +../../data/yoloGtold1/train/34253.png +../../data/yoloGtold1/train/34254.png +../../data/yoloGtold1/train/34255.png +../../data/yoloGtold1/train/34256.png +../../data/yoloGtold1/train/34257.png +../../data/yoloGtold1/train/34258.png +../../data/yoloGtold1/train/34259.png +../../data/yoloGtold1/train/34260.png +../../data/yoloGtold1/train/34261.png +../../data/yoloGtold1/train/34262.png +../../data/yoloGtold1/train/34263.png +../../data/yoloGtold1/train/34264.png +../../data/yoloGtold1/train/34265.png +../../data/yoloGtold1/train/34266.png +../../data/yoloGtold1/train/34267.png +../../data/yoloGtold1/train/34268.png +../../data/yoloGtold1/train/34269.png +../../data/yoloGtold1/train/34270.png +../../data/yoloGtold1/train/34271.png +../../data/yoloGtold1/train/34272.png +../../data/yoloGtold1/train/34273.png +../../data/yoloGtold1/train/34274.png +../../data/yoloGtold1/train/34275.png +../../data/yoloGtold1/train/34276.png +../../data/yoloGtold1/train/34277.png +../../data/yoloGtold1/train/34278.png +../../data/yoloGtold1/train/34279.png +../../data/yoloGtold1/train/34280.png +../../data/yoloGtold1/train/34281.png +../../data/yoloGtold1/train/34282.png +../../data/yoloGtold1/train/34283.png +../../data/yoloGtold1/train/34284.png +../../data/yoloGtold1/train/34285.png +../../data/yoloGtold1/train/34286.png +../../data/yoloGtold1/train/34287.png +../../data/yoloGtold1/train/34288.png +../../data/yoloGtold1/train/34289.png +../../data/yoloGtold1/train/34290.png +../../data/yoloGtold1/train/34291.png +../../data/yoloGtold1/train/34292.png +../../data/yoloGtold1/train/34293.png +../../data/yoloGtold1/train/34294.png +../../data/yoloGtold1/train/34295.png +../../data/yoloGtold1/train/34296.png +../../data/yoloGtold1/train/34297.png +../../data/yoloGtold1/train/34298.png +../../data/yoloGtold1/train/34299.png +../../data/yoloGtold1/train/34300.png +../../data/yoloGtold1/train/34301.png +../../data/yoloGtold1/train/34302.png +../../data/yoloGtold1/train/34303.png +../../data/yoloGtold1/train/34304.png +../../data/yoloGtold1/train/34305.png +../../data/yoloGtold1/train/34306.png +../../data/yoloGtold1/train/34307.png +../../data/yoloGtold1/train/34308.png +../../data/yoloGtold1/train/34309.png +../../data/yoloGtold1/train/34310.png +../../data/yoloGtold1/train/34311.png +../../data/yoloGtold1/train/34312.png +../../data/yoloGtold1/train/34313.png +../../data/yoloGtold1/train/34314.png +../../data/yoloGtold1/train/34315.png +../../data/yoloGtold1/train/34316.png +../../data/yoloGtold1/train/34317.png +../../data/yoloGtold1/train/34318.png +../../data/yoloGtold1/train/34319.png +../../data/yoloGtold1/train/34320.png +../../data/yoloGtold1/train/34321.png +../../data/yoloGtold1/train/34322.png +../../data/yoloGtold1/train/34323.png +../../data/yoloGtold1/train/34324.png +../../data/yoloGtold1/train/34325.png +../../data/yoloGtold1/train/34326.png +../../data/yoloGtold1/train/34327.png +../../data/yoloGtold1/train/34328.png +../../data/yoloGtold1/train/34329.png +../../data/yoloGtold1/train/34330.png +../../data/yoloGtold1/train/34331.png +../../data/yoloGtold1/train/34332.png +../../data/yoloGtold1/train/34333.png +../../data/yoloGtold1/train/34334.png +../../data/yoloGtold1/train/34335.png +../../data/yoloGtold1/train/34336.png +../../data/yoloGtold1/train/34337.png +../../data/yoloGtold1/train/34338.png +../../data/yoloGtold1/train/34339.png +../../data/yoloGtold1/train/34340.png +../../data/yoloGtold1/train/34341.png +../../data/yoloGtold1/train/34342.png +../../data/yoloGtold1/train/34343.png +../../data/yoloGtold1/train/34344.png +../../data/yoloGtold1/train/34345.png +../../data/yoloGtold1/train/34346.png +../../data/yoloGtold1/train/34347.png +../../data/yoloGtold1/train/34348.png +../../data/yoloGtold1/train/34349.png +../../data/yoloGtold1/train/34350.png +../../data/yoloGtold1/train/34351.png +../../data/yoloGtold1/train/34352.png +../../data/yoloGtold1/train/34353.png +../../data/yoloGtold1/train/34354.png +../../data/yoloGtold1/train/34355.png +../../data/yoloGtold1/train/34356.png +../../data/yoloGtold1/train/34357.png +../../data/yoloGtold1/train/34358.png +../../data/yoloGtold1/train/34359.png +../../data/yoloGtold1/train/34360.png +../../data/yoloGtold1/train/34361.png +../../data/yoloGtold1/train/34362.png +../../data/yoloGtold1/train/34363.png +../../data/yoloGtold1/train/34364.png +../../data/yoloGtold1/train/34365.png +../../data/yoloGtold1/train/34366.png +../../data/yoloGtold1/train/34367.png +../../data/yoloGtold1/train/34368.png +../../data/yoloGtold1/train/34369.png +../../data/yoloGtold1/train/34370.png +../../data/yoloGtold1/train/34371.png +../../data/yoloGtold1/train/34372.png +../../data/yoloGtold1/train/34373.png +../../data/yoloGtold1/train/34374.png +../../data/yoloGtold1/train/34375.png +../../data/yoloGtold1/train/34376.png +../../data/yoloGtold1/train/34377.png +../../data/yoloGtold1/train/34378.png +../../data/yoloGtold1/train/34379.png +../../data/yoloGtold1/train/34380.png +../../data/yoloGtold1/train/34381.png +../../data/yoloGtold1/train/34382.png +../../data/yoloGtold1/train/34383.png +../../data/yoloGtold1/train/34384.png +../../data/yoloGtold1/train/34385.png +../../data/yoloGtold1/train/34386.png +../../data/yoloGtold1/train/34387.png +../../data/yoloGtold1/train/34388.png +../../data/yoloGtold1/train/34389.png +../../data/yoloGtold1/train/34390.png +../../data/yoloGtold1/train/34391.png +../../data/yoloGtold1/train/34392.png +../../data/yoloGtold1/train/34393.png +../../data/yoloGtold1/train/34394.png +../../data/yoloGtold1/train/34395.png +../../data/yoloGtold1/train/34396.png +../../data/yoloGtold1/train/34397.png +../../data/yoloGtold1/train/34398.png +../../data/yoloGtold1/train/34399.png +../../data/yoloGtold1/train/34400.png +../../data/yoloGtold1/train/34401.png +../../data/yoloGtold1/train/34402.png +../../data/yoloGtold1/train/34403.png +../../data/yoloGtold1/train/34404.png +../../data/yoloGtold1/train/34405.png +../../data/yoloGtold1/train/34406.png +../../data/yoloGtold1/train/34407.png +../../data/yoloGtold1/train/34408.png +../../data/yoloGtold1/train/34409.png +../../data/yoloGtold1/train/34410.png +../../data/yoloGtold1/train/34411.png +../../data/yoloGtold1/train/34412.png +../../data/yoloGtold1/train/34413.png +../../data/yoloGtold1/train/34414.png +../../data/yoloGtold1/train/34415.png +../../data/yoloGtold1/train/34416.png +../../data/yoloGtold1/train/34417.png +../../data/yoloGtold1/train/34418.png +../../data/yoloGtold1/train/34419.png +../../data/yoloGtold1/train/34420.png +../../data/yoloGtold1/train/34421.png +../../data/yoloGtold1/train/34422.png +../../data/yoloGtold1/train/34423.png +../../data/yoloGtold1/train/34424.png +../../data/yoloGtold1/train/34425.png +../../data/yoloGtold1/train/34426.png +../../data/yoloGtold1/train/34427.png +../../data/yoloGtold1/train/34428.png +../../data/yoloGtold1/train/34429.png +../../data/yoloGtold1/train/34430.png +../../data/yoloGtold1/train/34431.png +../../data/yoloGtold1/train/34432.png +../../data/yoloGtold1/train/34433.png +../../data/yoloGtold1/train/34434.png +../../data/yoloGtold1/train/34435.png +../../data/yoloGtold1/train/34436.png +../../data/yoloGtold1/train/34437.png +../../data/yoloGtold1/train/34438.png +../../data/yoloGtold1/train/34439.png +../../data/yoloGtold1/train/34440.png +../../data/yoloGtold1/train/34441.png +../../data/yoloGtold1/train/34442.png +../../data/yoloGtold1/train/34443.png +../../data/yoloGtold1/train/34444.png +../../data/yoloGtold1/train/34445.png +../../data/yoloGtold1/train/34446.png +../../data/yoloGtold1/train/34447.png +../../data/yoloGtold1/train/34448.png +../../data/yoloGtold1/train/34449.png +../../data/yoloGtold1/train/34450.png +../../data/yoloGtold1/train/34451.png +../../data/yoloGtold1/train/34452.png +../../data/yoloGtold1/train/34453.png +../../data/yoloGtold1/train/34454.png +../../data/yoloGtold1/train/34455.png +../../data/yoloGtold1/train/34456.png +../../data/yoloGtold1/train/34457.png +../../data/yoloGtold1/train/34458.png +../../data/yoloGtold1/train/34459.png +../../data/yoloGtold1/train/34460.png +../../data/yoloGtold1/train/34461.png +../../data/yoloGtold1/train/34462.png +../../data/yoloGtold1/train/34463.png +../../data/yoloGtold1/train/34464.png +../../data/yoloGtold1/train/34465.png +../../data/yoloGtold1/train/34466.png +../../data/yoloGtold1/train/34467.png +../../data/yoloGtold1/train/34468.png +../../data/yoloGtold1/train/34469.png +../../data/yoloGtold1/train/34470.png +../../data/yoloGtold1/train/34471.png +../../data/yoloGtold1/train/34472.png +../../data/yoloGtold1/train/34473.png +../../data/yoloGtold1/train/34474.png +../../data/yoloGtold1/train/34475.png +../../data/yoloGtold1/train/34476.png +../../data/yoloGtold1/train/34477.png +../../data/yoloGtold1/train/34478.png +../../data/yoloGtold1/train/34479.png +../../data/yoloGtold1/train/34480.png +../../data/yoloGtold1/train/34481.png +../../data/yoloGtold1/train/34482.png +../../data/yoloGtold1/train/34483.png +../../data/yoloGtold1/train/34484.png +../../data/yoloGtold1/train/34485.png +../../data/yoloGtold1/train/34486.png +../../data/yoloGtold1/train/34487.png +../../data/yoloGtold1/train/34488.png +../../data/yoloGtold1/train/34489.png +../../data/yoloGtold1/train/34490.png +../../data/yoloGtold1/train/34491.png +../../data/yoloGtold1/train/34492.png +../../data/yoloGtold1/train/34493.png +../../data/yoloGtold1/train/34494.png +../../data/yoloGtold1/train/34495.png +../../data/yoloGtold1/train/34496.png +../../data/yoloGtold1/train/34497.png +../../data/yoloGtold1/train/34498.png +../../data/yoloGtold1/train/34499.png +../../data/yoloGtold1/train/34500.png +../../data/yoloGtold1/train/34501.png +../../data/yoloGtold1/train/34502.png +../../data/yoloGtold1/train/34503.png +../../data/yoloGtold1/train/34504.png +../../data/yoloGtold1/train/34505.png +../../data/yoloGtold1/train/34506.png +../../data/yoloGtold1/train/34507.png +../../data/yoloGtold1/train/34508.png +../../data/yoloGtold1/train/34509.png +../../data/yoloGtold1/train/34510.png +../../data/yoloGtold1/train/34511.png +../../data/yoloGtold1/train/34512.png +../../data/yoloGtold1/train/34513.png +../../data/yoloGtold1/train/34514.png +../../data/yoloGtold1/train/34515.png +../../data/yoloGtold1/train/34516.png +../../data/yoloGtold1/train/34517.png +../../data/yoloGtold1/train/34518.png +../../data/yoloGtold1/train/34519.png +../../data/yoloGtold1/train/34520.png +../../data/yoloGtold1/train/34521.png +../../data/yoloGtold1/train/34522.png +../../data/yoloGtold1/train/34523.png +../../data/yoloGtold1/train/34524.png +../../data/yoloGtold1/train/34525.png +../../data/yoloGtold1/train/34526.png +../../data/yoloGtold1/train/34527.png +../../data/yoloGtold1/train/34528.png +../../data/yoloGtold1/train/34529.png +../../data/yoloGtold1/train/34530.png +../../data/yoloGtold1/train/34531.png +../../data/yoloGtold1/train/34532.png +../../data/yoloGtold1/train/34533.png +../../data/yoloGtold1/train/34534.png +../../data/yoloGtold1/train/34535.png +../../data/yoloGtold1/train/34536.png +../../data/yoloGtold1/train/34537.png +../../data/yoloGtold1/train/34538.png +../../data/yoloGtold1/train/34539.png +../../data/yoloGtold1/train/34540.png +../../data/yoloGtold1/train/34541.png +../../data/yoloGtold1/train/34542.png +../../data/yoloGtold1/train/34543.png +../../data/yoloGtold1/train/34544.png +../../data/yoloGtold1/train/34545.png +../../data/yoloGtold1/train/34546.png +../../data/yoloGtold1/train/34547.png +../../data/yoloGtold1/train/34548.png +../../data/yoloGtold1/train/34549.png +../../data/yoloGtold1/train/34550.png +../../data/yoloGtold1/train/34551.png +../../data/yoloGtold1/train/34552.png +../../data/yoloGtold1/train/34553.png +../../data/yoloGtold1/train/34554.png +../../data/yoloGtold1/train/34555.png +../../data/yoloGtold1/train/34556.png +../../data/yoloGtold1/train/34557.png +../../data/yoloGtold1/train/34558.png +../../data/yoloGtold1/train/34559.png +../../data/yoloGtold1/train/34560.png +../../data/yoloGtold1/train/34561.png +../../data/yoloGtold1/train/34562.png +../../data/yoloGtold1/train/34563.png +../../data/yoloGtold1/train/34564.png +../../data/yoloGtold1/train/34565.png +../../data/yoloGtold1/train/34566.png +../../data/yoloGtold1/train/34567.png +../../data/yoloGtold1/train/34568.png +../../data/yoloGtold1/train/34569.png +../../data/yoloGtold1/train/34570.png +../../data/yoloGtold1/train/34571.png +../../data/yoloGtold1/train/34572.png +../../data/yoloGtold1/train/34573.png +../../data/yoloGtold1/train/34574.png +../../data/yoloGtold1/train/34575.png +../../data/yoloGtold1/train/34576.png +../../data/yoloGtold1/train/34577.png +../../data/yoloGtold1/train/34578.png +../../data/yoloGtold1/train/34579.png +../../data/yoloGtold1/train/34580.png +../../data/yoloGtold1/train/34581.png +../../data/yoloGtold1/train/34582.png +../../data/yoloGtold1/train/34583.png +../../data/yoloGtold1/train/34584.png +../../data/yoloGtold1/train/34585.png +../../data/yoloGtold1/train/34586.png +../../data/yoloGtold1/train/34587.png +../../data/yoloGtold1/train/34588.png +../../data/yoloGtold1/train/34589.png +../../data/yoloGtold1/train/34590.png +../../data/yoloGtold1/train/34591.png +../../data/yoloGtold1/train/34592.png +../../data/yoloGtold1/train/34593.png +../../data/yoloGtold1/train/34594.png +../../data/yoloGtold1/train/34595.png +../../data/yoloGtold1/train/34596.png +../../data/yoloGtold1/train/34597.png +../../data/yoloGtold1/train/34598.png +../../data/yoloGtold1/train/34599.png +../../data/yoloGtold1/train/34600.png +../../data/yoloGtold1/train/34601.png +../../data/yoloGtold1/train/34602.png +../../data/yoloGtold1/train/34603.png +../../data/yoloGtold1/train/34604.png +../../data/yoloGtold1/train/34605.png +../../data/yoloGtold1/train/34606.png +../../data/yoloGtold1/train/34607.png +../../data/yoloGtold1/train/34608.png +../../data/yoloGtold1/train/34609.png +../../data/yoloGtold1/train/34610.png +../../data/yoloGtold1/train/34611.png +../../data/yoloGtold1/train/34612.png +../../data/yoloGtold1/train/34613.png +../../data/yoloGtold1/train/34614.png +../../data/yoloGtold1/train/34615.png +../../data/yoloGtold1/train/34616.png +../../data/yoloGtold1/train/34617.png +../../data/yoloGtold1/train/34618.png +../../data/yoloGtold1/train/34619.png +../../data/yoloGtold1/train/34620.png +../../data/yoloGtold1/train/34621.png +../../data/yoloGtold1/train/34622.png +../../data/yoloGtold1/train/34623.png +../../data/yoloGtold1/train/34624.png +../../data/yoloGtold1/train/34625.png +../../data/yoloGtold1/train/34626.png +../../data/yoloGtold1/train/34627.png +../../data/yoloGtold1/train/34628.png +../../data/yoloGtold1/train/34629.png +../../data/yoloGtold1/train/34630.png +../../data/yoloGtold1/train/34631.png +../../data/yoloGtold1/train/34632.png +../../data/yoloGtold1/train/34633.png +../../data/yoloGtold1/train/34634.png +../../data/yoloGtold1/train/34635.png +../../data/yoloGtold1/train/34636.png +../../data/yoloGtold1/train/34637.png +../../data/yoloGtold1/train/34638.png +../../data/yoloGtold1/train/34639.png +../../data/yoloGtold1/train/34640.png +../../data/yoloGtold1/train/34641.png +../../data/yoloGtold1/train/34642.png +../../data/yoloGtold1/train/34643.png +../../data/yoloGtold1/train/34644.png +../../data/yoloGtold1/train/34645.png +../../data/yoloGtold1/train/34646.png +../../data/yoloGtold1/train/34647.png +../../data/yoloGtold1/train/34648.png +../../data/yoloGtold1/train/34649.png +../../data/yoloGtold1/train/34650.png +../../data/yoloGtold1/train/34651.png +../../data/yoloGtold1/train/34652.png +../../data/yoloGtold1/train/34653.png +../../data/yoloGtold1/train/34654.png +../../data/yoloGtold1/train/34655.png +../../data/yoloGtold1/train/34656.png +../../data/yoloGtold1/train/34657.png +../../data/yoloGtold1/train/34658.png +../../data/yoloGtold1/train/34659.png +../../data/yoloGtold1/train/34660.png +../../data/yoloGtold1/train/34661.png +../../data/yoloGtold1/train/34662.png +../../data/yoloGtold1/train/34663.png +../../data/yoloGtold1/train/34664.png +../../data/yoloGtold1/train/34665.png +../../data/yoloGtold1/train/34666.png +../../data/yoloGtold1/train/34667.png +../../data/yoloGtold1/train/34668.png +../../data/yoloGtold1/train/34669.png +../../data/yoloGtold1/train/34670.png +../../data/yoloGtold1/train/34671.png +../../data/yoloGtold1/train/34672.png +../../data/yoloGtold1/train/34673.png +../../data/yoloGtold1/train/34674.png +../../data/yoloGtold1/train/34675.png +../../data/yoloGtold1/train/34676.png +../../data/yoloGtold1/train/34677.png +../../data/yoloGtold1/train/34678.png +../../data/yoloGtold1/train/34679.png +../../data/yoloGtold1/train/34680.png +../../data/yoloGtold1/train/34681.png +../../data/yoloGtold1/train/34682.png +../../data/yoloGtold1/train/34683.png +../../data/yoloGtold1/train/34684.png +../../data/yoloGtold1/train/34685.png +../../data/yoloGtold1/train/34686.png +../../data/yoloGtold1/train/34687.png +../../data/yoloGtold1/train/34688.png +../../data/yoloGtold1/train/34689.png +../../data/yoloGtold1/train/34690.png +../../data/yoloGtold1/train/34691.png +../../data/yoloGtold1/train/34692.png +../../data/yoloGtold1/train/34693.png +../../data/yoloGtold1/train/34694.png +../../data/yoloGtold1/train/34695.png +../../data/yoloGtold1/train/34696.png +../../data/yoloGtold1/train/34697.png +../../data/yoloGtold1/train/34698.png +../../data/yoloGtold1/train/34699.png +../../data/yoloGtold1/train/34700.png +../../data/yoloGtold1/train/34701.png +../../data/yoloGtold1/train/34702.png +../../data/yoloGtold1/train/34703.png +../../data/yoloGtold1/train/34704.png +../../data/yoloGtold1/train/34705.png +../../data/yoloGtold1/train/34706.png +../../data/yoloGtold1/train/34707.png +../../data/yoloGtold1/train/34708.png +../../data/yoloGtold1/train/34709.png +../../data/yoloGtold1/train/34710.png +../../data/yoloGtold1/train/34711.png +../../data/yoloGtold1/train/34712.png +../../data/yoloGtold1/train/34713.png +../../data/yoloGtold1/train/34714.png +../../data/yoloGtold1/train/34715.png +../../data/yoloGtold1/train/34716.png +../../data/yoloGtold1/train/34717.png +../../data/yoloGtold1/train/34718.png +../../data/yoloGtold1/train/34719.png +../../data/yoloGtold1/train/34720.png +../../data/yoloGtold1/train/34721.png +../../data/yoloGtold1/train/34722.png +../../data/yoloGtold1/train/34723.png +../../data/yoloGtold1/train/34724.png +../../data/yoloGtold1/train/34725.png +../../data/yoloGtold1/train/34726.png +../../data/yoloGtold1/train/34727.png +../../data/yoloGtold1/train/34728.png +../../data/yoloGtold1/train/34729.png +../../data/yoloGtold1/train/34730.png +../../data/yoloGtold1/train/34731.png +../../data/yoloGtold1/train/34732.png +../../data/yoloGtold1/train/34733.png +../../data/yoloGtold1/train/34734.png +../../data/yoloGtold1/train/34735.png +../../data/yoloGtold1/train/34736.png +../../data/yoloGtold1/train/34737.png +../../data/yoloGtold1/train/34738.png +../../data/yoloGtold1/train/34739.png +../../data/yoloGtold1/train/34740.png +../../data/yoloGtold1/train/34741.png +../../data/yoloGtold1/train/34742.png +../../data/yoloGtold1/train/34743.png +../../data/yoloGtold1/train/34744.png +../../data/yoloGtold1/train/34745.png +../../data/yoloGtold1/train/34746.png +../../data/yoloGtold1/train/34747.png +../../data/yoloGtold1/train/34748.png +../../data/yoloGtold1/train/34749.png +../../data/yoloGtold1/train/34750.png +../../data/yoloGtold1/train/34751.png +../../data/yoloGtold1/train/34752.png +../../data/yoloGtold1/train/34753.png +../../data/yoloGtold1/train/34754.png +../../data/yoloGtold1/train/34755.png +../../data/yoloGtold1/train/34756.png +../../data/yoloGtold1/train/34757.png +../../data/yoloGtold1/train/34758.png +../../data/yoloGtold1/train/34759.png +../../data/yoloGtold1/train/34760.png +../../data/yoloGtold1/train/34761.png +../../data/yoloGtold1/train/34762.png +../../data/yoloGtold1/train/34763.png +../../data/yoloGtold1/train/34764.png +../../data/yoloGtold1/train/34765.png +../../data/yoloGtold1/train/34766.png +../../data/yoloGtold1/train/34767.png +../../data/yoloGtold1/train/34768.png +../../data/yoloGtold1/train/34769.png +../../data/yoloGtold1/train/34770.png +../../data/yoloGtold1/train/34771.png +../../data/yoloGtold1/train/34772.png +../../data/yoloGtold1/train/34773.png +../../data/yoloGtold1/train/34774.png +../../data/yoloGtold1/train/34775.png +../../data/yoloGtold1/train/34776.png +../../data/yoloGtold1/train/34777.png +../../data/yoloGtold1/train/34778.png +../../data/yoloGtold1/train/34779.png +../../data/yoloGtold1/train/34780.png +../../data/yoloGtold1/train/34781.png +../../data/yoloGtold1/train/34782.png +../../data/yoloGtold1/train/34783.png +../../data/yoloGtold1/train/34784.png +../../data/yoloGtold1/train/34785.png +../../data/yoloGtold1/train/34786.png +../../data/yoloGtold1/train/34787.png +../../data/yoloGtold1/train/34788.png +../../data/yoloGtold1/train/34789.png +../../data/yoloGtold1/train/34790.png +../../data/yoloGtold1/train/34791.png +../../data/yoloGtold1/train/34792.png +../../data/yoloGtold1/train/34793.png +../../data/yoloGtold1/train/34794.png +../../data/yoloGtold1/train/34795.png +../../data/yoloGtold1/train/34796.png +../../data/yoloGtold1/train/34797.png +../../data/yoloGtold1/train/34798.png +../../data/yoloGtold1/train/34799.png +../../data/yoloGtold1/train/34800.png +../../data/yoloGtold1/train/34801.png +../../data/yoloGtold1/train/34802.png +../../data/yoloGtold1/train/34803.png +../../data/yoloGtold1/train/34804.png +../../data/yoloGtold1/train/34805.png +../../data/yoloGtold1/train/34806.png +../../data/yoloGtold1/train/34807.png +../../data/yoloGtold1/train/34808.png +../../data/yoloGtold1/train/34809.png +../../data/yoloGtold1/train/34810.png +../../data/yoloGtold1/train/34811.png +../../data/yoloGtold1/train/34812.png +../../data/yoloGtold1/train/34813.png +../../data/yoloGtold1/train/34814.png +../../data/yoloGtold1/train/34815.png +../../data/yoloGtold1/train/34816.png +../../data/yoloGtold1/train/34817.png +../../data/yoloGtold1/train/34818.png +../../data/yoloGtold1/train/34819.png +../../data/yoloGtold1/train/34820.png +../../data/yoloGtold1/train/34821.png +../../data/yoloGtold1/train/34822.png +../../data/yoloGtold1/train/34823.png +../../data/yoloGtold1/train/34824.png +../../data/yoloGtold1/train/34825.png +../../data/yoloGtold1/train/34826.png +../../data/yoloGtold1/train/34827.png +../../data/yoloGtold1/train/34828.png +../../data/yoloGtold1/train/34829.png +../../data/yoloGtold1/train/34830.png +../../data/yoloGtold1/train/34831.png +../../data/yoloGtold1/train/34832.png +../../data/yoloGtold1/train/34833.png +../../data/yoloGtold1/train/34834.png +../../data/yoloGtold1/train/34835.png +../../data/yoloGtold1/train/34836.png +../../data/yoloGtold1/train/34837.png +../../data/yoloGtold1/train/34838.png +../../data/yoloGtold1/train/34839.png +../../data/yoloGtold1/train/34840.png +../../data/yoloGtold1/train/34841.png +../../data/yoloGtold1/train/34842.png +../../data/yoloGtold1/train/34843.png +../../data/yoloGtold1/train/34844.png +../../data/yoloGtold1/train/34845.png +../../data/yoloGtold1/train/34846.png +../../data/yoloGtold1/train/34847.png +../../data/yoloGtold1/train/34848.png +../../data/yoloGtold1/train/34849.png +../../data/yoloGtold1/train/34850.png +../../data/yoloGtold1/train/34851.png +../../data/yoloGtold1/train/34852.png +../../data/yoloGtold1/train/34853.png +../../data/yoloGtold1/train/34854.png +../../data/yoloGtold1/train/34855.png +../../data/yoloGtold1/train/34856.png +../../data/yoloGtold1/train/34857.png +../../data/yoloGtold1/train/34858.png +../../data/yoloGtold1/train/34859.png +../../data/yoloGtold1/train/34860.png +../../data/yoloGtold1/train/34861.png +../../data/yoloGtold1/train/34862.png +../../data/yoloGtold1/train/34863.png +../../data/yoloGtold1/train/34864.png +../../data/yoloGtold1/train/34865.png +../../data/yoloGtold1/train/34866.png +../../data/yoloGtold1/train/34867.png +../../data/yoloGtold1/train/34868.png +../../data/yoloGtold1/train/34869.png +../../data/yoloGtold1/train/34870.png +../../data/yoloGtold1/train/34871.png +../../data/yoloGtold1/train/34872.png +../../data/yoloGtold1/train/34873.png +../../data/yoloGtold1/train/34874.png +../../data/yoloGtold1/train/34875.png +../../data/yoloGtold1/train/34876.png +../../data/yoloGtold1/train/34877.png +../../data/yoloGtold1/train/34878.png +../../data/yoloGtold1/train/34879.png +../../data/yoloGtold1/train/34880.png +../../data/yoloGtold1/train/34881.png +../../data/yoloGtold1/train/34882.png +../../data/yoloGtold1/train/34883.png +../../data/yoloGtold1/train/34884.png +../../data/yoloGtold1/train/34885.png +../../data/yoloGtold1/train/34886.png +../../data/yoloGtold1/train/34887.png +../../data/yoloGtold1/train/34888.png +../../data/yoloGtold1/train/34889.png +../../data/yoloGtold1/train/34890.png +../../data/yoloGtold1/train/34891.png +../../data/yoloGtold1/train/34892.png +../../data/yoloGtold1/train/34893.png +../../data/yoloGtold1/train/34894.png +../../data/yoloGtold1/train/34895.png +../../data/yoloGtold1/train/34896.png +../../data/yoloGtold1/train/34897.png +../../data/yoloGtold1/train/34898.png +../../data/yoloGtold1/train/34899.png +../../data/yoloGtold1/train/34900.png +../../data/yoloGtold1/train/34901.png +../../data/yoloGtold1/train/34902.png +../../data/yoloGtold1/train/34903.png +../../data/yoloGtold1/train/34904.png +../../data/yoloGtold1/train/34905.png +../../data/yoloGtold1/train/34906.png +../../data/yoloGtold1/train/34907.png +../../data/yoloGtold1/train/34908.png +../../data/yoloGtold1/train/34909.png +../../data/yoloGtold1/train/34910.png +../../data/yoloGtold1/train/34911.png +../../data/yoloGtold1/train/34912.png +../../data/yoloGtold1/train/34913.png +../../data/yoloGtold1/train/34914.png +../../data/yoloGtold1/train/34915.png +../../data/yoloGtold1/train/34916.png +../../data/yoloGtold1/train/34917.png +../../data/yoloGtold1/train/34918.png +../../data/yoloGtold1/train/34919.png +../../data/yoloGtold1/train/34920.png +../../data/yoloGtold1/train/34921.png +../../data/yoloGtold1/train/34922.png +../../data/yoloGtold1/train/34923.png +../../data/yoloGtold1/train/34924.png +../../data/yoloGtold1/train/34925.png +../../data/yoloGtold1/train/34926.png +../../data/yoloGtold1/train/34927.png +../../data/yoloGtold1/train/34928.png +../../data/yoloGtold1/train/34929.png +../../data/yoloGtold1/train/34930.png +../../data/yoloGtold1/train/34931.png +../../data/yoloGtold1/train/34932.png +../../data/yoloGtold1/train/34933.png +../../data/yoloGtold1/train/34934.png +../../data/yoloGtold1/train/34935.png +../../data/yoloGtold1/train/34936.png +../../data/yoloGtold1/train/34937.png +../../data/yoloGtold1/train/34938.png +../../data/yoloGtold1/train/34939.png +../../data/yoloGtold1/train/34940.png +../../data/yoloGtold1/train/34941.png +../../data/yoloGtold1/train/34942.png +../../data/yoloGtold1/train/34943.png +../../data/yoloGtold1/train/34944.png +../../data/yoloGtold1/train/34945.png +../../data/yoloGtold1/train/34946.png +../../data/yoloGtold1/train/34947.png +../../data/yoloGtold1/train/34948.png +../../data/yoloGtold1/train/34949.png +../../data/yoloGtold1/train/34950.png +../../data/yoloGtold1/train/34951.png +../../data/yoloGtold1/train/34952.png +../../data/yoloGtold1/train/34953.png +../../data/yoloGtold1/train/34954.png +../../data/yoloGtold1/train/34955.png +../../data/yoloGtold1/train/34956.png +../../data/yoloGtold1/train/34957.png +../../data/yoloGtold1/train/34958.png +../../data/yoloGtold1/train/34959.png +../../data/yoloGtold1/train/34960.png +../../data/yoloGtold1/train/34961.png +../../data/yoloGtold1/train/34962.png +../../data/yoloGtold1/train/34963.png +../../data/yoloGtold1/train/34964.png +../../data/yoloGtold1/train/34965.png +../../data/yoloGtold1/train/34966.png +../../data/yoloGtold1/train/34967.png +../../data/yoloGtold1/train/34968.png +../../data/yoloGtold1/train/34969.png +../../data/yoloGtold1/train/34970.png +../../data/yoloGtold1/train/34971.png +../../data/yoloGtold1/train/34972.png +../../data/yoloGtold1/train/34973.png +../../data/yoloGtold1/train/34974.png +../../data/yoloGtold1/train/34975.png +../../data/yoloGtold1/train/34976.png +../../data/yoloGtold1/train/34977.png +../../data/yoloGtold1/train/34978.png +../../data/yoloGtold1/train/34979.png +../../data/yoloGtold1/train/34980.png +../../data/yoloGtold1/train/34981.png +../../data/yoloGtold1/train/34982.png +../../data/yoloGtold1/train/34983.png +../../data/yoloGtold1/train/34984.png +../../data/yoloGtold1/train/34985.png +../../data/yoloGtold1/train/34986.png +../../data/yoloGtold1/train/34987.png +../../data/yoloGtold1/train/34988.png +../../data/yoloGtold1/train/34989.png +../../data/yoloGtold1/train/34990.png +../../data/yoloGtold1/train/34991.png +../../data/yoloGtold1/train/34992.png +../../data/yoloGtold1/train/34993.png +../../data/yoloGtold1/train/34994.png +../../data/yoloGtold1/train/34995.png +../../data/yoloGtold1/train/34996.png +../../data/yoloGtold1/train/34997.png +../../data/yoloGtold1/train/34998.png +../../data/yoloGtold1/train/34999.png +../../data/yoloGtold1/train/35000.png +../../data/yoloGtold1/train/35001.png +../../data/yoloGtold1/train/35002.png +../../data/yoloGtold1/train/35003.png +../../data/yoloGtold1/train/35004.png +../../data/yoloGtold1/train/35005.png +../../data/yoloGtold1/train/35006.png +../../data/yoloGtold1/train/35007.png +../../data/yoloGtold1/train/35008.png +../../data/yoloGtold1/train/35009.png +../../data/yoloGtold1/train/35010.png +../../data/yoloGtold1/train/35011.png +../../data/yoloGtold1/train/35012.png +../../data/yoloGtold1/train/35013.png +../../data/yoloGtold1/train/35014.png +../../data/yoloGtold1/train/35015.png +../../data/yoloGtold1/train/35016.png +../../data/yoloGtold1/train/35017.png +../../data/yoloGtold1/train/35018.png +../../data/yoloGtold1/train/35019.png +../../data/yoloGtold1/train/35020.png +../../data/yoloGtold1/train/35021.png +../../data/yoloGtold1/train/35022.png +../../data/yoloGtold1/train/35023.png +../../data/yoloGtold1/train/35024.png +../../data/yoloGtold1/train/35025.png +../../data/yoloGtold1/train/35026.png +../../data/yoloGtold1/train/35027.png +../../data/yoloGtold1/train/35028.png +../../data/yoloGtold1/train/35029.png +../../data/yoloGtold1/train/35030.png +../../data/yoloGtold1/train/35031.png +../../data/yoloGtold1/train/35032.png +../../data/yoloGtold1/train/35033.png +../../data/yoloGtold1/train/35034.png +../../data/yoloGtold1/train/35035.png +../../data/yoloGtold1/train/35036.png +../../data/yoloGtold1/train/35037.png +../../data/yoloGtold1/train/35038.png +../../data/yoloGtold1/train/35039.png +../../data/yoloGtold1/train/35040.png +../../data/yoloGtold1/train/35041.png +../../data/yoloGtold1/train/35042.png +../../data/yoloGtold1/train/35043.png +../../data/yoloGtold1/train/35044.png +../../data/yoloGtold1/train/35045.png +../../data/yoloGtold1/train/35046.png +../../data/yoloGtold1/train/35047.png +../../data/yoloGtold1/train/35048.png +../../data/yoloGtold1/train/35049.png +../../data/yoloGtold1/train/35050.png +../../data/yoloGtold1/train/35051.png +../../data/yoloGtold1/train/35052.png +../../data/yoloGtold1/train/35053.png +../../data/yoloGtold1/train/35054.png +../../data/yoloGtold1/train/35055.png +../../data/yoloGtold1/train/35056.png +../../data/yoloGtold1/train/35057.png +../../data/yoloGtold1/train/35058.png +../../data/yoloGtold1/train/35059.png +../../data/yoloGtold1/train/35060.png +../../data/yoloGtold1/train/35061.png +../../data/yoloGtold1/train/35062.png +../../data/yoloGtold1/train/35063.png +../../data/yoloGtold1/train/35064.png +../../data/yoloGtold1/train/35065.png +../../data/yoloGtold1/train/35066.png +../../data/yoloGtold1/train/35067.png +../../data/yoloGtold1/train/35068.png +../../data/yoloGtold1/train/35069.png +../../data/yoloGtold1/train/35070.png +../../data/yoloGtold1/train/35071.png +../../data/yoloGtold1/train/35072.png +../../data/yoloGtold1/train/35073.png +../../data/yoloGtold1/train/35074.png +../../data/yoloGtold1/train/35075.png +../../data/yoloGtold1/train/35076.png +../../data/yoloGtold1/train/35077.png +../../data/yoloGtold1/train/35078.png +../../data/yoloGtold1/train/35079.png +../../data/yoloGtold1/train/35080.png +../../data/yoloGtold1/train/35081.png +../../data/yoloGtold1/train/35082.png +../../data/yoloGtold1/train/35083.png +../../data/yoloGtold1/train/35084.png +../../data/yoloGtold1/train/35085.png +../../data/yoloGtold1/train/35086.png +../../data/yoloGtold1/train/35087.png +../../data/yoloGtold1/train/35088.png +../../data/yoloGtold1/train/35089.png +../../data/yoloGtold1/train/35090.png +../../data/yoloGtold1/train/35091.png +../../data/yoloGtold1/train/35092.png +../../data/yoloGtold1/train/35093.png +../../data/yoloGtold1/train/35094.png +../../data/yoloGtold1/train/35095.png +../../data/yoloGtold1/train/35096.png +../../data/yoloGtold1/train/35097.png +../../data/yoloGtold1/train/35098.png +../../data/yoloGtold1/train/35099.png +../../data/yoloGtold1/train/35100.png +../../data/yoloGtold1/train/35101.png +../../data/yoloGtold1/train/35102.png +../../data/yoloGtold1/train/35103.png +../../data/yoloGtold1/train/35104.png +../../data/yoloGtold1/train/35105.png +../../data/yoloGtold1/train/35106.png +../../data/yoloGtold1/train/35107.png +../../data/yoloGtold1/train/35108.png +../../data/yoloGtold1/train/35109.png +../../data/yoloGtold1/train/35110.png +../../data/yoloGtold1/train/35111.png +../../data/yoloGtold1/train/35112.png +../../data/yoloGtold1/train/35113.png +../../data/yoloGtold1/train/35114.png +../../data/yoloGtold1/train/35115.png +../../data/yoloGtold1/train/35116.png +../../data/yoloGtold1/train/35117.png +../../data/yoloGtold1/train/35118.png +../../data/yoloGtold1/train/35119.png +../../data/yoloGtold1/train/35120.png +../../data/yoloGtold1/train/35121.png +../../data/yoloGtold1/train/35122.png +../../data/yoloGtold1/train/35123.png +../../data/yoloGtold1/train/35124.png +../../data/yoloGtold1/train/35125.png +../../data/yoloGtold1/train/35126.png +../../data/yoloGtold1/train/35127.png +../../data/yoloGtold1/train/35128.png +../../data/yoloGtold1/train/35129.png +../../data/yoloGtold1/train/35130.png +../../data/yoloGtold1/train/35131.png +../../data/yoloGtold1/train/35132.png +../../data/yoloGtold1/train/35133.png +../../data/yoloGtold1/train/35134.png +../../data/yoloGtold1/train/35135.png +../../data/yoloGtold1/train/35136.png +../../data/yoloGtold1/train/35137.png +../../data/yoloGtold1/train/35138.png +../../data/yoloGtold1/train/35139.png +../../data/yoloGtold1/train/35140.png +../../data/yoloGtold1/train/35141.png +../../data/yoloGtold1/train/35142.png +../../data/yoloGtold1/train/35143.png +../../data/yoloGtold1/train/35144.png +../../data/yoloGtold1/train/35145.png +../../data/yoloGtold1/train/35146.png +../../data/yoloGtold1/train/35147.png +../../data/yoloGtold1/train/35148.png +../../data/yoloGtold1/train/35149.png +../../data/yoloGtold1/train/35150.png +../../data/yoloGtold1/train/35151.png +../../data/yoloGtold1/train/35152.png +../../data/yoloGtold1/train/35153.png +../../data/yoloGtold1/train/35154.png +../../data/yoloGtold1/train/35155.png +../../data/yoloGtold1/train/35156.png +../../data/yoloGtold1/train/35157.png +../../data/yoloGtold1/train/35158.png +../../data/yoloGtold1/train/35159.png +../../data/yoloGtold1/train/35160.png +../../data/yoloGtold1/train/35161.png +../../data/yoloGtold1/train/35162.png +../../data/yoloGtold1/train/35163.png +../../data/yoloGtold1/train/35164.png +../../data/yoloGtold1/train/35165.png +../../data/yoloGtold1/train/35166.png +../../data/yoloGtold1/train/35167.png +../../data/yoloGtold1/train/35168.png +../../data/yoloGtold1/train/35169.png +../../data/yoloGtold1/train/35170.png +../../data/yoloGtold1/train/35171.png +../../data/yoloGtold1/train/35172.png +../../data/yoloGtold1/train/35173.png +../../data/yoloGtold1/train/35174.png +../../data/yoloGtold1/train/35175.png +../../data/yoloGtold1/train/35176.png +../../data/yoloGtold1/train/35177.png +../../data/yoloGtold1/train/35178.png +../../data/yoloGtold1/train/35179.png +../../data/yoloGtold1/train/35180.png +../../data/yoloGtold1/train/35181.png +../../data/yoloGtold1/train/35182.png +../../data/yoloGtold1/train/35183.png +../../data/yoloGtold1/train/35184.png +../../data/yoloGtold1/train/35185.png +../../data/yoloGtold1/train/35186.png +../../data/yoloGtold1/train/35187.png +../../data/yoloGtold1/train/35188.png +../../data/yoloGtold1/train/35189.png +../../data/yoloGtold1/train/35190.png +../../data/yoloGtold1/train/35191.png +../../data/yoloGtold1/train/35192.png +../../data/yoloGtold1/train/35193.png +../../data/yoloGtold1/train/35194.png +../../data/yoloGtold1/train/35195.png +../../data/yoloGtold1/train/35196.png +../../data/yoloGtold1/train/35197.png +../../data/yoloGtold1/train/35198.png +../../data/yoloGtold1/train/35199.png +../../data/yoloGtold1/train/35200.png +../../data/yoloGtold1/train/35201.png +../../data/yoloGtold1/train/35202.png +../../data/yoloGtold1/train/35203.png +../../data/yoloGtold1/train/35204.png +../../data/yoloGtold1/train/35205.png +../../data/yoloGtold1/train/35206.png +../../data/yoloGtold1/train/35207.png +../../data/yoloGtold1/train/35208.png +../../data/yoloGtold1/train/35209.png +../../data/yoloGtold1/train/35210.png +../../data/yoloGtold1/train/35211.png +../../data/yoloGtold1/train/35212.png +../../data/yoloGtold1/train/35213.png +../../data/yoloGtold1/train/35214.png +../../data/yoloGtold1/train/35215.png +../../data/yoloGtold1/train/35216.png +../../data/yoloGtold1/train/35217.png +../../data/yoloGtold1/train/35218.png +../../data/yoloGtold1/train/35219.png +../../data/yoloGtold1/train/35220.png +../../data/yoloGtold1/train/35221.png +../../data/yoloGtold1/train/35222.png +../../data/yoloGtold1/train/35223.png +../../data/yoloGtold1/train/35224.png +../../data/yoloGtold1/train/35225.png +../../data/yoloGtold1/train/35226.png +../../data/yoloGtold1/train/35227.png +../../data/yoloGtold1/train/35228.png +../../data/yoloGtold1/train/35229.png +../../data/yoloGtold1/train/35230.png +../../data/yoloGtold1/train/35231.png +../../data/yoloGtold1/train/35232.png +../../data/yoloGtold1/train/35233.png +../../data/yoloGtold1/train/35234.png +../../data/yoloGtold1/train/35235.png +../../data/yoloGtold1/train/35236.png +../../data/yoloGtold1/train/35237.png +../../data/yoloGtold1/train/35238.png +../../data/yoloGtold1/train/35239.png +../../data/yoloGtold1/train/35240.png +../../data/yoloGtold1/train/35241.png +../../data/yoloGtold1/train/35242.png +../../data/yoloGtold1/train/35243.png +../../data/yoloGtold1/train/35244.png +../../data/yoloGtold1/train/35245.png +../../data/yoloGtold1/train/35246.png +../../data/yoloGtold1/train/35247.png +../../data/yoloGtold1/train/35248.png +../../data/yoloGtold1/train/35249.png +../../data/yoloGtold1/train/35250.png +../../data/yoloGtold1/train/35251.png +../../data/yoloGtold1/train/35252.png +../../data/yoloGtold1/train/35253.png +../../data/yoloGtold1/train/35254.png +../../data/yoloGtold1/train/35255.png +../../data/yoloGtold1/train/35256.png +../../data/yoloGtold1/train/35257.png +../../data/yoloGtold1/train/35258.png +../../data/yoloGtold1/train/35259.png +../../data/yoloGtold1/train/35260.png +../../data/yoloGtold1/train/35261.png +../../data/yoloGtold1/train/35262.png +../../data/yoloGtold1/train/35263.png +../../data/yoloGtold1/train/35264.png +../../data/yoloGtold1/train/35265.png +../../data/yoloGtold1/train/35266.png +../../data/yoloGtold1/train/35267.png +../../data/yoloGtold1/train/35268.png +../../data/yoloGtold1/train/35269.png +../../data/yoloGtold1/train/35270.png +../../data/yoloGtold1/train/35271.png +../../data/yoloGtold1/train/35272.png +../../data/yoloGtold1/train/35273.png +../../data/yoloGtold1/train/35274.png +../../data/yoloGtold1/train/35275.png +../../data/yoloGtold1/train/35276.png +../../data/yoloGtold1/train/35277.png +../../data/yoloGtold1/train/35278.png +../../data/yoloGtold1/train/35279.png +../../data/yoloGtold1/train/35280.png +../../data/yoloGtold1/train/35281.png +../../data/yoloGtold1/train/35282.png +../../data/yoloGtold1/train/35283.png +../../data/yoloGtold1/train/35284.png +../../data/yoloGtold1/train/35285.png +../../data/yoloGtold1/train/35286.png +../../data/yoloGtold1/train/35287.png +../../data/yoloGtold1/train/35288.png +../../data/yoloGtold1/train/35289.png +../../data/yoloGtold1/train/35290.png +../../data/yoloGtold1/train/35291.png +../../data/yoloGtold1/train/35292.png +../../data/yoloGtold1/train/35293.png +../../data/yoloGtold1/train/35294.png +../../data/yoloGtold1/train/35295.png +../../data/yoloGtold1/train/35296.png +../../data/yoloGtold1/train/35297.png +../../data/yoloGtold1/train/35298.png +../../data/yoloGtold1/train/35299.png +../../data/yoloGtold1/train/35300.png +../../data/yoloGtold1/train/35301.png +../../data/yoloGtold1/train/35302.png +../../data/yoloGtold1/train/35303.png +../../data/yoloGtold1/train/35304.png +../../data/yoloGtold1/train/35305.png +../../data/yoloGtold1/train/35306.png +../../data/yoloGtold1/train/35307.png +../../data/yoloGtold1/train/35308.png +../../data/yoloGtold1/train/35309.png +../../data/yoloGtold1/train/35310.png +../../data/yoloGtold1/train/35311.png +../../data/yoloGtold1/train/35312.png +../../data/yoloGtold1/train/35313.png +../../data/yoloGtold1/train/35314.png +../../data/yoloGtold1/train/35315.png +../../data/yoloGtold1/train/35316.png +../../data/yoloGtold1/train/35317.png +../../data/yoloGtold1/train/35318.png +../../data/yoloGtold1/train/35319.png +../../data/yoloGtold1/train/35320.png +../../data/yoloGtold1/train/35321.png +../../data/yoloGtold1/train/35322.png +../../data/yoloGtold1/train/35323.png +../../data/yoloGtold1/train/35324.png +../../data/yoloGtold1/train/35325.png +../../data/yoloGtold1/train/35326.png +../../data/yoloGtold1/train/35327.png +../../data/yoloGtold1/train/35328.png +../../data/yoloGtold1/train/35329.png +../../data/yoloGtold1/train/35330.png +../../data/yoloGtold1/train/35331.png +../../data/yoloGtold1/train/35332.png +../../data/yoloGtold1/train/35333.png +../../data/yoloGtold1/train/35334.png +../../data/yoloGtold1/train/35335.png +../../data/yoloGtold1/train/35336.png +../../data/yoloGtold1/train/35337.png +../../data/yoloGtold1/train/35338.png +../../data/yoloGtold1/train/35339.png +../../data/yoloGtold1/train/35340.png +../../data/yoloGtold1/train/35341.png +../../data/yoloGtold1/train/35342.png +../../data/yoloGtold1/train/35343.png +../../data/yoloGtold1/train/35344.png +../../data/yoloGtold1/train/35345.png +../../data/yoloGtold1/train/35346.png +../../data/yoloGtold1/train/35347.png +../../data/yoloGtold1/train/35348.png +../../data/yoloGtold1/train/35349.png +../../data/yoloGtold1/train/35350.png +../../data/yoloGtold1/train/35351.png +../../data/yoloGtold1/train/35352.png +../../data/yoloGtold1/train/35353.png +../../data/yoloGtold1/train/35354.png +../../data/yoloGtold1/train/35355.png +../../data/yoloGtold1/train/35356.png +../../data/yoloGtold1/train/35357.png +../../data/yoloGtold1/train/35358.png +../../data/yoloGtold1/train/35359.png +../../data/yoloGtold1/train/35360.png +../../data/yoloGtold1/train/35361.png +../../data/yoloGtold1/train/35362.png +../../data/yoloGtold1/train/35363.png +../../data/yoloGtold1/train/35364.png +../../data/yoloGtold1/train/35365.png +../../data/yoloGtold1/train/35366.png +../../data/yoloGtold1/train/35367.png +../../data/yoloGtold1/train/35368.png +../../data/yoloGtold1/train/35369.png +../../data/yoloGtold1/train/35370.png +../../data/yoloGtold1/train/35371.png +../../data/yoloGtold1/train/35372.png +../../data/yoloGtold1/train/35373.png +../../data/yoloGtold1/train/35374.png +../../data/yoloGtold1/train/35375.png +../../data/yoloGtold1/train/35376.png +../../data/yoloGtold1/train/35377.png +../../data/yoloGtold1/train/35378.png +../../data/yoloGtold1/train/35379.png +../../data/yoloGtold1/train/35380.png +../../data/yoloGtold1/train/35381.png +../../data/yoloGtold1/train/35382.png +../../data/yoloGtold1/train/35383.png +../../data/yoloGtold1/train/35384.png +../../data/yoloGtold1/train/35385.png +../../data/yoloGtold1/train/35386.png +../../data/yoloGtold1/train/35387.png +../../data/yoloGtold1/train/35388.png +../../data/yoloGtold1/train/35389.png +../../data/yoloGtold1/train/35390.png +../../data/yoloGtold1/train/35391.png +../../data/yoloGtold1/train/35392.png +../../data/yoloGtold1/train/35393.png +../../data/yoloGtold1/train/35394.png +../../data/yoloGtold1/train/35395.png +../../data/yoloGtold1/train/35396.png +../../data/yoloGtold1/train/35397.png +../../data/yoloGtold1/train/35398.png +../../data/yoloGtold1/train/35399.png +../../data/yoloGtold1/train/35400.png +../../data/yoloGtold1/train/35401.png +../../data/yoloGtold1/train/35402.png +../../data/yoloGtold1/train/35403.png +../../data/yoloGtold1/train/35404.png +../../data/yoloGtold1/train/35405.png +../../data/yoloGtold1/train/35406.png +../../data/yoloGtold1/train/35407.png +../../data/yoloGtold1/train/35408.png +../../data/yoloGtold1/train/35409.png +../../data/yoloGtold1/train/35410.png +../../data/yoloGtold1/train/35411.png +../../data/yoloGtold1/train/35412.png +../../data/yoloGtold1/train/35413.png +../../data/yoloGtold1/train/35414.png +../../data/yoloGtold1/train/35415.png +../../data/yoloGtold1/train/35416.png +../../data/yoloGtold1/train/35417.png +../../data/yoloGtold1/train/35418.png +../../data/yoloGtold1/train/35419.png +../../data/yoloGtold1/train/35420.png +../../data/yoloGtold1/train/35421.png +../../data/yoloGtold1/train/35422.png +../../data/yoloGtold1/train/35423.png +../../data/yoloGtold1/train/35424.png +../../data/yoloGtold1/train/35425.png +../../data/yoloGtold1/train/35426.png +../../data/yoloGtold1/train/35427.png +../../data/yoloGtold1/train/35428.png +../../data/yoloGtold1/train/35429.png +../../data/yoloGtold1/train/35430.png +../../data/yoloGtold1/train/35431.png +../../data/yoloGtold1/train/35432.png +../../data/yoloGtold1/train/35433.png +../../data/yoloGtold1/train/35434.png +../../data/yoloGtold1/train/35435.png +../../data/yoloGtold1/train/35436.png +../../data/yoloGtold1/train/35437.png +../../data/yoloGtold1/train/35438.png +../../data/yoloGtold1/train/35439.png +../../data/yoloGtold1/train/35440.png +../../data/yoloGtold1/train/35441.png +../../data/yoloGtold1/train/35442.png +../../data/yoloGtold1/train/35443.png +../../data/yoloGtold1/train/35444.png +../../data/yoloGtold1/train/35445.png +../../data/yoloGtold1/train/35446.png +../../data/yoloGtold1/train/35447.png +../../data/yoloGtold1/train/35448.png +../../data/yoloGtold1/train/35449.png +../../data/yoloGtold1/train/35450.png +../../data/yoloGtold1/train/35451.png +../../data/yoloGtold1/train/35452.png +../../data/yoloGtold1/train/35453.png +../../data/yoloGtold1/train/35454.png +../../data/yoloGtold1/train/35455.png +../../data/yoloGtold1/train/35456.png +../../data/yoloGtold1/train/35457.png +../../data/yoloGtold1/train/35458.png +../../data/yoloGtold1/train/35459.png +../../data/yoloGtold1/train/35460.png +../../data/yoloGtold1/train/35461.png +../../data/yoloGtold1/train/35462.png +../../data/yoloGtold1/train/35463.png +../../data/yoloGtold1/train/35464.png +../../data/yoloGtold1/train/35465.png +../../data/yoloGtold1/train/35466.png +../../data/yoloGtold1/train/35467.png +../../data/yoloGtold1/train/35468.png +../../data/yoloGtold1/train/35469.png +../../data/yoloGtold1/train/35470.png +../../data/yoloGtold1/train/35471.png +../../data/yoloGtold1/train/35472.png +../../data/yoloGtold1/train/35473.png +../../data/yoloGtold1/train/35474.png +../../data/yoloGtold1/train/35475.png +../../data/yoloGtold1/train/35476.png +../../data/yoloGtold1/train/35477.png +../../data/yoloGtold1/train/35478.png +../../data/yoloGtold1/train/35479.png +../../data/yoloGtold1/train/35480.png +../../data/yoloGtold1/train/35481.png +../../data/yoloGtold1/train/35482.png +../../data/yoloGtold1/train/35483.png +../../data/yoloGtold1/train/35484.png +../../data/yoloGtold1/train/35485.png +../../data/yoloGtold1/train/35486.png +../../data/yoloGtold1/train/35487.png +../../data/yoloGtold1/train/35488.png +../../data/yoloGtold1/train/35489.png +../../data/yoloGtold1/train/35490.png +../../data/yoloGtold1/train/35491.png +../../data/yoloGtold1/train/35492.png +../../data/yoloGtold1/train/35493.png +../../data/yoloGtold1/train/35494.png +../../data/yoloGtold1/train/35495.png +../../data/yoloGtold1/train/35496.png +../../data/yoloGtold1/train/35497.png +../../data/yoloGtold1/train/35498.png +../../data/yoloGtold1/train/35499.png +../../data/yoloGtold1/train/35500.png +../../data/yoloGtold1/train/35501.png +../../data/yoloGtold1/train/35502.png +../../data/yoloGtold1/train/35503.png +../../data/yoloGtold1/train/35504.png +../../data/yoloGtold1/train/35505.png +../../data/yoloGtold1/train/35506.png +../../data/yoloGtold1/train/35507.png +../../data/yoloGtold1/train/35508.png +../../data/yoloGtold1/train/35509.png +../../data/yoloGtold1/train/35510.png +../../data/yoloGtold1/train/35511.png +../../data/yoloGtold1/train/35512.png +../../data/yoloGtold1/train/35513.png +../../data/yoloGtold1/train/35514.png +../../data/yoloGtold1/train/35515.png +../../data/yoloGtold1/train/35516.png +../../data/yoloGtold1/train/35517.png +../../data/yoloGtold1/train/35518.png +../../data/yoloGtold1/train/35519.png +../../data/yoloGtold1/train/35520.png +../../data/yoloGtold1/train/35521.png +../../data/yoloGtold1/train/35522.png +../../data/yoloGtold1/train/35523.png +../../data/yoloGtold1/train/35524.png +../../data/yoloGtold1/train/35525.png +../../data/yoloGtold1/train/35526.png +../../data/yoloGtold1/train/35527.png +../../data/yoloGtold1/train/35528.png +../../data/yoloGtold1/train/35529.png +../../data/yoloGtold1/train/35530.png +../../data/yoloGtold1/train/35531.png +../../data/yoloGtold1/train/35532.png +../../data/yoloGtold1/train/35533.png +../../data/yoloGtold1/train/35534.png +../../data/yoloGtold1/train/35535.png +../../data/yoloGtold1/train/35536.png +../../data/yoloGtold1/train/35537.png +../../data/yoloGtold1/train/35538.png +../../data/yoloGtold1/train/35539.png +../../data/yoloGtold1/train/35540.png +../../data/yoloGtold1/train/35541.png +../../data/yoloGtold1/train/35542.png +../../data/yoloGtold1/train/35543.png +../../data/yoloGtold1/train/35544.png +../../data/yoloGtold1/train/35545.png +../../data/yoloGtold1/train/35546.png +../../data/yoloGtold1/train/35547.png +../../data/yoloGtold1/train/35548.png +../../data/yoloGtold1/train/35549.png +../../data/yoloGtold1/train/35550.png +../../data/yoloGtold1/train/35551.png +../../data/yoloGtold1/train/35552.png +../../data/yoloGtold1/train/35553.png +../../data/yoloGtold1/train/35554.png +../../data/yoloGtold1/train/35555.png +../../data/yoloGtold1/train/35556.png +../../data/yoloGtold1/train/35557.png +../../data/yoloGtold1/train/35558.png +../../data/yoloGtold1/train/35559.png +../../data/yoloGtold1/train/35560.png +../../data/yoloGtold1/train/35561.png +../../data/yoloGtold1/train/35562.png +../../data/yoloGtold1/train/35563.png +../../data/yoloGtold1/train/35564.png +../../data/yoloGtold1/train/35565.png +../../data/yoloGtold1/train/35566.png +../../data/yoloGtold1/train/35567.png +../../data/yoloGtold1/train/35568.png +../../data/yoloGtold1/train/35569.png +../../data/yoloGtold1/train/35570.png +../../data/yoloGtold1/train/35571.png +../../data/yoloGtold1/train/35572.png +../../data/yoloGtold1/train/35573.png +../../data/yoloGtold1/train/35574.png +../../data/yoloGtold1/train/35575.png +../../data/yoloGtold1/train/35576.png +../../data/yoloGtold1/train/35577.png +../../data/yoloGtold1/train/35578.png +../../data/yoloGtold1/train/35579.png +../../data/yoloGtold1/train/35580.png +../../data/yoloGtold1/train/35581.png +../../data/yoloGtold1/train/35582.png +../../data/yoloGtold1/train/35583.png +../../data/yoloGtold1/train/35584.png +../../data/yoloGtold1/train/35585.png +../../data/yoloGtold1/train/35586.png +../../data/yoloGtold1/train/35587.png +../../data/yoloGtold1/train/35588.png +../../data/yoloGtold1/train/35589.png +../../data/yoloGtold1/train/35590.png +../../data/yoloGtold1/train/35591.png +../../data/yoloGtold1/train/35592.png +../../data/yoloGtold1/train/35593.png +../../data/yoloGtold1/train/35594.png +../../data/yoloGtold1/train/35595.png +../../data/yoloGtold1/train/35596.png +../../data/yoloGtold1/train/35597.png +../../data/yoloGtold1/train/35598.png +../../data/yoloGtold1/train/35599.png +../../data/yoloGtold1/train/35600.png +../../data/yoloGtold1/train/35601.png +../../data/yoloGtold1/train/35602.png +../../data/yoloGtold1/train/35603.png +../../data/yoloGtold1/train/35604.png +../../data/yoloGtold1/train/35605.png +../../data/yoloGtold1/train/35606.png +../../data/yoloGtold1/train/35607.png +../../data/yoloGtold1/train/35608.png +../../data/yoloGtold1/train/35609.png +../../data/yoloGtold1/train/35610.png +../../data/yoloGtold1/train/35611.png +../../data/yoloGtold1/train/35612.png +../../data/yoloGtold1/train/35613.png +../../data/yoloGtold1/train/35614.png +../../data/yoloGtold1/train/35615.png +../../data/yoloGtold1/train/35616.png +../../data/yoloGtold1/train/35617.png +../../data/yoloGtold1/train/35618.png +../../data/yoloGtold1/train/35619.png +../../data/yoloGtold1/train/35620.png +../../data/yoloGtold1/train/35621.png +../../data/yoloGtold1/train/35622.png +../../data/yoloGtold1/train/35623.png +../../data/yoloGtold1/train/35624.png +../../data/yoloGtold1/train/35625.png +../../data/yoloGtold1/train/35626.png +../../data/yoloGtold1/train/35627.png +../../data/yoloGtold1/train/35628.png +../../data/yoloGtold1/train/35629.png +../../data/yoloGtold1/train/35630.png +../../data/yoloGtold1/train/35631.png +../../data/yoloGtold1/train/35632.png +../../data/yoloGtold1/train/35633.png +../../data/yoloGtold1/train/35634.png +../../data/yoloGtold1/train/35635.png +../../data/yoloGtold1/train/35636.png +../../data/yoloGtold1/train/35637.png +../../data/yoloGtold1/train/35638.png +../../data/yoloGtold1/train/35639.png +../../data/yoloGtold1/train/35640.png +../../data/yoloGtold1/train/35641.png +../../data/yoloGtold1/train/35642.png +../../data/yoloGtold1/train/35643.png +../../data/yoloGtold1/train/35644.png +../../data/yoloGtold1/train/35645.png +../../data/yoloGtold1/train/35646.png +../../data/yoloGtold1/train/35647.png +../../data/yoloGtold1/train/35648.png +../../data/yoloGtold1/train/35649.png +../../data/yoloGtold1/train/35650.png +../../data/yoloGtold1/train/35651.png +../../data/yoloGtold1/train/35652.png +../../data/yoloGtold1/train/35653.png +../../data/yoloGtold1/train/35654.png +../../data/yoloGtold1/train/35655.png +../../data/yoloGtold1/train/35656.png +../../data/yoloGtold1/train/35657.png +../../data/yoloGtold1/train/35658.png +../../data/yoloGtold1/train/35659.png +../../data/yoloGtold1/train/35660.png +../../data/yoloGtold1/train/35661.png +../../data/yoloGtold1/train/35662.png +../../data/yoloGtold1/train/35663.png +../../data/yoloGtold1/train/35664.png +../../data/yoloGtold1/train/35665.png +../../data/yoloGtold1/train/35666.png +../../data/yoloGtold1/train/35667.png +../../data/yoloGtold1/train/35668.png +../../data/yoloGtold1/train/35669.png +../../data/yoloGtold1/train/35670.png +../../data/yoloGtold1/train/35671.png +../../data/yoloGtold1/train/35672.png +../../data/yoloGtold1/train/35673.png +../../data/yoloGtold1/train/35674.png +../../data/yoloGtold1/train/35675.png +../../data/yoloGtold1/train/35676.png +../../data/yoloGtold1/train/35677.png +../../data/yoloGtold1/train/35678.png +../../data/yoloGtold1/train/35679.png +../../data/yoloGtold1/train/35680.png +../../data/yoloGtold1/train/35681.png +../../data/yoloGtold1/train/35682.png +../../data/yoloGtold1/train/35683.png +../../data/yoloGtold1/train/35684.png +../../data/yoloGtold1/train/35685.png +../../data/yoloGtold1/train/35686.png +../../data/yoloGtold1/train/35687.png +../../data/yoloGtold1/train/35688.png +../../data/yoloGtold1/train/35689.png +../../data/yoloGtold1/train/35690.png +../../data/yoloGtold1/train/35691.png +../../data/yoloGtold1/train/35692.png +../../data/yoloGtold1/train/35693.png +../../data/yoloGtold1/train/35694.png +../../data/yoloGtold1/train/35695.png +../../data/yoloGtold1/train/35696.png +../../data/yoloGtold1/train/35697.png +../../data/yoloGtold1/train/35698.png +../../data/yoloGtold1/train/35699.png +../../data/yoloGtold1/train/35700.png +../../data/yoloGtold1/train/35701.png +../../data/yoloGtold1/train/35702.png +../../data/yoloGtold1/train/35703.png +../../data/yoloGtold1/train/35704.png +../../data/yoloGtold1/train/35705.png +../../data/yoloGtold1/train/35706.png +../../data/yoloGtold1/train/35707.png +../../data/yoloGtold1/train/35708.png +../../data/yoloGtold1/train/35709.png +../../data/yoloGtold1/train/35710.png +../../data/yoloGtold1/train/35711.png +../../data/yoloGtold1/train/35712.png +../../data/yoloGtold1/train/35713.png +../../data/yoloGtold1/train/35714.png +../../data/yoloGtold1/train/35715.png +../../data/yoloGtold1/train/35716.png +../../data/yoloGtold1/train/35717.png +../../data/yoloGtold1/train/35718.png +../../data/yoloGtold1/train/35719.png +../../data/yoloGtold1/train/35720.png +../../data/yoloGtold1/train/35721.png +../../data/yoloGtold1/train/35722.png +../../data/yoloGtold1/train/35723.png +../../data/yoloGtold1/train/35724.png +../../data/yoloGtold1/train/35725.png +../../data/yoloGtold1/train/35726.png +../../data/yoloGtold1/train/35727.png +../../data/yoloGtold1/train/35728.png +../../data/yoloGtold1/train/35729.png +../../data/yoloGtold1/train/35730.png +../../data/yoloGtold1/train/35731.png +../../data/yoloGtold1/train/35732.png +../../data/yoloGtold1/train/35733.png +../../data/yoloGtold1/train/35734.png +../../data/yoloGtold1/train/35735.png +../../data/yoloGtold1/train/35736.png +../../data/yoloGtold1/train/35737.png +../../data/yoloGtold1/train/35738.png +../../data/yoloGtold1/train/35739.png +../../data/yoloGtold1/train/35740.png +../../data/yoloGtold1/train/35741.png +../../data/yoloGtold1/train/35742.png +../../data/yoloGtold1/train/35743.png +../../data/yoloGtold1/train/35744.png +../../data/yoloGtold1/train/35745.png +../../data/yoloGtold1/train/35746.png +../../data/yoloGtold1/train/35747.png +../../data/yoloGtold1/train/35748.png +../../data/yoloGtold1/train/35749.png +../../data/yoloGtold1/train/35750.png +../../data/yoloGtold1/train/35751.png +../../data/yoloGtold1/train/35752.png +../../data/yoloGtold1/train/35753.png +../../data/yoloGtold1/train/35754.png +../../data/yoloGtold1/train/35755.png +../../data/yoloGtold1/train/35756.png +../../data/yoloGtold1/train/35757.png +../../data/yoloGtold1/train/35758.png +../../data/yoloGtold1/train/35759.png +../../data/yoloGtold1/train/35760.png +../../data/yoloGtold1/train/35761.png +../../data/yoloGtold1/train/35762.png +../../data/yoloGtold1/train/35763.png +../../data/yoloGtold1/train/35764.png +../../data/yoloGtold1/train/35765.png +../../data/yoloGtold1/train/35766.png +../../data/yoloGtold1/train/35767.png +../../data/yoloGtold1/train/35768.png +../../data/yoloGtold1/train/35769.png +../../data/yoloGtold1/train/35770.png +../../data/yoloGtold1/train/35771.png +../../data/yoloGtold1/train/35772.png +../../data/yoloGtold1/train/35773.png +../../data/yoloGtold1/train/35774.png +../../data/yoloGtold1/train/35775.png +../../data/yoloGtold1/train/35776.png +../../data/yoloGtold1/train/35777.png +../../data/yoloGtold1/train/35778.png +../../data/yoloGtold1/train/35779.png +../../data/yoloGtold1/train/35780.png +../../data/yoloGtold1/train/35781.png +../../data/yoloGtold1/train/35782.png +../../data/yoloGtold1/train/35783.png +../../data/yoloGtold1/train/35784.png +../../data/yoloGtold1/train/35785.png +../../data/yoloGtold1/train/35786.png +../../data/yoloGtold1/train/35787.png +../../data/yoloGtold1/train/35788.png +../../data/yoloGtold1/train/35789.png +../../data/yoloGtold1/train/35790.png +../../data/yoloGtold1/train/35791.png +../../data/yoloGtold1/train/35792.png +../../data/yoloGtold1/train/35793.png +../../data/yoloGtold1/train/35794.png +../../data/yoloGtold1/train/35795.png +../../data/yoloGtold1/train/35796.png +../../data/yoloGtold1/train/35797.png +../../data/yoloGtold1/train/35798.png +../../data/yoloGtold1/train/35799.png +../../data/yoloGtold1/train/35800.png +../../data/yoloGtold1/train/35801.png +../../data/yoloGtold1/train/35802.png +../../data/yoloGtold1/train/35803.png +../../data/yoloGtold1/train/35804.png +../../data/yoloGtold1/train/35805.png +../../data/yoloGtold1/train/35806.png +../../data/yoloGtold1/train/35807.png +../../data/yoloGtold1/train/35808.png +../../data/yoloGtold1/train/35809.png +../../data/yoloGtold1/train/35810.png +../../data/yoloGtold1/train/35811.png +../../data/yoloGtold1/train/35812.png +../../data/yoloGtold1/train/35813.png +../../data/yoloGtold1/train/35814.png +../../data/yoloGtold1/train/35815.png +../../data/yoloGtold1/train/35816.png +../../data/yoloGtold1/train/35817.png +../../data/yoloGtold1/train/35818.png +../../data/yoloGtold1/train/35819.png +../../data/yoloGtold1/train/35820.png +../../data/yoloGtold1/train/35821.png +../../data/yoloGtold1/train/35822.png +../../data/yoloGtold1/train/35823.png +../../data/yoloGtold1/train/35824.png +../../data/yoloGtold1/train/35825.png +../../data/yoloGtold1/train/35826.png +../../data/yoloGtold1/train/35827.png +../../data/yoloGtold1/train/35828.png +../../data/yoloGtold1/train/35829.png +../../data/yoloGtold1/train/35830.png +../../data/yoloGtold1/train/35831.png +../../data/yoloGtold1/train/35832.png +../../data/yoloGtold1/train/35833.png +../../data/yoloGtold1/train/35834.png +../../data/yoloGtold1/train/35835.png +../../data/yoloGtold1/train/35836.png +../../data/yoloGtold1/train/35837.png +../../data/yoloGtold1/train/35838.png +../../data/yoloGtold1/train/35839.png +../../data/yoloGtold1/train/35840.png +../../data/yoloGtold1/train/35841.png +../../data/yoloGtold1/train/35842.png +../../data/yoloGtold1/train/35843.png +../../data/yoloGtold1/train/35844.png +../../data/yoloGtold1/train/35845.png +../../data/yoloGtold1/train/35846.png +../../data/yoloGtold1/train/35847.png +../../data/yoloGtold1/train/35848.png +../../data/yoloGtold1/train/35849.png +../../data/yoloGtold1/train/35850.png +../../data/yoloGtold1/train/35851.png +../../data/yoloGtold1/train/35852.png +../../data/yoloGtold1/train/35853.png +../../data/yoloGtold1/train/35854.png +../../data/yoloGtold1/train/35855.png +../../data/yoloGtold1/train/35856.png +../../data/yoloGtold1/train/35857.png +../../data/yoloGtold1/train/35858.png +../../data/yoloGtold1/train/35859.png +../../data/yoloGtold1/train/35860.png +../../data/yoloGtold1/train/35861.png +../../data/yoloGtold1/train/35862.png +../../data/yoloGtold1/train/35863.png +../../data/yoloGtold1/train/35864.png +../../data/yoloGtold1/train/35865.png +../../data/yoloGtold1/train/35866.png +../../data/yoloGtold1/train/35867.png +../../data/yoloGtold1/train/35868.png +../../data/yoloGtold1/train/35869.png +../../data/yoloGtold1/train/35870.png +../../data/yoloGtold1/train/35871.png +../../data/yoloGtold1/train/35872.png +../../data/yoloGtold1/train/35873.png +../../data/yoloGtold1/train/35874.png +../../data/yoloGtold1/train/35875.png +../../data/yoloGtold1/train/35876.png +../../data/yoloGtold1/train/35877.png +../../data/yoloGtold1/train/35878.png +../../data/yoloGtold1/train/35879.png +../../data/yoloGtold1/train/35880.png +../../data/yoloGtold1/train/35881.png +../../data/yoloGtold1/train/35882.png +../../data/yoloGtold1/train/35883.png +../../data/yoloGtold1/train/35884.png +../../data/yoloGtold1/train/35885.png +../../data/yoloGtold1/train/35886.png +../../data/yoloGtold1/train/35887.png +../../data/yoloGtold1/train/35888.png +../../data/yoloGtold1/train/35889.png +../../data/yoloGtold1/train/35890.png +../../data/yoloGtold1/train/35891.png +../../data/yoloGtold1/train/35892.png +../../data/yoloGtold1/train/35893.png +../../data/yoloGtold1/train/35894.png +../../data/yoloGtold1/train/35895.png +../../data/yoloGtold1/train/35896.png +../../data/yoloGtold1/train/35897.png +../../data/yoloGtold1/train/35898.png +../../data/yoloGtold1/train/35899.png +../../data/yoloGtold1/train/35900.png +../../data/yoloGtold1/train/35901.png +../../data/yoloGtold1/train/35902.png +../../data/yoloGtold1/train/35903.png +../../data/yoloGtold1/train/35904.png +../../data/yoloGtold1/train/35905.png +../../data/yoloGtold1/train/35906.png +../../data/yoloGtold1/train/35907.png +../../data/yoloGtold1/train/35908.png +../../data/yoloGtold1/train/35909.png +../../data/yoloGtold1/train/35910.png +../../data/yoloGtold1/train/35911.png +../../data/yoloGtold1/train/35912.png +../../data/yoloGtold1/train/35913.png +../../data/yoloGtold1/train/35914.png +../../data/yoloGtold1/train/35915.png +../../data/yoloGtold1/train/35916.png +../../data/yoloGtold1/train/35917.png +../../data/yoloGtold1/train/35918.png +../../data/yoloGtold1/train/35919.png +../../data/yoloGtold1/train/35920.png +../../data/yoloGtold1/train/35921.png +../../data/yoloGtold1/train/35922.png +../../data/yoloGtold1/train/35923.png +../../data/yoloGtold1/train/35924.png +../../data/yoloGtold1/train/35925.png +../../data/yoloGtold1/train/35926.png +../../data/yoloGtold1/train/35927.png +../../data/yoloGtold1/train/35928.png +../../data/yoloGtold1/train/35929.png +../../data/yoloGtold1/train/35930.png +../../data/yoloGtold1/train/35931.png +../../data/yoloGtold1/train/35932.png +../../data/yoloGtold1/train/35933.png +../../data/yoloGtold1/train/35934.png +../../data/yoloGtold1/train/35935.png +../../data/yoloGtold1/train/35936.png +../../data/yoloGtold1/train/35937.png +../../data/yoloGtold1/train/35938.png +../../data/yoloGtold1/train/35939.png +../../data/yoloGtold1/train/35940.png +../../data/yoloGtold1/train/35941.png +../../data/yoloGtold1/train/35942.png +../../data/yoloGtold1/train/35943.png +../../data/yoloGtold1/train/35944.png +../../data/yoloGtold1/train/35945.png +../../data/yoloGtold1/train/35946.png +../../data/yoloGtold1/train/35947.png +../../data/yoloGtold1/train/35948.png +../../data/yoloGtold1/train/35949.png +../../data/yoloGtold1/train/35950.png +../../data/yoloGtold1/train/35951.png +../../data/yoloGtold1/train/35952.png +../../data/yoloGtold1/train/35953.png +../../data/yoloGtold1/train/35954.png +../../data/yoloGtold1/train/35955.png +../../data/yoloGtold1/train/35956.png +../../data/yoloGtold1/train/35957.png +../../data/yoloGtold1/train/35958.png +../../data/yoloGtold1/train/35959.png +../../data/yoloGtold1/train/35960.png +../../data/yoloGtold1/train/35961.png +../../data/yoloGtold1/train/35962.png +../../data/yoloGtold1/train/35963.png +../../data/yoloGtold1/train/35964.png +../../data/yoloGtold1/train/35965.png +../../data/yoloGtold1/train/35966.png +../../data/yoloGtold1/train/35967.png +../../data/yoloGtold1/train/35968.png +../../data/yoloGtold1/train/35969.png +../../data/yoloGtold1/train/35970.png +../../data/yoloGtold1/train/35971.png +../../data/yoloGtold1/train/35972.png +../../data/yoloGtold1/train/35973.png +../../data/yoloGtold1/train/35974.png +../../data/yoloGtold1/train/35975.png +../../data/yoloGtold1/train/35976.png +../../data/yoloGtold1/train/35977.png +../../data/yoloGtold1/train/35978.png +../../data/yoloGtold1/train/35979.png +../../data/yoloGtold1/train/35980.png +../../data/yoloGtold1/train/35981.png +../../data/yoloGtold1/train/35982.png +../../data/yoloGtold1/train/35983.png +../../data/yoloGtold1/train/35984.png +../../data/yoloGtold1/train/35985.png +../../data/yoloGtold1/train/35986.png +../../data/yoloGtold1/train/35987.png +../../data/yoloGtold1/train/35988.png +../../data/yoloGtold1/train/35989.png +../../data/yoloGtold1/train/35990.png +../../data/yoloGtold1/train/35991.png +../../data/yoloGtold1/train/35992.png +../../data/yoloGtold1/train/35993.png +../../data/yoloGtold1/train/35994.png +../../data/yoloGtold1/train/35995.png +../../data/yoloGtold1/train/35996.png +../../data/yoloGtold1/train/35997.png +../../data/yoloGtold1/train/35998.png +../../data/yoloGtold1/train/35999.png +../../data/yoloGtold1/train/36000.png +../../data/yoloGtold1/train/36001.png +../../data/yoloGtold1/train/36002.png +../../data/yoloGtold1/train/36003.png +../../data/yoloGtold1/train/36004.png +../../data/yoloGtold1/train/36005.png +../../data/yoloGtold1/train/36006.png +../../data/yoloGtold1/train/36007.png +../../data/yoloGtold1/train/36008.png +../../data/yoloGtold1/train/36009.png +../../data/yoloGtold1/train/36010.png +../../data/yoloGtold1/train/36011.png +../../data/yoloGtold1/train/36012.png +../../data/yoloGtold1/train/36013.png +../../data/yoloGtold1/train/36014.png +../../data/yoloGtold1/train/36015.png +../../data/yoloGtold1/train/36016.png +../../data/yoloGtold1/train/36017.png +../../data/yoloGtold1/train/36018.png +../../data/yoloGtold1/train/36019.png +../../data/yoloGtold1/train/36020.png +../../data/yoloGtold1/train/36021.png +../../data/yoloGtold1/train/36022.png +../../data/yoloGtold1/train/36023.png +../../data/yoloGtold1/train/36024.png +../../data/yoloGtold1/train/36025.png +../../data/yoloGtold1/train/36026.png +../../data/yoloGtold1/train/36027.png +../../data/yoloGtold1/train/36028.png +../../data/yoloGtold1/train/36029.png +../../data/yoloGtold1/train/36030.png +../../data/yoloGtold1/train/36031.png +../../data/yoloGtold1/train/36032.png +../../data/yoloGtold1/train/36033.png +../../data/yoloGtold1/train/36034.png +../../data/yoloGtold1/train/36035.png +../../data/yoloGtold1/train/36036.png +../../data/yoloGtold1/train/36037.png +../../data/yoloGtold1/train/36038.png +../../data/yoloGtold1/train/36039.png +../../data/yoloGtold1/train/36040.png +../../data/yoloGtold1/train/36041.png +../../data/yoloGtold1/train/36042.png +../../data/yoloGtold1/train/36043.png +../../data/yoloGtold1/train/36044.png +../../data/yoloGtold1/train/36045.png +../../data/yoloGtold1/train/36046.png +../../data/yoloGtold1/train/36047.png +../../data/yoloGtold1/train/36048.png +../../data/yoloGtold1/train/36049.png +../../data/yoloGtold1/train/36050.png +../../data/yoloGtold1/train/36051.png +../../data/yoloGtold1/train/36052.png +../../data/yoloGtold1/train/36053.png +../../data/yoloGtold1/train/36054.png +../../data/yoloGtold1/train/36055.png +../../data/yoloGtold1/train/36056.png +../../data/yoloGtold1/train/36057.png +../../data/yoloGtold1/train/36058.png +../../data/yoloGtold1/train/36059.png +../../data/yoloGtold1/train/36060.png +../../data/yoloGtold1/train/36061.png +../../data/yoloGtold1/train/36062.png +../../data/yoloGtold1/train/36063.png +../../data/yoloGtold1/train/36064.png +../../data/yoloGtold1/train/36065.png +../../data/yoloGtold1/train/36066.png +../../data/yoloGtold1/train/36067.png +../../data/yoloGtold1/train/36068.png +../../data/yoloGtold1/train/36069.png +../../data/yoloGtold1/train/36070.png +../../data/yoloGtold1/train/36071.png +../../data/yoloGtold1/train/36072.png +../../data/yoloGtold1/train/36073.png +../../data/yoloGtold1/train/36074.png +../../data/yoloGtold1/train/36075.png +../../data/yoloGtold1/train/36076.png +../../data/yoloGtold1/train/36077.png +../../data/yoloGtold1/train/36078.png +../../data/yoloGtold1/train/36079.png +../../data/yoloGtold1/train/36080.png +../../data/yoloGtold1/train/36081.png +../../data/yoloGtold1/train/36082.png +../../data/yoloGtold1/train/36083.png +../../data/yoloGtold1/train/36084.png +../../data/yoloGtold1/train/36085.png +../../data/yoloGtold1/train/36086.png +../../data/yoloGtold1/train/36087.png +../../data/yoloGtold1/train/36088.png +../../data/yoloGtold1/train/36089.png +../../data/yoloGtold1/train/36090.png +../../data/yoloGtold1/train/36091.png +../../data/yoloGtold1/train/36092.png +../../data/yoloGtold1/train/36093.png +../../data/yoloGtold1/train/36094.png +../../data/yoloGtold1/train/36095.png +../../data/yoloGtold1/train/36096.png +../../data/yoloGtold1/train/36097.png +../../data/yoloGtold1/train/36098.png +../../data/yoloGtold1/train/36099.png +../../data/yoloGtold1/train/36100.png +../../data/yoloGtold1/train/36101.png +../../data/yoloGtold1/train/36102.png +../../data/yoloGtold1/train/36103.png +../../data/yoloGtold1/train/36104.png +../../data/yoloGtold1/train/36105.png +../../data/yoloGtold1/train/36106.png +../../data/yoloGtold1/train/36107.png +../../data/yoloGtold1/train/36108.png +../../data/yoloGtold1/train/36109.png +../../data/yoloGtold1/train/36110.png +../../data/yoloGtold1/train/36111.png +../../data/yoloGtold1/train/36112.png +../../data/yoloGtold1/train/36113.png +../../data/yoloGtold1/train/36114.png +../../data/yoloGtold1/train/36115.png +../../data/yoloGtold1/train/36116.png +../../data/yoloGtold1/train/36117.png +../../data/yoloGtold1/train/36118.png +../../data/yoloGtold1/train/36119.png +../../data/yoloGtold1/train/36120.png +../../data/yoloGtold1/train/36121.png +../../data/yoloGtold1/train/36122.png +../../data/yoloGtold1/train/36123.png +../../data/yoloGtold1/train/36124.png +../../data/yoloGtold1/train/36125.png +../../data/yoloGtold1/train/36126.png +../../data/yoloGtold1/train/36127.png +../../data/yoloGtold1/train/36128.png +../../data/yoloGtold1/train/36129.png +../../data/yoloGtold1/train/36130.png +../../data/yoloGtold1/train/36131.png +../../data/yoloGtold1/train/36132.png +../../data/yoloGtold1/train/36133.png +../../data/yoloGtold1/train/36134.png +../../data/yoloGtold1/train/36135.png +../../data/yoloGtold1/train/36136.png +../../data/yoloGtold1/train/36137.png +../../data/yoloGtold1/train/36138.png +../../data/yoloGtold1/train/36139.png +../../data/yoloGtold1/train/36140.png +../../data/yoloGtold1/train/36141.png +../../data/yoloGtold1/train/36142.png +../../data/yoloGtold1/train/36143.png +../../data/yoloGtold1/train/36144.png +../../data/yoloGtold1/train/36145.png +../../data/yoloGtold1/train/36146.png +../../data/yoloGtold1/train/36147.png +../../data/yoloGtold1/train/36148.png +../../data/yoloGtold1/train/36149.png +../../data/yoloGtold1/train/36150.png +../../data/yoloGtold1/train/36151.png +../../data/yoloGtold1/train/36152.png +../../data/yoloGtold1/train/36153.png +../../data/yoloGtold1/train/36154.png +../../data/yoloGtold1/train/36155.png +../../data/yoloGtold1/train/36156.png +../../data/yoloGtold1/train/36157.png +../../data/yoloGtold1/train/36158.png +../../data/yoloGtold1/train/36159.png +../../data/yoloGtold1/train/36160.png +../../data/yoloGtold1/train/36161.png +../../data/yoloGtold1/train/36162.png +../../data/yoloGtold1/train/36163.png +../../data/yoloGtold1/train/36164.png +../../data/yoloGtold1/train/36165.png +../../data/yoloGtold1/train/36166.png +../../data/yoloGtold1/train/36167.png +../../data/yoloGtold1/train/36168.png +../../data/yoloGtold1/train/36169.png +../../data/yoloGtold1/train/36170.png +../../data/yoloGtold1/train/36171.png +../../data/yoloGtold1/train/36172.png +../../data/yoloGtold1/train/36173.png +../../data/yoloGtold1/train/36174.png +../../data/yoloGtold1/train/36175.png +../../data/yoloGtold1/train/36176.png +../../data/yoloGtold1/train/36177.png +../../data/yoloGtold1/train/36178.png +../../data/yoloGtold1/train/36179.png +../../data/yoloGtold1/train/36180.png +../../data/yoloGtold1/train/36181.png +../../data/yoloGtold1/train/36182.png +../../data/yoloGtold1/train/36183.png +../../data/yoloGtold1/train/36184.png +../../data/yoloGtold1/train/36185.png +../../data/yoloGtold1/train/36186.png +../../data/yoloGtold1/train/36187.png +../../data/yoloGtold1/train/36188.png +../../data/yoloGtold1/train/36189.png +../../data/yoloGtold1/train/36190.png +../../data/yoloGtold1/train/36191.png +../../data/yoloGtold1/train/36192.png +../../data/yoloGtold1/train/36193.png +../../data/yoloGtold1/train/36194.png +../../data/yoloGtold1/train/36195.png +../../data/yoloGtold1/train/36196.png +../../data/yoloGtold1/train/36197.png +../../data/yoloGtold1/train/36198.png +../../data/yoloGtold1/train/36199.png +../../data/yoloGtold1/train/36200.png +../../data/yoloGtold1/train/36201.png +../../data/yoloGtold1/train/36202.png +../../data/yoloGtold1/train/36203.png +../../data/yoloGtold1/train/36204.png +../../data/yoloGtold1/train/36205.png +../../data/yoloGtold1/train/36206.png +../../data/yoloGtold1/train/36207.png +../../data/yoloGtold1/train/36208.png +../../data/yoloGtold1/train/36209.png +../../data/yoloGtold1/train/36210.png +../../data/yoloGtold1/train/36211.png +../../data/yoloGtold1/train/36212.png +../../data/yoloGtold1/train/36213.png +../../data/yoloGtold1/train/36214.png +../../data/yoloGtold1/train/36215.png +../../data/yoloGtold1/train/36216.png +../../data/yoloGtold1/train/36217.png +../../data/yoloGtold1/train/36218.png +../../data/yoloGtold1/train/36219.png +../../data/yoloGtold1/train/36220.png +../../data/yoloGtold1/train/36221.png +../../data/yoloGtold1/train/36222.png +../../data/yoloGtold1/train/36223.png +../../data/yoloGtold1/train/36224.png +../../data/yoloGtold1/train/36225.png +../../data/yoloGtold1/train/36226.png +../../data/yoloGtold1/train/36227.png +../../data/yoloGtold1/train/36228.png +../../data/yoloGtold1/train/36229.png +../../data/yoloGtold1/train/36230.png +../../data/yoloGtold1/train/36231.png +../../data/yoloGtold1/train/36232.png +../../data/yoloGtold1/train/36233.png +../../data/yoloGtold1/train/36234.png +../../data/yoloGtold1/train/36235.png +../../data/yoloGtold1/train/36236.png +../../data/yoloGtold1/train/36237.png +../../data/yoloGtold1/train/36238.png +../../data/yoloGtold1/train/36239.png +../../data/yoloGtold1/train/36240.png +../../data/yoloGtold1/train/36241.png +../../data/yoloGtold1/train/36242.png +../../data/yoloGtold1/train/36243.png +../../data/yoloGtold1/train/36244.png +../../data/yoloGtold1/train/36245.png +../../data/yoloGtold1/train/36246.png +../../data/yoloGtold1/train/36247.png +../../data/yoloGtold1/train/36248.png +../../data/yoloGtold1/train/36249.png +../../data/yoloGtold1/train/36250.png +../../data/yoloGtold1/train/36251.png +../../data/yoloGtold1/train/36252.png +../../data/yoloGtold1/train/36253.png +../../data/yoloGtold1/train/36254.png +../../data/yoloGtold1/train/36255.png +../../data/yoloGtold1/train/36256.png +../../data/yoloGtold1/train/36257.png +../../data/yoloGtold1/train/36258.png +../../data/yoloGtold1/train/36259.png +../../data/yoloGtold1/train/36260.png +../../data/yoloGtold1/train/36261.png +../../data/yoloGtold1/train/36262.png +../../data/yoloGtold1/train/36263.png +../../data/yoloGtold1/train/36264.png +../../data/yoloGtold1/train/36265.png +../../data/yoloGtold1/train/36266.png +../../data/yoloGtold1/train/36267.png +../../data/yoloGtold1/train/36268.png +../../data/yoloGtold1/train/36269.png +../../data/yoloGtold1/train/36270.png +../../data/yoloGtold1/train/36271.png +../../data/yoloGtold1/train/36272.png +../../data/yoloGtold1/train/36273.png +../../data/yoloGtold1/train/36274.png +../../data/yoloGtold1/train/36275.png +../../data/yoloGtold1/train/36276.png +../../data/yoloGtold1/train/36277.png +../../data/yoloGtold1/train/36278.png +../../data/yoloGtold1/train/36279.png +../../data/yoloGtold1/train/36280.png +../../data/yoloGtold1/train/36281.png +../../data/yoloGtold1/train/36282.png +../../data/yoloGtold1/train/36283.png +../../data/yoloGtold1/train/36284.png +../../data/yoloGtold1/train/36285.png +../../data/yoloGtold1/train/36286.png +../../data/yoloGtold1/train/36287.png +../../data/yoloGtold1/train/36288.png +../../data/yoloGtold1/train/36289.png +../../data/yoloGtold1/train/36290.png +../../data/yoloGtold1/train/36291.png +../../data/yoloGtold1/train/36292.png +../../data/yoloGtold1/train/36293.png +../../data/yoloGtold1/train/36294.png +../../data/yoloGtold1/train/36295.png +../../data/yoloGtold1/train/36296.png +../../data/yoloGtold1/train/36297.png +../../data/yoloGtold1/train/36298.png +../../data/yoloGtold1/train/36299.png +../../data/yoloGtold1/train/36300.png +../../data/yoloGtold1/train/36301.png +../../data/yoloGtold1/train/36302.png +../../data/yoloGtold1/train/36303.png +../../data/yoloGtold1/train/36304.png +../../data/yoloGtold1/train/36305.png +../../data/yoloGtold1/train/36306.png +../../data/yoloGtold1/train/36307.png +../../data/yoloGtold1/train/36308.png +../../data/yoloGtold1/train/36309.png +../../data/yoloGtold1/train/36310.png +../../data/yoloGtold1/train/36311.png +../../data/yoloGtold1/train/36312.png +../../data/yoloGtold1/train/36313.png +../../data/yoloGtold1/train/36314.png +../../data/yoloGtold1/train/36315.png +../../data/yoloGtold1/train/36316.png +../../data/yoloGtold1/train/36317.png +../../data/yoloGtold1/train/36318.png +../../data/yoloGtold1/train/36319.png +../../data/yoloGtold1/train/36320.png +../../data/yoloGtold1/train/36321.png +../../data/yoloGtold1/train/36322.png +../../data/yoloGtold1/train/36323.png +../../data/yoloGtold1/train/36324.png +../../data/yoloGtold1/train/36325.png +../../data/yoloGtold1/train/36326.png +../../data/yoloGtold1/train/36327.png +../../data/yoloGtold1/train/36328.png +../../data/yoloGtold1/train/36329.png +../../data/yoloGtold1/train/36330.png +../../data/yoloGtold1/train/36331.png +../../data/yoloGtold1/train/36332.png +../../data/yoloGtold1/train/36333.png +../../data/yoloGtold1/train/36334.png +../../data/yoloGtold1/train/36335.png +../../data/yoloGtold1/train/36336.png +../../data/yoloGtold1/train/36337.png +../../data/yoloGtold1/train/36338.png +../../data/yoloGtold1/train/36339.png +../../data/yoloGtold1/train/36340.png +../../data/yoloGtold1/train/36341.png +../../data/yoloGtold1/train/36342.png +../../data/yoloGtold1/train/36343.png +../../data/yoloGtold1/train/36344.png +../../data/yoloGtold1/train/36345.png +../../data/yoloGtold1/train/36346.png +../../data/yoloGtold1/train/36347.png +../../data/yoloGtold1/train/36348.png +../../data/yoloGtold1/train/36349.png +../../data/yoloGtold1/train/36350.png +../../data/yoloGtold1/train/36351.png +../../data/yoloGtold1/train/36352.png +../../data/yoloGtold1/train/36353.png +../../data/yoloGtold1/train/36354.png +../../data/yoloGtold1/train/36355.png +../../data/yoloGtold1/train/36356.png +../../data/yoloGtold1/train/36357.png +../../data/yoloGtold1/train/36358.png +../../data/yoloGtold1/train/36359.png +../../data/yoloGtold1/train/36360.png +../../data/yoloGtold1/train/36361.png +../../data/yoloGtold1/train/36362.png +../../data/yoloGtold1/train/36363.png +../../data/yoloGtold1/train/36364.png +../../data/yoloGtold1/train/36365.png +../../data/yoloGtold1/train/36366.png +../../data/yoloGtold1/train/36367.png +../../data/yoloGtold1/train/36368.png +../../data/yoloGtold1/train/36369.png +../../data/yoloGtold1/train/36370.png +../../data/yoloGtold1/train/36371.png +../../data/yoloGtold1/train/36372.png +../../data/yoloGtold1/train/36373.png +../../data/yoloGtold1/train/36374.png +../../data/yoloGtold1/train/36375.png +../../data/yoloGtold1/train/36376.png +../../data/yoloGtold1/train/36377.png +../../data/yoloGtold1/train/36378.png +../../data/yoloGtold1/train/36379.png +../../data/yoloGtold1/train/36380.png +../../data/yoloGtold1/train/36381.png +../../data/yoloGtold1/train/36382.png +../../data/yoloGtold1/train/36383.png +../../data/yoloGtold1/train/36384.png +../../data/yoloGtold1/train/36385.png +../../data/yoloGtold1/train/36386.png +../../data/yoloGtold1/train/36387.png +../../data/yoloGtold1/train/36388.png +../../data/yoloGtold1/train/36389.png +../../data/yoloGtold1/train/36390.png +../../data/yoloGtold1/train/36391.png +../../data/yoloGtold1/train/36392.png +../../data/yoloGtold1/train/36393.png +../../data/yoloGtold1/train/36394.png +../../data/yoloGtold1/train/36395.png +../../data/yoloGtold1/train/36396.png +../../data/yoloGtold1/train/36397.png +../../data/yoloGtold1/train/36398.png +../../data/yoloGtold1/train/36399.png +../../data/yoloGtold1/train/36400.png +../../data/yoloGtold1/train/36401.png +../../data/yoloGtold1/train/36402.png +../../data/yoloGtold1/train/36403.png +../../data/yoloGtold1/train/36404.png +../../data/yoloGtold1/train/36405.png +../../data/yoloGtold1/train/36406.png +../../data/yoloGtold1/train/36407.png +../../data/yoloGtold1/train/36408.png +../../data/yoloGtold1/train/36409.png +../../data/yoloGtold1/train/36410.png +../../data/yoloGtold1/train/36411.png +../../data/yoloGtold1/train/36412.png +../../data/yoloGtold1/train/36413.png +../../data/yoloGtold1/train/36414.png +../../data/yoloGtold1/train/36415.png +../../data/yoloGtold1/train/36416.png +../../data/yoloGtold1/train/36417.png +../../data/yoloGtold1/train/36418.png +../../data/yoloGtold1/train/36419.png +../../data/yoloGtold1/train/36420.png +../../data/yoloGtold1/train/36421.png +../../data/yoloGtold1/train/36422.png +../../data/yoloGtold1/train/36423.png +../../data/yoloGtold1/train/36424.png +../../data/yoloGtold1/train/36425.png +../../data/yoloGtold1/train/36426.png +../../data/yoloGtold1/train/36427.png +../../data/yoloGtold1/train/36428.png +../../data/yoloGtold1/train/36429.png +../../data/yoloGtold1/train/36430.png +../../data/yoloGtold1/train/36431.png +../../data/yoloGtold1/train/36432.png +../../data/yoloGtold1/train/36433.png +../../data/yoloGtold1/train/36434.png +../../data/yoloGtold1/train/36435.png +../../data/yoloGtold1/train/36436.png +../../data/yoloGtold1/train/36437.png +../../data/yoloGtold1/train/36438.png +../../data/yoloGtold1/train/36439.png +../../data/yoloGtold1/train/36440.png +../../data/yoloGtold1/train/36441.png +../../data/yoloGtold1/train/36442.png +../../data/yoloGtold1/train/36443.png +../../data/yoloGtold1/train/36444.png +../../data/yoloGtold1/train/36445.png +../../data/yoloGtold1/train/36446.png +../../data/yoloGtold1/train/36447.png +../../data/yoloGtold1/train/36448.png +../../data/yoloGtold1/train/36449.png +../../data/yoloGtold1/train/36450.png +../../data/yoloGtold1/train/36451.png +../../data/yoloGtold1/train/36452.png +../../data/yoloGtold1/train/36453.png +../../data/yoloGtold1/train/36454.png +../../data/yoloGtold1/train/36455.png +../../data/yoloGtold1/train/36456.png +../../data/yoloGtold1/train/36457.png +../../data/yoloGtold1/train/36458.png +../../data/yoloGtold1/train/36459.png +../../data/yoloGtold1/train/36460.png +../../data/yoloGtold1/train/36461.png +../../data/yoloGtold1/train/36462.png +../../data/yoloGtold1/train/36463.png +../../data/yoloGtold1/train/36464.png +../../data/yoloGtold1/train/36465.png +../../data/yoloGtold1/train/36466.png +../../data/yoloGtold1/train/36467.png +../../data/yoloGtold1/train/36468.png +../../data/yoloGtold1/train/36469.png +../../data/yoloGtold1/train/36470.png +../../data/yoloGtold1/train/36471.png +../../data/yoloGtold1/train/36472.png +../../data/yoloGtold1/train/36473.png +../../data/yoloGtold1/train/36474.png +../../data/yoloGtold1/train/36475.png +../../data/yoloGtold1/train/36476.png +../../data/yoloGtold1/train/36477.png +../../data/yoloGtold1/train/36478.png +../../data/yoloGtold1/train/36479.png +../../data/yoloGtold1/train/36480.png +../../data/yoloGtold1/train/36481.png +../../data/yoloGtold1/train/36482.png +../../data/yoloGtold1/train/36483.png +../../data/yoloGtold1/train/36484.png +../../data/yoloGtold1/train/36485.png +../../data/yoloGtold1/train/36486.png +../../data/yoloGtold1/train/36487.png +../../data/yoloGtold1/train/36488.png +../../data/yoloGtold1/train/36489.png +../../data/yoloGtold1/train/36490.png +../../data/yoloGtold1/train/36491.png +../../data/yoloGtold1/train/36492.png +../../data/yoloGtold1/train/36493.png +../../data/yoloGtold1/train/36494.png +../../data/yoloGtold1/train/36495.png +../../data/yoloGtold1/train/36496.png +../../data/yoloGtold1/train/36497.png +../../data/yoloGtold1/train/36498.png +../../data/yoloGtold1/train/36499.png +../../data/yoloGtold1/train/36500.png +../../data/yoloGtold1/train/36501.png +../../data/yoloGtold1/train/36502.png +../../data/yoloGtold1/train/36503.png +../../data/yoloGtold1/train/36504.png +../../data/yoloGtold1/train/36505.png +../../data/yoloGtold1/train/36506.png +../../data/yoloGtold1/train/36507.png +../../data/yoloGtold1/train/36508.png +../../data/yoloGtold1/train/36509.png +../../data/yoloGtold1/train/36510.png +../../data/yoloGtold1/train/36511.png +../../data/yoloGtold1/train/36512.png +../../data/yoloGtold1/train/36513.png +../../data/yoloGtold1/train/36514.png +../../data/yoloGtold1/train/36515.png +../../data/yoloGtold1/train/36516.png +../../data/yoloGtold1/train/36517.png +../../data/yoloGtold1/train/36518.png +../../data/yoloGtold1/train/36519.png +../../data/yoloGtold1/train/36520.png +../../data/yoloGtold1/train/36521.png +../../data/yoloGtold1/train/36522.png +../../data/yoloGtold1/train/36523.png +../../data/yoloGtold1/train/36524.png +../../data/yoloGtold1/train/36525.png +../../data/yoloGtold1/train/36526.png +../../data/yoloGtold1/train/36527.png +../../data/yoloGtold1/train/36528.png +../../data/yoloGtold1/train/36529.png +../../data/yoloGtold1/train/36530.png +../../data/yoloGtold1/train/36531.png +../../data/yoloGtold1/train/36532.png +../../data/yoloGtold1/train/36533.png +../../data/yoloGtold1/train/36534.png +../../data/yoloGtold1/train/36535.png +../../data/yoloGtold1/train/36536.png +../../data/yoloGtold1/train/36537.png +../../data/yoloGtold1/train/36538.png +../../data/yoloGtold1/train/36539.png +../../data/yoloGtold1/train/36540.png +../../data/yoloGtold1/train/36541.png +../../data/yoloGtold1/train/36542.png +../../data/yoloGtold1/train/36543.png +../../data/yoloGtold1/train/36544.png +../../data/yoloGtold1/train/36545.png +../../data/yoloGtold1/train/36546.png +../../data/yoloGtold1/train/36547.png +../../data/yoloGtold1/train/36548.png +../../data/yoloGtold1/train/36549.png +../../data/yoloGtold1/train/36550.png +../../data/yoloGtold1/train/36551.png +../../data/yoloGtold1/train/36552.png +../../data/yoloGtold1/train/36553.png +../../data/yoloGtold1/train/36554.png +../../data/yoloGtold1/train/36555.png +../../data/yoloGtold1/train/36556.png +../../data/yoloGtold1/train/36557.png +../../data/yoloGtold1/train/36558.png +../../data/yoloGtold1/train/36559.png +../../data/yoloGtold1/train/36560.png +../../data/yoloGtold1/train/36561.png +../../data/yoloGtold1/train/36562.png +../../data/yoloGtold1/train/36563.png +../../data/yoloGtold1/train/36564.png +../../data/yoloGtold1/train/36565.png +../../data/yoloGtold1/train/36566.png +../../data/yoloGtold1/train/36567.png +../../data/yoloGtold1/train/36568.png +../../data/yoloGtold1/train/36569.png +../../data/yoloGtold1/train/36570.png +../../data/yoloGtold1/train/36571.png +../../data/yoloGtold1/train/36572.png +../../data/yoloGtold1/train/36573.png +../../data/yoloGtold1/train/36574.png +../../data/yoloGtold1/train/36575.png +../../data/yoloGtold1/train/36576.png +../../data/yoloGtold1/train/36577.png +../../data/yoloGtold1/train/36578.png +../../data/yoloGtold1/train/36579.png +../../data/yoloGtold1/train/36580.png +../../data/yoloGtold1/train/36581.png +../../data/yoloGtold1/train/36582.png +../../data/yoloGtold1/train/36583.png +../../data/yoloGtold1/train/36584.png +../../data/yoloGtold1/train/36585.png +../../data/yoloGtold1/train/36586.png +../../data/yoloGtold1/train/36587.png +../../data/yoloGtold1/train/36588.png +../../data/yoloGtold1/train/36589.png +../../data/yoloGtold1/train/36590.png +../../data/yoloGtold1/train/36591.png +../../data/yoloGtold1/train/36592.png +../../data/yoloGtold1/train/36593.png +../../data/yoloGtold1/train/36594.png +../../data/yoloGtold1/train/36595.png +../../data/yoloGtold1/train/36596.png +../../data/yoloGtold1/train/36597.png +../../data/yoloGtold1/train/36598.png +../../data/yoloGtold1/train/36599.png +../../data/yoloGtold1/train/36600.png +../../data/yoloGtold1/train/36601.png +../../data/yoloGtold1/train/36602.png +../../data/yoloGtold1/train/36603.png +../../data/yoloGtold1/train/36604.png +../../data/yoloGtold1/train/36605.png +../../data/yoloGtold1/train/36606.png +../../data/yoloGtold1/train/36607.png +../../data/yoloGtold1/train/36608.png +../../data/yoloGtold1/train/36609.png +../../data/yoloGtold1/train/36610.png +../../data/yoloGtold1/train/36611.png +../../data/yoloGtold1/train/36612.png +../../data/yoloGtold1/train/36613.png +../../data/yoloGtold1/train/36614.png +../../data/yoloGtold1/train/36615.png +../../data/yoloGtold1/train/36616.png +../../data/yoloGtold1/train/36617.png +../../data/yoloGtold1/train/36618.png +../../data/yoloGtold1/train/36619.png +../../data/yoloGtold1/train/36620.png +../../data/yoloGtold1/train/36621.png +../../data/yoloGtold1/train/36622.png +../../data/yoloGtold1/train/36623.png +../../data/yoloGtold1/train/36624.png +../../data/yoloGtold1/train/36625.png +../../data/yoloGtold1/train/36626.png +../../data/yoloGtold1/train/36627.png +../../data/yoloGtold1/train/36628.png +../../data/yoloGtold1/train/36629.png +../../data/yoloGtold1/train/36630.png +../../data/yoloGtold1/train/36631.png +../../data/yoloGtold1/train/36632.png +../../data/yoloGtold1/train/36633.png +../../data/yoloGtold1/train/36634.png +../../data/yoloGtold1/train/36635.png +../../data/yoloGtold1/train/36636.png +../../data/yoloGtold1/train/36637.png +../../data/yoloGtold1/train/36638.png +../../data/yoloGtold1/train/36639.png +../../data/yoloGtold1/train/36640.png +../../data/yoloGtold1/train/36641.png +../../data/yoloGtold1/train/36642.png +../../data/yoloGtold1/train/36643.png +../../data/yoloGtold1/train/36644.png +../../data/yoloGtold1/train/36645.png +../../data/yoloGtold1/train/36646.png +../../data/yoloGtold1/train/36647.png +../../data/yoloGtold1/train/36648.png +../../data/yoloGtold1/train/36649.png +../../data/yoloGtold1/train/36650.png +../../data/yoloGtold1/train/36651.png +../../data/yoloGtold1/train/36652.png +../../data/yoloGtold1/train/36653.png +../../data/yoloGtold1/train/36654.png +../../data/yoloGtold1/train/36655.png +../../data/yoloGtold1/train/36656.png +../../data/yoloGtold1/train/36657.png +../../data/yoloGtold1/train/36658.png +../../data/yoloGtold1/train/36659.png +../../data/yoloGtold1/train/36660.png +../../data/yoloGtold1/train/36661.png +../../data/yoloGtold1/train/36662.png +../../data/yoloGtold1/train/36663.png +../../data/yoloGtold1/train/36664.png +../../data/yoloGtold1/train/36665.png +../../data/yoloGtold1/train/36666.png +../../data/yoloGtold1/train/36667.png +../../data/yoloGtold1/train/36668.png +../../data/yoloGtold1/train/36669.png +../../data/yoloGtold1/train/36670.png +../../data/yoloGtold1/train/36671.png +../../data/yoloGtold1/train/36672.png +../../data/yoloGtold1/train/36673.png +../../data/yoloGtold1/train/36674.png +../../data/yoloGtold1/train/36675.png +../../data/yoloGtold1/train/36676.png +../../data/yoloGtold1/train/36677.png +../../data/yoloGtold1/train/36678.png +../../data/yoloGtold1/train/36679.png +../../data/yoloGtold1/train/36680.png +../../data/yoloGtold1/train/36681.png +../../data/yoloGtold1/train/36682.png +../../data/yoloGtold1/train/36683.png +../../data/yoloGtold1/train/36684.png +../../data/yoloGtold1/train/36685.png +../../data/yoloGtold1/train/36686.png +../../data/yoloGtold1/train/36687.png +../../data/yoloGtold1/train/36688.png +../../data/yoloGtold1/train/36689.png +../../data/yoloGtold1/train/36690.png +../../data/yoloGtold1/train/36691.png +../../data/yoloGtold1/train/36692.png +../../data/yoloGtold1/train/36693.png +../../data/yoloGtold1/train/36694.png +../../data/yoloGtold1/train/36695.png +../../data/yoloGtold1/train/36696.png +../../data/yoloGtold1/train/36697.png +../../data/yoloGtold1/train/36698.png +../../data/yoloGtold1/train/36699.png +../../data/yoloGtold1/train/36700.png +../../data/yoloGtold1/train/36701.png +../../data/yoloGtold1/train/36702.png +../../data/yoloGtold1/train/36703.png +../../data/yoloGtold1/train/36704.png +../../data/yoloGtold1/train/36705.png +../../data/yoloGtold1/train/36706.png +../../data/yoloGtold1/train/36707.png +../../data/yoloGtold1/train/36708.png +../../data/yoloGtold1/train/36709.png +../../data/yoloGtold1/train/36710.png +../../data/yoloGtold1/train/36711.png +../../data/yoloGtold1/train/36712.png +../../data/yoloGtold1/train/36713.png +../../data/yoloGtold1/train/36714.png +../../data/yoloGtold1/train/36715.png +../../data/yoloGtold1/train/36716.png +../../data/yoloGtold1/train/36717.png +../../data/yoloGtold1/train/36718.png +../../data/yoloGtold1/train/36719.png +../../data/yoloGtold1/train/36720.png +../../data/yoloGtold1/train/36721.png +../../data/yoloGtold1/train/36722.png +../../data/yoloGtold1/train/36723.png +../../data/yoloGtold1/train/36724.png +../../data/yoloGtold1/train/36725.png +../../data/yoloGtold1/train/36726.png +../../data/yoloGtold1/train/36727.png +../../data/yoloGtold1/train/36728.png +../../data/yoloGtold1/train/36729.png +../../data/yoloGtold1/train/36730.png +../../data/yoloGtold1/train/36731.png +../../data/yoloGtold1/train/36732.png +../../data/yoloGtold1/train/36733.png +../../data/yoloGtold1/train/36734.png +../../data/yoloGtold1/train/36735.png +../../data/yoloGtold1/train/36736.png +../../data/yoloGtold1/train/36737.png +../../data/yoloGtold1/train/36738.png +../../data/yoloGtold1/train/36739.png +../../data/yoloGtold1/train/36740.png +../../data/yoloGtold1/train/36741.png +../../data/yoloGtold1/train/36742.png +../../data/yoloGtold1/train/36743.png +../../data/yoloGtold1/train/36744.png +../../data/yoloGtold1/train/36745.png +../../data/yoloGtold1/train/36746.png +../../data/yoloGtold1/train/36747.png +../../data/yoloGtold1/train/36748.png +../../data/yoloGtold1/train/36749.png +../../data/yoloGtold1/train/36750.png +../../data/yoloGtold1/train/36751.png +../../data/yoloGtold1/train/36752.png +../../data/yoloGtold1/train/36753.png +../../data/yoloGtold1/train/36754.png +../../data/yoloGtold1/train/36755.png +../../data/yoloGtold1/train/36756.png +../../data/yoloGtold1/train/36757.png +../../data/yoloGtold1/train/36758.png +../../data/yoloGtold1/train/36759.png +../../data/yoloGtold1/train/36760.png +../../data/yoloGtold1/train/36761.png +../../data/yoloGtold1/train/36762.png +../../data/yoloGtold1/train/36763.png +../../data/yoloGtold1/train/36764.png +../../data/yoloGtold1/train/36765.png +../../data/yoloGtold1/train/36766.png +../../data/yoloGtold1/train/36767.png +../../data/yoloGtold1/train/36768.png +../../data/yoloGtold1/train/36769.png +../../data/yoloGtold1/train/36770.png +../../data/yoloGtold1/train/36771.png +../../data/yoloGtold1/train/36772.png +../../data/yoloGtold1/train/36773.png +../../data/yoloGtold1/train/36774.png +../../data/yoloGtold1/train/36775.png +../../data/yoloGtold1/train/36776.png +../../data/yoloGtold1/train/36777.png +../../data/yoloGtold1/train/36778.png +../../data/yoloGtold1/train/36779.png +../../data/yoloGtold1/train/36780.png +../../data/yoloGtold1/train/36781.png +../../data/yoloGtold1/train/36782.png +../../data/yoloGtold1/train/36783.png +../../data/yoloGtold1/train/36784.png +../../data/yoloGtold1/train/36785.png +../../data/yoloGtold1/train/36786.png +../../data/yoloGtold1/train/36787.png +../../data/yoloGtold1/train/36788.png +../../data/yoloGtold1/train/36789.png +../../data/yoloGtold1/train/36790.png +../../data/yoloGtold1/train/36791.png +../../data/yoloGtold1/train/36792.png +../../data/yoloGtold1/train/36793.png +../../data/yoloGtold1/train/36794.png +../../data/yoloGtold1/train/36795.png +../../data/yoloGtold1/train/36796.png +../../data/yoloGtold1/train/36797.png +../../data/yoloGtold1/train/36798.png +../../data/yoloGtold1/train/36799.png +../../data/yoloGtold1/train/36800.png +../../data/yoloGtold1/train/36801.png +../../data/yoloGtold1/train/36802.png +../../data/yoloGtold1/train/36803.png +../../data/yoloGtold1/train/36804.png +../../data/yoloGtold1/train/36805.png +../../data/yoloGtold1/train/36806.png +../../data/yoloGtold1/train/36807.png +../../data/yoloGtold1/train/36808.png +../../data/yoloGtold1/train/36809.png +../../data/yoloGtold1/train/36810.png +../../data/yoloGtold1/train/36811.png +../../data/yoloGtold1/train/36812.png +../../data/yoloGtold1/train/36813.png +../../data/yoloGtold1/train/36814.png +../../data/yoloGtold1/train/36815.png +../../data/yoloGtold1/train/36816.png +../../data/yoloGtold1/train/36817.png +../../data/yoloGtold1/train/36818.png +../../data/yoloGtold1/train/36819.png +../../data/yoloGtold1/train/36820.png +../../data/yoloGtold1/train/36821.png +../../data/yoloGtold1/train/36822.png +../../data/yoloGtold1/train/36823.png +../../data/yoloGtold1/train/36824.png +../../data/yoloGtold1/train/36825.png +../../data/yoloGtold1/train/36826.png +../../data/yoloGtold1/train/36827.png +../../data/yoloGtold1/train/36828.png +../../data/yoloGtold1/train/36829.png +../../data/yoloGtold1/train/36830.png +../../data/yoloGtold1/train/36831.png +../../data/yoloGtold1/train/36832.png +../../data/yoloGtold1/train/36833.png +../../data/yoloGtold1/train/36834.png +../../data/yoloGtold1/train/36835.png +../../data/yoloGtold1/train/36836.png +../../data/yoloGtold1/train/36837.png +../../data/yoloGtold1/train/36838.png +../../data/yoloGtold1/train/36839.png +../../data/yoloGtold1/train/36840.png +../../data/yoloGtold1/train/36841.png +../../data/yoloGtold1/train/36842.png +../../data/yoloGtold1/train/36843.png +../../data/yoloGtold1/train/36844.png +../../data/yoloGtold1/train/36845.png +../../data/yoloGtold1/train/36846.png +../../data/yoloGtold1/train/36847.png +../../data/yoloGtold1/train/36848.png +../../data/yoloGtold1/train/36849.png +../../data/yoloGtold1/train/36850.png +../../data/yoloGtold1/train/36851.png +../../data/yoloGtold1/train/36852.png +../../data/yoloGtold1/train/36853.png +../../data/yoloGtold1/train/36854.png +../../data/yoloGtold1/train/36855.png +../../data/yoloGtold1/train/36856.png +../../data/yoloGtold1/train/36857.png +../../data/yoloGtold1/train/36858.png +../../data/yoloGtold1/train/36859.png +../../data/yoloGtold1/train/36860.png +../../data/yoloGtold1/train/36861.png +../../data/yoloGtold1/train/36862.png +../../data/yoloGtold1/train/36863.png +../../data/yoloGtold1/train/36864.png +../../data/yoloGtold1/train/36865.png +../../data/yoloGtold1/train/36866.png +../../data/yoloGtold1/train/36867.png +../../data/yoloGtold1/train/36868.png +../../data/yoloGtold1/train/36869.png +../../data/yoloGtold1/train/36870.png +../../data/yoloGtold1/train/36871.png +../../data/yoloGtold1/train/36872.png +../../data/yoloGtold1/train/36873.png +../../data/yoloGtold1/train/36874.png +../../data/yoloGtold1/train/36875.png +../../data/yoloGtold1/train/36876.png +../../data/yoloGtold1/train/36877.png +../../data/yoloGtold1/train/36878.png +../../data/yoloGtold1/train/36879.png +../../data/yoloGtold1/train/36880.png +../../data/yoloGtold1/train/36881.png +../../data/yoloGtold1/train/36882.png +../../data/yoloGtold1/train/36883.png +../../data/yoloGtold1/train/36884.png +../../data/yoloGtold1/train/36885.png +../../data/yoloGtold1/train/36886.png +../../data/yoloGtold1/train/36887.png +../../data/yoloGtold1/train/36888.png +../../data/yoloGtold1/train/36889.png +../../data/yoloGtold1/train/36890.png +../../data/yoloGtold1/train/36891.png +../../data/yoloGtold1/train/36892.png +../../data/yoloGtold1/train/36893.png +../../data/yoloGtold1/train/36894.png +../../data/yoloGtold1/train/36895.png +../../data/yoloGtold1/train/36896.png +../../data/yoloGtold1/train/36897.png +../../data/yoloGtold1/train/36898.png +../../data/yoloGtold1/train/36899.png +../../data/yoloGtold1/train/36900.png +../../data/yoloGtold1/train/36901.png +../../data/yoloGtold1/train/36902.png +../../data/yoloGtold1/train/36903.png +../../data/yoloGtold1/train/36904.png +../../data/yoloGtold1/train/36905.png +../../data/yoloGtold1/train/36906.png +../../data/yoloGtold1/train/36907.png +../../data/yoloGtold1/train/36908.png +../../data/yoloGtold1/train/36909.png +../../data/yoloGtold1/train/36910.png +../../data/yoloGtold1/train/36911.png +../../data/yoloGtold1/train/36912.png +../../data/yoloGtold1/train/36913.png +../../data/yoloGtold1/train/36914.png +../../data/yoloGtold1/train/36915.png +../../data/yoloGtold1/train/36916.png +../../data/yoloGtold1/train/36917.png +../../data/yoloGtold1/train/36918.png +../../data/yoloGtold1/train/36919.png +../../data/yoloGtold1/train/36920.png +../../data/yoloGtold1/train/36921.png +../../data/yoloGtold1/train/36922.png +../../data/yoloGtold1/train/36923.png +../../data/yoloGtold1/train/36924.png +../../data/yoloGtold1/train/36925.png +../../data/yoloGtold1/train/36926.png +../../data/yoloGtold1/train/36927.png +../../data/yoloGtold1/train/36928.png +../../data/yoloGtold1/train/36929.png +../../data/yoloGtold1/train/36930.png +../../data/yoloGtold1/train/36931.png +../../data/yoloGtold1/train/36932.png +../../data/yoloGtold1/train/36933.png +../../data/yoloGtold1/train/36934.png +../../data/yoloGtold1/train/36935.png +../../data/yoloGtold1/train/36936.png +../../data/yoloGtold1/train/36937.png +../../data/yoloGtold1/train/36938.png +../../data/yoloGtold1/train/36939.png +../../data/yoloGtold1/train/36940.png +../../data/yoloGtold1/train/36941.png +../../data/yoloGtold1/train/36942.png +../../data/yoloGtold1/train/36943.png +../../data/yoloGtold1/train/36944.png +../../data/yoloGtold1/train/36945.png +../../data/yoloGtold1/train/36946.png +../../data/yoloGtold1/train/36947.png +../../data/yoloGtold1/train/36948.png +../../data/yoloGtold1/train/36949.png +../../data/yoloGtold1/train/36950.png +../../data/yoloGtold1/train/36951.png +../../data/yoloGtold1/train/36952.png +../../data/yoloGtold1/train/36953.png +../../data/yoloGtold1/train/36954.png +../../data/yoloGtold1/train/36955.png +../../data/yoloGtold1/train/36956.png +../../data/yoloGtold1/train/36957.png +../../data/yoloGtold1/train/36958.png +../../data/yoloGtold1/train/36959.png +../../data/yoloGtold1/train/36960.png +../../data/yoloGtold1/train/36961.png +../../data/yoloGtold1/train/36962.png +../../data/yoloGtold1/train/36963.png +../../data/yoloGtold1/train/36964.png +../../data/yoloGtold1/train/36965.png +../../data/yoloGtold1/train/36966.png +../../data/yoloGtold1/train/36967.png +../../data/yoloGtold1/train/36968.png +../../data/yoloGtold1/train/36969.png +../../data/yoloGtold1/train/36970.png +../../data/yoloGtold1/train/36971.png +../../data/yoloGtold1/train/36972.png +../../data/yoloGtold1/train/36973.png +../../data/yoloGtold1/train/36974.png +../../data/yoloGtold1/train/36975.png +../../data/yoloGtold1/train/36976.png +../../data/yoloGtold1/train/36977.png +../../data/yoloGtold1/train/36978.png +../../data/yoloGtold1/train/36979.png +../../data/yoloGtold1/train/36980.png +../../data/yoloGtold1/train/36981.png +../../data/yoloGtold1/train/36982.png +../../data/yoloGtold1/train/36983.png +../../data/yoloGtold1/train/36984.png +../../data/yoloGtold1/train/36985.png +../../data/yoloGtold1/train/36986.png +../../data/yoloGtold1/train/36987.png +../../data/yoloGtold1/train/36988.png +../../data/yoloGtold1/train/36989.png +../../data/yoloGtold1/train/36990.png +../../data/yoloGtold1/train/36991.png +../../data/yoloGtold1/train/36992.png +../../data/yoloGtold1/train/36993.png +../../data/yoloGtold1/train/36994.png +../../data/yoloGtold1/train/36995.png +../../data/yoloGtold1/train/36996.png +../../data/yoloGtold1/train/36997.png +../../data/yoloGtold1/train/36998.png +../../data/yoloGtold1/train/36999.png +../../data/yoloGtold1/train/37000.png +../../data/yoloGtold1/train/37001.png +../../data/yoloGtold1/train/37002.png +../../data/yoloGtold1/train/37003.png +../../data/yoloGtold1/train/37004.png +../../data/yoloGtold1/train/37005.png +../../data/yoloGtold1/train/37006.png +../../data/yoloGtold1/train/37007.png +../../data/yoloGtold1/train/37008.png +../../data/yoloGtold1/train/37009.png +../../data/yoloGtold1/train/37010.png +../../data/yoloGtold1/train/37011.png +../../data/yoloGtold1/train/37012.png +../../data/yoloGtold1/train/37013.png +../../data/yoloGtold1/train/37014.png +../../data/yoloGtold1/train/37015.png +../../data/yoloGtold1/train/37016.png +../../data/yoloGtold1/train/37017.png +../../data/yoloGtold1/train/37018.png +../../data/yoloGtold1/train/37019.png +../../data/yoloGtold1/train/37020.png +../../data/yoloGtold1/train/37021.png +../../data/yoloGtold1/train/37022.png +../../data/yoloGtold1/train/37023.png +../../data/yoloGtold1/train/37024.png +../../data/yoloGtold1/train/37025.png +../../data/yoloGtold1/train/37026.png +../../data/yoloGtold1/train/37027.png +../../data/yoloGtold1/train/37028.png +../../data/yoloGtold1/train/37029.png +../../data/yoloGtold1/train/37030.png +../../data/yoloGtold1/train/37031.png +../../data/yoloGtold1/train/37032.png +../../data/yoloGtold1/train/37033.png +../../data/yoloGtold1/train/37034.png +../../data/yoloGtold1/train/37035.png +../../data/yoloGtold1/train/37036.png +../../data/yoloGtold1/train/37037.png +../../data/yoloGtold1/train/37038.png +../../data/yoloGtold1/train/37039.png +../../data/yoloGtold1/train/37040.png +../../data/yoloGtold1/train/37041.png +../../data/yoloGtold1/train/37042.png +../../data/yoloGtold1/train/37043.png +../../data/yoloGtold1/train/37044.png +../../data/yoloGtold1/train/37045.png +../../data/yoloGtold1/train/37046.png +../../data/yoloGtold1/train/37047.png +../../data/yoloGtold1/train/37048.png +../../data/yoloGtold1/train/37049.png +../../data/yoloGtold1/train/37050.png +../../data/yoloGtold1/train/37051.png +../../data/yoloGtold1/train/37052.png +../../data/yoloGtold1/train/37053.png +../../data/yoloGtold1/train/37054.png +../../data/yoloGtold1/train/37055.png +../../data/yoloGtold1/train/37056.png +../../data/yoloGtold1/train/37057.png +../../data/yoloGtold1/train/37058.png +../../data/yoloGtold1/train/37059.png +../../data/yoloGtold1/train/37060.png +../../data/yoloGtold1/train/37061.png +../../data/yoloGtold1/train/37062.png +../../data/yoloGtold1/train/37063.png +../../data/yoloGtold1/train/37064.png +../../data/yoloGtold1/train/37065.png +../../data/yoloGtold1/train/37066.png +../../data/yoloGtold1/train/37067.png +../../data/yoloGtold1/train/37068.png +../../data/yoloGtold1/train/37069.png +../../data/yoloGtold1/train/37070.png +../../data/yoloGtold1/train/37071.png +../../data/yoloGtold1/train/37072.png +../../data/yoloGtold1/train/37073.png +../../data/yoloGtold1/train/37074.png +../../data/yoloGtold1/train/37075.png +../../data/yoloGtold1/train/37076.png +../../data/yoloGtold1/train/37077.png +../../data/yoloGtold1/train/37078.png +../../data/yoloGtold1/train/37079.png +../../data/yoloGtold1/train/37080.png +../../data/yoloGtold1/train/37081.png +../../data/yoloGtold1/train/37082.png +../../data/yoloGtold1/train/37083.png +../../data/yoloGtold1/train/37084.png +../../data/yoloGtold1/train/37085.png +../../data/yoloGtold1/train/37086.png +../../data/yoloGtold1/train/37087.png +../../data/yoloGtold1/train/37088.png +../../data/yoloGtold1/train/37089.png +../../data/yoloGtold1/train/37090.png +../../data/yoloGtold1/train/37091.png +../../data/yoloGtold1/train/37092.png +../../data/yoloGtold1/train/37093.png +../../data/yoloGtold1/train/37094.png +../../data/yoloGtold1/train/37095.png +../../data/yoloGtold1/train/37096.png +../../data/yoloGtold1/train/37097.png +../../data/yoloGtold1/train/37098.png +../../data/yoloGtold1/train/37099.png +../../data/yoloGtold1/train/37100.png +../../data/yoloGtold1/train/37101.png +../../data/yoloGtold1/train/37102.png +../../data/yoloGtold1/train/37103.png +../../data/yoloGtold1/train/37104.png +../../data/yoloGtold1/train/37105.png +../../data/yoloGtold1/train/37106.png +../../data/yoloGtold1/train/37107.png +../../data/yoloGtold1/train/37108.png +../../data/yoloGtold1/train/37109.png +../../data/yoloGtold1/train/37110.png +../../data/yoloGtold1/train/37111.png +../../data/yoloGtold1/train/37112.png +../../data/yoloGtold1/train/37113.png +../../data/yoloGtold1/train/37114.png +../../data/yoloGtold1/train/37115.png +../../data/yoloGtold1/train/37116.png +../../data/yoloGtold1/train/37117.png +../../data/yoloGtold1/train/37118.png +../../data/yoloGtold1/train/37119.png +../../data/yoloGtold1/train/37120.png +../../data/yoloGtold1/train/37121.png +../../data/yoloGtold1/train/37122.png +../../data/yoloGtold1/train/37123.png +../../data/yoloGtold1/train/37124.png +../../data/yoloGtold1/train/37125.png +../../data/yoloGtold1/train/37126.png +../../data/yoloGtold1/train/37127.png +../../data/yoloGtold1/train/37128.png +../../data/yoloGtold1/train/37129.png +../../data/yoloGtold1/train/37130.png +../../data/yoloGtold1/train/37131.png +../../data/yoloGtold1/train/37132.png +../../data/yoloGtold1/train/37133.png +../../data/yoloGtold1/train/37134.png +../../data/yoloGtold1/train/37135.png +../../data/yoloGtold1/train/37136.png +../../data/yoloGtold1/train/37137.png +../../data/yoloGtold1/train/37138.png +../../data/yoloGtold1/train/37139.png +../../data/yoloGtold1/train/37140.png +../../data/yoloGtold1/train/37141.png +../../data/yoloGtold1/train/37142.png +../../data/yoloGtold1/train/37143.png +../../data/yoloGtold1/train/37144.png +../../data/yoloGtold1/train/37145.png +../../data/yoloGtold1/train/37146.png +../../data/yoloGtold1/train/37147.png +../../data/yoloGtold1/train/37148.png +../../data/yoloGtold1/train/37149.png +../../data/yoloGtold1/train/37150.png +../../data/yoloGtold1/train/37151.png +../../data/yoloGtold1/train/37152.png +../../data/yoloGtold1/train/37153.png +../../data/yoloGtold1/train/37154.png +../../data/yoloGtold1/train/37155.png +../../data/yoloGtold1/train/37156.png +../../data/yoloGtold1/train/37157.png +../../data/yoloGtold1/train/37158.png +../../data/yoloGtold1/train/37159.png +../../data/yoloGtold1/train/37160.png +../../data/yoloGtold1/train/37161.png +../../data/yoloGtold1/train/37162.png +../../data/yoloGtold1/train/37163.png +../../data/yoloGtold1/train/37164.png +../../data/yoloGtold1/train/37165.png +../../data/yoloGtold1/train/37166.png +../../data/yoloGtold1/train/37167.png +../../data/yoloGtold1/train/37168.png +../../data/yoloGtold1/train/37169.png +../../data/yoloGtold1/train/37170.png +../../data/yoloGtold1/train/37171.png +../../data/yoloGtold1/train/37172.png +../../data/yoloGtold1/train/37173.png +../../data/yoloGtold1/train/37174.png +../../data/yoloGtold1/train/37175.png +../../data/yoloGtold1/train/37176.png +../../data/yoloGtold1/train/37177.png +../../data/yoloGtold1/train/37178.png +../../data/yoloGtold1/train/37179.png +../../data/yoloGtold1/train/37180.png +../../data/yoloGtold1/train/37181.png +../../data/yoloGtold1/train/37182.png +../../data/yoloGtold1/train/37183.png +../../data/yoloGtold1/train/37184.png +../../data/yoloGtold1/train/37185.png +../../data/yoloGtold1/train/37186.png +../../data/yoloGtold1/train/37187.png +../../data/yoloGtold1/train/37188.png +../../data/yoloGtold1/train/37189.png +../../data/yoloGtold1/train/37190.png +../../data/yoloGtold1/train/37191.png +../../data/yoloGtold1/train/37192.png +../../data/yoloGtold1/train/37193.png +../../data/yoloGtold1/train/37194.png +../../data/yoloGtold1/train/37195.png +../../data/yoloGtold1/train/37196.png +../../data/yoloGtold1/train/37197.png +../../data/yoloGtold1/train/37198.png +../../data/yoloGtold1/train/37199.png +../../data/yoloGtold1/train/37200.png +../../data/yoloGtold1/train/37201.png +../../data/yoloGtold1/train/37202.png +../../data/yoloGtold1/train/37203.png +../../data/yoloGtold1/train/37204.png +../../data/yoloGtold1/train/37205.png +../../data/yoloGtold1/train/37206.png +../../data/yoloGtold1/train/37207.png +../../data/yoloGtold1/train/37208.png +../../data/yoloGtold1/train/37209.png +../../data/yoloGtold1/train/37210.png +../../data/yoloGtold1/train/37211.png +../../data/yoloGtold1/train/37212.png +../../data/yoloGtold1/train/37213.png +../../data/yoloGtold1/train/37214.png +../../data/yoloGtold1/train/37215.png +../../data/yoloGtold1/train/37216.png +../../data/yoloGtold1/train/37217.png +../../data/yoloGtold1/train/37218.png +../../data/yoloGtold1/train/37219.png +../../data/yoloGtold1/train/37220.png +../../data/yoloGtold1/train/37221.png +../../data/yoloGtold1/train/37222.png +../../data/yoloGtold1/train/37223.png +../../data/yoloGtold1/train/37224.png +../../data/yoloGtold1/train/37225.png +../../data/yoloGtold1/train/37226.png +../../data/yoloGtold1/train/37227.png +../../data/yoloGtold1/train/37228.png +../../data/yoloGtold1/train/37229.png +../../data/yoloGtold1/train/37230.png +../../data/yoloGtold1/train/37231.png +../../data/yoloGtold1/train/37232.png +../../data/yoloGtold1/train/37233.png +../../data/yoloGtold1/train/37234.png +../../data/yoloGtold1/train/37235.png +../../data/yoloGtold1/train/37236.png +../../data/yoloGtold1/train/37237.png +../../data/yoloGtold1/train/37238.png +../../data/yoloGtold1/train/37239.png +../../data/yoloGtold1/train/37240.png +../../data/yoloGtold1/train/37241.png +../../data/yoloGtold1/train/37242.png +../../data/yoloGtold1/train/37243.png +../../data/yoloGtold1/train/37244.png +../../data/yoloGtold1/train/37245.png +../../data/yoloGtold1/train/37246.png +../../data/yoloGtold1/train/37247.png +../../data/yoloGtold1/train/37248.png +../../data/yoloGtold1/train/37249.png +../../data/yoloGtold1/train/37250.png +../../data/yoloGtold1/train/37251.png +../../data/yoloGtold1/train/37252.png +../../data/yoloGtold1/train/37253.png +../../data/yoloGtold1/train/37254.png +../../data/yoloGtold1/train/37255.png +../../data/yoloGtold1/train/37256.png +../../data/yoloGtold1/train/37257.png +../../data/yoloGtold1/train/37258.png +../../data/yoloGtold1/train/37259.png +../../data/yoloGtold1/train/37260.png +../../data/yoloGtold1/train/37261.png +../../data/yoloGtold1/train/37262.png +../../data/yoloGtold1/train/37263.png +../../data/yoloGtold1/train/37264.png +../../data/yoloGtold1/train/37265.png +../../data/yoloGtold1/train/37266.png +../../data/yoloGtold1/train/37267.png +../../data/yoloGtold1/train/37268.png +../../data/yoloGtold1/train/37269.png +../../data/yoloGtold1/train/37270.png +../../data/yoloGtold1/train/37271.png +../../data/yoloGtold1/train/37272.png +../../data/yoloGtold1/train/37273.png +../../data/yoloGtold1/train/37274.png +../../data/yoloGtold1/train/37275.png +../../data/yoloGtold1/train/37276.png +../../data/yoloGtold1/train/37277.png +../../data/yoloGtold1/train/37278.png +../../data/yoloGtold1/train/37279.png +../../data/yoloGtold1/train/37280.png +../../data/yoloGtold1/train/37281.png +../../data/yoloGtold1/train/37282.png +../../data/yoloGtold1/train/37283.png +../../data/yoloGtold1/train/37284.png +../../data/yoloGtold1/train/37285.png +../../data/yoloGtold1/train/37286.png +../../data/yoloGtold1/train/37287.png +../../data/yoloGtold1/train/37288.png +../../data/yoloGtold1/train/37289.png +../../data/yoloGtold1/train/37290.png +../../data/yoloGtold1/train/37291.png +../../data/yoloGtold1/train/37292.png +../../data/yoloGtold1/train/37293.png +../../data/yoloGtold1/train/37294.png +../../data/yoloGtold1/train/37295.png +../../data/yoloGtold1/train/37296.png +../../data/yoloGtold1/train/37297.png +../../data/yoloGtold1/train/37298.png +../../data/yoloGtold1/train/37299.png +../../data/yoloGtold1/train/37300.png +../../data/yoloGtold1/train/37301.png +../../data/yoloGtold1/train/37302.png +../../data/yoloGtold1/train/37303.png +../../data/yoloGtold1/train/37304.png +../../data/yoloGtold1/train/37305.png +../../data/yoloGtold1/train/37306.png +../../data/yoloGtold1/train/37307.png +../../data/yoloGtold1/train/37308.png +../../data/yoloGtold1/train/37309.png +../../data/yoloGtold1/train/37310.png +../../data/yoloGtold1/train/37311.png +../../data/yoloGtold1/train/37312.png +../../data/yoloGtold1/train/37313.png +../../data/yoloGtold1/train/37314.png +../../data/yoloGtold1/train/37315.png +../../data/yoloGtold1/train/37316.png +../../data/yoloGtold1/train/37317.png +../../data/yoloGtold1/train/37318.png +../../data/yoloGtold1/train/37319.png +../../data/yoloGtold1/train/37320.png +../../data/yoloGtold1/train/37321.png +../../data/yoloGtold1/train/37322.png +../../data/yoloGtold1/train/37323.png +../../data/yoloGtold1/train/37324.png +../../data/yoloGtold1/train/37325.png +../../data/yoloGtold1/train/37326.png +../../data/yoloGtold1/train/37327.png +../../data/yoloGtold1/train/37328.png +../../data/yoloGtold1/train/37329.png +../../data/yoloGtold1/train/37330.png +../../data/yoloGtold1/train/37331.png +../../data/yoloGtold1/train/37332.png +../../data/yoloGtold1/train/37333.png +../../data/yoloGtold1/train/37334.png +../../data/yoloGtold1/train/37335.png +../../data/yoloGtold1/train/37336.png +../../data/yoloGtold1/train/37337.png +../../data/yoloGtold1/train/37338.png +../../data/yoloGtold1/train/37339.png +../../data/yoloGtold1/train/37340.png +../../data/yoloGtold1/train/37341.png +../../data/yoloGtold1/train/37342.png +../../data/yoloGtold1/train/37343.png +../../data/yoloGtold1/train/37344.png +../../data/yoloGtold1/train/37345.png +../../data/yoloGtold1/train/37346.png +../../data/yoloGtold1/train/37347.png +../../data/yoloGtold1/train/37348.png +../../data/yoloGtold1/train/37349.png +../../data/yoloGtold1/train/37350.png +../../data/yoloGtold1/train/37351.png +../../data/yoloGtold1/train/37352.png +../../data/yoloGtold1/train/37353.png +../../data/yoloGtold1/train/37354.png +../../data/yoloGtold1/train/37355.png +../../data/yoloGtold1/train/37356.png +../../data/yoloGtold1/train/37357.png +../../data/yoloGtold1/train/37358.png +../../data/yoloGtold1/train/37359.png +../../data/yoloGtold1/train/37360.png +../../data/yoloGtold1/train/37361.png +../../data/yoloGtold1/train/37362.png +../../data/yoloGtold1/train/37363.png +../../data/yoloGtold1/train/37364.png +../../data/yoloGtold1/train/37365.png +../../data/yoloGtold1/train/37366.png +../../data/yoloGtold1/train/37367.png +../../data/yoloGtold1/train/37368.png +../../data/yoloGtold1/train/37369.png +../../data/yoloGtold1/train/37370.png +../../data/yoloGtold1/train/37371.png +../../data/yoloGtold1/train/37372.png +../../data/yoloGtold1/train/37373.png +../../data/yoloGtold1/train/37374.png +../../data/yoloGtold1/train/37375.png +../../data/yoloGtold1/train/37376.png +../../data/yoloGtold1/train/37377.png +../../data/yoloGtold1/train/37378.png +../../data/yoloGtold1/train/37379.png +../../data/yoloGtold1/train/37380.png +../../data/yoloGtold1/train/37381.png +../../data/yoloGtold1/train/37382.png +../../data/yoloGtold1/train/37383.png +../../data/yoloGtold1/train/37384.png +../../data/yoloGtold1/train/37385.png +../../data/yoloGtold1/train/37386.png +../../data/yoloGtold1/train/37387.png +../../data/yoloGtold1/train/37388.png +../../data/yoloGtold1/train/37389.png +../../data/yoloGtold1/train/37390.png +../../data/yoloGtold1/train/37391.png +../../data/yoloGtold1/train/37392.png +../../data/yoloGtold1/train/37393.png +../../data/yoloGtold1/train/37394.png +../../data/yoloGtold1/train/37395.png +../../data/yoloGtold1/train/37396.png +../../data/yoloGtold1/train/37397.png +../../data/yoloGtold1/train/37398.png +../../data/yoloGtold1/train/37399.png +../../data/yoloGtold1/train/37400.png +../../data/yoloGtold1/train/37401.png +../../data/yoloGtold1/train/37402.png +../../data/yoloGtold1/train/37403.png +../../data/yoloGtold1/train/37404.png +../../data/yoloGtold1/train/37405.png +../../data/yoloGtold1/train/37406.png +../../data/yoloGtold1/train/37407.png +../../data/yoloGtold1/train/37408.png +../../data/yoloGtold1/train/37409.png +../../data/yoloGtold1/train/37410.png +../../data/yoloGtold1/train/37411.png +../../data/yoloGtold1/train/37412.png +../../data/yoloGtold1/train/37413.png +../../data/yoloGtold1/train/37414.png +../../data/yoloGtold1/train/37415.png +../../data/yoloGtold1/train/37416.png +../../data/yoloGtold1/train/37417.png +../../data/yoloGtold1/train/37418.png +../../data/yoloGtold1/train/37419.png +../../data/yoloGtold1/train/37420.png +../../data/yoloGtold1/train/37421.png +../../data/yoloGtold1/train/37422.png +../../data/yoloGtold1/train/37423.png +../../data/yoloGtold1/train/37424.png +../../data/yoloGtold1/train/37425.png +../../data/yoloGtold1/train/37426.png +../../data/yoloGtold1/train/37427.png +../../data/yoloGtold1/train/37428.png +../../data/yoloGtold1/train/37429.png +../../data/yoloGtold1/train/37430.png +../../data/yoloGtold1/train/37431.png +../../data/yoloGtold1/train/37432.png +../../data/yoloGtold1/train/37433.png +../../data/yoloGtold1/train/37434.png +../../data/yoloGtold1/train/37435.png +../../data/yoloGtold1/train/37436.png +../../data/yoloGtold1/train/37437.png +../../data/yoloGtold1/train/37438.png +../../data/yoloGtold1/train/37439.png +../../data/yoloGtold1/train/37440.png +../../data/yoloGtold1/train/37441.png +../../data/yoloGtold1/train/37442.png +../../data/yoloGtold1/train/37443.png +../../data/yoloGtold1/train/37444.png +../../data/yoloGtold1/train/37445.png +../../data/yoloGtold1/train/37446.png +../../data/yoloGtold1/train/37447.png +../../data/yoloGtold1/train/37448.png +../../data/yoloGtold1/train/37449.png +../../data/yoloGtold1/train/37450.png +../../data/yoloGtold1/train/37451.png +../../data/yoloGtold1/train/37452.png +../../data/yoloGtold1/train/37453.png +../../data/yoloGtold1/train/37454.png +../../data/yoloGtold1/train/37455.png +../../data/yoloGtold1/train/37456.png +../../data/yoloGtold1/train/37457.png +../../data/yoloGtold1/train/37458.png +../../data/yoloGtold1/train/37459.png +../../data/yoloGtold1/train/37460.png +../../data/yoloGtold1/train/37461.png +../../data/yoloGtold1/train/37462.png +../../data/yoloGtold1/train/37463.png +../../data/yoloGtold1/train/37464.png +../../data/yoloGtold1/train/37465.png +../../data/yoloGtold1/train/37466.png +../../data/yoloGtold1/train/37467.png +../../data/yoloGtold1/train/37468.png +../../data/yoloGtold1/train/37469.png +../../data/yoloGtold1/train/37470.png +../../data/yoloGtold1/train/37471.png +../../data/yoloGtold1/train/37472.png +../../data/yoloGtold1/train/37473.png +../../data/yoloGtold1/train/37474.png +../../data/yoloGtold1/train/37475.png +../../data/yoloGtold1/train/37476.png +../../data/yoloGtold1/train/37477.png +../../data/yoloGtold1/train/37478.png +../../data/yoloGtold1/train/37479.png +../../data/yoloGtold1/train/37480.png +../../data/yoloGtold1/train/37481.png +../../data/yoloGtold1/train/37482.png +../../data/yoloGtold1/train/37483.png +../../data/yoloGtold1/train/37484.png +../../data/yoloGtold1/train/37485.png +../../data/yoloGtold1/train/37486.png +../../data/yoloGtold1/train/37487.png +../../data/yoloGtold1/train/37488.png +../../data/yoloGtold1/train/37489.png +../../data/yoloGtold1/train/37490.png +../../data/yoloGtold1/train/37491.png +../../data/yoloGtold1/train/37492.png +../../data/yoloGtold1/train/37493.png +../../data/yoloGtold1/train/37494.png +../../data/yoloGtold1/train/37495.png +../../data/yoloGtold1/train/37496.png +../../data/yoloGtold1/train/37497.png +../../data/yoloGtold1/train/37498.png +../../data/yoloGtold1/train/37499.png +../../data/yoloGtold1/train/37500.png +../../data/yoloGtold1/train/37501.png +../../data/yoloGtold1/train/37502.png +../../data/yoloGtold1/train/37503.png +../../data/yoloGtold1/train/37504.png +../../data/yoloGtold1/train/37505.png +../../data/yoloGtold1/train/37506.png +../../data/yoloGtold1/train/37507.png +../../data/yoloGtold1/train/37508.png +../../data/yoloGtold1/train/37509.png +../../data/yoloGtold1/train/37510.png +../../data/yoloGtold1/train/37511.png +../../data/yoloGtold1/train/37512.png +../../data/yoloGtold1/train/37513.png +../../data/yoloGtold1/train/37514.png +../../data/yoloGtold1/train/37515.png +../../data/yoloGtold1/train/37516.png +../../data/yoloGtold1/train/37517.png +../../data/yoloGtold1/train/37518.png +../../data/yoloGtold1/train/37519.png +../../data/yoloGtold1/train/37520.png +../../data/yoloGtold1/train/37521.png +../../data/yoloGtold1/train/37522.png +../../data/yoloGtold1/train/37523.png +../../data/yoloGtold1/train/37524.png +../../data/yoloGtold1/train/37525.png +../../data/yoloGtold1/train/37526.png +../../data/yoloGtold1/train/37527.png +../../data/yoloGtold1/train/37528.png +../../data/yoloGtold1/train/37529.png +../../data/yoloGtold1/train/37530.png +../../data/yoloGtold1/train/37531.png +../../data/yoloGtold1/train/37532.png +../../data/yoloGtold1/train/37533.png +../../data/yoloGtold1/train/37534.png +../../data/yoloGtold1/train/37535.png +../../data/yoloGtold1/train/37536.png +../../data/yoloGtold1/train/37537.png +../../data/yoloGtold1/train/37538.png +../../data/yoloGtold1/train/37539.png +../../data/yoloGtold1/train/37540.png +../../data/yoloGtold1/train/37541.png +../../data/yoloGtold1/train/37542.png +../../data/yoloGtold1/train/37543.png +../../data/yoloGtold1/train/37544.png +../../data/yoloGtold1/train/37545.png +../../data/yoloGtold1/train/37546.png +../../data/yoloGtold1/train/37547.png +../../data/yoloGtold1/train/37548.png +../../data/yoloGtold1/train/37549.png +../../data/yoloGtold1/train/37550.png +../../data/yoloGtold1/train/37551.png +../../data/yoloGtold1/train/37552.png +../../data/yoloGtold1/train/37553.png +../../data/yoloGtold1/train/37554.png +../../data/yoloGtold1/train/37555.png +../../data/yoloGtold1/train/37556.png +../../data/yoloGtold1/train/37557.png +../../data/yoloGtold1/train/37558.png +../../data/yoloGtold1/train/37559.png +../../data/yoloGtold1/train/37560.png +../../data/yoloGtold1/train/37561.png +../../data/yoloGtold1/train/37562.png +../../data/yoloGtold1/train/37563.png +../../data/yoloGtold1/train/37564.png +../../data/yoloGtold1/train/37565.png +../../data/yoloGtold1/train/37566.png +../../data/yoloGtold1/train/37567.png +../../data/yoloGtold1/train/37568.png +../../data/yoloGtold1/train/37569.png +../../data/yoloGtold1/train/37570.png +../../data/yoloGtold1/train/37571.png +../../data/yoloGtold1/train/37572.png +../../data/yoloGtold1/train/37573.png +../../data/yoloGtold1/train/37574.png +../../data/yoloGtold1/train/37575.png +../../data/yoloGtold1/train/37576.png +../../data/yoloGtold1/train/37577.png +../../data/yoloGtold1/train/37578.png +../../data/yoloGtold1/train/37579.png +../../data/yoloGtold1/train/37580.png +../../data/yoloGtold1/train/37581.png +../../data/yoloGtold1/train/37582.png +../../data/yoloGtold1/train/37583.png +../../data/yoloGtold1/train/37584.png +../../data/yoloGtold1/train/37585.png +../../data/yoloGtold1/train/37586.png +../../data/yoloGtold1/train/37587.png +../../data/yoloGtold1/train/37588.png +../../data/yoloGtold1/train/37589.png +../../data/yoloGtold1/train/37590.png +../../data/yoloGtold1/train/37591.png +../../data/yoloGtold1/train/37592.png +../../data/yoloGtold1/train/37593.png +../../data/yoloGtold1/train/37594.png +../../data/yoloGtold1/train/37595.png +../../data/yoloGtold1/train/37596.png +../../data/yoloGtold1/train/37597.png +../../data/yoloGtold1/train/37598.png +../../data/yoloGtold1/train/37599.png +../../data/yoloGtold1/train/37600.png +../../data/yoloGtold1/train/37601.png +../../data/yoloGtold1/train/37602.png +../../data/yoloGtold1/train/37603.png +../../data/yoloGtold1/train/37604.png +../../data/yoloGtold1/train/37605.png +../../data/yoloGtold1/train/37606.png +../../data/yoloGtold1/train/37607.png +../../data/yoloGtold1/train/37608.png +../../data/yoloGtold1/train/37609.png +../../data/yoloGtold1/train/37610.png +../../data/yoloGtold1/train/37611.png +../../data/yoloGtold1/train/37612.png +../../data/yoloGtold1/train/37613.png +../../data/yoloGtold1/train/37614.png +../../data/yoloGtold1/train/37615.png +../../data/yoloGtold1/train/37616.png +../../data/yoloGtold1/train/37617.png +../../data/yoloGtold1/train/37618.png +../../data/yoloGtold1/train/37619.png +../../data/yoloGtold1/train/37620.png +../../data/yoloGtold1/train/37621.png +../../data/yoloGtold1/train/37622.png +../../data/yoloGtold1/train/37623.png +../../data/yoloGtold1/train/37624.png +../../data/yoloGtold1/train/37625.png +../../data/yoloGtold1/train/37626.png +../../data/yoloGtold1/train/37627.png +../../data/yoloGtold1/train/37628.png +../../data/yoloGtold1/train/37629.png +../../data/yoloGtold1/train/37630.png +../../data/yoloGtold1/train/37631.png +../../data/yoloGtold1/train/37632.png +../../data/yoloGtold1/train/37633.png +../../data/yoloGtold1/train/37634.png +../../data/yoloGtold1/train/37635.png +../../data/yoloGtold1/train/37636.png +../../data/yoloGtold1/train/37637.png +../../data/yoloGtold1/train/37638.png +../../data/yoloGtold1/train/37639.png +../../data/yoloGtold1/train/37640.png +../../data/yoloGtold1/train/37641.png +../../data/yoloGtold1/train/37642.png +../../data/yoloGtold1/train/37643.png +../../data/yoloGtold1/train/37644.png +../../data/yoloGtold1/train/37645.png +../../data/yoloGtold1/train/37646.png +../../data/yoloGtold1/train/37647.png +../../data/yoloGtold1/train/37648.png +../../data/yoloGtold1/train/37649.png +../../data/yoloGtold1/train/37650.png +../../data/yoloGtold1/train/37651.png +../../data/yoloGtold1/train/37652.png +../../data/yoloGtold1/train/37653.png +../../data/yoloGtold1/train/37654.png +../../data/yoloGtold1/train/37655.png +../../data/yoloGtold1/train/37656.png +../../data/yoloGtold1/train/37657.png +../../data/yoloGtold1/train/37658.png +../../data/yoloGtold1/train/37659.png +../../data/yoloGtold1/train/37660.png +../../data/yoloGtold1/train/37661.png +../../data/yoloGtold1/train/37662.png +../../data/yoloGtold1/train/37663.png +../../data/yoloGtold1/train/37664.png +../../data/yoloGtold1/train/37665.png +../../data/yoloGtold1/train/37666.png +../../data/yoloGtold1/train/37667.png +../../data/yoloGtold1/train/37668.png +../../data/yoloGtold1/train/37669.png +../../data/yoloGtold1/train/37670.png +../../data/yoloGtold1/train/37671.png +../../data/yoloGtold1/train/37672.png +../../data/yoloGtold1/train/37673.png +../../data/yoloGtold1/train/37674.png +../../data/yoloGtold1/train/37675.png +../../data/yoloGtold1/train/37676.png +../../data/yoloGtold1/train/37677.png +../../data/yoloGtold1/train/37678.png +../../data/yoloGtold1/train/37679.png +../../data/yoloGtold1/train/37680.png +../../data/yoloGtold1/train/37681.png +../../data/yoloGtold1/train/37682.png +../../data/yoloGtold1/train/37683.png +../../data/yoloGtold1/train/37684.png +../../data/yoloGtold1/train/37685.png +../../data/yoloGtold1/train/37686.png +../../data/yoloGtold1/train/37687.png +../../data/yoloGtold1/train/37688.png +../../data/yoloGtold1/train/37689.png +../../data/yoloGtold1/train/37690.png +../../data/yoloGtold1/train/37691.png +../../data/yoloGtold1/train/37692.png +../../data/yoloGtold1/train/37693.png +../../data/yoloGtold1/train/37694.png +../../data/yoloGtold1/train/37695.png +../../data/yoloGtold1/train/37696.png +../../data/yoloGtold1/train/37697.png +../../data/yoloGtold1/train/37698.png +../../data/yoloGtold1/train/37699.png +../../data/yoloGtold1/train/37700.png +../../data/yoloGtold1/train/37701.png +../../data/yoloGtold1/train/37702.png +../../data/yoloGtold1/train/37703.png +../../data/yoloGtold1/train/37704.png +../../data/yoloGtold1/train/37705.png +../../data/yoloGtold1/train/37706.png +../../data/yoloGtold1/train/37707.png +../../data/yoloGtold1/train/37708.png +../../data/yoloGtold1/train/37709.png +../../data/yoloGtold1/train/37710.png +../../data/yoloGtold1/train/37711.png +../../data/yoloGtold1/train/37712.png +../../data/yoloGtold1/train/37713.png +../../data/yoloGtold1/train/37714.png +../../data/yoloGtold1/train/37715.png +../../data/yoloGtold1/train/37716.png +../../data/yoloGtold1/train/37717.png +../../data/yoloGtold1/train/37718.png +../../data/yoloGtold1/train/37719.png +../../data/yoloGtold1/train/37720.png +../../data/yoloGtold1/train/37721.png +../../data/yoloGtold1/train/37722.png +../../data/yoloGtold1/train/37723.png +../../data/yoloGtold1/train/37724.png +../../data/yoloGtold1/train/37725.png +../../data/yoloGtold1/train/37726.png +../../data/yoloGtold1/train/37727.png +../../data/yoloGtold1/train/37728.png +../../data/yoloGtold1/train/37729.png +../../data/yoloGtold1/train/37730.png +../../data/yoloGtold1/train/37731.png +../../data/yoloGtold1/train/37732.png +../../data/yoloGtold1/train/37733.png +../../data/yoloGtold1/train/37734.png +../../data/yoloGtold1/train/37735.png +../../data/yoloGtold1/train/37736.png +../../data/yoloGtold1/train/37737.png +../../data/yoloGtold1/train/37738.png +../../data/yoloGtold1/train/37739.png +../../data/yoloGtold1/train/37740.png +../../data/yoloGtold1/train/37741.png +../../data/yoloGtold1/train/37742.png +../../data/yoloGtold1/train/37743.png +../../data/yoloGtold1/train/37744.png +../../data/yoloGtold1/train/37745.png +../../data/yoloGtold1/train/37746.png +../../data/yoloGtold1/train/37747.png +../../data/yoloGtold1/train/37748.png +../../data/yoloGtold1/train/37749.png +../../data/yoloGtold1/train/37750.png +../../data/yoloGtold1/train/37751.png +../../data/yoloGtold1/train/37752.png +../../data/yoloGtold1/train/37753.png +../../data/yoloGtold1/train/37754.png +../../data/yoloGtold1/train/37755.png +../../data/yoloGtold1/train/37756.png +../../data/yoloGtold1/train/37757.png +../../data/yoloGtold1/train/37758.png +../../data/yoloGtold1/train/37759.png +../../data/yoloGtold1/train/37760.png +../../data/yoloGtold1/train/37761.png +../../data/yoloGtold1/train/37762.png +../../data/yoloGtold1/train/37763.png +../../data/yoloGtold1/train/37764.png +../../data/yoloGtold1/train/37765.png +../../data/yoloGtold1/train/37766.png +../../data/yoloGtold1/train/37767.png +../../data/yoloGtold1/train/37768.png +../../data/yoloGtold1/train/37769.png +../../data/yoloGtold1/train/37770.png +../../data/yoloGtold1/train/37771.png +../../data/yoloGtold1/train/37772.png +../../data/yoloGtold1/train/37773.png +../../data/yoloGtold1/train/37774.png +../../data/yoloGtold1/train/37775.png +../../data/yoloGtold1/train/37776.png +../../data/yoloGtold1/train/37777.png +../../data/yoloGtold1/train/37778.png +../../data/yoloGtold1/train/37779.png +../../data/yoloGtold1/train/37780.png +../../data/yoloGtold1/train/37781.png +../../data/yoloGtold1/train/37782.png +../../data/yoloGtold1/train/37783.png +../../data/yoloGtold1/train/37784.png +../../data/yoloGtold1/train/37785.png +../../data/yoloGtold1/train/37786.png +../../data/yoloGtold1/train/37787.png +../../data/yoloGtold1/train/37788.png +../../data/yoloGtold1/train/37789.png +../../data/yoloGtold1/train/37790.png +../../data/yoloGtold1/train/37791.png +../../data/yoloGtold1/train/37792.png +../../data/yoloGtold1/train/37793.png +../../data/yoloGtold1/train/37794.png +../../data/yoloGtold1/train/37795.png +../../data/yoloGtold1/train/37796.png +../../data/yoloGtold1/train/37797.png +../../data/yoloGtold1/train/37798.png +../../data/yoloGtold1/train/37799.png +../../data/yoloGtold1/train/37800.png +../../data/yoloGtold1/train/37801.png +../../data/yoloGtold1/train/37802.png +../../data/yoloGtold1/train/37803.png +../../data/yoloGtold1/train/37804.png +../../data/yoloGtold1/train/37805.png +../../data/yoloGtold1/train/37806.png +../../data/yoloGtold1/train/37807.png +../../data/yoloGtold1/train/37808.png +../../data/yoloGtold1/train/37809.png +../../data/yoloGtold1/train/37810.png +../../data/yoloGtold1/train/37811.png +../../data/yoloGtold1/train/37812.png +../../data/yoloGtold1/train/37813.png +../../data/yoloGtold1/train/37814.png +../../data/yoloGtold1/train/37815.png +../../data/yoloGtold1/train/37816.png +../../data/yoloGtold1/train/37817.png +../../data/yoloGtold1/train/37818.png +../../data/yoloGtold1/train/37819.png +../../data/yoloGtold1/train/37820.png +../../data/yoloGtold1/train/37821.png +../../data/yoloGtold1/train/37822.png +../../data/yoloGtold1/train/37823.png +../../data/yoloGtold1/train/37824.png +../../data/yoloGtold1/train/37825.png +../../data/yoloGtold1/train/37826.png +../../data/yoloGtold1/train/37827.png +../../data/yoloGtold1/train/37828.png +../../data/yoloGtold1/train/37829.png +../../data/yoloGtold1/train/37830.png +../../data/yoloGtold1/train/37831.png +../../data/yoloGtold1/train/37832.png +../../data/yoloGtold1/train/37833.png +../../data/yoloGtold1/train/37834.png +../../data/yoloGtold1/train/37835.png +../../data/yoloGtold1/train/37836.png +../../data/yoloGtold1/train/37837.png +../../data/yoloGtold1/train/37838.png +../../data/yoloGtold1/train/37839.png +../../data/yoloGtold1/train/37840.png +../../data/yoloGtold1/train/37841.png +../../data/yoloGtold1/train/37842.png +../../data/yoloGtold1/train/37843.png +../../data/yoloGtold1/train/37844.png +../../data/yoloGtold1/train/37845.png +../../data/yoloGtold1/train/37846.png +../../data/yoloGtold1/train/37847.png +../../data/yoloGtold1/train/37848.png +../../data/yoloGtold1/train/37849.png +../../data/yoloGtold1/train/37850.png +../../data/yoloGtold1/train/37851.png +../../data/yoloGtold1/train/37852.png +../../data/yoloGtold1/train/37853.png +../../data/yoloGtold1/train/37854.png +../../data/yoloGtold1/train/37855.png +../../data/yoloGtold1/train/37856.png +../../data/yoloGtold1/train/37857.png +../../data/yoloGtold1/train/37858.png +../../data/yoloGtold1/train/37859.png +../../data/yoloGtold1/train/37860.png +../../data/yoloGtold1/train/37861.png +../../data/yoloGtold1/train/37862.png +../../data/yoloGtold1/train/37863.png +../../data/yoloGtold1/train/37864.png +../../data/yoloGtold1/train/37865.png +../../data/yoloGtold1/train/37866.png +../../data/yoloGtold1/train/37867.png +../../data/yoloGtold1/train/37868.png +../../data/yoloGtold1/train/37869.png +../../data/yoloGtold1/train/37870.png +../../data/yoloGtold1/train/37871.png +../../data/yoloGtold1/train/37872.png +../../data/yoloGtold1/train/37873.png +../../data/yoloGtold1/train/37874.png +../../data/yoloGtold1/train/37875.png +../../data/yoloGtold1/train/37876.png +../../data/yoloGtold1/train/37877.png +../../data/yoloGtold1/train/37878.png +../../data/yoloGtold1/train/37879.png +../../data/yoloGtold1/train/37880.png +../../data/yoloGtold1/train/37881.png +../../data/yoloGtold1/train/37882.png +../../data/yoloGtold1/train/37883.png +../../data/yoloGtold1/train/37884.png +../../data/yoloGtold1/train/37885.png +../../data/yoloGtold1/train/37886.png +../../data/yoloGtold1/train/37887.png +../../data/yoloGtold1/train/37888.png +../../data/yoloGtold1/train/37889.png +../../data/yoloGtold1/train/37890.png +../../data/yoloGtold1/train/37891.png +../../data/yoloGtold1/train/37892.png +../../data/yoloGtold1/train/37893.png +../../data/yoloGtold1/train/37894.png +../../data/yoloGtold1/train/37895.png +../../data/yoloGtold1/train/37896.png +../../data/yoloGtold1/train/37897.png +../../data/yoloGtold1/train/37898.png +../../data/yoloGtold1/train/37899.png +../../data/yoloGtold1/train/37900.png +../../data/yoloGtold1/train/37901.png +../../data/yoloGtold1/train/37902.png +../../data/yoloGtold1/train/37903.png +../../data/yoloGtold1/train/37904.png +../../data/yoloGtold1/train/37905.png +../../data/yoloGtold1/train/37906.png +../../data/yoloGtold1/train/37907.png +../../data/yoloGtold1/train/37908.png +../../data/yoloGtold1/train/37909.png +../../data/yoloGtold1/train/37910.png +../../data/yoloGtold1/train/37911.png +../../data/yoloGtold1/train/37912.png +../../data/yoloGtold1/train/37913.png +../../data/yoloGtold1/train/37914.png +../../data/yoloGtold1/train/37915.png +../../data/yoloGtold1/train/37916.png +../../data/yoloGtold1/train/37917.png +../../data/yoloGtold1/train/37918.png +../../data/yoloGtold1/train/37919.png +../../data/yoloGtold1/train/37920.png +../../data/yoloGtold1/train/37921.png +../../data/yoloGtold1/train/37922.png +../../data/yoloGtold1/train/37923.png +../../data/yoloGtold1/train/37924.png +../../data/yoloGtold1/train/37925.png +../../data/yoloGtold1/train/37926.png +../../data/yoloGtold1/train/37927.png +../../data/yoloGtold1/train/37928.png +../../data/yoloGtold1/train/37929.png +../../data/yoloGtold1/train/37930.png +../../data/yoloGtold1/train/37931.png +../../data/yoloGtold1/train/37932.png +../../data/yoloGtold1/train/37933.png +../../data/yoloGtold1/train/37934.png +../../data/yoloGtold1/train/37935.png +../../data/yoloGtold1/train/37936.png +../../data/yoloGtold1/train/37937.png +../../data/yoloGtold1/train/37938.png +../../data/yoloGtold1/train/37939.png +../../data/yoloGtold1/train/37940.png +../../data/yoloGtold1/train/37941.png +../../data/yoloGtold1/train/37942.png +../../data/yoloGtold1/train/37943.png +../../data/yoloGtold1/train/37944.png +../../data/yoloGtold1/train/37945.png +../../data/yoloGtold1/train/37946.png +../../data/yoloGtold1/train/37947.png +../../data/yoloGtold1/train/37948.png +../../data/yoloGtold1/train/37949.png +../../data/yoloGtold1/train/37950.png +../../data/yoloGtold1/train/37951.png +../../data/yoloGtold1/train/37952.png +../../data/yoloGtold1/train/37953.png +../../data/yoloGtold1/train/37954.png +../../data/yoloGtold1/train/37955.png +../../data/yoloGtold1/train/37956.png +../../data/yoloGtold1/train/37957.png +../../data/yoloGtold1/train/37958.png +../../data/yoloGtold1/train/37959.png +../../data/yoloGtold1/train/37960.png +../../data/yoloGtold1/train/37961.png +../../data/yoloGtold1/train/37962.png +../../data/yoloGtold1/train/37963.png +../../data/yoloGtold1/train/37964.png +../../data/yoloGtold1/train/37965.png +../../data/yoloGtold1/train/37966.png +../../data/yoloGtold1/train/37967.png +../../data/yoloGtold1/train/37968.png +../../data/yoloGtold1/train/37969.png +../../data/yoloGtold1/train/37970.png +../../data/yoloGtold1/train/37971.png +../../data/yoloGtold1/train/37972.png +../../data/yoloGtold1/train/37973.png +../../data/yoloGtold1/train/37974.png +../../data/yoloGtold1/train/37975.png +../../data/yoloGtold1/train/37976.png +../../data/yoloGtold1/train/37977.png +../../data/yoloGtold1/train/37978.png +../../data/yoloGtold1/train/37979.png +../../data/yoloGtold1/train/37980.png +../../data/yoloGtold1/train/37981.png +../../data/yoloGtold1/train/37982.png +../../data/yoloGtold1/train/37983.png +../../data/yoloGtold1/train/37984.png +../../data/yoloGtold1/train/37985.png +../../data/yoloGtold1/train/37986.png +../../data/yoloGtold1/train/37987.png +../../data/yoloGtold1/train/37988.png +../../data/yoloGtold1/train/37989.png +../../data/yoloGtold1/train/37990.png +../../data/yoloGtold1/train/37991.png +../../data/yoloGtold1/train/37992.png +../../data/yoloGtold1/train/37993.png +../../data/yoloGtold1/train/37994.png +../../data/yoloGtold1/train/37995.png +../../data/yoloGtold1/train/37996.png +../../data/yoloGtold1/train/37997.png +../../data/yoloGtold1/train/37998.png +../../data/yoloGtold1/train/37999.png +../../data/yoloGtold1/train/38000.png +../../data/yoloGtold1/train/38001.png +../../data/yoloGtold1/train/38002.png +../../data/yoloGtold1/train/38003.png +../../data/yoloGtold1/train/38004.png +../../data/yoloGtold1/train/38005.png +../../data/yoloGtold1/train/38006.png +../../data/yoloGtold1/train/38007.png +../../data/yoloGtold1/train/38008.png +../../data/yoloGtold1/train/38009.png +../../data/yoloGtold1/train/38010.png +../../data/yoloGtold1/train/38011.png +../../data/yoloGtold1/train/38012.png +../../data/yoloGtold1/train/38013.png +../../data/yoloGtold1/train/38014.png +../../data/yoloGtold1/train/38015.png +../../data/yoloGtold1/train/38016.png +../../data/yoloGtold1/train/38017.png +../../data/yoloGtold1/train/38018.png +../../data/yoloGtold1/train/38019.png +../../data/yoloGtold1/train/38020.png +../../data/yoloGtold1/train/38021.png +../../data/yoloGtold1/train/38022.png +../../data/yoloGtold1/train/38023.png +../../data/yoloGtold1/train/38024.png +../../data/yoloGtold1/train/38025.png +../../data/yoloGtold1/train/38026.png +../../data/yoloGtold1/train/38027.png +../../data/yoloGtold1/train/38028.png +../../data/yoloGtold1/train/38029.png +../../data/yoloGtold1/train/38030.png +../../data/yoloGtold1/train/38031.png +../../data/yoloGtold1/train/38032.png +../../data/yoloGtold1/train/38033.png +../../data/yoloGtold1/train/38034.png +../../data/yoloGtold1/train/38035.png +../../data/yoloGtold1/train/38036.png +../../data/yoloGtold1/train/38037.png +../../data/yoloGtold1/train/38038.png +../../data/yoloGtold1/train/38039.png +../../data/yoloGtold1/train/38040.png +../../data/yoloGtold1/train/38041.png +../../data/yoloGtold1/train/38042.png +../../data/yoloGtold1/train/38043.png +../../data/yoloGtold1/train/38044.png +../../data/yoloGtold1/train/38045.png +../../data/yoloGtold1/train/38046.png +../../data/yoloGtold1/train/38047.png +../../data/yoloGtold1/train/38048.png +../../data/yoloGtold1/train/38049.png +../../data/yoloGtold1/train/38050.png +../../data/yoloGtold1/train/38051.png +../../data/yoloGtold1/train/38052.png +../../data/yoloGtold1/train/38053.png +../../data/yoloGtold1/train/38054.png +../../data/yoloGtold1/train/38055.png +../../data/yoloGtold1/train/38056.png +../../data/yoloGtold1/train/38057.png +../../data/yoloGtold1/train/38058.png +../../data/yoloGtold1/train/38059.png +../../data/yoloGtold1/train/38060.png +../../data/yoloGtold1/train/38061.png +../../data/yoloGtold1/train/38062.png +../../data/yoloGtold1/train/38063.png +../../data/yoloGtold1/train/38064.png +../../data/yoloGtold1/train/38065.png +../../data/yoloGtold1/train/38066.png +../../data/yoloGtold1/train/38067.png +../../data/yoloGtold1/train/38068.png +../../data/yoloGtold1/train/38069.png +../../data/yoloGtold1/train/38070.png +../../data/yoloGtold1/train/38071.png +../../data/yoloGtold1/train/38072.png +../../data/yoloGtold1/train/38073.png +../../data/yoloGtold1/train/38074.png +../../data/yoloGtold1/train/38075.png +../../data/yoloGtold1/train/38076.png +../../data/yoloGtold1/train/38077.png +../../data/yoloGtold1/train/38078.png +../../data/yoloGtold1/train/38079.png +../../data/yoloGtold1/train/38080.png +../../data/yoloGtold1/train/38081.png +../../data/yoloGtold1/train/38082.png +../../data/yoloGtold1/train/38083.png +../../data/yoloGtold1/train/38084.png +../../data/yoloGtold1/train/38085.png +../../data/yoloGtold1/train/38086.png +../../data/yoloGtold1/train/38087.png +../../data/yoloGtold1/train/38088.png +../../data/yoloGtold1/train/38089.png +../../data/yoloGtold1/train/38090.png +../../data/yoloGtold1/train/38091.png +../../data/yoloGtold1/train/38092.png +../../data/yoloGtold1/train/38093.png +../../data/yoloGtold1/train/38094.png +../../data/yoloGtold1/train/38095.png +../../data/yoloGtold1/train/38096.png +../../data/yoloGtold1/train/38097.png +../../data/yoloGtold1/train/38098.png +../../data/yoloGtold1/train/38099.png +../../data/yoloGtold1/train/38100.png +../../data/yoloGtold1/train/38101.png +../../data/yoloGtold1/train/38102.png +../../data/yoloGtold1/train/38103.png +../../data/yoloGtold1/train/38104.png +../../data/yoloGtold1/train/38105.png +../../data/yoloGtold1/train/38106.png +../../data/yoloGtold1/train/38107.png +../../data/yoloGtold1/train/38108.png +../../data/yoloGtold1/train/38109.png +../../data/yoloGtold1/train/38110.png +../../data/yoloGtold1/train/38111.png +../../data/yoloGtold1/train/38112.png +../../data/yoloGtold1/train/38113.png +../../data/yoloGtold1/train/38114.png +../../data/yoloGtold1/train/38115.png +../../data/yoloGtold1/train/38116.png +../../data/yoloGtold1/train/38117.png +../../data/yoloGtold1/train/38118.png +../../data/yoloGtold1/train/38119.png +../../data/yoloGtold1/train/38120.png +../../data/yoloGtold1/train/38121.png +../../data/yoloGtold1/train/38122.png +../../data/yoloGtold1/train/38123.png +../../data/yoloGtold1/train/38124.png +../../data/yoloGtold1/train/38125.png +../../data/yoloGtold1/train/38126.png +../../data/yoloGtold1/train/38127.png +../../data/yoloGtold1/train/38128.png +../../data/yoloGtold1/train/38129.png +../../data/yoloGtold1/train/38130.png +../../data/yoloGtold1/train/38131.png +../../data/yoloGtold1/train/38132.png +../../data/yoloGtold1/train/38133.png +../../data/yoloGtold1/train/38134.png +../../data/yoloGtold1/train/38135.png +../../data/yoloGtold1/train/38136.png +../../data/yoloGtold1/train/38137.png +../../data/yoloGtold1/train/38138.png +../../data/yoloGtold1/train/38139.png +../../data/yoloGtold1/train/38140.png +../../data/yoloGtold1/train/38141.png +../../data/yoloGtold1/train/38142.png +../../data/yoloGtold1/train/38143.png +../../data/yoloGtold1/train/38144.png +../../data/yoloGtold1/train/38145.png +../../data/yoloGtold1/train/38146.png +../../data/yoloGtold1/train/38147.png +../../data/yoloGtold1/train/38148.png +../../data/yoloGtold1/train/38149.png +../../data/yoloGtold1/train/38150.png +../../data/yoloGtold1/train/38151.png +../../data/yoloGtold1/train/38152.png +../../data/yoloGtold1/train/38153.png +../../data/yoloGtold1/train/38154.png +../../data/yoloGtold1/train/38155.png +../../data/yoloGtold1/train/38156.png +../../data/yoloGtold1/train/38157.png +../../data/yoloGtold1/train/38158.png +../../data/yoloGtold1/train/38159.png +../../data/yoloGtold1/train/38160.png +../../data/yoloGtold1/train/38161.png +../../data/yoloGtold1/train/38162.png +../../data/yoloGtold1/train/38163.png +../../data/yoloGtold1/train/38164.png +../../data/yoloGtold1/train/38165.png +../../data/yoloGtold1/train/38166.png +../../data/yoloGtold1/train/38167.png +../../data/yoloGtold1/train/38168.png +../../data/yoloGtold1/train/38169.png +../../data/yoloGtold1/train/38170.png +../../data/yoloGtold1/train/38171.png +../../data/yoloGtold1/train/38172.png +../../data/yoloGtold1/train/38173.png +../../data/yoloGtold1/train/38174.png +../../data/yoloGtold1/train/38175.png +../../data/yoloGtold1/train/38176.png +../../data/yoloGtold1/train/38177.png +../../data/yoloGtold1/train/38178.png +../../data/yoloGtold1/train/38179.png +../../data/yoloGtold1/train/38180.png +../../data/yoloGtold1/train/38181.png +../../data/yoloGtold1/train/38182.png +../../data/yoloGtold1/train/38183.png +../../data/yoloGtold1/train/38184.png +../../data/yoloGtold1/train/38185.png +../../data/yoloGtold1/train/38186.png +../../data/yoloGtold1/train/38187.png +../../data/yoloGtold1/train/38188.png +../../data/yoloGtold1/train/38189.png +../../data/yoloGtold1/train/38190.png +../../data/yoloGtold1/train/38191.png +../../data/yoloGtold1/train/38192.png +../../data/yoloGtold1/train/38193.png +../../data/yoloGtold1/train/38194.png +../../data/yoloGtold1/train/38195.png +../../data/yoloGtold1/train/38196.png +../../data/yoloGtold1/train/38197.png +../../data/yoloGtold1/train/38198.png +../../data/yoloGtold1/train/38199.png +../../data/yoloGtold1/train/38200.png +../../data/yoloGtold1/train/38201.png +../../data/yoloGtold1/train/38202.png +../../data/yoloGtold1/train/38203.png +../../data/yoloGtold1/train/38204.png +../../data/yoloGtold1/train/38205.png +../../data/yoloGtold1/train/38206.png +../../data/yoloGtold1/train/38207.png +../../data/yoloGtold1/train/38208.png +../../data/yoloGtold1/train/38209.png +../../data/yoloGtold1/train/38210.png +../../data/yoloGtold1/train/38211.png +../../data/yoloGtold1/train/38212.png +../../data/yoloGtold1/train/38213.png +../../data/yoloGtold1/train/38214.png +../../data/yoloGtold1/train/38215.png +../../data/yoloGtold1/train/38216.png +../../data/yoloGtold1/train/38217.png +../../data/yoloGtold1/train/38218.png +../../data/yoloGtold1/train/38219.png +../../data/yoloGtold1/train/38220.png +../../data/yoloGtold1/train/38221.png +../../data/yoloGtold1/train/38222.png +../../data/yoloGtold1/train/38223.png +../../data/yoloGtold1/train/38224.png +../../data/yoloGtold1/train/38225.png +../../data/yoloGtold1/train/38226.png +../../data/yoloGtold1/train/38227.png +../../data/yoloGtold1/train/38228.png +../../data/yoloGtold1/train/38229.png +../../data/yoloGtold1/train/38230.png +../../data/yoloGtold1/train/38231.png +../../data/yoloGtold1/train/38232.png +../../data/yoloGtold1/train/38233.png +../../data/yoloGtold1/train/38234.png +../../data/yoloGtold1/train/38235.png +../../data/yoloGtold1/train/38236.png +../../data/yoloGtold1/train/38237.png +../../data/yoloGtold1/train/38238.png +../../data/yoloGtold1/train/38239.png +../../data/yoloGtold1/train/38240.png +../../data/yoloGtold1/train/38241.png +../../data/yoloGtold1/train/38242.png +../../data/yoloGtold1/train/38243.png +../../data/yoloGtold1/train/38244.png +../../data/yoloGtold1/train/38245.png +../../data/yoloGtold1/train/38246.png +../../data/yoloGtold1/train/38247.png +../../data/yoloGtold1/train/38248.png +../../data/yoloGtold1/train/38249.png +../../data/yoloGtold1/train/38250.png +../../data/yoloGtold1/train/38251.png +../../data/yoloGtold1/train/38252.png +../../data/yoloGtold1/train/38253.png +../../data/yoloGtold1/train/38254.png +../../data/yoloGtold1/train/38255.png +../../data/yoloGtold1/train/38256.png +../../data/yoloGtold1/train/38257.png +../../data/yoloGtold1/train/38258.png +../../data/yoloGtold1/train/38259.png +../../data/yoloGtold1/train/38260.png +../../data/yoloGtold1/train/38261.png +../../data/yoloGtold1/train/38262.png +../../data/yoloGtold1/train/38263.png +../../data/yoloGtold1/train/38264.png +../../data/yoloGtold1/train/38265.png +../../data/yoloGtold1/train/38266.png +../../data/yoloGtold1/train/38267.png +../../data/yoloGtold1/train/38268.png +../../data/yoloGtold1/train/38269.png +../../data/yoloGtold1/train/38270.png +../../data/yoloGtold1/train/38271.png +../../data/yoloGtold1/train/38272.png +../../data/yoloGtold1/train/38273.png +../../data/yoloGtold1/train/38274.png +../../data/yoloGtold1/train/38275.png +../../data/yoloGtold1/train/38276.png +../../data/yoloGtold1/train/38277.png +../../data/yoloGtold1/train/38278.png +../../data/yoloGtold1/train/38279.png +../../data/yoloGtold1/train/38280.png +../../data/yoloGtold1/train/38281.png +../../data/yoloGtold1/train/38282.png +../../data/yoloGtold1/train/38283.png +../../data/yoloGtold1/train/38284.png +../../data/yoloGtold1/train/38285.png +../../data/yoloGtold1/train/38286.png +../../data/yoloGtold1/train/38287.png +../../data/yoloGtold1/train/38288.png +../../data/yoloGtold1/train/38289.png +../../data/yoloGtold1/train/38290.png +../../data/yoloGtold1/train/38291.png +../../data/yoloGtold1/train/38292.png +../../data/yoloGtold1/train/38293.png +../../data/yoloGtold1/train/38294.png +../../data/yoloGtold1/train/38295.png +../../data/yoloGtold1/train/38296.png +../../data/yoloGtold1/train/38297.png +../../data/yoloGtold1/train/38298.png +../../data/yoloGtold1/train/38299.png +../../data/yoloGtold1/train/38300.png +../../data/yoloGtold1/train/38301.png +../../data/yoloGtold1/train/38302.png +../../data/yoloGtold1/train/38303.png +../../data/yoloGtold1/train/38304.png +../../data/yoloGtold1/train/38305.png +../../data/yoloGtold1/train/38306.png +../../data/yoloGtold1/train/38307.png +../../data/yoloGtold1/train/38308.png +../../data/yoloGtold1/train/38309.png +../../data/yoloGtold1/train/38310.png +../../data/yoloGtold1/train/38311.png +../../data/yoloGtold1/train/38312.png +../../data/yoloGtold1/train/38313.png +../../data/yoloGtold1/train/38314.png +../../data/yoloGtold1/train/38315.png +../../data/yoloGtold1/train/38316.png +../../data/yoloGtold1/train/38317.png +../../data/yoloGtold1/train/38318.png +../../data/yoloGtold1/train/38319.png +../../data/yoloGtold1/train/38320.png +../../data/yoloGtold1/train/38321.png +../../data/yoloGtold1/train/38322.png +../../data/yoloGtold1/train/38323.png +../../data/yoloGtold1/train/38324.png +../../data/yoloGtold1/train/38325.png +../../data/yoloGtold1/train/38326.png +../../data/yoloGtold1/train/38327.png +../../data/yoloGtold1/train/38328.png +../../data/yoloGtold1/train/38329.png +../../data/yoloGtold1/train/38330.png +../../data/yoloGtold1/train/38331.png +../../data/yoloGtold1/train/38332.png +../../data/yoloGtold1/train/38333.png +../../data/yoloGtold1/train/38334.png +../../data/yoloGtold1/train/38335.png +../../data/yoloGtold1/train/38336.png +../../data/yoloGtold1/train/38337.png +../../data/yoloGtold1/train/38338.png +../../data/yoloGtold1/train/38339.png +../../data/yoloGtold1/train/38340.png +../../data/yoloGtold1/train/38341.png +../../data/yoloGtold1/train/38342.png +../../data/yoloGtold1/train/38343.png +../../data/yoloGtold1/train/38344.png +../../data/yoloGtold1/train/38345.png +../../data/yoloGtold1/train/38346.png +../../data/yoloGtold1/train/38347.png +../../data/yoloGtold1/train/38348.png +../../data/yoloGtold1/train/38349.png +../../data/yoloGtold1/train/38350.png +../../data/yoloGtold1/train/38351.png +../../data/yoloGtold1/train/38352.png +../../data/yoloGtold1/train/38353.png +../../data/yoloGtold1/train/38354.png +../../data/yoloGtold1/train/38355.png +../../data/yoloGtold1/train/38356.png +../../data/yoloGtold1/train/38357.png +../../data/yoloGtold1/train/38358.png +../../data/yoloGtold1/train/38359.png +../../data/yoloGtold1/train/38360.png +../../data/yoloGtold1/train/38361.png +../../data/yoloGtold1/train/38362.png +../../data/yoloGtold1/train/38363.png +../../data/yoloGtold1/train/38364.png +../../data/yoloGtold1/train/38365.png +../../data/yoloGtold1/train/38366.png +../../data/yoloGtold1/train/38367.png +../../data/yoloGtold1/train/38368.png +../../data/yoloGtold1/train/38369.png +../../data/yoloGtold1/train/38370.png +../../data/yoloGtold1/train/38371.png +../../data/yoloGtold1/train/38372.png +../../data/yoloGtold1/train/38373.png +../../data/yoloGtold1/train/38374.png +../../data/yoloGtold1/train/38375.png +../../data/yoloGtold1/train/38376.png +../../data/yoloGtold1/train/38377.png +../../data/yoloGtold1/train/38378.png +../../data/yoloGtold1/train/38379.png +../../data/yoloGtold1/train/38380.png +../../data/yoloGtold1/train/38381.png +../../data/yoloGtold1/train/38382.png +../../data/yoloGtold1/train/38383.png +../../data/yoloGtold1/train/38384.png +../../data/yoloGtold1/train/38385.png +../../data/yoloGtold1/train/38386.png +../../data/yoloGtold1/train/38387.png +../../data/yoloGtold1/train/38388.png +../../data/yoloGtold1/train/38389.png +../../data/yoloGtold1/train/38390.png +../../data/yoloGtold1/train/38391.png +../../data/yoloGtold1/train/38392.png +../../data/yoloGtold1/train/38393.png +../../data/yoloGtold1/train/38394.png +../../data/yoloGtold1/train/38395.png +../../data/yoloGtold1/train/38396.png +../../data/yoloGtold1/train/38397.png +../../data/yoloGtold1/train/38398.png +../../data/yoloGtold1/train/38399.png +../../data/yoloGtold1/train/38400.png +../../data/yoloGtold1/train/38401.png +../../data/yoloGtold1/train/38402.png +../../data/yoloGtold1/train/38403.png +../../data/yoloGtold1/train/38404.png +../../data/yoloGtold1/train/38405.png +../../data/yoloGtold1/train/38406.png +../../data/yoloGtold1/train/38407.png +../../data/yoloGtold1/train/38408.png +../../data/yoloGtold1/train/38409.png +../../data/yoloGtold1/train/38410.png +../../data/yoloGtold1/train/38411.png +../../data/yoloGtold1/train/38412.png +../../data/yoloGtold1/train/38413.png +../../data/yoloGtold1/train/38414.png +../../data/yoloGtold1/train/38415.png +../../data/yoloGtold1/train/38416.png +../../data/yoloGtold1/train/38417.png +../../data/yoloGtold1/train/38418.png +../../data/yoloGtold1/train/38419.png +../../data/yoloGtold1/train/38420.png +../../data/yoloGtold1/train/38421.png +../../data/yoloGtold1/train/38422.png +../../data/yoloGtold1/train/38423.png +../../data/yoloGtold1/train/38424.png +../../data/yoloGtold1/train/38425.png +../../data/yoloGtold1/train/38426.png +../../data/yoloGtold1/train/38427.png +../../data/yoloGtold1/train/38428.png +../../data/yoloGtold1/train/38429.png +../../data/yoloGtold1/train/38430.png +../../data/yoloGtold1/train/38431.png +../../data/yoloGtold1/train/38432.png +../../data/yoloGtold1/train/38433.png +../../data/yoloGtold1/train/38434.png +../../data/yoloGtold1/train/38435.png +../../data/yoloGtold1/train/38436.png +../../data/yoloGtold1/train/38437.png +../../data/yoloGtold1/train/38438.png +../../data/yoloGtold1/train/38439.png +../../data/yoloGtold1/train/38440.png +../../data/yoloGtold1/train/38441.png +../../data/yoloGtold1/train/38442.png +../../data/yoloGtold1/train/38443.png +../../data/yoloGtold1/train/38444.png +../../data/yoloGtold1/train/38445.png +../../data/yoloGtold1/train/38446.png +../../data/yoloGtold1/train/38447.png +../../data/yoloGtold1/train/38448.png +../../data/yoloGtold1/train/38449.png +../../data/yoloGtold1/train/38450.png +../../data/yoloGtold1/train/38451.png +../../data/yoloGtold1/train/38452.png +../../data/yoloGtold1/train/38453.png +../../data/yoloGtold1/train/38454.png +../../data/yoloGtold1/train/38455.png +../../data/yoloGtold1/train/38456.png +../../data/yoloGtold1/train/38457.png +../../data/yoloGtold1/train/38458.png +../../data/yoloGtold1/train/38459.png +../../data/yoloGtold1/train/38460.png +../../data/yoloGtold1/train/38461.png +../../data/yoloGtold1/train/38462.png +../../data/yoloGtold1/train/38463.png +../../data/yoloGtold1/train/38464.png +../../data/yoloGtold1/train/38465.png +../../data/yoloGtold1/train/38466.png +../../data/yoloGtold1/train/38467.png +../../data/yoloGtold1/train/38468.png +../../data/yoloGtold1/train/38469.png +../../data/yoloGtold1/train/38470.png +../../data/yoloGtold1/train/38471.png +../../data/yoloGtold1/train/38472.png +../../data/yoloGtold1/train/38473.png +../../data/yoloGtold1/train/38474.png +../../data/yoloGtold1/train/38475.png +../../data/yoloGtold1/train/38476.png +../../data/yoloGtold1/train/38477.png +../../data/yoloGtold1/train/38478.png +../../data/yoloGtold1/train/38479.png +../../data/yoloGtold1/train/38480.png +../../data/yoloGtold1/train/38481.png +../../data/yoloGtold1/train/38482.png +../../data/yoloGtold1/train/38483.png +../../data/yoloGtold1/train/38484.png +../../data/yoloGtold1/train/38485.png +../../data/yoloGtold1/train/38486.png +../../data/yoloGtold1/train/38487.png +../../data/yoloGtold1/train/38488.png +../../data/yoloGtold1/train/38489.png +../../data/yoloGtold1/train/38490.png +../../data/yoloGtold1/train/38491.png +../../data/yoloGtold1/train/38492.png +../../data/yoloGtold1/train/38493.png +../../data/yoloGtold1/train/38494.png +../../data/yoloGtold1/train/38495.png +../../data/yoloGtold1/train/38496.png +../../data/yoloGtold1/train/38497.png +../../data/yoloGtold1/train/38498.png +../../data/yoloGtold1/train/38499.png +../../data/yoloGtold1/train/38500.png +../../data/yoloGtold1/train/38501.png +../../data/yoloGtold1/train/38502.png +../../data/yoloGtold1/train/38503.png +../../data/yoloGtold1/train/38504.png +../../data/yoloGtold1/train/38505.png +../../data/yoloGtold1/train/38506.png +../../data/yoloGtold1/train/38507.png +../../data/yoloGtold1/train/38508.png +../../data/yoloGtold1/train/38509.png +../../data/yoloGtold1/train/38510.png +../../data/yoloGtold1/train/38511.png +../../data/yoloGtold1/train/38512.png +../../data/yoloGtold1/train/38513.png +../../data/yoloGtold1/train/38514.png +../../data/yoloGtold1/train/38515.png +../../data/yoloGtold1/train/38516.png +../../data/yoloGtold1/train/38517.png +../../data/yoloGtold1/train/38518.png +../../data/yoloGtold1/train/38519.png +../../data/yoloGtold1/train/38520.png +../../data/yoloGtold1/train/38521.png +../../data/yoloGtold1/train/38522.png +../../data/yoloGtold1/train/38523.png +../../data/yoloGtold1/train/38524.png +../../data/yoloGtold1/train/38525.png +../../data/yoloGtold1/train/38526.png +../../data/yoloGtold1/train/38527.png +../../data/yoloGtold1/train/38528.png +../../data/yoloGtold1/train/38529.png +../../data/yoloGtold1/train/38530.png +../../data/yoloGtold1/train/38531.png +../../data/yoloGtold1/train/38532.png +../../data/yoloGtold1/train/38533.png +../../data/yoloGtold1/train/38534.png +../../data/yoloGtold1/train/38535.png +../../data/yoloGtold1/train/38536.png +../../data/yoloGtold1/train/38537.png +../../data/yoloGtold1/train/38538.png +../../data/yoloGtold1/train/38539.png +../../data/yoloGtold1/train/38540.png +../../data/yoloGtold1/train/38541.png +../../data/yoloGtold1/train/38542.png +../../data/yoloGtold1/train/38543.png +../../data/yoloGtold1/train/38544.png +../../data/yoloGtold1/train/38545.png +../../data/yoloGtold1/train/38546.png +../../data/yoloGtold1/train/38547.png +../../data/yoloGtold1/train/38548.png +../../data/yoloGtold1/train/38549.png +../../data/yoloGtold1/train/38550.png +../../data/yoloGtold1/train/38551.png +../../data/yoloGtold1/train/38552.png +../../data/yoloGtold1/train/38553.png +../../data/yoloGtold1/train/38554.png +../../data/yoloGtold1/train/38555.png +../../data/yoloGtold1/train/38556.png +../../data/yoloGtold1/train/38557.png +../../data/yoloGtold1/train/38558.png +../../data/yoloGtold1/train/38559.png +../../data/yoloGtold1/train/38560.png +../../data/yoloGtold1/train/38561.png +../../data/yoloGtold1/train/38562.png +../../data/yoloGtold1/train/38563.png +../../data/yoloGtold1/train/38564.png +../../data/yoloGtold1/train/38565.png +../../data/yoloGtold1/train/38566.png +../../data/yoloGtold1/train/38567.png +../../data/yoloGtold1/train/38568.png +../../data/yoloGtold1/train/38569.png +../../data/yoloGtold1/train/38570.png +../../data/yoloGtold1/train/38571.png +../../data/yoloGtold1/train/38572.png +../../data/yoloGtold1/train/38573.png +../../data/yoloGtold1/train/38574.png +../../data/yoloGtold1/train/38575.png +../../data/yoloGtold1/train/38576.png +../../data/yoloGtold1/train/38577.png +../../data/yoloGtold1/train/38578.png +../../data/yoloGtold1/train/38579.png +../../data/yoloGtold1/train/38580.png +../../data/yoloGtold1/train/38581.png +../../data/yoloGtold1/train/38582.png +../../data/yoloGtold1/train/38583.png +../../data/yoloGtold1/train/38584.png +../../data/yoloGtold1/train/38585.png +../../data/yoloGtold1/train/38586.png +../../data/yoloGtold1/train/38587.png +../../data/yoloGtold1/train/38588.png +../../data/yoloGtold1/train/38589.png +../../data/yoloGtold1/train/38590.png +../../data/yoloGtold1/train/38591.png +../../data/yoloGtold1/train/38592.png +../../data/yoloGtold1/train/38593.png +../../data/yoloGtold1/train/38594.png +../../data/yoloGtold1/train/38595.png +../../data/yoloGtold1/train/38596.png +../../data/yoloGtold1/train/38597.png +../../data/yoloGtold1/train/38598.png +../../data/yoloGtold1/train/38599.png +../../data/yoloGtold1/train/38600.png +../../data/yoloGtold1/train/38601.png +../../data/yoloGtold1/train/38602.png +../../data/yoloGtold1/train/38603.png +../../data/yoloGtold1/train/38604.png +../../data/yoloGtold1/train/38605.png +../../data/yoloGtold1/train/38606.png +../../data/yoloGtold1/train/38607.png +../../data/yoloGtold1/train/38608.png +../../data/yoloGtold1/train/38609.png +../../data/yoloGtold1/train/38610.png +../../data/yoloGtold1/train/38611.png +../../data/yoloGtold1/train/38612.png +../../data/yoloGtold1/train/38613.png +../../data/yoloGtold1/train/38614.png +../../data/yoloGtold1/train/38615.png +../../data/yoloGtold1/train/38616.png +../../data/yoloGtold1/train/38617.png +../../data/yoloGtold1/train/38618.png +../../data/yoloGtold1/train/38619.png +../../data/yoloGtold1/train/38620.png +../../data/yoloGtold1/train/38621.png +../../data/yoloGtold1/train/38622.png +../../data/yoloGtold1/train/38623.png +../../data/yoloGtold1/train/38624.png +../../data/yoloGtold1/train/38625.png +../../data/yoloGtold1/train/38626.png +../../data/yoloGtold1/train/38627.png +../../data/yoloGtold1/train/38628.png +../../data/yoloGtold1/train/38629.png +../../data/yoloGtold1/train/38630.png +../../data/yoloGtold1/train/38631.png +../../data/yoloGtold1/train/38632.png +../../data/yoloGtold1/train/38633.png +../../data/yoloGtold1/train/38634.png +../../data/yoloGtold1/train/38635.png +../../data/yoloGtold1/train/38636.png +../../data/yoloGtold1/train/38637.png +../../data/yoloGtold1/train/38638.png +../../data/yoloGtold1/train/38639.png +../../data/yoloGtold1/train/38640.png +../../data/yoloGtold1/train/38641.png +../../data/yoloGtold1/train/38642.png +../../data/yoloGtold1/train/38643.png +../../data/yoloGtold1/train/38644.png +../../data/yoloGtold1/train/38645.png +../../data/yoloGtold1/train/38646.png +../../data/yoloGtold1/train/38647.png +../../data/yoloGtold1/train/38648.png +../../data/yoloGtold1/train/38649.png +../../data/yoloGtold1/train/38650.png +../../data/yoloGtold1/train/38651.png +../../data/yoloGtold1/train/38652.png +../../data/yoloGtold1/train/38653.png +../../data/yoloGtold1/train/38654.png +../../data/yoloGtold1/train/38655.png +../../data/yoloGtold1/train/38656.png +../../data/yoloGtold1/train/38657.png +../../data/yoloGtold1/train/38658.png +../../data/yoloGtold1/train/38659.png +../../data/yoloGtold1/train/38660.png +../../data/yoloGtold1/train/38661.png +../../data/yoloGtold1/train/38662.png +../../data/yoloGtold1/train/38663.png +../../data/yoloGtold1/train/38664.png +../../data/yoloGtold1/train/38665.png +../../data/yoloGtold1/train/38666.png +../../data/yoloGtold1/train/38667.png +../../data/yoloGtold1/train/38668.png +../../data/yoloGtold1/train/38669.png +../../data/yoloGtold1/train/38670.png +../../data/yoloGtold1/train/38671.png +../../data/yoloGtold1/train/38672.png +../../data/yoloGtold1/train/38673.png +../../data/yoloGtold1/train/38674.png +../../data/yoloGtold1/train/38675.png +../../data/yoloGtold1/train/38676.png +../../data/yoloGtold1/train/38677.png +../../data/yoloGtold1/train/38678.png +../../data/yoloGtold1/train/38679.png +../../data/yoloGtold1/train/38680.png +../../data/yoloGtold1/train/38681.png +../../data/yoloGtold1/train/38682.png +../../data/yoloGtold1/train/38683.png +../../data/yoloGtold1/train/38684.png +../../data/yoloGtold1/train/38685.png +../../data/yoloGtold1/train/38686.png +../../data/yoloGtold1/train/38687.png +../../data/yoloGtold1/train/38688.png +../../data/yoloGtold1/train/38689.png +../../data/yoloGtold1/train/38690.png +../../data/yoloGtold1/train/38691.png +../../data/yoloGtold1/train/38692.png +../../data/yoloGtold1/train/38693.png +../../data/yoloGtold1/train/38694.png +../../data/yoloGtold1/train/38695.png +../../data/yoloGtold1/train/38696.png +../../data/yoloGtold1/train/38697.png +../../data/yoloGtold1/train/38698.png +../../data/yoloGtold1/train/38699.png +../../data/yoloGtold1/train/38700.png +../../data/yoloGtold1/train/38701.png +../../data/yoloGtold1/train/38702.png +../../data/yoloGtold1/train/38703.png +../../data/yoloGtold1/train/38704.png +../../data/yoloGtold1/train/38705.png +../../data/yoloGtold1/train/38706.png +../../data/yoloGtold1/train/38707.png +../../data/yoloGtold1/train/38708.png +../../data/yoloGtold1/train/38709.png +../../data/yoloGtold1/train/38710.png +../../data/yoloGtold1/train/38711.png +../../data/yoloGtold1/train/38712.png +../../data/yoloGtold1/train/38713.png +../../data/yoloGtold1/train/38714.png +../../data/yoloGtold1/train/38715.png +../../data/yoloGtold1/train/38716.png +../../data/yoloGtold1/train/38717.png +../../data/yoloGtold1/train/38718.png +../../data/yoloGtold1/train/38719.png +../../data/yoloGtold1/train/38720.png +../../data/yoloGtold1/train/38721.png +../../data/yoloGtold1/train/38722.png +../../data/yoloGtold1/train/38723.png +../../data/yoloGtold1/train/38724.png +../../data/yoloGtold1/train/38725.png +../../data/yoloGtold1/train/38726.png +../../data/yoloGtold1/train/38727.png +../../data/yoloGtold1/train/38728.png +../../data/yoloGtold1/train/38729.png +../../data/yoloGtold1/train/38730.png +../../data/yoloGtold1/train/38731.png +../../data/yoloGtold1/train/38732.png +../../data/yoloGtold1/train/38733.png +../../data/yoloGtold1/train/38734.png +../../data/yoloGtold1/train/38735.png +../../data/yoloGtold1/train/38736.png +../../data/yoloGtold1/train/38737.png +../../data/yoloGtold1/train/38738.png +../../data/yoloGtold1/train/38739.png +../../data/yoloGtold1/train/38740.png +../../data/yoloGtold1/train/38741.png +../../data/yoloGtold1/train/38742.png +../../data/yoloGtold1/train/38743.png +../../data/yoloGtold1/train/38744.png +../../data/yoloGtold1/train/38745.png +../../data/yoloGtold1/train/38746.png +../../data/yoloGtold1/train/38747.png +../../data/yoloGtold1/train/38748.png +../../data/yoloGtold1/train/38749.png +../../data/yoloGtold1/train/38750.png +../../data/yoloGtold1/train/38751.png +../../data/yoloGtold1/train/38752.png +../../data/yoloGtold1/train/38753.png +../../data/yoloGtold1/train/38754.png +../../data/yoloGtold1/train/38755.png +../../data/yoloGtold1/train/38756.png +../../data/yoloGtold1/train/38757.png +../../data/yoloGtold1/train/38758.png +../../data/yoloGtold1/train/38759.png +../../data/yoloGtold1/train/38760.png +../../data/yoloGtold1/train/38761.png +../../data/yoloGtold1/train/38762.png +../../data/yoloGtold1/train/38763.png +../../data/yoloGtold1/train/38764.png +../../data/yoloGtold1/train/38765.png +../../data/yoloGtold1/train/38766.png +../../data/yoloGtold1/train/38767.png +../../data/yoloGtold1/train/38768.png +../../data/yoloGtold1/train/38769.png +../../data/yoloGtold1/train/38770.png +../../data/yoloGtold1/train/38771.png +../../data/yoloGtold1/train/38772.png +../../data/yoloGtold1/train/38773.png +../../data/yoloGtold1/train/38774.png +../../data/yoloGtold1/train/38775.png +../../data/yoloGtold1/train/38776.png +../../data/yoloGtold1/train/38777.png +../../data/yoloGtold1/train/38778.png +../../data/yoloGtold1/train/38779.png +../../data/yoloGtold1/train/38780.png +../../data/yoloGtold1/train/38781.png +../../data/yoloGtold1/train/38782.png +../../data/yoloGtold1/train/38783.png +../../data/yoloGtold1/train/38784.png +../../data/yoloGtold1/train/38785.png +../../data/yoloGtold1/train/38786.png +../../data/yoloGtold1/train/38787.png +../../data/yoloGtold1/train/38788.png +../../data/yoloGtold1/train/38789.png +../../data/yoloGtold1/train/38790.png +../../data/yoloGtold1/train/38791.png +../../data/yoloGtold1/train/38792.png +../../data/yoloGtold1/train/38793.png +../../data/yoloGtold1/train/38794.png +../../data/yoloGtold1/train/38795.png +../../data/yoloGtold1/train/38796.png +../../data/yoloGtold1/train/38797.png +../../data/yoloGtold1/train/38798.png +../../data/yoloGtold1/train/38799.png +../../data/yoloGtold1/train/38800.png +../../data/yoloGtold1/train/38801.png +../../data/yoloGtold1/train/38802.png +../../data/yoloGtold1/train/38803.png +../../data/yoloGtold1/train/38804.png +../../data/yoloGtold1/train/38805.png +../../data/yoloGtold1/train/38806.png +../../data/yoloGtold1/train/38807.png +../../data/yoloGtold1/train/38808.png +../../data/yoloGtold1/train/38809.png +../../data/yoloGtold1/train/38810.png +../../data/yoloGtold1/train/38811.png +../../data/yoloGtold1/train/38812.png +../../data/yoloGtold1/train/38813.png +../../data/yoloGtold1/train/38814.png +../../data/yoloGtold1/train/38815.png +../../data/yoloGtold1/train/38816.png +../../data/yoloGtold1/train/38817.png +../../data/yoloGtold1/train/38818.png +../../data/yoloGtold1/train/38819.png +../../data/yoloGtold1/train/38820.png +../../data/yoloGtold1/train/38821.png +../../data/yoloGtold1/train/38822.png +../../data/yoloGtold1/train/38823.png +../../data/yoloGtold1/train/38824.png +../../data/yoloGtold1/train/38825.png +../../data/yoloGtold1/train/38826.png +../../data/yoloGtold1/train/38827.png +../../data/yoloGtold1/train/38828.png +../../data/yoloGtold1/train/38829.png +../../data/yoloGtold1/train/38830.png +../../data/yoloGtold1/train/38831.png +../../data/yoloGtold1/train/38832.png +../../data/yoloGtold1/train/38833.png +../../data/yoloGtold1/train/38834.png +../../data/yoloGtold1/train/38835.png +../../data/yoloGtold1/train/38836.png +../../data/yoloGtold1/train/38837.png +../../data/yoloGtold1/train/38838.png +../../data/yoloGtold1/train/38839.png +../../data/yoloGtold1/train/38840.png +../../data/yoloGtold1/train/38841.png +../../data/yoloGtold1/train/38842.png +../../data/yoloGtold1/train/38843.png +../../data/yoloGtold1/train/38844.png +../../data/yoloGtold1/train/38845.png +../../data/yoloGtold1/train/38846.png +../../data/yoloGtold1/train/38847.png +../../data/yoloGtold1/train/38848.png +../../data/yoloGtold1/train/38849.png +../../data/yoloGtold1/train/38850.png +../../data/yoloGtold1/train/38851.png +../../data/yoloGtold1/train/38852.png +../../data/yoloGtold1/train/38853.png +../../data/yoloGtold1/train/38854.png +../../data/yoloGtold1/train/38855.png +../../data/yoloGtold1/train/38856.png +../../data/yoloGtold1/train/38857.png +../../data/yoloGtold1/train/38858.png +../../data/yoloGtold1/train/38859.png +../../data/yoloGtold1/train/38860.png +../../data/yoloGtold1/train/38861.png +../../data/yoloGtold1/train/38862.png +../../data/yoloGtold1/train/38863.png +../../data/yoloGtold1/train/38864.png +../../data/yoloGtold1/train/38865.png +../../data/yoloGtold1/train/38866.png +../../data/yoloGtold1/train/38867.png +../../data/yoloGtold1/train/38868.png +../../data/yoloGtold1/train/38869.png +../../data/yoloGtold1/train/38870.png +../../data/yoloGtold1/train/38871.png +../../data/yoloGtold1/train/38872.png +../../data/yoloGtold1/train/38873.png +../../data/yoloGtold1/train/38874.png +../../data/yoloGtold1/train/38875.png +../../data/yoloGtold1/train/38876.png +../../data/yoloGtold1/train/38877.png +../../data/yoloGtold1/train/38878.png +../../data/yoloGtold1/train/38879.png +../../data/yoloGtold1/train/38880.png +../../data/yoloGtold1/train/38881.png +../../data/yoloGtold1/train/38882.png +../../data/yoloGtold1/train/38883.png +../../data/yoloGtold1/train/38884.png +../../data/yoloGtold1/train/38885.png +../../data/yoloGtold1/train/38886.png +../../data/yoloGtold1/train/38887.png +../../data/yoloGtold1/train/38888.png +../../data/yoloGtold1/train/38889.png +../../data/yoloGtold1/train/38890.png +../../data/yoloGtold1/train/38891.png +../../data/yoloGtold1/train/38892.png +../../data/yoloGtold1/train/38893.png +../../data/yoloGtold1/train/38894.png +../../data/yoloGtold1/train/38895.png +../../data/yoloGtold1/train/38896.png +../../data/yoloGtold1/train/38897.png +../../data/yoloGtold1/train/38898.png +../../data/yoloGtold1/train/38899.png +../../data/yoloGtold1/train/38900.png +../../data/yoloGtold1/train/38901.png +../../data/yoloGtold1/train/38902.png +../../data/yoloGtold1/train/38903.png +../../data/yoloGtold1/train/38904.png +../../data/yoloGtold1/train/38905.png +../../data/yoloGtold1/train/38906.png +../../data/yoloGtold1/train/38907.png +../../data/yoloGtold1/train/38908.png +../../data/yoloGtold1/train/38909.png +../../data/yoloGtold1/train/38910.png +../../data/yoloGtold1/train/38911.png +../../data/yoloGtold1/train/38912.png +../../data/yoloGtold1/train/38913.png +../../data/yoloGtold1/train/38914.png +../../data/yoloGtold1/train/38915.png +../../data/yoloGtold1/train/38916.png +../../data/yoloGtold1/train/38917.png +../../data/yoloGtold1/train/38918.png +../../data/yoloGtold1/train/38919.png +../../data/yoloGtold1/train/38920.png +../../data/yoloGtold1/train/38921.png +../../data/yoloGtold1/train/38922.png +../../data/yoloGtold1/train/38923.png +../../data/yoloGtold1/train/38924.png +../../data/yoloGtold1/train/38925.png +../../data/yoloGtold1/train/38926.png +../../data/yoloGtold1/train/38927.png +../../data/yoloGtold1/train/38928.png +../../data/yoloGtold1/train/38929.png +../../data/yoloGtold1/train/38930.png +../../data/yoloGtold1/train/38931.png +../../data/yoloGtold1/train/38932.png +../../data/yoloGtold1/train/38933.png +../../data/yoloGtold1/train/38934.png +../../data/yoloGtold1/train/38935.png +../../data/yoloGtold1/train/38936.png +../../data/yoloGtold1/train/38937.png +../../data/yoloGtold1/train/38938.png +../../data/yoloGtold1/train/38939.png +../../data/yoloGtold1/train/38940.png +../../data/yoloGtold1/train/38941.png +../../data/yoloGtold1/train/38942.png +../../data/yoloGtold1/train/38943.png +../../data/yoloGtold1/train/38944.png +../../data/yoloGtold1/train/38945.png +../../data/yoloGtold1/train/38946.png +../../data/yoloGtold1/train/38947.png +../../data/yoloGtold1/train/38948.png +../../data/yoloGtold1/train/38949.png +../../data/yoloGtold1/train/38950.png +../../data/yoloGtold1/train/38951.png +../../data/yoloGtold1/train/38952.png +../../data/yoloGtold1/train/38953.png +../../data/yoloGtold1/train/38954.png +../../data/yoloGtold1/train/38955.png +../../data/yoloGtold1/train/38956.png +../../data/yoloGtold1/train/38957.png +../../data/yoloGtold1/train/38958.png +../../data/yoloGtold1/train/38959.png +../../data/yoloGtold1/train/38960.png +../../data/yoloGtold1/train/38961.png +../../data/yoloGtold1/train/38962.png +../../data/yoloGtold1/train/38963.png +../../data/yoloGtold1/train/38964.png +../../data/yoloGtold1/train/38965.png +../../data/yoloGtold1/train/38966.png +../../data/yoloGtold1/train/38967.png +../../data/yoloGtold1/train/38968.png +../../data/yoloGtold1/train/38969.png +../../data/yoloGtold1/train/38970.png +../../data/yoloGtold1/train/38971.png +../../data/yoloGtold1/train/38972.png +../../data/yoloGtold1/train/38973.png +../../data/yoloGtold1/train/38974.png +../../data/yoloGtold1/train/38975.png +../../data/yoloGtold1/train/38976.png +../../data/yoloGtold1/train/38977.png +../../data/yoloGtold1/train/38978.png +../../data/yoloGtold1/train/38979.png +../../data/yoloGtold1/train/38980.png +../../data/yoloGtold1/train/38981.png +../../data/yoloGtold1/train/38982.png +../../data/yoloGtold1/train/38983.png +../../data/yoloGtold1/train/38984.png +../../data/yoloGtold1/train/38985.png +../../data/yoloGtold1/train/38986.png +../../data/yoloGtold1/train/38987.png +../../data/yoloGtold1/train/38988.png +../../data/yoloGtold1/train/38989.png +../../data/yoloGtold1/train/38990.png +../../data/yoloGtold1/train/38991.png +../../data/yoloGtold1/train/38992.png +../../data/yoloGtold1/train/38993.png +../../data/yoloGtold1/train/38994.png +../../data/yoloGtold1/train/38995.png +../../data/yoloGtold1/train/38996.png +../../data/yoloGtold1/train/38997.png +../../data/yoloGtold1/train/38998.png +../../data/yoloGtold1/train/38999.png +../../data/yoloGtold1/train/39000.png +../../data/yoloGtold1/train/39001.png +../../data/yoloGtold1/train/39002.png +../../data/yoloGtold1/train/39003.png +../../data/yoloGtold1/train/39004.png +../../data/yoloGtold1/train/39005.png +../../data/yoloGtold1/train/39006.png +../../data/yoloGtold1/train/39007.png +../../data/yoloGtold1/train/39008.png +../../data/yoloGtold1/train/39009.png +../../data/yoloGtold1/train/39010.png +../../data/yoloGtold1/train/39011.png +../../data/yoloGtold1/train/39012.png +../../data/yoloGtold1/train/39013.png +../../data/yoloGtold1/train/39014.png +../../data/yoloGtold1/train/39015.png +../../data/yoloGtold1/train/39016.png +../../data/yoloGtold1/train/39017.png +../../data/yoloGtold1/train/39018.png +../../data/yoloGtold1/train/39019.png +../../data/yoloGtold1/train/39020.png +../../data/yoloGtold1/train/39021.png +../../data/yoloGtold1/train/39022.png +../../data/yoloGtold1/train/39023.png +../../data/yoloGtold1/train/39024.png +../../data/yoloGtold1/train/39025.png +../../data/yoloGtold1/train/39026.png +../../data/yoloGtold1/train/39027.png +../../data/yoloGtold1/train/39028.png +../../data/yoloGtold1/train/39029.png +../../data/yoloGtold1/train/39030.png +../../data/yoloGtold1/train/39031.png +../../data/yoloGtold1/train/39032.png +../../data/yoloGtold1/train/39033.png +../../data/yoloGtold1/train/39034.png +../../data/yoloGtold1/train/39035.png +../../data/yoloGtold1/train/39036.png +../../data/yoloGtold1/train/39037.png +../../data/yoloGtold1/train/39038.png +../../data/yoloGtold1/train/39039.png +../../data/yoloGtold1/train/39040.png +../../data/yoloGtold1/train/39041.png +../../data/yoloGtold1/train/39042.png +../../data/yoloGtold1/train/39043.png +../../data/yoloGtold1/train/39044.png +../../data/yoloGtold1/train/39045.png +../../data/yoloGtold1/train/39046.png +../../data/yoloGtold1/train/39047.png +../../data/yoloGtold1/train/39048.png +../../data/yoloGtold1/train/39049.png +../../data/yoloGtold1/train/39050.png +../../data/yoloGtold1/train/39051.png +../../data/yoloGtold1/train/39052.png +../../data/yoloGtold1/train/39053.png +../../data/yoloGtold1/train/39054.png +../../data/yoloGtold1/train/39055.png +../../data/yoloGtold1/train/39056.png +../../data/yoloGtold1/train/39057.png +../../data/yoloGtold1/train/39058.png +../../data/yoloGtold1/train/39059.png +../../data/yoloGtold1/train/39060.png +../../data/yoloGtold1/train/39061.png +../../data/yoloGtold1/train/39062.png +../../data/yoloGtold1/train/39063.png +../../data/yoloGtold1/train/39064.png +../../data/yoloGtold1/train/39065.png +../../data/yoloGtold1/train/39066.png +../../data/yoloGtold1/train/39067.png +../../data/yoloGtold1/train/39068.png +../../data/yoloGtold1/train/39069.png +../../data/yoloGtold1/train/39070.png +../../data/yoloGtold1/train/39071.png +../../data/yoloGtold1/train/39072.png +../../data/yoloGtold1/train/39073.png +../../data/yoloGtold1/train/39074.png +../../data/yoloGtold1/train/39075.png +../../data/yoloGtold1/train/39076.png +../../data/yoloGtold1/train/39077.png +../../data/yoloGtold1/train/39078.png +../../data/yoloGtold1/train/39079.png +../../data/yoloGtold1/train/39080.png +../../data/yoloGtold1/train/39081.png +../../data/yoloGtold1/train/39082.png +../../data/yoloGtold1/train/39083.png +../../data/yoloGtold1/train/39084.png +../../data/yoloGtold1/train/39085.png +../../data/yoloGtold1/train/39086.png +../../data/yoloGtold1/train/39087.png +../../data/yoloGtold1/train/39088.png +../../data/yoloGtold1/train/39089.png +../../data/yoloGtold1/train/39090.png +../../data/yoloGtold1/train/39091.png +../../data/yoloGtold1/train/39092.png +../../data/yoloGtold1/train/39093.png +../../data/yoloGtold1/train/39094.png +../../data/yoloGtold1/train/39095.png +../../data/yoloGtold1/train/39096.png +../../data/yoloGtold1/train/39097.png +../../data/yoloGtold1/train/39098.png +../../data/yoloGtold1/train/39099.png +../../data/yoloGtold1/train/39100.png +../../data/yoloGtold1/train/39101.png +../../data/yoloGtold1/train/39102.png +../../data/yoloGtold1/train/39103.png +../../data/yoloGtold1/train/39104.png +../../data/yoloGtold1/train/39105.png +../../data/yoloGtold1/train/39106.png +../../data/yoloGtold1/train/39107.png +../../data/yoloGtold1/train/39108.png +../../data/yoloGtold1/train/39109.png +../../data/yoloGtold1/train/39110.png +../../data/yoloGtold1/train/39111.png +../../data/yoloGtold1/train/39112.png +../../data/yoloGtold1/train/39113.png +../../data/yoloGtold1/train/39114.png +../../data/yoloGtold1/train/39115.png +../../data/yoloGtold1/train/39116.png +../../data/yoloGtold1/train/39117.png +../../data/yoloGtold1/train/39118.png +../../data/yoloGtold1/train/39119.png +../../data/yoloGtold1/train/39120.png +../../data/yoloGtold1/train/39121.png +../../data/yoloGtold1/train/39122.png +../../data/yoloGtold1/train/39123.png +../../data/yoloGtold1/train/39124.png +../../data/yoloGtold1/train/39125.png +../../data/yoloGtold1/train/39126.png +../../data/yoloGtold1/train/39127.png +../../data/yoloGtold1/train/39128.png +../../data/yoloGtold1/train/39129.png +../../data/yoloGtold1/train/39130.png +../../data/yoloGtold1/train/39131.png +../../data/yoloGtold1/train/39132.png +../../data/yoloGtold1/train/39133.png +../../data/yoloGtold1/train/39134.png +../../data/yoloGtold1/train/39135.png +../../data/yoloGtold1/train/39136.png +../../data/yoloGtold1/train/39137.png +../../data/yoloGtold1/train/39138.png +../../data/yoloGtold1/train/39139.png +../../data/yoloGtold1/train/39140.png +../../data/yoloGtold1/train/39141.png +../../data/yoloGtold1/train/39142.png +../../data/yoloGtold1/train/39143.png +../../data/yoloGtold1/train/39144.png +../../data/yoloGtold1/train/39145.png +../../data/yoloGtold1/train/39146.png +../../data/yoloGtold1/train/39147.png +../../data/yoloGtold1/train/39148.png +../../data/yoloGtold1/train/39149.png +../../data/yoloGtold1/train/39150.png +../../data/yoloGtold1/train/39151.png +../../data/yoloGtold1/train/39152.png +../../data/yoloGtold1/train/39153.png +../../data/yoloGtold1/train/39154.png +../../data/yoloGtold1/train/39155.png +../../data/yoloGtold1/train/39156.png +../../data/yoloGtold1/train/39157.png +../../data/yoloGtold1/train/39158.png +../../data/yoloGtold1/train/39159.png +../../data/yoloGtold1/train/39160.png +../../data/yoloGtold1/train/39161.png +../../data/yoloGtold1/train/39162.png +../../data/yoloGtold1/train/39163.png +../../data/yoloGtold1/train/39164.png +../../data/yoloGtold1/train/39165.png +../../data/yoloGtold1/train/39166.png +../../data/yoloGtold1/train/39167.png +../../data/yoloGtold1/train/39168.png +../../data/yoloGtold1/train/39169.png +../../data/yoloGtold1/train/39170.png +../../data/yoloGtold1/train/39171.png +../../data/yoloGtold1/train/39172.png +../../data/yoloGtold1/train/39173.png +../../data/yoloGtold1/train/39174.png +../../data/yoloGtold1/train/39175.png +../../data/yoloGtold1/train/39176.png +../../data/yoloGtold1/train/39177.png +../../data/yoloGtold1/train/39178.png +../../data/yoloGtold1/train/39179.png +../../data/yoloGtold1/train/39180.png +../../data/yoloGtold1/train/39181.png +../../data/yoloGtold1/train/39182.png +../../data/yoloGtold1/train/39183.png +../../data/yoloGtold1/train/39184.png +../../data/yoloGtold1/train/39185.png +../../data/yoloGtold1/train/39186.png +../../data/yoloGtold1/train/39187.png +../../data/yoloGtold1/train/39188.png +../../data/yoloGtold1/train/39189.png +../../data/yoloGtold1/train/39190.png +../../data/yoloGtold1/train/39191.png +../../data/yoloGtold1/train/39192.png +../../data/yoloGtold1/train/39193.png +../../data/yoloGtold1/train/39194.png +../../data/yoloGtold1/train/39195.png +../../data/yoloGtold1/train/39196.png +../../data/yoloGtold1/train/39197.png +../../data/yoloGtold1/train/39198.png +../../data/yoloGtold1/train/39199.png +../../data/yoloGtold1/train/39200.png +../../data/yoloGtold1/train/39201.png +../../data/yoloGtold1/train/39202.png +../../data/yoloGtold1/train/39203.png +../../data/yoloGtold1/train/39204.png +../../data/yoloGtold1/train/39205.png +../../data/yoloGtold1/train/39206.png +../../data/yoloGtold1/train/39207.png +../../data/yoloGtold1/train/39208.png +../../data/yoloGtold1/train/39209.png +../../data/yoloGtold1/train/39210.png +../../data/yoloGtold1/train/39211.png +../../data/yoloGtold1/train/39212.png +../../data/yoloGtold1/train/39213.png +../../data/yoloGtold1/train/39214.png +../../data/yoloGtold1/train/39215.png +../../data/yoloGtold1/train/39216.png +../../data/yoloGtold1/train/39217.png +../../data/yoloGtold1/train/39218.png +../../data/yoloGtold1/train/39219.png +../../data/yoloGtold1/train/39220.png +../../data/yoloGtold1/train/39221.png +../../data/yoloGtold1/train/39222.png +../../data/yoloGtold1/train/39223.png +../../data/yoloGtold1/train/39224.png +../../data/yoloGtold1/train/39225.png +../../data/yoloGtold1/train/39226.png +../../data/yoloGtold1/train/39227.png +../../data/yoloGtold1/train/39228.png +../../data/yoloGtold1/train/39229.png +../../data/yoloGtold1/train/39230.png +../../data/yoloGtold1/train/39231.png +../../data/yoloGtold1/train/39232.png +../../data/yoloGtold1/train/39233.png +../../data/yoloGtold1/train/39234.png +../../data/yoloGtold1/train/39235.png +../../data/yoloGtold1/train/39236.png +../../data/yoloGtold1/train/39237.png +../../data/yoloGtold1/train/39238.png +../../data/yoloGtold1/train/39239.png +../../data/yoloGtold1/train/39240.png +../../data/yoloGtold1/train/39241.png +../../data/yoloGtold1/train/39242.png +../../data/yoloGtold1/train/39243.png +../../data/yoloGtold1/train/39244.png +../../data/yoloGtold1/train/39245.png +../../data/yoloGtold1/train/39246.png +../../data/yoloGtold1/train/39247.png +../../data/yoloGtold1/train/39248.png +../../data/yoloGtold1/train/39249.png +../../data/yoloGtold1/train/39250.png +../../data/yoloGtold1/train/39251.png +../../data/yoloGtold1/train/39252.png +../../data/yoloGtold1/train/39253.png +../../data/yoloGtold1/train/39254.png +../../data/yoloGtold1/train/39255.png +../../data/yoloGtold1/train/39256.png +../../data/yoloGtold1/train/39257.png +../../data/yoloGtold1/train/39258.png +../../data/yoloGtold1/train/39259.png +../../data/yoloGtold1/train/39260.png +../../data/yoloGtold1/train/39261.png +../../data/yoloGtold1/train/39262.png +../../data/yoloGtold1/train/39263.png +../../data/yoloGtold1/train/39264.png +../../data/yoloGtold1/train/39265.png +../../data/yoloGtold1/train/39266.png +../../data/yoloGtold1/train/39267.png +../../data/yoloGtold1/train/39268.png +../../data/yoloGtold1/train/39269.png +../../data/yoloGtold1/train/39270.png +../../data/yoloGtold1/train/39271.png +../../data/yoloGtold1/train/39272.png +../../data/yoloGtold1/train/39273.png +../../data/yoloGtold1/train/39274.png +../../data/yoloGtold1/train/39275.png +../../data/yoloGtold1/train/39276.png +../../data/yoloGtold1/train/39277.png +../../data/yoloGtold1/train/39278.png +../../data/yoloGtold1/train/39279.png +../../data/yoloGtold1/train/39280.png +../../data/yoloGtold1/train/39281.png +../../data/yoloGtold1/train/39282.png +../../data/yoloGtold1/train/39283.png +../../data/yoloGtold1/train/39284.png +../../data/yoloGtold1/train/39285.png +../../data/yoloGtold1/train/39286.png +../../data/yoloGtold1/train/39287.png +../../data/yoloGtold1/train/39288.png +../../data/yoloGtold1/train/39289.png +../../data/yoloGtold1/train/39290.png +../../data/yoloGtold1/train/39291.png +../../data/yoloGtold1/train/39292.png +../../data/yoloGtold1/train/39293.png +../../data/yoloGtold1/train/39294.png +../../data/yoloGtold1/train/39295.png +../../data/yoloGtold1/train/39296.png +../../data/yoloGtold1/train/39297.png +../../data/yoloGtold1/train/39298.png +../../data/yoloGtold1/train/39299.png +../../data/yoloGtold1/train/39300.png +../../data/yoloGtold1/train/39301.png +../../data/yoloGtold1/train/39302.png +../../data/yoloGtold1/train/39303.png +../../data/yoloGtold1/train/39304.png +../../data/yoloGtold1/train/39305.png +../../data/yoloGtold1/train/39306.png +../../data/yoloGtold1/train/39307.png +../../data/yoloGtold1/train/39308.png +../../data/yoloGtold1/train/39309.png +../../data/yoloGtold1/train/39310.png +../../data/yoloGtold1/train/39311.png +../../data/yoloGtold1/train/39312.png +../../data/yoloGtold1/train/39313.png +../../data/yoloGtold1/train/39314.png +../../data/yoloGtold1/train/39315.png +../../data/yoloGtold1/train/39316.png +../../data/yoloGtold1/train/39317.png +../../data/yoloGtold1/train/39318.png +../../data/yoloGtold1/train/39319.png +../../data/yoloGtold1/train/39320.png +../../data/yoloGtold1/train/39321.png +../../data/yoloGtold1/train/39322.png +../../data/yoloGtold1/train/39323.png +../../data/yoloGtold1/train/39324.png +../../data/yoloGtold1/train/39325.png +../../data/yoloGtold1/train/39326.png +../../data/yoloGtold1/train/39327.png +../../data/yoloGtold1/train/39328.png +../../data/yoloGtold1/train/39329.png +../../data/yoloGtold1/train/39330.png +../../data/yoloGtold1/train/39331.png +../../data/yoloGtold1/train/39332.png +../../data/yoloGtold1/train/39333.png +../../data/yoloGtold1/train/39334.png +../../data/yoloGtold1/train/39335.png +../../data/yoloGtold1/train/39336.png +../../data/yoloGtold1/train/39337.png +../../data/yoloGtold1/train/39338.png +../../data/yoloGtold1/train/39339.png +../../data/yoloGtold1/train/39340.png +../../data/yoloGtold1/train/39341.png +../../data/yoloGtold1/train/39342.png +../../data/yoloGtold1/train/39343.png +../../data/yoloGtold1/train/39344.png +../../data/yoloGtold1/train/39345.png +../../data/yoloGtold1/train/39346.png +../../data/yoloGtold1/train/39347.png +../../data/yoloGtold1/train/39348.png +../../data/yoloGtold1/train/39349.png +../../data/yoloGtold1/train/39350.png +../../data/yoloGtold1/train/39351.png +../../data/yoloGtold1/train/39352.png +../../data/yoloGtold1/train/39353.png +../../data/yoloGtold1/train/39354.png +../../data/yoloGtold1/train/39355.png +../../data/yoloGtold1/train/39356.png +../../data/yoloGtold1/train/39357.png +../../data/yoloGtold1/train/39358.png +../../data/yoloGtold1/train/39359.png +../../data/yoloGtold1/train/39360.png +../../data/yoloGtold1/train/39361.png +../../data/yoloGtold1/train/39362.png +../../data/yoloGtold1/train/39363.png +../../data/yoloGtold1/train/39364.png +../../data/yoloGtold1/train/39365.png +../../data/yoloGtold1/train/39366.png +../../data/yoloGtold1/train/39367.png +../../data/yoloGtold1/train/39368.png +../../data/yoloGtold1/train/39369.png +../../data/yoloGtold1/train/39370.png +../../data/yoloGtold1/train/39371.png +../../data/yoloGtold1/train/39372.png +../../data/yoloGtold1/train/39373.png +../../data/yoloGtold1/train/39374.png +../../data/yoloGtold1/train/39375.png +../../data/yoloGtold1/train/39376.png +../../data/yoloGtold1/train/39377.png +../../data/yoloGtold1/train/39378.png +../../data/yoloGtold1/train/39379.png +../../data/yoloGtold1/train/39380.png +../../data/yoloGtold1/train/39381.png +../../data/yoloGtold1/train/39382.png +../../data/yoloGtold1/train/39383.png +../../data/yoloGtold1/train/39384.png +../../data/yoloGtold1/train/39385.png +../../data/yoloGtold1/train/39386.png +../../data/yoloGtold1/train/39387.png +../../data/yoloGtold1/train/39388.png +../../data/yoloGtold1/train/39389.png +../../data/yoloGtold1/train/39390.png +../../data/yoloGtold1/train/39391.png +../../data/yoloGtold1/train/39392.png +../../data/yoloGtold1/train/39393.png +../../data/yoloGtold1/train/39394.png +../../data/yoloGtold1/train/39395.png +../../data/yoloGtold1/train/39396.png +../../data/yoloGtold1/train/39397.png +../../data/yoloGtold1/train/39398.png +../../data/yoloGtold1/train/39399.png +../../data/yoloGtold1/train/39400.png +../../data/yoloGtold1/train/39401.png +../../data/yoloGtold1/train/39402.png +../../data/yoloGtold1/train/39403.png +../../data/yoloGtold1/train/39404.png +../../data/yoloGtold1/train/39405.png +../../data/yoloGtold1/train/39406.png +../../data/yoloGtold1/train/39407.png +../../data/yoloGtold1/train/39408.png +../../data/yoloGtold1/train/39409.png +../../data/yoloGtold1/train/39410.png +../../data/yoloGtold1/train/39411.png +../../data/yoloGtold1/train/39412.png +../../data/yoloGtold1/train/39413.png +../../data/yoloGtold1/train/39414.png +../../data/yoloGtold1/train/39415.png +../../data/yoloGtold1/train/39416.png +../../data/yoloGtold1/train/39417.png +../../data/yoloGtold1/train/39418.png +../../data/yoloGtold1/train/39419.png +../../data/yoloGtold1/train/39420.png +../../data/yoloGtold1/train/39421.png +../../data/yoloGtold1/train/39422.png +../../data/yoloGtold1/train/39423.png +../../data/yoloGtold1/train/39424.png +../../data/yoloGtold1/train/39425.png +../../data/yoloGtold1/train/39426.png +../../data/yoloGtold1/train/39427.png +../../data/yoloGtold1/train/39428.png +../../data/yoloGtold1/train/39429.png +../../data/yoloGtold1/train/39430.png +../../data/yoloGtold1/train/39431.png +../../data/yoloGtold1/train/39432.png +../../data/yoloGtold1/train/39433.png +../../data/yoloGtold1/train/39434.png +../../data/yoloGtold1/train/39435.png +../../data/yoloGtold1/train/39436.png +../../data/yoloGtold1/train/39437.png +../../data/yoloGtold1/train/39438.png +../../data/yoloGtold1/train/39439.png +../../data/yoloGtold1/train/39440.png +../../data/yoloGtold1/train/39441.png +../../data/yoloGtold1/train/39442.png +../../data/yoloGtold1/train/39443.png +../../data/yoloGtold1/train/39444.png +../../data/yoloGtold1/train/39445.png +../../data/yoloGtold1/train/39446.png +../../data/yoloGtold1/train/39447.png +../../data/yoloGtold1/train/39448.png +../../data/yoloGtold1/train/39449.png +../../data/yoloGtold1/train/39450.png +../../data/yoloGtold1/train/39451.png +../../data/yoloGtold1/train/39452.png +../../data/yoloGtold1/train/39453.png +../../data/yoloGtold1/train/39454.png +../../data/yoloGtold1/train/39455.png +../../data/yoloGtold1/train/39456.png +../../data/yoloGtold1/train/39457.png +../../data/yoloGtold1/train/39458.png +../../data/yoloGtold1/train/39459.png +../../data/yoloGtold1/train/39460.png +../../data/yoloGtold1/train/39461.png +../../data/yoloGtold1/train/39462.png +../../data/yoloGtold1/train/39463.png +../../data/yoloGtold1/train/39464.png +../../data/yoloGtold1/train/39465.png +../../data/yoloGtold1/train/39466.png +../../data/yoloGtold1/train/39467.png +../../data/yoloGtold1/train/39468.png +../../data/yoloGtold1/train/39469.png +../../data/yoloGtold1/train/39470.png +../../data/yoloGtold1/train/39471.png +../../data/yoloGtold1/train/39472.png +../../data/yoloGtold1/train/39473.png +../../data/yoloGtold1/train/39474.png +../../data/yoloGtold1/train/39475.png +../../data/yoloGtold1/train/39476.png +../../data/yoloGtold1/train/39477.png +../../data/yoloGtold1/train/39478.png +../../data/yoloGtold1/train/39479.png +../../data/yoloGtold1/train/39480.png +../../data/yoloGtold1/train/39481.png +../../data/yoloGtold1/train/39482.png +../../data/yoloGtold1/train/39483.png +../../data/yoloGtold1/train/39484.png +../../data/yoloGtold1/train/39485.png +../../data/yoloGtold1/train/39486.png +../../data/yoloGtold1/train/39487.png +../../data/yoloGtold1/train/39488.png +../../data/yoloGtold1/train/39489.png +../../data/yoloGtold1/train/39490.png +../../data/yoloGtold1/train/39491.png +../../data/yoloGtold1/train/39492.png +../../data/yoloGtold1/train/39493.png +../../data/yoloGtold1/train/39494.png +../../data/yoloGtold1/train/39495.png +../../data/yoloGtold1/train/39496.png +../../data/yoloGtold1/train/39497.png +../../data/yoloGtold1/train/39498.png +../../data/yoloGtold1/train/39499.png +../../data/yoloGtold1/train/39500.png +../../data/yoloGtold1/train/39501.png +../../data/yoloGtold1/train/39502.png +../../data/yoloGtold1/train/39503.png +../../data/yoloGtold1/train/39504.png +../../data/yoloGtold1/train/39505.png +../../data/yoloGtold1/train/39506.png +../../data/yoloGtold1/train/39507.png +../../data/yoloGtold1/train/39508.png +../../data/yoloGtold1/train/39509.png +../../data/yoloGtold1/train/39510.png +../../data/yoloGtold1/train/39511.png +../../data/yoloGtold1/train/39512.png +../../data/yoloGtold1/train/39513.png +../../data/yoloGtold1/train/39514.png +../../data/yoloGtold1/train/39515.png +../../data/yoloGtold1/train/39516.png +../../data/yoloGtold1/train/39517.png +../../data/yoloGtold1/train/39518.png +../../data/yoloGtold1/train/39519.png +../../data/yoloGtold1/train/39520.png +../../data/yoloGtold1/train/39521.png +../../data/yoloGtold1/train/39522.png +../../data/yoloGtold1/train/39523.png +../../data/yoloGtold1/train/39524.png +../../data/yoloGtold1/train/39525.png +../../data/yoloGtold1/train/39526.png +../../data/yoloGtold1/train/39527.png +../../data/yoloGtold1/train/39528.png +../../data/yoloGtold1/train/39529.png +../../data/yoloGtold1/train/39530.png +../../data/yoloGtold1/train/39531.png +../../data/yoloGtold1/train/39532.png +../../data/yoloGtold1/train/39533.png +../../data/yoloGtold1/train/39534.png +../../data/yoloGtold1/train/39535.png +../../data/yoloGtold1/train/39536.png +../../data/yoloGtold1/train/39537.png +../../data/yoloGtold1/train/39538.png +../../data/yoloGtold1/train/39539.png +../../data/yoloGtold1/train/39540.png +../../data/yoloGtold1/train/39541.png +../../data/yoloGtold1/train/39542.png +../../data/yoloGtold1/train/39543.png +../../data/yoloGtold1/train/39544.png +../../data/yoloGtold1/train/39545.png +../../data/yoloGtold1/train/39546.png +../../data/yoloGtold1/train/39547.png +../../data/yoloGtold1/train/39548.png +../../data/yoloGtold1/train/39549.png +../../data/yoloGtold1/train/39550.png +../../data/yoloGtold1/train/39551.png +../../data/yoloGtold1/train/39552.png +../../data/yoloGtold1/train/39553.png +../../data/yoloGtold1/train/39554.png +../../data/yoloGtold1/train/39555.png +../../data/yoloGtold1/train/39556.png +../../data/yoloGtold1/train/39557.png +../../data/yoloGtold1/train/39558.png +../../data/yoloGtold1/train/39559.png +../../data/yoloGtold1/train/39560.png +../../data/yoloGtold1/train/39561.png +../../data/yoloGtold1/train/39562.png +../../data/yoloGtold1/train/39563.png +../../data/yoloGtold1/train/39564.png +../../data/yoloGtold1/train/39565.png +../../data/yoloGtold1/train/39566.png +../../data/yoloGtold1/train/39567.png +../../data/yoloGtold1/train/39568.png +../../data/yoloGtold1/train/39569.png +../../data/yoloGtold1/train/39570.png +../../data/yoloGtold1/train/39571.png +../../data/yoloGtold1/train/39572.png +../../data/yoloGtold1/train/39573.png +../../data/yoloGtold1/train/39574.png +../../data/yoloGtold1/train/39575.png +../../data/yoloGtold1/train/39576.png +../../data/yoloGtold1/train/39577.png +../../data/yoloGtold1/train/39578.png +../../data/yoloGtold1/train/39579.png +../../data/yoloGtold1/train/39580.png +../../data/yoloGtold1/train/39581.png +../../data/yoloGtold1/train/39582.png +../../data/yoloGtold1/train/39583.png +../../data/yoloGtold1/train/39584.png +../../data/yoloGtold1/train/39585.png +../../data/yoloGtold1/train/39586.png +../../data/yoloGtold1/train/39587.png +../../data/yoloGtold1/train/39588.png +../../data/yoloGtold1/train/39589.png +../../data/yoloGtold1/train/39590.png +../../data/yoloGtold1/train/39591.png +../../data/yoloGtold1/train/39592.png +../../data/yoloGtold1/train/39593.png +../../data/yoloGtold1/train/39594.png +../../data/yoloGtold1/train/39595.png +../../data/yoloGtold1/train/39596.png +../../data/yoloGtold1/train/39597.png +../../data/yoloGtold1/train/39598.png +../../data/yoloGtold1/train/39599.png +../../data/yoloGtold1/train/39600.png +../../data/yoloGtold1/train/39601.png +../../data/yoloGtold1/train/39602.png +../../data/yoloGtold1/train/39603.png +../../data/yoloGtold1/train/39604.png +../../data/yoloGtold1/train/39605.png +../../data/yoloGtold1/train/39606.png +../../data/yoloGtold1/train/39607.png +../../data/yoloGtold1/train/39608.png +../../data/yoloGtold1/train/39609.png +../../data/yoloGtold1/train/39610.png +../../data/yoloGtold1/train/39611.png +../../data/yoloGtold1/train/39612.png +../../data/yoloGtold1/train/39613.png +../../data/yoloGtold1/train/39614.png +../../data/yoloGtold1/train/39615.png +../../data/yoloGtold1/train/39616.png +../../data/yoloGtold1/train/39617.png +../../data/yoloGtold1/train/39618.png +../../data/yoloGtold1/train/39619.png +../../data/yoloGtold1/train/39620.png +../../data/yoloGtold1/train/39621.png +../../data/yoloGtold1/train/39622.png +../../data/yoloGtold1/train/39623.png +../../data/yoloGtold1/train/39624.png +../../data/yoloGtold1/train/39625.png +../../data/yoloGtold1/train/39626.png +../../data/yoloGtold1/train/39627.png +../../data/yoloGtold1/train/39628.png +../../data/yoloGtold1/train/39629.png +../../data/yoloGtold1/train/39630.png +../../data/yoloGtold1/train/39631.png +../../data/yoloGtold1/train/39632.png +../../data/yoloGtold1/train/39633.png +../../data/yoloGtold1/train/39634.png +../../data/yoloGtold1/train/39635.png +../../data/yoloGtold1/train/39636.png +../../data/yoloGtold1/train/39637.png +../../data/yoloGtold1/train/39638.png +../../data/yoloGtold1/train/39639.png +../../data/yoloGtold1/train/39640.png +../../data/yoloGtold1/train/39641.png +../../data/yoloGtold1/train/39642.png +../../data/yoloGtold1/train/39643.png +../../data/yoloGtold1/train/39644.png +../../data/yoloGtold1/train/39645.png +../../data/yoloGtold1/train/39646.png +../../data/yoloGtold1/train/39647.png +../../data/yoloGtold1/train/39648.png +../../data/yoloGtold1/train/39649.png +../../data/yoloGtold1/train/39650.png +../../data/yoloGtold1/train/39651.png +../../data/yoloGtold1/train/39652.png +../../data/yoloGtold1/train/39653.png +../../data/yoloGtold1/train/39654.png +../../data/yoloGtold1/train/39655.png +../../data/yoloGtold1/train/39656.png +../../data/yoloGtold1/train/39657.png +../../data/yoloGtold1/train/39658.png +../../data/yoloGtold1/train/39659.png +../../data/yoloGtold1/train/39660.png +../../data/yoloGtold1/train/39661.png +../../data/yoloGtold1/train/39662.png +../../data/yoloGtold1/train/39663.png +../../data/yoloGtold1/train/39664.png +../../data/yoloGtold1/train/39665.png +../../data/yoloGtold1/train/39666.png +../../data/yoloGtold1/train/39667.png +../../data/yoloGtold1/train/39668.png +../../data/yoloGtold1/train/39669.png +../../data/yoloGtold1/train/39670.png +../../data/yoloGtold1/train/39671.png +../../data/yoloGtold1/train/39672.png +../../data/yoloGtold1/train/39673.png +../../data/yoloGtold1/train/39674.png +../../data/yoloGtold1/train/39675.png +../../data/yoloGtold1/train/39676.png +../../data/yoloGtold1/train/39677.png +../../data/yoloGtold1/train/39678.png +../../data/yoloGtold1/train/39679.png +../../data/yoloGtold1/train/39680.png +../../data/yoloGtold1/train/39681.png +../../data/yoloGtold1/train/39682.png +../../data/yoloGtold1/train/39683.png +../../data/yoloGtold1/train/39684.png +../../data/yoloGtold1/train/39685.png +../../data/yoloGtold1/train/39686.png +../../data/yoloGtold1/train/39687.png +../../data/yoloGtold1/train/39688.png +../../data/yoloGtold1/train/39689.png +../../data/yoloGtold1/train/39690.png +../../data/yoloGtold1/train/39691.png +../../data/yoloGtold1/train/39692.png +../../data/yoloGtold1/train/39693.png +../../data/yoloGtold1/train/39694.png +../../data/yoloGtold1/train/39695.png +../../data/yoloGtold1/train/39696.png +../../data/yoloGtold1/train/39697.png +../../data/yoloGtold1/train/39698.png +../../data/yoloGtold1/train/39699.png +../../data/yoloGtold1/train/39700.png +../../data/yoloGtold1/train/39701.png +../../data/yoloGtold1/train/39702.png +../../data/yoloGtold1/train/39703.png +../../data/yoloGtold1/train/39704.png +../../data/yoloGtold1/train/39705.png +../../data/yoloGtold1/train/39706.png +../../data/yoloGtold1/train/39707.png +../../data/yoloGtold1/train/39708.png +../../data/yoloGtold1/train/39709.png +../../data/yoloGtold1/train/39710.png +../../data/yoloGtold1/train/39711.png +../../data/yoloGtold1/train/39712.png +../../data/yoloGtold1/train/39713.png +../../data/yoloGtold1/train/39714.png +../../data/yoloGtold1/train/39715.png +../../data/yoloGtold1/train/39716.png +../../data/yoloGtold1/train/39717.png +../../data/yoloGtold1/train/39718.png +../../data/yoloGtold1/train/39719.png +../../data/yoloGtold1/train/39720.png +../../data/yoloGtold1/train/39721.png +../../data/yoloGtold1/train/39722.png +../../data/yoloGtold1/train/39723.png +../../data/yoloGtold1/train/39724.png +../../data/yoloGtold1/train/39725.png +../../data/yoloGtold1/train/39726.png +../../data/yoloGtold1/train/39727.png +../../data/yoloGtold1/train/39728.png +../../data/yoloGtold1/train/39729.png +../../data/yoloGtold1/train/39730.png +../../data/yoloGtold1/train/39731.png +../../data/yoloGtold1/train/39732.png +../../data/yoloGtold1/train/39733.png +../../data/yoloGtold1/train/39734.png +../../data/yoloGtold1/train/39735.png +../../data/yoloGtold1/train/39736.png +../../data/yoloGtold1/train/39737.png +../../data/yoloGtold1/train/39738.png +../../data/yoloGtold1/train/39739.png +../../data/yoloGtold1/train/39740.png +../../data/yoloGtold1/train/39741.png +../../data/yoloGtold1/train/39742.png +../../data/yoloGtold1/train/39743.png +../../data/yoloGtold1/train/39744.png +../../data/yoloGtold1/train/39745.png +../../data/yoloGtold1/train/39746.png +../../data/yoloGtold1/train/39747.png +../../data/yoloGtold1/train/39748.png +../../data/yoloGtold1/train/39749.png +../../data/yoloGtold1/train/39750.png +../../data/yoloGtold1/train/39751.png +../../data/yoloGtold1/train/39752.png +../../data/yoloGtold1/train/39753.png +../../data/yoloGtold1/train/39754.png +../../data/yoloGtold1/train/39755.png +../../data/yoloGtold1/train/39756.png +../../data/yoloGtold1/train/39757.png +../../data/yoloGtold1/train/39758.png +../../data/yoloGtold1/train/39759.png +../../data/yoloGtold1/train/39760.png +../../data/yoloGtold1/train/39761.png +../../data/yoloGtold1/train/39762.png +../../data/yoloGtold1/train/39763.png +../../data/yoloGtold1/train/39764.png +../../data/yoloGtold1/train/39765.png +../../data/yoloGtold1/train/39766.png +../../data/yoloGtold1/train/39767.png +../../data/yoloGtold1/train/39768.png +../../data/yoloGtold1/train/39769.png +../../data/yoloGtold1/train/39770.png +../../data/yoloGtold1/train/39771.png +../../data/yoloGtold1/train/39772.png +../../data/yoloGtold1/train/39773.png +../../data/yoloGtold1/train/39774.png +../../data/yoloGtold1/train/39775.png +../../data/yoloGtold1/train/39776.png +../../data/yoloGtold1/train/39777.png +../../data/yoloGtold1/train/39778.png +../../data/yoloGtold1/train/39779.png +../../data/yoloGtold1/train/39780.png +../../data/yoloGtold1/train/39781.png +../../data/yoloGtold1/train/39782.png +../../data/yoloGtold1/train/39783.png +../../data/yoloGtold1/train/39784.png +../../data/yoloGtold1/train/39785.png +../../data/yoloGtold1/train/39786.png +../../data/yoloGtold1/train/39787.png +../../data/yoloGtold1/train/39788.png +../../data/yoloGtold1/train/39789.png +../../data/yoloGtold1/train/39790.png +../../data/yoloGtold1/train/39791.png +../../data/yoloGtold1/train/39792.png +../../data/yoloGtold1/train/39793.png +../../data/yoloGtold1/train/39794.png +../../data/yoloGtold1/train/39795.png +../../data/yoloGtold1/train/39796.png +../../data/yoloGtold1/train/39797.png +../../data/yoloGtold1/train/39798.png +../../data/yoloGtold1/train/39799.png +../../data/yoloGtold1/train/39800.png +../../data/yoloGtold1/train/39801.png +../../data/yoloGtold1/train/39802.png +../../data/yoloGtold1/train/39803.png +../../data/yoloGtold1/train/39804.png +../../data/yoloGtold1/train/39805.png +../../data/yoloGtold1/train/39806.png +../../data/yoloGtold1/train/39807.png +../../data/yoloGtold1/train/39808.png +../../data/yoloGtold1/train/39809.png +../../data/yoloGtold1/train/39810.png +../../data/yoloGtold1/train/39811.png +../../data/yoloGtold1/train/39812.png +../../data/yoloGtold1/train/39813.png +../../data/yoloGtold1/train/39814.png +../../data/yoloGtold1/train/39815.png +../../data/yoloGtold1/train/39816.png +../../data/yoloGtold1/train/39817.png +../../data/yoloGtold1/train/39818.png +../../data/yoloGtold1/train/39819.png +../../data/yoloGtold1/train/39820.png +../../data/yoloGtold1/train/39821.png +../../data/yoloGtold1/train/39822.png +../../data/yoloGtold1/train/39823.png +../../data/yoloGtold1/train/39824.png +../../data/yoloGtold1/train/39825.png +../../data/yoloGtold1/train/39826.png +../../data/yoloGtold1/train/39827.png +../../data/yoloGtold1/train/39828.png +../../data/yoloGtold1/train/39829.png +../../data/yoloGtold1/train/39830.png +../../data/yoloGtold1/train/39831.png +../../data/yoloGtold1/train/39832.png +../../data/yoloGtold1/train/39833.png +../../data/yoloGtold1/train/39834.png +../../data/yoloGtold1/train/39835.png +../../data/yoloGtold1/train/39836.png +../../data/yoloGtold1/train/39837.png +../../data/yoloGtold1/train/39838.png +../../data/yoloGtold1/train/39839.png +../../data/yoloGtold1/train/39840.png +../../data/yoloGtold1/train/39841.png +../../data/yoloGtold1/train/39842.png +../../data/yoloGtold1/train/39843.png +../../data/yoloGtold1/train/39844.png +../../data/yoloGtold1/train/39845.png +../../data/yoloGtold1/train/39846.png +../../data/yoloGtold1/train/39847.png +../../data/yoloGtold1/train/39848.png +../../data/yoloGtold1/train/39849.png +../../data/yoloGtold1/train/39850.png +../../data/yoloGtold1/train/39851.png +../../data/yoloGtold1/train/39852.png +../../data/yoloGtold1/train/39853.png +../../data/yoloGtold1/train/39854.png +../../data/yoloGtold1/train/39855.png +../../data/yoloGtold1/train/39856.png +../../data/yoloGtold1/train/39857.png +../../data/yoloGtold1/train/39858.png +../../data/yoloGtold1/train/39859.png +../../data/yoloGtold1/train/39860.png +../../data/yoloGtold1/train/39861.png +../../data/yoloGtold1/train/39862.png +../../data/yoloGtold1/train/39863.png +../../data/yoloGtold1/train/39864.png +../../data/yoloGtold1/train/39865.png +../../data/yoloGtold1/train/39866.png +../../data/yoloGtold1/train/39867.png +../../data/yoloGtold1/train/39868.png +../../data/yoloGtold1/train/39869.png +../../data/yoloGtold1/train/39870.png +../../data/yoloGtold1/train/39871.png +../../data/yoloGtold1/train/39872.png +../../data/yoloGtold1/train/39873.png +../../data/yoloGtold1/train/39874.png +../../data/yoloGtold1/train/39875.png +../../data/yoloGtold1/train/39876.png +../../data/yoloGtold1/train/39877.png +../../data/yoloGtold1/train/39878.png +../../data/yoloGtold1/train/39879.png +../../data/yoloGtold1/train/39880.png +../../data/yoloGtold1/train/39881.png +../../data/yoloGtold1/train/39882.png +../../data/yoloGtold1/train/39883.png +../../data/yoloGtold1/train/39884.png +../../data/yoloGtold1/train/39885.png +../../data/yoloGtold1/train/39886.png +../../data/yoloGtold1/train/39887.png +../../data/yoloGtold1/train/39888.png +../../data/yoloGtold1/train/39889.png +../../data/yoloGtold1/train/39890.png +../../data/yoloGtold1/train/39891.png +../../data/yoloGtold1/train/39892.png +../../data/yoloGtold1/train/39893.png +../../data/yoloGtold1/train/39894.png +../../data/yoloGtold1/train/39895.png +../../data/yoloGtold1/train/39896.png +../../data/yoloGtold1/train/39897.png +../../data/yoloGtold1/train/39898.png +../../data/yoloGtold1/train/39899.png +../../data/yoloGtold1/train/39900.png +../../data/yoloGtold1/train/39901.png +../../data/yoloGtold1/train/39902.png +../../data/yoloGtold1/train/39903.png +../../data/yoloGtold1/train/39904.png +../../data/yoloGtold1/train/39905.png +../../data/yoloGtold1/train/39906.png +../../data/yoloGtold1/train/39907.png +../../data/yoloGtold1/train/39908.png +../../data/yoloGtold1/train/39909.png +../../data/yoloGtold1/train/39910.png +../../data/yoloGtold1/train/39911.png +../../data/yoloGtold1/train/39912.png +../../data/yoloGtold1/train/39913.png +../../data/yoloGtold1/train/39914.png +../../data/yoloGtold1/train/39915.png +../../data/yoloGtold1/train/39916.png +../../data/yoloGtold1/train/39917.png +../../data/yoloGtold1/train/39918.png +../../data/yoloGtold1/train/39919.png +../../data/yoloGtold1/train/39920.png +../../data/yoloGtold1/train/39921.png +../../data/yoloGtold1/train/39922.png +../../data/yoloGtold1/train/39923.png +../../data/yoloGtold1/train/39924.png +../../data/yoloGtold1/train/39925.png +../../data/yoloGtold1/train/39926.png +../../data/yoloGtold1/train/39927.png +../../data/yoloGtold1/train/39928.png +../../data/yoloGtold1/train/39929.png +../../data/yoloGtold1/train/39930.png +../../data/yoloGtold1/train/39931.png +../../data/yoloGtold1/train/39932.png +../../data/yoloGtold1/train/39933.png +../../data/yoloGtold1/train/39934.png +../../data/yoloGtold1/train/39935.png +../../data/yoloGtold1/train/39936.png +../../data/yoloGtold1/train/39937.png +../../data/yoloGtold1/train/39938.png +../../data/yoloGtold1/train/39939.png +../../data/yoloGtold1/train/39940.png +../../data/yoloGtold1/train/39941.png +../../data/yoloGtold1/train/39942.png +../../data/yoloGtold1/train/39943.png +../../data/yoloGtold1/train/39944.png +../../data/yoloGtold1/train/39945.png +../../data/yoloGtold1/train/39946.png +../../data/yoloGtold1/train/39947.png +../../data/yoloGtold1/train/39948.png +../../data/yoloGtold1/train/39949.png +../../data/yoloGtold1/train/39950.png +../../data/yoloGtold1/train/39951.png +../../data/yoloGtold1/train/39952.png +../../data/yoloGtold1/train/39953.png +../../data/yoloGtold1/train/39954.png +../../data/yoloGtold1/train/39955.png +../../data/yoloGtold1/train/39956.png +../../data/yoloGtold1/train/39957.png +../../data/yoloGtold1/train/39958.png +../../data/yoloGtold1/train/39959.png +../../data/yoloGtold1/train/39960.png +../../data/yoloGtold1/train/39961.png +../../data/yoloGtold1/train/39962.png +../../data/yoloGtold1/train/39963.png +../../data/yoloGtold1/train/39964.png +../../data/yoloGtold1/train/39965.png +../../data/yoloGtold1/train/39966.png +../../data/yoloGtold1/train/39967.png +../../data/yoloGtold1/train/39968.png +../../data/yoloGtold1/train/39969.png +../../data/yoloGtold1/train/39970.png +../../data/yoloGtold1/train/39971.png +../../data/yoloGtold1/train/39972.png +../../data/yoloGtold1/train/39973.png +../../data/yoloGtold1/train/39974.png +../../data/yoloGtold1/train/39975.png +../../data/yoloGtold1/train/39976.png +../../data/yoloGtold1/train/39977.png +../../data/yoloGtold1/train/39978.png +../../data/yoloGtold1/train/39979.png +../../data/yoloGtold1/train/39980.png +../../data/yoloGtold1/train/39981.png +../../data/yoloGtold1/train/39982.png +../../data/yoloGtold1/train/39983.png +../../data/yoloGtold1/train/39984.png +../../data/yoloGtold1/train/39985.png +../../data/yoloGtold1/train/39986.png +../../data/yoloGtold1/train/39987.png +../../data/yoloGtold1/train/39988.png +../../data/yoloGtold1/train/39989.png +../../data/yoloGtold1/train/39990.png +../../data/yoloGtold1/train/39991.png +../../data/yoloGtold1/train/39992.png +../../data/yoloGtold1/train/39993.png +../../data/yoloGtold1/train/39994.png +../../data/yoloGtold1/train/39995.png +../../data/yoloGtold1/train/39996.png +../../data/yoloGtold1/train/39997.png +../../data/yoloGtold1/train/39998.png +../../data/yoloGtold1/train/39999.png +../../data/yoloGtold1/train/40000.png +../../data/yoloGtold1/train/40001.png +../../data/yoloGtold1/train/40002.png +../../data/yoloGtold1/train/40003.png +../../data/yoloGtold1/train/40004.png +../../data/yoloGtold1/train/40005.png +../../data/yoloGtold1/train/40006.png +../../data/yoloGtold1/train/40007.png +../../data/yoloGtold1/train/40008.png +../../data/yoloGtold1/train/40009.png +../../data/yoloGtold1/train/40010.png +../../data/yoloGtold1/train/40011.png +../../data/yoloGtold1/train/40012.png +../../data/yoloGtold1/train/40013.png +../../data/yoloGtold1/train/40014.png +../../data/yoloGtold1/train/40015.png +../../data/yoloGtold1/train/40016.png +../../data/yoloGtold1/train/40017.png +../../data/yoloGtold1/train/40018.png +../../data/yoloGtold1/train/40019.png +../../data/yoloGtold1/train/40020.png +../../data/yoloGtold1/train/40021.png +../../data/yoloGtold1/train/40022.png +../../data/yoloGtold1/train/40023.png +../../data/yoloGtold1/train/40024.png +../../data/yoloGtold1/train/40025.png +../../data/yoloGtold1/train/40026.png +../../data/yoloGtold1/train/40027.png +../../data/yoloGtold1/train/40028.png +../../data/yoloGtold1/train/40029.png +../../data/yoloGtold1/train/40030.png +../../data/yoloGtold1/train/40031.png +../../data/yoloGtold1/train/40032.png +../../data/yoloGtold1/train/40033.png +../../data/yoloGtold1/train/40034.png +../../data/yoloGtold1/train/40035.png +../../data/yoloGtold1/train/40036.png +../../data/yoloGtold1/train/40037.png +../../data/yoloGtold1/train/40038.png +../../data/yoloGtold1/train/40039.png +../../data/yoloGtold1/train/40040.png +../../data/yoloGtold1/train/40041.png +../../data/yoloGtold1/train/40042.png +../../data/yoloGtold1/train/40043.png +../../data/yoloGtold1/train/40044.png +../../data/yoloGtold1/train/40045.png +../../data/yoloGtold1/train/40046.png +../../data/yoloGtold1/train/40047.png +../../data/yoloGtold1/train/40048.png +../../data/yoloGtold1/train/40049.png +../../data/yoloGtold1/train/40050.png +../../data/yoloGtold1/train/40051.png +../../data/yoloGtold1/train/40052.png +../../data/yoloGtold1/train/40053.png +../../data/yoloGtold1/train/40054.png +../../data/yoloGtold1/train/40055.png +../../data/yoloGtold1/train/40056.png +../../data/yoloGtold1/train/40057.png +../../data/yoloGtold1/train/40058.png +../../data/yoloGtold1/train/40059.png +../../data/yoloGtold1/train/40060.png +../../data/yoloGtold1/train/40061.png +../../data/yoloGtold1/train/40062.png +../../data/yoloGtold1/train/40063.png +../../data/yoloGtold1/train/40064.png +../../data/yoloGtold1/train/40065.png +../../data/yoloGtold1/train/40066.png +../../data/yoloGtold1/train/40067.png +../../data/yoloGtold1/train/40068.png +../../data/yoloGtold1/train/40069.png +../../data/yoloGtold1/train/40070.png +../../data/yoloGtold1/train/40071.png +../../data/yoloGtold1/train/40072.png +../../data/yoloGtold1/train/40073.png +../../data/yoloGtold1/train/40074.png +../../data/yoloGtold1/train/40075.png +../../data/yoloGtold1/train/40076.png +../../data/yoloGtold1/train/40077.png +../../data/yoloGtold1/train/40078.png +../../data/yoloGtold1/train/40079.png +../../data/yoloGtold1/train/40080.png +../../data/yoloGtold1/train/40081.png +../../data/yoloGtold1/train/40082.png +../../data/yoloGtold1/train/40083.png +../../data/yoloGtold1/train/40084.png +../../data/yoloGtold1/train/40085.png +../../data/yoloGtold1/train/40086.png +../../data/yoloGtold1/train/40087.png +../../data/yoloGtold1/train/40088.png +../../data/yoloGtold1/train/40089.png +../../data/yoloGtold1/train/40090.png +../../data/yoloGtold1/train/40091.png +../../data/yoloGtold1/train/40092.png +../../data/yoloGtold1/train/40093.png +../../data/yoloGtold1/train/40094.png +../../data/yoloGtold1/train/40095.png +../../data/yoloGtold1/train/40096.png +../../data/yoloGtold1/train/40097.png +../../data/yoloGtold1/train/40098.png +../../data/yoloGtold1/train/40099.png +../../data/yoloGtold1/train/40100.png +../../data/yoloGtold1/train/40101.png +../../data/yoloGtold1/train/40102.png +../../data/yoloGtold1/train/40103.png +../../data/yoloGtold1/train/40104.png +../../data/yoloGtold1/train/40105.png +../../data/yoloGtold1/train/40106.png +../../data/yoloGtold1/train/40107.png +../../data/yoloGtold1/train/40108.png +../../data/yoloGtold1/train/40109.png +../../data/yoloGtold1/train/40110.png +../../data/yoloGtold1/train/40111.png +../../data/yoloGtold1/train/40112.png +../../data/yoloGtold1/train/40113.png +../../data/yoloGtold1/train/40114.png +../../data/yoloGtold1/train/40115.png +../../data/yoloGtold1/train/40116.png +../../data/yoloGtold1/train/40117.png +../../data/yoloGtold1/train/40118.png +../../data/yoloGtold1/train/40119.png +../../data/yoloGtold1/train/40120.png +../../data/yoloGtold1/train/40121.png +../../data/yoloGtold1/train/40122.png +../../data/yoloGtold1/train/40123.png +../../data/yoloGtold1/train/40124.png +../../data/yoloGtold1/train/40125.png +../../data/yoloGtold1/train/40126.png +../../data/yoloGtold1/train/40127.png +../../data/yoloGtold1/train/40128.png +../../data/yoloGtold1/train/40129.png +../../data/yoloGtold1/train/40130.png +../../data/yoloGtold1/train/40131.png +../../data/yoloGtold1/train/40132.png +../../data/yoloGtold1/train/40133.png +../../data/yoloGtold1/train/40134.png +../../data/yoloGtold1/train/40135.png +../../data/yoloGtold1/train/40136.png +../../data/yoloGtold1/train/40137.png +../../data/yoloGtold1/train/40138.png +../../data/yoloGtold1/train/40139.png +../../data/yoloGtold1/train/40140.png +../../data/yoloGtold1/train/40141.png +../../data/yoloGtold1/train/40142.png +../../data/yoloGtold1/train/40143.png +../../data/yoloGtold1/train/40144.png +../../data/yoloGtold1/train/40145.png +../../data/yoloGtold1/train/40146.png +../../data/yoloGtold1/train/40147.png +../../data/yoloGtold1/train/40148.png +../../data/yoloGtold1/train/40149.png +../../data/yoloGtold1/train/40150.png +../../data/yoloGtold1/train/40151.png +../../data/yoloGtold1/train/40152.png +../../data/yoloGtold1/train/40153.png +../../data/yoloGtold1/train/40154.png +../../data/yoloGtold1/train/40155.png +../../data/yoloGtold1/train/40156.png +../../data/yoloGtold1/train/40157.png +../../data/yoloGtold1/train/40158.png +../../data/yoloGtold1/train/40159.png +../../data/yoloGtold1/train/40160.png +../../data/yoloGtold1/train/40161.png +../../data/yoloGtold1/train/40162.png +../../data/yoloGtold1/train/40163.png +../../data/yoloGtold1/train/40164.png +../../data/yoloGtold1/train/40165.png +../../data/yoloGtold1/train/40166.png +../../data/yoloGtold1/train/40167.png +../../data/yoloGtold1/train/40168.png +../../data/yoloGtold1/train/40169.png +../../data/yoloGtold1/train/40170.png +../../data/yoloGtold1/train/40171.png +../../data/yoloGtold1/train/40172.png +../../data/yoloGtold1/train/40173.png +../../data/yoloGtold1/train/40174.png +../../data/yoloGtold1/train/40175.png +../../data/yoloGtold1/train/40176.png +../../data/yoloGtold1/train/40177.png +../../data/yoloGtold1/train/40178.png +../../data/yoloGtold1/train/40179.png +../../data/yoloGtold1/train/40180.png +../../data/yoloGtold1/train/40181.png +../../data/yoloGtold1/train/40182.png +../../data/yoloGtold1/train/40183.png +../../data/yoloGtold1/train/40184.png +../../data/yoloGtold1/train/40185.png +../../data/yoloGtold1/train/40186.png +../../data/yoloGtold1/train/40187.png +../../data/yoloGtold1/train/40188.png +../../data/yoloGtold1/train/40189.png +../../data/yoloGtold1/train/40190.png +../../data/yoloGtold1/train/40191.png +../../data/yoloGtold1/train/40192.png +../../data/yoloGtold1/train/40193.png +../../data/yoloGtold1/train/40194.png +../../data/yoloGtold1/train/40195.png +../../data/yoloGtold1/train/40196.png +../../data/yoloGtold1/train/40197.png +../../data/yoloGtold1/train/40198.png +../../data/yoloGtold1/train/40199.png +../../data/yoloGtold1/train/40200.png +../../data/yoloGtold1/train/40201.png +../../data/yoloGtold1/train/40202.png +../../data/yoloGtold1/train/40203.png +../../data/yoloGtold1/train/40204.png +../../data/yoloGtold1/train/40205.png +../../data/yoloGtold1/train/40206.png +../../data/yoloGtold1/train/40207.png +../../data/yoloGtold1/train/40208.png +../../data/yoloGtold1/train/40209.png +../../data/yoloGtold1/train/40210.png +../../data/yoloGtold1/train/40211.png +../../data/yoloGtold1/train/40212.png +../../data/yoloGtold1/train/40213.png +../../data/yoloGtold1/train/40214.png +../../data/yoloGtold1/train/40215.png +../../data/yoloGtold1/train/40216.png +../../data/yoloGtold1/train/40217.png +../../data/yoloGtold1/train/40218.png +../../data/yoloGtold1/train/40219.png +../../data/yoloGtold1/train/40220.png +../../data/yoloGtold1/train/40221.png +../../data/yoloGtold1/train/40222.png +../../data/yoloGtold1/train/40223.png +../../data/yoloGtold1/train/40224.png +../../data/yoloGtold1/train/40225.png +../../data/yoloGtold1/train/40226.png +../../data/yoloGtold1/train/40227.png +../../data/yoloGtold1/train/40228.png +../../data/yoloGtold1/train/40229.png +../../data/yoloGtold1/train/40230.png +../../data/yoloGtold1/train/40231.png +../../data/yoloGtold1/train/40232.png +../../data/yoloGtold1/train/40233.png +../../data/yoloGtold1/train/40234.png +../../data/yoloGtold1/train/40235.png +../../data/yoloGtold1/train/40236.png +../../data/yoloGtold1/train/40237.png +../../data/yoloGtold1/train/40238.png +../../data/yoloGtold1/train/40239.png +../../data/yoloGtold1/train/40240.png +../../data/yoloGtold1/train/40241.png +../../data/yoloGtold1/train/40242.png +../../data/yoloGtold1/train/40243.png +../../data/yoloGtold1/train/40244.png +../../data/yoloGtold1/train/40245.png +../../data/yoloGtold1/train/40246.png +../../data/yoloGtold1/train/40247.png +../../data/yoloGtold1/train/40248.png +../../data/yoloGtold1/train/40249.png +../../data/yoloGtold1/train/40250.png +../../data/yoloGtold1/train/40251.png +../../data/yoloGtold1/train/40252.png +../../data/yoloGtold1/train/40253.png +../../data/yoloGtold1/train/40254.png +../../data/yoloGtold1/train/40255.png +../../data/yoloGtold1/train/40256.png +../../data/yoloGtold1/train/40257.png +../../data/yoloGtold1/train/40258.png +../../data/yoloGtold1/train/40259.png +../../data/yoloGtold1/train/40260.png +../../data/yoloGtold1/train/40261.png +../../data/yoloGtold1/train/40262.png +../../data/yoloGtold1/train/40263.png +../../data/yoloGtold1/train/40264.png +../../data/yoloGtold1/train/40265.png +../../data/yoloGtold1/train/40266.png +../../data/yoloGtold1/train/40267.png +../../data/yoloGtold1/train/40268.png +../../data/yoloGtold1/train/40269.png +../../data/yoloGtold1/train/40270.png +../../data/yoloGtold1/train/40271.png +../../data/yoloGtold1/train/40272.png +../../data/yoloGtold1/train/40273.png +../../data/yoloGtold1/train/40274.png +../../data/yoloGtold1/train/40275.png +../../data/yoloGtold1/train/40276.png +../../data/yoloGtold1/train/40277.png +../../data/yoloGtold1/train/40278.png +../../data/yoloGtold1/train/40279.png +../../data/yoloGtold1/train/40280.png +../../data/yoloGtold1/train/40281.png +../../data/yoloGtold1/train/40282.png +../../data/yoloGtold1/train/40283.png +../../data/yoloGtold1/train/40284.png +../../data/yoloGtold1/train/40285.png +../../data/yoloGtold1/train/40286.png +../../data/yoloGtold1/train/40287.png +../../data/yoloGtold1/train/40288.png +../../data/yoloGtold1/train/40289.png +../../data/yoloGtold1/train/40290.png +../../data/yoloGtold1/train/40291.png +../../data/yoloGtold1/train/40292.png +../../data/yoloGtold1/train/40293.png +../../data/yoloGtold1/train/40294.png +../../data/yoloGtold1/train/40295.png +../../data/yoloGtold1/train/40296.png +../../data/yoloGtold1/train/40297.png +../../data/yoloGtold1/train/40298.png +../../data/yoloGtold1/train/40299.png +../../data/yoloGtold1/train/40300.png +../../data/yoloGtold1/train/40301.png +../../data/yoloGtold1/train/40302.png +../../data/yoloGtold1/train/40303.png +../../data/yoloGtold1/train/40304.png +../../data/yoloGtold1/train/40305.png +../../data/yoloGtold1/train/40306.png +../../data/yoloGtold1/train/40307.png +../../data/yoloGtold1/train/40308.png +../../data/yoloGtold1/train/40309.png +../../data/yoloGtold1/train/40310.png +../../data/yoloGtold1/train/40311.png +../../data/yoloGtold1/train/40312.png +../../data/yoloGtold1/train/40313.png +../../data/yoloGtold1/train/40314.png +../../data/yoloGtold1/train/40315.png +../../data/yoloGtold1/train/40316.png +../../data/yoloGtold1/train/40317.png +../../data/yoloGtold1/train/40318.png +../../data/yoloGtold1/train/40319.png +../../data/yoloGtold1/train/40320.png +../../data/yoloGtold1/train/40321.png +../../data/yoloGtold1/train/40322.png +../../data/yoloGtold1/train/40323.png +../../data/yoloGtold1/train/40324.png +../../data/yoloGtold1/train/40325.png +../../data/yoloGtold1/train/40326.png +../../data/yoloGtold1/train/40327.png +../../data/yoloGtold1/train/40328.png +../../data/yoloGtold1/train/40329.png +../../data/yoloGtold1/train/40330.png +../../data/yoloGtold1/train/40331.png +../../data/yoloGtold1/train/40332.png +../../data/yoloGtold1/train/40333.png +../../data/yoloGtold1/train/40334.png +../../data/yoloGtold1/train/40335.png +../../data/yoloGtold1/train/40336.png +../../data/yoloGtold1/train/40337.png +../../data/yoloGtold1/train/40338.png +../../data/yoloGtold1/train/40339.png +../../data/yoloGtold1/train/40340.png +../../data/yoloGtold1/train/40341.png +../../data/yoloGtold1/train/40342.png +../../data/yoloGtold1/train/40343.png +../../data/yoloGtold1/train/40344.png +../../data/yoloGtold1/train/40345.png +../../data/yoloGtold1/train/40346.png +../../data/yoloGtold1/train/40347.png +../../data/yoloGtold1/train/40348.png +../../data/yoloGtold1/train/40349.png +../../data/yoloGtold1/train/40350.png +../../data/yoloGtold1/train/40351.png +../../data/yoloGtold1/train/40352.png +../../data/yoloGtold1/train/40353.png +../../data/yoloGtold1/train/40354.png +../../data/yoloGtold1/train/40355.png +../../data/yoloGtold1/train/40356.png +../../data/yoloGtold1/train/40357.png +../../data/yoloGtold1/train/40358.png +../../data/yoloGtold1/train/40359.png +../../data/yoloGtold1/train/40360.png +../../data/yoloGtold1/train/40361.png +../../data/yoloGtold1/train/40362.png +../../data/yoloGtold1/train/40363.png +../../data/yoloGtold1/train/40364.png +../../data/yoloGtold1/train/40365.png +../../data/yoloGtold1/train/40366.png +../../data/yoloGtold1/train/40367.png +../../data/yoloGtold1/train/40368.png +../../data/yoloGtold1/train/40369.png +../../data/yoloGtold1/train/40370.png +../../data/yoloGtold1/train/40371.png +../../data/yoloGtold1/train/40372.png +../../data/yoloGtold1/train/40373.png +../../data/yoloGtold1/train/40374.png +../../data/yoloGtold1/train/40375.png +../../data/yoloGtold1/train/40376.png +../../data/yoloGtold1/train/40377.png +../../data/yoloGtold1/train/40378.png +../../data/yoloGtold1/train/40379.png +../../data/yoloGtold1/train/40380.png +../../data/yoloGtold1/train/40381.png +../../data/yoloGtold1/train/40382.png +../../data/yoloGtold1/train/40383.png +../../data/yoloGtold1/train/40384.png +../../data/yoloGtold1/train/40385.png +../../data/yoloGtold1/train/40386.png +../../data/yoloGtold1/train/40387.png +../../data/yoloGtold1/train/40388.png +../../data/yoloGtold1/train/40389.png +../../data/yoloGtold1/train/40390.png +../../data/yoloGtold1/train/40391.png +../../data/yoloGtold1/train/40392.png +../../data/yoloGtold1/train/40393.png +../../data/yoloGtold1/train/40394.png +../../data/yoloGtold1/train/40395.png +../../data/yoloGtold1/train/40396.png +../../data/yoloGtold1/train/40397.png +../../data/yoloGtold1/train/40398.png +../../data/yoloGtold1/train/40399.png +../../data/yoloGtold1/train/40400.png +../../data/yoloGtold1/train/40401.png +../../data/yoloGtold1/train/40402.png +../../data/yoloGtold1/train/40403.png +../../data/yoloGtold1/train/40404.png +../../data/yoloGtold1/train/40405.png +../../data/yoloGtold1/train/40406.png +../../data/yoloGtold1/train/40407.png +../../data/yoloGtold1/train/40408.png +../../data/yoloGtold1/train/40409.png +../../data/yoloGtold1/train/40410.png +../../data/yoloGtold1/train/40411.png +../../data/yoloGtold1/train/40412.png +../../data/yoloGtold1/train/40413.png +../../data/yoloGtold1/train/40414.png +../../data/yoloGtold1/train/40415.png +../../data/yoloGtold1/train/40416.png +../../data/yoloGtold1/train/40417.png +../../data/yoloGtold1/train/40418.png +../../data/yoloGtold1/train/40419.png +../../data/yoloGtold1/train/40420.png +../../data/yoloGtold1/train/40421.png +../../data/yoloGtold1/train/40422.png +../../data/yoloGtold1/train/40423.png +../../data/yoloGtold1/train/40424.png +../../data/yoloGtold1/train/40425.png +../../data/yoloGtold1/train/40426.png +../../data/yoloGtold1/train/40427.png +../../data/yoloGtold1/train/40428.png +../../data/yoloGtold1/train/40429.png +../../data/yoloGtold1/train/40430.png +../../data/yoloGtold1/train/40431.png +../../data/yoloGtold1/train/40432.png +../../data/yoloGtold1/train/40433.png +../../data/yoloGtold1/train/40434.png +../../data/yoloGtold1/train/40435.png +../../data/yoloGtold1/train/40436.png +../../data/yoloGtold1/train/40437.png +../../data/yoloGtold1/train/40438.png +../../data/yoloGtold1/train/40439.png +../../data/yoloGtold1/train/40440.png +../../data/yoloGtold1/train/40441.png +../../data/yoloGtold1/train/40442.png +../../data/yoloGtold1/train/40443.png +../../data/yoloGtold1/train/40444.png +../../data/yoloGtold1/train/40445.png +../../data/yoloGtold1/train/40446.png +../../data/yoloGtold1/train/40447.png +../../data/yoloGtold1/train/40448.png +../../data/yoloGtold1/train/40449.png +../../data/yoloGtold1/train/40450.png +../../data/yoloGtold1/train/40451.png +../../data/yoloGtold1/train/40452.png +../../data/yoloGtold1/train/40453.png +../../data/yoloGtold1/train/40454.png +../../data/yoloGtold1/train/40455.png +../../data/yoloGtold1/train/40456.png +../../data/yoloGtold1/train/40457.png +../../data/yoloGtold1/train/40458.png +../../data/yoloGtold1/train/40459.png +../../data/yoloGtold1/train/40460.png +../../data/yoloGtold1/train/40461.png +../../data/yoloGtold1/train/40462.png +../../data/yoloGtold1/train/40463.png +../../data/yoloGtold1/train/40464.png +../../data/yoloGtold1/train/40465.png +../../data/yoloGtold1/train/40466.png +../../data/yoloGtold1/train/40467.png +../../data/yoloGtold1/train/40468.png +../../data/yoloGtold1/train/40469.png +../../data/yoloGtold1/train/40470.png +../../data/yoloGtold1/train/40471.png +../../data/yoloGtold1/train/40472.png +../../data/yoloGtold1/train/40473.png +../../data/yoloGtold1/train/40474.png +../../data/yoloGtold1/train/40475.png +../../data/yoloGtold1/train/40476.png +../../data/yoloGtold1/train/40477.png +../../data/yoloGtold1/train/40478.png +../../data/yoloGtold1/train/40479.png +../../data/yoloGtold1/train/40480.png +../../data/yoloGtold1/train/40481.png +../../data/yoloGtold1/train/40482.png +../../data/yoloGtold1/train/40483.png +../../data/yoloGtold1/train/40484.png +../../data/yoloGtold1/train/40485.png +../../data/yoloGtold1/train/40486.png +../../data/yoloGtold1/train/40487.png +../../data/yoloGtold1/train/40488.png +../../data/yoloGtold1/train/40489.png +../../data/yoloGtold1/train/40490.png +../../data/yoloGtold1/train/40491.png +../../data/yoloGtold1/train/40492.png +../../data/yoloGtold1/train/40493.png +../../data/yoloGtold1/train/40494.png +../../data/yoloGtold1/train/40495.png +../../data/yoloGtold1/train/40496.png +../../data/yoloGtold1/train/40497.png +../../data/yoloGtold1/train/40498.png +../../data/yoloGtold1/train/40499.png +../../data/yoloGtold1/train/40500.png +../../data/yoloGtold1/train/40501.png +../../data/yoloGtold1/train/40502.png +../../data/yoloGtold1/train/40503.png +../../data/yoloGtold1/train/40504.png +../../data/yoloGtold1/train/40505.png +../../data/yoloGtold1/train/40506.png +../../data/yoloGtold1/train/40507.png +../../data/yoloGtold1/train/40508.png +../../data/yoloGtold1/train/40509.png +../../data/yoloGtold1/train/40510.png +../../data/yoloGtold1/train/40511.png +../../data/yoloGtold1/train/40512.png +../../data/yoloGtold1/train/40513.png +../../data/yoloGtold1/train/40514.png +../../data/yoloGtold1/train/40515.png +../../data/yoloGtold1/train/40516.png +../../data/yoloGtold1/train/40517.png +../../data/yoloGtold1/train/40518.png +../../data/yoloGtold1/train/40519.png +../../data/yoloGtold1/train/40520.png +../../data/yoloGtold1/train/40521.png +../../data/yoloGtold1/train/40522.png +../../data/yoloGtold1/train/40523.png +../../data/yoloGtold1/train/40524.png +../../data/yoloGtold1/train/40525.png +../../data/yoloGtold1/train/40526.png +../../data/yoloGtold1/train/40527.png +../../data/yoloGtold1/train/40528.png +../../data/yoloGtold1/train/40529.png +../../data/yoloGtold1/train/40530.png +../../data/yoloGtold1/train/40531.png +../../data/yoloGtold1/train/40532.png +../../data/yoloGtold1/train/40533.png +../../data/yoloGtold1/train/40534.png +../../data/yoloGtold1/train/40535.png +../../data/yoloGtold1/train/40536.png +../../data/yoloGtold1/train/40537.png +../../data/yoloGtold1/train/40538.png +../../data/yoloGtold1/train/40539.png +../../data/yoloGtold1/train/40540.png +../../data/yoloGtold1/train/40541.png +../../data/yoloGtold1/train/40542.png +../../data/yoloGtold1/train/40543.png +../../data/yoloGtold1/train/40544.png +../../data/yoloGtold1/train/40545.png +../../data/yoloGtold1/train/40546.png +../../data/yoloGtold1/train/40547.png +../../data/yoloGtold1/train/40548.png +../../data/yoloGtold1/train/40549.png +../../data/yoloGtold1/train/40550.png +../../data/yoloGtold1/train/40551.png +../../data/yoloGtold1/train/40552.png +../../data/yoloGtold1/train/40553.png +../../data/yoloGtold1/train/40554.png +../../data/yoloGtold1/train/40555.png +../../data/yoloGtold1/train/40556.png +../../data/yoloGtold1/train/40557.png +../../data/yoloGtold1/train/40558.png +../../data/yoloGtold1/train/40559.png +../../data/yoloGtold1/train/40560.png +../../data/yoloGtold1/train/40561.png +../../data/yoloGtold1/train/40562.png +../../data/yoloGtold1/train/40563.png +../../data/yoloGtold1/train/40564.png +../../data/yoloGtold1/train/40565.png +../../data/yoloGtold1/train/40566.png +../../data/yoloGtold1/train/40567.png +../../data/yoloGtold1/train/40568.png +../../data/yoloGtold1/train/40569.png +../../data/yoloGtold1/train/40570.png +../../data/yoloGtold1/train/40571.png +../../data/yoloGtold1/train/40572.png +../../data/yoloGtold1/train/40573.png +../../data/yoloGtold1/train/40574.png +../../data/yoloGtold1/train/40575.png +../../data/yoloGtold1/train/40576.png +../../data/yoloGtold1/train/40577.png +../../data/yoloGtold1/train/40578.png +../../data/yoloGtold1/train/40579.png +../../data/yoloGtold1/train/40580.png +../../data/yoloGtold1/train/40581.png +../../data/yoloGtold1/train/40582.png +../../data/yoloGtold1/train/40583.png +../../data/yoloGtold1/train/40584.png +../../data/yoloGtold1/train/40585.png +../../data/yoloGtold1/train/40586.png +../../data/yoloGtold1/train/40587.png +../../data/yoloGtold1/train/40588.png +../../data/yoloGtold1/train/40589.png +../../data/yoloGtold1/train/40590.png +../../data/yoloGtold1/train/40591.png +../../data/yoloGtold1/train/40592.png +../../data/yoloGtold1/train/40593.png +../../data/yoloGtold1/train/40594.png +../../data/yoloGtold1/train/40595.png +../../data/yoloGtold1/train/40596.png +../../data/yoloGtold1/train/40597.png +../../data/yoloGtold1/train/40598.png +../../data/yoloGtold1/train/40599.png +../../data/yoloGtold1/train/40600.png +../../data/yoloGtold1/train/40601.png +../../data/yoloGtold1/train/40602.png +../../data/yoloGtold1/train/40603.png +../../data/yoloGtold1/train/40604.png +../../data/yoloGtold1/train/40605.png +../../data/yoloGtold1/train/40606.png +../../data/yoloGtold1/train/40607.png +../../data/yoloGtold1/train/40608.png +../../data/yoloGtold1/train/40609.png +../../data/yoloGtold1/train/40610.png +../../data/yoloGtold1/train/40611.png +../../data/yoloGtold1/train/40612.png +../../data/yoloGtold1/train/40613.png +../../data/yoloGtold1/train/40614.png +../../data/yoloGtold1/train/40615.png +../../data/yoloGtold1/train/40616.png +../../data/yoloGtold1/train/40617.png +../../data/yoloGtold1/train/40618.png +../../data/yoloGtold1/train/40619.png +../../data/yoloGtold1/train/40620.png +../../data/yoloGtold1/train/40621.png +../../data/yoloGtold1/train/40622.png +../../data/yoloGtold1/train/40623.png +../../data/yoloGtold1/train/40624.png +../../data/yoloGtold1/train/40625.png +../../data/yoloGtold1/train/40626.png +../../data/yoloGtold1/train/40627.png +../../data/yoloGtold1/train/40628.png +../../data/yoloGtold1/train/40629.png +../../data/yoloGtold1/train/40630.png +../../data/yoloGtold1/train/40631.png +../../data/yoloGtold1/train/40632.png +../../data/yoloGtold1/train/40633.png +../../data/yoloGtold1/train/40634.png +../../data/yoloGtold1/train/40635.png +../../data/yoloGtold1/train/40636.png +../../data/yoloGtold1/train/40637.png +../../data/yoloGtold1/train/40638.png +../../data/yoloGtold1/train/40639.png +../../data/yoloGtold1/train/40640.png +../../data/yoloGtold1/train/40641.png +../../data/yoloGtold1/train/40642.png +../../data/yoloGtold1/train/40643.png +../../data/yoloGtold1/train/40644.png +../../data/yoloGtold1/train/40645.png +../../data/yoloGtold1/train/40646.png +../../data/yoloGtold1/train/40647.png +../../data/yoloGtold1/train/40648.png +../../data/yoloGtold1/train/40649.png +../../data/yoloGtold1/train/40650.png +../../data/yoloGtold1/train/40651.png +../../data/yoloGtold1/train/40652.png +../../data/yoloGtold1/train/40653.png +../../data/yoloGtold1/train/40654.png +../../data/yoloGtold1/train/40655.png +../../data/yoloGtold1/train/40656.png +../../data/yoloGtold1/train/40657.png +../../data/yoloGtold1/train/40658.png +../../data/yoloGtold1/train/40659.png +../../data/yoloGtold1/train/40660.png +../../data/yoloGtold1/train/40661.png +../../data/yoloGtold1/train/40662.png +../../data/yoloGtold1/train/40663.png +../../data/yoloGtold1/train/40664.png +../../data/yoloGtold1/train/40665.png +../../data/yoloGtold1/train/40666.png +../../data/yoloGtold1/train/40667.png +../../data/yoloGtold1/train/40668.png +../../data/yoloGtold1/train/40669.png +../../data/yoloGtold1/train/40670.png +../../data/yoloGtold1/train/40671.png +../../data/yoloGtold1/train/40672.png +../../data/yoloGtold1/train/40673.png +../../data/yoloGtold1/train/40674.png +../../data/yoloGtold1/train/40675.png +../../data/yoloGtold1/train/40676.png +../../data/yoloGtold1/train/40677.png +../../data/yoloGtold1/train/40678.png +../../data/yoloGtold1/train/40679.png +../../data/yoloGtold1/train/40680.png +../../data/yoloGtold1/train/40681.png +../../data/yoloGtold1/train/40682.png +../../data/yoloGtold1/train/40683.png +../../data/yoloGtold1/train/40684.png +../../data/yoloGtold1/train/40685.png +../../data/yoloGtold1/train/40686.png +../../data/yoloGtold1/train/40687.png +../../data/yoloGtold1/train/40688.png +../../data/yoloGtold1/train/40689.png +../../data/yoloGtold1/train/40690.png +../../data/yoloGtold1/train/40691.png +../../data/yoloGtold1/train/40692.png +../../data/yoloGtold1/train/40693.png +../../data/yoloGtold1/train/40694.png +../../data/yoloGtold1/train/40695.png +../../data/yoloGtold1/train/40696.png +../../data/yoloGtold1/train/40697.png +../../data/yoloGtold1/train/40698.png +../../data/yoloGtold1/train/40699.png +../../data/yoloGtold1/train/40700.png +../../data/yoloGtold1/train/40701.png +../../data/yoloGtold1/train/40702.png +../../data/yoloGtold1/train/40703.png +../../data/yoloGtold1/train/40704.png +../../data/yoloGtold1/train/40705.png +../../data/yoloGtold1/train/40706.png +../../data/yoloGtold1/train/40707.png +../../data/yoloGtold1/train/40708.png +../../data/yoloGtold1/train/40709.png +../../data/yoloGtold1/train/40710.png +../../data/yoloGtold1/train/40711.png +../../data/yoloGtold1/train/40712.png +../../data/yoloGtold1/train/40713.png +../../data/yoloGtold1/train/40714.png +../../data/yoloGtold1/train/40715.png +../../data/yoloGtold1/train/40716.png +../../data/yoloGtold1/train/40717.png +../../data/yoloGtold1/train/40718.png +../../data/yoloGtold1/train/40719.png +../../data/yoloGtold1/train/40720.png +../../data/yoloGtold1/train/40721.png +../../data/yoloGtold1/train/40722.png +../../data/yoloGtold1/train/40723.png +../../data/yoloGtold1/train/40724.png +../../data/yoloGtold1/train/40725.png +../../data/yoloGtold1/train/40726.png +../../data/yoloGtold1/train/40727.png +../../data/yoloGtold1/train/40728.png +../../data/yoloGtold1/train/40729.png +../../data/yoloGtold1/train/40730.png +../../data/yoloGtold1/train/40731.png +../../data/yoloGtold1/train/40732.png +../../data/yoloGtold1/train/40733.png +../../data/yoloGtold1/train/40734.png +../../data/yoloGtold1/train/40735.png +../../data/yoloGtold1/train/40736.png +../../data/yoloGtold1/train/40737.png +../../data/yoloGtold1/train/40738.png +../../data/yoloGtold1/train/40739.png +../../data/yoloGtold1/train/40740.png +../../data/yoloGtold1/train/40741.png +../../data/yoloGtold1/train/40742.png +../../data/yoloGtold1/train/40743.png +../../data/yoloGtold1/train/40744.png +../../data/yoloGtold1/train/40745.png +../../data/yoloGtold1/train/40746.png +../../data/yoloGtold1/train/40747.png +../../data/yoloGtold1/train/40748.png +../../data/yoloGtold1/train/40749.png +../../data/yoloGtold1/train/40750.png +../../data/yoloGtold1/train/40751.png +../../data/yoloGtold1/train/40752.png +../../data/yoloGtold1/train/40753.png +../../data/yoloGtold1/train/40754.png +../../data/yoloGtold1/train/40755.png +../../data/yoloGtold1/train/40756.png +../../data/yoloGtold1/train/40757.png +../../data/yoloGtold1/train/40758.png +../../data/yoloGtold1/train/40759.png +../../data/yoloGtold1/train/40760.png +../../data/yoloGtold1/train/40761.png +../../data/yoloGtold1/train/40762.png +../../data/yoloGtold1/train/40763.png +../../data/yoloGtold1/train/40764.png +../../data/yoloGtold1/train/40765.png +../../data/yoloGtold1/train/40766.png +../../data/yoloGtold1/train/40767.png +../../data/yoloGtold1/train/40768.png +../../data/yoloGtold1/train/40769.png +../../data/yoloGtold1/train/40770.png +../../data/yoloGtold1/train/40771.png +../../data/yoloGtold1/train/40772.png +../../data/yoloGtold1/train/40773.png +../../data/yoloGtold1/train/40774.png +../../data/yoloGtold1/train/40775.png +../../data/yoloGtold1/train/40776.png +../../data/yoloGtold1/train/40777.png +../../data/yoloGtold1/train/40778.png +../../data/yoloGtold1/train/40779.png +../../data/yoloGtold1/train/40780.png +../../data/yoloGtold1/train/40781.png +../../data/yoloGtold1/train/40782.png +../../data/yoloGtold1/train/40783.png +../../data/yoloGtold1/train/40784.png +../../data/yoloGtold1/train/40785.png +../../data/yoloGtold1/train/40786.png +../../data/yoloGtold1/train/40787.png +../../data/yoloGtold1/train/40788.png +../../data/yoloGtold1/train/40789.png +../../data/yoloGtold1/train/40790.png +../../data/yoloGtold1/train/40791.png +../../data/yoloGtold1/train/40792.png +../../data/yoloGtold1/train/40793.png +../../data/yoloGtold1/train/40794.png +../../data/yoloGtold1/train/40795.png +../../data/yoloGtold1/train/40796.png +../../data/yoloGtold1/train/40797.png +../../data/yoloGtold1/train/40798.png +../../data/yoloGtold1/train/40799.png +../../data/yoloGtold1/train/40800.png +../../data/yoloGtold1/train/40801.png +../../data/yoloGtold1/train/40802.png +../../data/yoloGtold1/train/40803.png +../../data/yoloGtold1/train/40804.png +../../data/yoloGtold1/train/40805.png +../../data/yoloGtold1/train/40806.png +../../data/yoloGtold1/train/40807.png +../../data/yoloGtold1/train/40808.png +../../data/yoloGtold1/train/40809.png +../../data/yoloGtold1/train/40810.png +../../data/yoloGtold1/train/40811.png +../../data/yoloGtold1/train/40812.png +../../data/yoloGtold1/train/40813.png +../../data/yoloGtold1/train/40814.png +../../data/yoloGtold1/train/40815.png +../../data/yoloGtold1/train/40816.png +../../data/yoloGtold1/train/40817.png +../../data/yoloGtold1/train/40818.png +../../data/yoloGtold1/train/40819.png +../../data/yoloGtold1/train/40820.png +../../data/yoloGtold1/train/40821.png +../../data/yoloGtold1/train/40822.png +../../data/yoloGtold1/train/40823.png +../../data/yoloGtold1/train/40824.png +../../data/yoloGtold1/train/40825.png +../../data/yoloGtold1/train/40826.png +../../data/yoloGtold1/train/40827.png +../../data/yoloGtold1/train/40828.png +../../data/yoloGtold1/train/40829.png +../../data/yoloGtold1/train/40830.png +../../data/yoloGtold1/train/40831.png +../../data/yoloGtold1/train/40832.png +../../data/yoloGtold1/train/40833.png +../../data/yoloGtold1/train/40834.png +../../data/yoloGtold1/train/40835.png +../../data/yoloGtold1/train/40836.png +../../data/yoloGtold1/train/40837.png +../../data/yoloGtold1/train/40838.png +../../data/yoloGtold1/train/40839.png +../../data/yoloGtold1/train/40840.png +../../data/yoloGtold1/train/40841.png +../../data/yoloGtold1/train/40842.png +../../data/yoloGtold1/train/40843.png +../../data/yoloGtold1/train/40844.png +../../data/yoloGtold1/train/40845.png +../../data/yoloGtold1/train/40846.png +../../data/yoloGtold1/train/40847.png +../../data/yoloGtold1/train/40848.png +../../data/yoloGtold1/train/40849.png +../../data/yoloGtold1/train/40850.png +../../data/yoloGtold1/train/40851.png +../../data/yoloGtold1/train/40852.png +../../data/yoloGtold1/train/40853.png +../../data/yoloGtold1/train/40854.png +../../data/yoloGtold1/train/40855.png +../../data/yoloGtold1/train/40856.png +../../data/yoloGtold1/train/40857.png +../../data/yoloGtold1/train/40858.png +../../data/yoloGtold1/train/40859.png +../../data/yoloGtold1/train/40860.png +../../data/yoloGtold1/train/40861.png +../../data/yoloGtold1/train/40862.png +../../data/yoloGtold1/train/40863.png +../../data/yoloGtold1/train/40864.png +../../data/yoloGtold1/train/40865.png +../../data/yoloGtold1/train/40866.png +../../data/yoloGtold1/train/40867.png +../../data/yoloGtold1/train/40868.png +../../data/yoloGtold1/train/40869.png +../../data/yoloGtold1/train/40870.png +../../data/yoloGtold1/train/40871.png +../../data/yoloGtold1/train/40872.png +../../data/yoloGtold1/train/40873.png +../../data/yoloGtold1/train/40874.png +../../data/yoloGtold1/train/40875.png +../../data/yoloGtold1/train/40876.png +../../data/yoloGtold1/train/40877.png +../../data/yoloGtold1/train/40878.png +../../data/yoloGtold1/train/40879.png +../../data/yoloGtold1/train/40880.png +../../data/yoloGtold1/train/40881.png +../../data/yoloGtold1/train/40882.png +../../data/yoloGtold1/train/40883.png +../../data/yoloGtold1/train/40884.png +../../data/yoloGtold1/train/40885.png +../../data/yoloGtold1/train/40886.png +../../data/yoloGtold1/train/40887.png +../../data/yoloGtold1/train/40888.png +../../data/yoloGtold1/train/40889.png +../../data/yoloGtold1/train/40890.png +../../data/yoloGtold1/train/40891.png +../../data/yoloGtold1/train/40892.png +../../data/yoloGtold1/train/40893.png +../../data/yoloGtold1/train/40894.png +../../data/yoloGtold1/train/40895.png +../../data/yoloGtold1/train/40896.png +../../data/yoloGtold1/train/40897.png +../../data/yoloGtold1/train/40898.png +../../data/yoloGtold1/train/40899.png +../../data/yoloGtold1/train/40900.png +../../data/yoloGtold1/train/40901.png +../../data/yoloGtold1/train/40902.png +../../data/yoloGtold1/train/40903.png +../../data/yoloGtold1/train/40904.png +../../data/yoloGtold1/train/40905.png +../../data/yoloGtold1/train/40906.png +../../data/yoloGtold1/train/40907.png +../../data/yoloGtold1/train/40908.png +../../data/yoloGtold1/train/40909.png +../../data/yoloGtold1/train/40910.png +../../data/yoloGtold1/train/40911.png +../../data/yoloGtold1/train/40912.png +../../data/yoloGtold1/train/40913.png +../../data/yoloGtold1/train/40914.png +../../data/yoloGtold1/train/40915.png +../../data/yoloGtold1/train/40916.png +../../data/yoloGtold1/train/40917.png +../../data/yoloGtold1/train/40918.png +../../data/yoloGtold1/train/40919.png +../../data/yoloGtold1/train/40920.png +../../data/yoloGtold1/train/40921.png +../../data/yoloGtold1/train/40922.png +../../data/yoloGtold1/train/40923.png +../../data/yoloGtold1/train/40924.png +../../data/yoloGtold1/train/40925.png +../../data/yoloGtold1/train/40926.png +../../data/yoloGtold1/train/40927.png +../../data/yoloGtold1/train/40928.png +../../data/yoloGtold1/train/40929.png +../../data/yoloGtold1/train/40930.png +../../data/yoloGtold1/train/40931.png +../../data/yoloGtold1/train/40932.png +../../data/yoloGtold1/train/40933.png +../../data/yoloGtold1/train/40934.png +../../data/yoloGtold1/train/40935.png +../../data/yoloGtold1/train/40936.png +../../data/yoloGtold1/train/40937.png +../../data/yoloGtold1/train/40938.png +../../data/yoloGtold1/train/40939.png +../../data/yoloGtold1/train/40940.png +../../data/yoloGtold1/train/40941.png +../../data/yoloGtold1/train/40942.png +../../data/yoloGtold1/train/40943.png +../../data/yoloGtold1/train/40944.png +../../data/yoloGtold1/train/40945.png +../../data/yoloGtold1/train/40946.png +../../data/yoloGtold1/train/40947.png +../../data/yoloGtold1/train/40948.png +../../data/yoloGtold1/train/40949.png +../../data/yoloGtold1/train/40950.png +../../data/yoloGtold1/train/40951.png +../../data/yoloGtold1/train/40952.png +../../data/yoloGtold1/train/40953.png +../../data/yoloGtold1/train/40954.png +../../data/yoloGtold1/train/40955.png +../../data/yoloGtold1/train/40956.png +../../data/yoloGtold1/train/40957.png +../../data/yoloGtold1/train/40958.png +../../data/yoloGtold1/train/40959.png +../../data/yoloGtold1/train/40960.png +../../data/yoloGtold1/train/40961.png +../../data/yoloGtold1/train/40962.png +../../data/yoloGtold1/train/40963.png +../../data/yoloGtold1/train/40964.png +../../data/yoloGtold1/train/40965.png +../../data/yoloGtold1/train/40966.png +../../data/yoloGtold1/train/40967.png +../../data/yoloGtold1/train/40968.png +../../data/yoloGtold1/train/40969.png +../../data/yoloGtold1/train/40970.png +../../data/yoloGtold1/train/40971.png +../../data/yoloGtold1/train/40972.png +../../data/yoloGtold1/train/40973.png +../../data/yoloGtold1/train/40974.png +../../data/yoloGtold1/train/40975.png +../../data/yoloGtold1/train/40976.png +../../data/yoloGtold1/train/40977.png +../../data/yoloGtold1/train/40978.png +../../data/yoloGtold1/train/40979.png +../../data/yoloGtold1/train/40980.png +../../data/yoloGtold1/train/40981.png +../../data/yoloGtold1/train/40982.png +../../data/yoloGtold1/train/40983.png +../../data/yoloGtold1/train/40984.png +../../data/yoloGtold1/train/40985.png +../../data/yoloGtold1/train/40986.png +../../data/yoloGtold1/train/40987.png +../../data/yoloGtold1/train/40988.png +../../data/yoloGtold1/train/40989.png +../../data/yoloGtold1/train/40990.png +../../data/yoloGtold1/train/40991.png +../../data/yoloGtold1/train/40992.png +../../data/yoloGtold1/train/40993.png +../../data/yoloGtold1/train/40994.png +../../data/yoloGtold1/train/40995.png +../../data/yoloGtold1/train/40996.png +../../data/yoloGtold1/train/40997.png +../../data/yoloGtold1/train/40998.png +../../data/yoloGtold1/train/40999.png +../../data/yoloGtold1/train/41000.png +../../data/yoloGtold1/train/41001.png +../../data/yoloGtold1/train/41002.png +../../data/yoloGtold1/train/41003.png +../../data/yoloGtold1/train/41004.png +../../data/yoloGtold1/train/41005.png +../../data/yoloGtold1/train/41006.png +../../data/yoloGtold1/train/41007.png +../../data/yoloGtold1/train/41008.png +../../data/yoloGtold1/train/41009.png +../../data/yoloGtold1/train/41010.png +../../data/yoloGtold1/train/41011.png +../../data/yoloGtold1/train/41012.png +../../data/yoloGtold1/train/41013.png +../../data/yoloGtold1/train/41014.png +../../data/yoloGtold1/train/41015.png +../../data/yoloGtold1/train/41016.png +../../data/yoloGtold1/train/41017.png +../../data/yoloGtold1/train/41018.png +../../data/yoloGtold1/train/41019.png +../../data/yoloGtold1/train/41020.png +../../data/yoloGtold1/train/41021.png +../../data/yoloGtold1/train/41022.png +../../data/yoloGtold1/train/41023.png +../../data/yoloGtold1/train/41024.png +../../data/yoloGtold1/train/41025.png +../../data/yoloGtold1/train/41026.png +../../data/yoloGtold1/train/41027.png +../../data/yoloGtold1/train/41028.png +../../data/yoloGtold1/train/41029.png +../../data/yoloGtold1/train/41030.png +../../data/yoloGtold1/train/41031.png +../../data/yoloGtold1/train/41032.png +../../data/yoloGtold1/train/41033.png +../../data/yoloGtold1/train/41034.png +../../data/yoloGtold1/train/41035.png +../../data/yoloGtold1/train/41036.png +../../data/yoloGtold1/train/41037.png +../../data/yoloGtold1/train/41038.png +../../data/yoloGtold1/train/41039.png +../../data/yoloGtold1/train/41040.png +../../data/yoloGtold1/train/41041.png +../../data/yoloGtold1/train/41042.png +../../data/yoloGtold1/train/41043.png +../../data/yoloGtold1/train/41044.png +../../data/yoloGtold1/train/41045.png +../../data/yoloGtold1/train/41046.png +../../data/yoloGtold1/train/41047.png +../../data/yoloGtold1/train/41048.png +../../data/yoloGtold1/train/41049.png +../../data/yoloGtold1/train/41050.png +../../data/yoloGtold1/train/41051.png +../../data/yoloGtold1/train/41052.png +../../data/yoloGtold1/train/41053.png +../../data/yoloGtold1/train/41054.png +../../data/yoloGtold1/train/41055.png +../../data/yoloGtold1/train/41056.png +../../data/yoloGtold1/train/41057.png +../../data/yoloGtold1/train/41058.png +../../data/yoloGtold1/train/41059.png +../../data/yoloGtold1/train/41060.png +../../data/yoloGtold1/train/41061.png +../../data/yoloGtold1/train/41062.png +../../data/yoloGtold1/train/41063.png +../../data/yoloGtold1/train/41064.png +../../data/yoloGtold1/train/41065.png +../../data/yoloGtold1/train/41066.png +../../data/yoloGtold1/train/41067.png +../../data/yoloGtold1/train/41068.png +../../data/yoloGtold1/train/41069.png +../../data/yoloGtold1/train/41070.png +../../data/yoloGtold1/train/41071.png +../../data/yoloGtold1/train/41072.png +../../data/yoloGtold1/train/41073.png +../../data/yoloGtold1/train/41074.png +../../data/yoloGtold1/train/41075.png +../../data/yoloGtold1/train/41076.png +../../data/yoloGtold1/train/41077.png +../../data/yoloGtold1/train/41078.png +../../data/yoloGtold1/train/41079.png +../../data/yoloGtold1/train/41080.png +../../data/yoloGtold1/train/41081.png +../../data/yoloGtold1/train/41082.png +../../data/yoloGtold1/train/41083.png +../../data/yoloGtold1/train/41084.png +../../data/yoloGtold1/train/41085.png +../../data/yoloGtold1/train/41086.png +../../data/yoloGtold1/train/41087.png +../../data/yoloGtold1/train/41088.png +../../data/yoloGtold1/train/41089.png +../../data/yoloGtold1/train/41090.png +../../data/yoloGtold1/train/41091.png +../../data/yoloGtold1/train/41092.png +../../data/yoloGtold1/train/41093.png +../../data/yoloGtold1/train/41094.png +../../data/yoloGtold1/train/41095.png +../../data/yoloGtold1/train/41096.png +../../data/yoloGtold1/train/41097.png +../../data/yoloGtold1/train/41098.png +../../data/yoloGtold1/train/41099.png +../../data/yoloGtold1/train/41100.png +../../data/yoloGtold1/train/41101.png +../../data/yoloGtold1/train/41102.png +../../data/yoloGtold1/train/41103.png +../../data/yoloGtold1/train/41104.png +../../data/yoloGtold1/train/41105.png +../../data/yoloGtold1/train/41106.png +../../data/yoloGtold1/train/41107.png +../../data/yoloGtold1/train/41108.png +../../data/yoloGtold1/train/41109.png +../../data/yoloGtold1/train/41110.png +../../data/yoloGtold1/train/41111.png +../../data/yoloGtold1/train/41112.png +../../data/yoloGtold1/train/41113.png +../../data/yoloGtold1/train/41114.png +../../data/yoloGtold1/train/41115.png +../../data/yoloGtold1/train/41116.png +../../data/yoloGtold1/train/41117.png +../../data/yoloGtold1/train/41118.png +../../data/yoloGtold1/train/41119.png +../../data/yoloGtold1/train/41120.png +../../data/yoloGtold1/train/41121.png +../../data/yoloGtold1/train/41122.png +../../data/yoloGtold1/train/41123.png +../../data/yoloGtold1/train/41124.png +../../data/yoloGtold1/train/41125.png +../../data/yoloGtold1/train/41126.png +../../data/yoloGtold1/train/41127.png +../../data/yoloGtold1/train/41128.png +../../data/yoloGtold1/train/41129.png +../../data/yoloGtold1/train/41130.png +../../data/yoloGtold1/train/41131.png +../../data/yoloGtold1/train/41132.png +../../data/yoloGtold1/train/41133.png +../../data/yoloGtold1/train/41134.png +../../data/yoloGtold1/train/41135.png +../../data/yoloGtold1/train/41136.png +../../data/yoloGtold1/train/41137.png +../../data/yoloGtold1/train/41138.png +../../data/yoloGtold1/train/41139.png +../../data/yoloGtold1/train/41140.png +../../data/yoloGtold1/train/41141.png +../../data/yoloGtold1/train/41142.png +../../data/yoloGtold1/train/41143.png +../../data/yoloGtold1/train/41144.png +../../data/yoloGtold1/train/41145.png +../../data/yoloGtold1/train/41146.png +../../data/yoloGtold1/train/41147.png +../../data/yoloGtold1/train/41148.png +../../data/yoloGtold1/train/41149.png +../../data/yoloGtold1/train/41150.png +../../data/yoloGtold1/train/41151.png +../../data/yoloGtold1/train/41152.png +../../data/yoloGtold1/train/41153.png +../../data/yoloGtold1/train/41154.png +../../data/yoloGtold1/train/41155.png +../../data/yoloGtold1/train/41156.png +../../data/yoloGtold1/train/41157.png +../../data/yoloGtold1/train/41158.png +../../data/yoloGtold1/train/41159.png +../../data/yoloGtold1/train/41160.png +../../data/yoloGtold1/train/41161.png +../../data/yoloGtold1/train/41162.png +../../data/yoloGtold1/train/41163.png +../../data/yoloGtold1/train/41164.png +../../data/yoloGtold1/train/41165.png +../../data/yoloGtold1/train/41166.png +../../data/yoloGtold1/train/41167.png +../../data/yoloGtold1/train/41168.png +../../data/yoloGtold1/train/41169.png +../../data/yoloGtold1/train/41170.png +../../data/yoloGtold1/train/41171.png +../../data/yoloGtold1/train/41172.png +../../data/yoloGtold1/train/41173.png +../../data/yoloGtold1/train/41174.png +../../data/yoloGtold1/train/41175.png +../../data/yoloGtold1/train/41176.png +../../data/yoloGtold1/train/41177.png +../../data/yoloGtold1/train/41178.png +../../data/yoloGtold1/train/41179.png +../../data/yoloGtold1/train/41180.png +../../data/yoloGtold1/train/41181.png +../../data/yoloGtold1/train/41182.png +../../data/yoloGtold1/train/41183.png +../../data/yoloGtold1/train/41184.png +../../data/yoloGtold1/train/41185.png +../../data/yoloGtold1/train/41186.png +../../data/yoloGtold1/train/41187.png +../../data/yoloGtold1/train/41188.png +../../data/yoloGtold1/train/41189.png +../../data/yoloGtold1/train/41190.png +../../data/yoloGtold1/train/41191.png +../../data/yoloGtold1/train/41192.png +../../data/yoloGtold1/train/41193.png +../../data/yoloGtold1/train/41194.png +../../data/yoloGtold1/train/41195.png +../../data/yoloGtold1/train/41196.png +../../data/yoloGtold1/train/41197.png +../../data/yoloGtold1/train/41198.png +../../data/yoloGtold1/train/41199.png +../../data/yoloGtold1/train/41200.png +../../data/yoloGtold1/train/41201.png +../../data/yoloGtold1/train/41202.png +../../data/yoloGtold1/train/41203.png +../../data/yoloGtold1/train/41204.png +../../data/yoloGtold1/train/41205.png +../../data/yoloGtold1/train/41206.png +../../data/yoloGtold1/train/41207.png +../../data/yoloGtold1/train/41208.png +../../data/yoloGtold1/train/41209.png +../../data/yoloGtold1/train/41210.png +../../data/yoloGtold1/train/41211.png +../../data/yoloGtold1/train/41212.png +../../data/yoloGtold1/train/41213.png +../../data/yoloGtold1/train/41214.png +../../data/yoloGtold1/train/41215.png +../../data/yoloGtold1/train/41216.png +../../data/yoloGtold1/train/41217.png +../../data/yoloGtold1/train/41218.png +../../data/yoloGtold1/train/41219.png +../../data/yoloGtold1/train/41220.png +../../data/yoloGtold1/train/41221.png +../../data/yoloGtold1/train/41222.png +../../data/yoloGtold1/train/41223.png +../../data/yoloGtold1/train/41224.png +../../data/yoloGtold1/train/41225.png +../../data/yoloGtold1/train/41226.png +../../data/yoloGtold1/train/41227.png +../../data/yoloGtold1/train/41228.png +../../data/yoloGtold1/train/41229.png +../../data/yoloGtold1/train/41230.png +../../data/yoloGtold1/train/41231.png +../../data/yoloGtold1/train/41232.png +../../data/yoloGtold1/train/41233.png +../../data/yoloGtold1/train/41234.png +../../data/yoloGtold1/train/41235.png +../../data/yoloGtold1/train/41236.png +../../data/yoloGtold1/train/41237.png +../../data/yoloGtold1/train/41238.png +../../data/yoloGtold1/train/41239.png +../../data/yoloGtold1/train/41240.png +../../data/yoloGtold1/train/41241.png +../../data/yoloGtold1/train/41242.png +../../data/yoloGtold1/train/41243.png +../../data/yoloGtold1/train/41244.png +../../data/yoloGtold1/train/41245.png +../../data/yoloGtold1/train/41246.png +../../data/yoloGtold1/train/41247.png +../../data/yoloGtold1/train/41248.png +../../data/yoloGtold1/train/41249.png +../../data/yoloGtold1/train/41250.png +../../data/yoloGtold1/train/41251.png +../../data/yoloGtold1/train/41252.png +../../data/yoloGtold1/train/41253.png +../../data/yoloGtold1/train/41254.png +../../data/yoloGtold1/train/41255.png +../../data/yoloGtold1/train/41256.png +../../data/yoloGtold1/train/41257.png +../../data/yoloGtold1/train/41258.png +../../data/yoloGtold1/train/41259.png +../../data/yoloGtold1/train/41260.png +../../data/yoloGtold1/train/41261.png +../../data/yoloGtold1/train/41262.png +../../data/yoloGtold1/train/41263.png +../../data/yoloGtold1/train/41264.png +../../data/yoloGtold1/train/41265.png +../../data/yoloGtold1/train/41266.png +../../data/yoloGtold1/train/41267.png +../../data/yoloGtold1/train/41268.png +../../data/yoloGtold1/train/41269.png +../../data/yoloGtold1/train/41270.png +../../data/yoloGtold1/train/41271.png +../../data/yoloGtold1/train/41272.png +../../data/yoloGtold1/train/41273.png +../../data/yoloGtold1/train/41274.png +../../data/yoloGtold1/train/41275.png +../../data/yoloGtold1/train/41276.png +../../data/yoloGtold1/train/41277.png +../../data/yoloGtold1/train/41278.png +../../data/yoloGtold1/train/41279.png +../../data/yoloGtold1/train/41280.png +../../data/yoloGtold1/train/41281.png +../../data/yoloGtold1/train/41282.png +../../data/yoloGtold1/train/41283.png +../../data/yoloGtold1/train/41284.png +../../data/yoloGtold1/train/41285.png +../../data/yoloGtold1/train/41286.png +../../data/yoloGtold1/train/41287.png +../../data/yoloGtold1/train/41288.png +../../data/yoloGtold1/train/41289.png +../../data/yoloGtold1/train/41290.png +../../data/yoloGtold1/train/41291.png +../../data/yoloGtold1/train/41292.png +../../data/yoloGtold1/train/41293.png +../../data/yoloGtold1/train/41294.png +../../data/yoloGtold1/train/41295.png +../../data/yoloGtold1/train/41296.png +../../data/yoloGtold1/train/41297.png +../../data/yoloGtold1/train/41298.png +../../data/yoloGtold1/train/41299.png +../../data/yoloGtold1/train/41300.png +../../data/yoloGtold1/train/41301.png +../../data/yoloGtold1/train/41302.png +../../data/yoloGtold1/train/41303.png +../../data/yoloGtold1/train/41304.png +../../data/yoloGtold1/train/41305.png +../../data/yoloGtold1/train/41306.png +../../data/yoloGtold1/train/41307.png +../../data/yoloGtold1/train/41308.png +../../data/yoloGtold1/train/41309.png +../../data/yoloGtold1/train/41310.png +../../data/yoloGtold1/train/41311.png +../../data/yoloGtold1/train/41312.png +../../data/yoloGtold1/train/41313.png +../../data/yoloGtold1/train/41314.png +../../data/yoloGtold1/train/41315.png +../../data/yoloGtold1/train/41316.png +../../data/yoloGtold1/train/41317.png +../../data/yoloGtold1/train/41318.png +../../data/yoloGtold1/train/41319.png +../../data/yoloGtold1/train/41320.png +../../data/yoloGtold1/train/41321.png +../../data/yoloGtold1/train/41322.png +../../data/yoloGtold1/train/41323.png +../../data/yoloGtold1/train/41324.png +../../data/yoloGtold1/train/41325.png +../../data/yoloGtold1/train/41326.png +../../data/yoloGtold1/train/41327.png +../../data/yoloGtold1/train/41328.png +../../data/yoloGtold1/train/41329.png +../../data/yoloGtold1/train/41330.png +../../data/yoloGtold1/train/41331.png +../../data/yoloGtold1/train/41332.png +../../data/yoloGtold1/train/41333.png +../../data/yoloGtold1/train/41334.png +../../data/yoloGtold1/train/41335.png +../../data/yoloGtold1/train/41336.png +../../data/yoloGtold1/train/41337.png +../../data/yoloGtold1/train/41338.png +../../data/yoloGtold1/train/41339.png +../../data/yoloGtold1/train/41340.png +../../data/yoloGtold1/train/41341.png +../../data/yoloGtold1/train/41342.png +../../data/yoloGtold1/train/41343.png +../../data/yoloGtold1/train/41344.png +../../data/yoloGtold1/train/41345.png +../../data/yoloGtold1/train/41346.png +../../data/yoloGtold1/train/41347.png +../../data/yoloGtold1/train/41348.png +../../data/yoloGtold1/train/41349.png +../../data/yoloGtold1/train/41350.png +../../data/yoloGtold1/train/41351.png +../../data/yoloGtold1/train/41352.png +../../data/yoloGtold1/train/41353.png +../../data/yoloGtold1/train/41354.png +../../data/yoloGtold1/train/41355.png +../../data/yoloGtold1/train/41356.png +../../data/yoloGtold1/train/41357.png +../../data/yoloGtold1/train/41358.png +../../data/yoloGtold1/train/41359.png +../../data/yoloGtold1/train/41360.png +../../data/yoloGtold1/train/41361.png +../../data/yoloGtold1/train/41362.png +../../data/yoloGtold1/train/41363.png +../../data/yoloGtold1/train/41364.png +../../data/yoloGtold1/train/41365.png +../../data/yoloGtold1/train/41366.png +../../data/yoloGtold1/train/41367.png +../../data/yoloGtold1/train/41368.png +../../data/yoloGtold1/train/41369.png +../../data/yoloGtold1/train/41370.png +../../data/yoloGtold1/train/41371.png +../../data/yoloGtold1/train/41372.png +../../data/yoloGtold1/train/41373.png +../../data/yoloGtold1/train/41374.png +../../data/yoloGtold1/train/41375.png +../../data/yoloGtold1/train/41376.png +../../data/yoloGtold1/train/41377.png +../../data/yoloGtold1/train/41378.png +../../data/yoloGtold1/train/41379.png +../../data/yoloGtold1/train/41380.png +../../data/yoloGtold1/train/41381.png +../../data/yoloGtold1/train/41382.png +../../data/yoloGtold1/train/41383.png +../../data/yoloGtold1/train/41384.png +../../data/yoloGtold1/train/41385.png +../../data/yoloGtold1/train/41386.png +../../data/yoloGtold1/train/41387.png +../../data/yoloGtold1/train/41388.png +../../data/yoloGtold1/train/41389.png +../../data/yoloGtold1/train/41390.png +../../data/yoloGtold1/train/41391.png +../../data/yoloGtold1/train/41392.png +../../data/yoloGtold1/train/41393.png +../../data/yoloGtold1/train/41394.png +../../data/yoloGtold1/train/41395.png +../../data/yoloGtold1/train/41396.png +../../data/yoloGtold1/train/41397.png +../../data/yoloGtold1/train/41398.png +../../data/yoloGtold1/train/41399.png +../../data/yoloGtold1/train/41400.png +../../data/yoloGtold1/train/41401.png +../../data/yoloGtold1/train/41402.png +../../data/yoloGtold1/train/41403.png +../../data/yoloGtold1/train/41404.png +../../data/yoloGtold1/train/41405.png +../../data/yoloGtold1/train/41406.png +../../data/yoloGtold1/train/41407.png +../../data/yoloGtold1/train/41408.png +../../data/yoloGtold1/train/41409.png +../../data/yoloGtold1/train/41410.png +../../data/yoloGtold1/train/41411.png +../../data/yoloGtold1/train/41412.png +../../data/yoloGtold1/train/41413.png +../../data/yoloGtold1/train/41414.png +../../data/yoloGtold1/train/41415.png +../../data/yoloGtold1/train/41416.png +../../data/yoloGtold1/train/41417.png +../../data/yoloGtold1/train/41418.png +../../data/yoloGtold1/train/41419.png +../../data/yoloGtold1/train/41420.png +../../data/yoloGtold1/train/41421.png +../../data/yoloGtold1/train/41422.png +../../data/yoloGtold1/train/41423.png +../../data/yoloGtold1/train/41424.png +../../data/yoloGtold1/train/41425.png +../../data/yoloGtold1/train/41426.png +../../data/yoloGtold1/train/41427.png +../../data/yoloGtold1/train/41428.png +../../data/yoloGtold1/train/41429.png +../../data/yoloGtold1/train/41430.png +../../data/yoloGtold1/train/41431.png +../../data/yoloGtold1/train/41432.png +../../data/yoloGtold1/train/41433.png +../../data/yoloGtold1/train/41434.png +../../data/yoloGtold1/train/41435.png +../../data/yoloGtold1/train/41436.png +../../data/yoloGtold1/train/41437.png +../../data/yoloGtold1/train/41438.png +../../data/yoloGtold1/train/41439.png +../../data/yoloGtold1/train/41440.png +../../data/yoloGtold1/train/41441.png +../../data/yoloGtold1/train/41442.png +../../data/yoloGtold1/train/41443.png +../../data/yoloGtold1/train/41444.png +../../data/yoloGtold1/train/41445.png +../../data/yoloGtold1/train/41446.png +../../data/yoloGtold1/train/41447.png +../../data/yoloGtold1/train/41448.png +../../data/yoloGtold1/train/41449.png +../../data/yoloGtold1/train/41450.png +../../data/yoloGtold1/train/41451.png +../../data/yoloGtold1/train/41452.png +../../data/yoloGtold1/train/41453.png +../../data/yoloGtold1/train/41454.png +../../data/yoloGtold1/train/41455.png +../../data/yoloGtold1/train/41456.png +../../data/yoloGtold1/train/41457.png +../../data/yoloGtold1/train/41458.png +../../data/yoloGtold1/train/41459.png +../../data/yoloGtold1/train/41460.png +../../data/yoloGtold1/train/41461.png +../../data/yoloGtold1/train/41462.png +../../data/yoloGtold1/train/41463.png +../../data/yoloGtold1/train/41464.png +../../data/yoloGtold1/train/41465.png +../../data/yoloGtold1/train/41466.png +../../data/yoloGtold1/train/41467.png +../../data/yoloGtold1/train/41468.png +../../data/yoloGtold1/train/41469.png +../../data/yoloGtold1/train/41470.png +../../data/yoloGtold1/train/41471.png +../../data/yoloGtold1/train/41472.png +../../data/yoloGtold1/train/41473.png +../../data/yoloGtold1/train/41474.png +../../data/yoloGtold1/train/41475.png +../../data/yoloGtold1/train/41476.png +../../data/yoloGtold1/train/41477.png +../../data/yoloGtold1/train/41478.png +../../data/yoloGtold1/train/41479.png +../../data/yoloGtold1/train/41480.png +../../data/yoloGtold1/train/41481.png +../../data/yoloGtold1/train/41482.png +../../data/yoloGtold1/train/41483.png +../../data/yoloGtold1/train/41484.png +../../data/yoloGtold1/train/41485.png +../../data/yoloGtold1/train/41486.png +../../data/yoloGtold1/train/41487.png +../../data/yoloGtold1/train/41488.png +../../data/yoloGtold1/train/41489.png +../../data/yoloGtold1/train/41490.png +../../data/yoloGtold1/train/41491.png +../../data/yoloGtold1/train/41492.png +../../data/yoloGtold1/train/41493.png +../../data/yoloGtold1/train/41494.png +../../data/yoloGtold1/train/41495.png +../../data/yoloGtold1/train/41496.png +../../data/yoloGtold1/train/41497.png +../../data/yoloGtold1/train/41498.png +../../data/yoloGtold1/train/41499.png +../../data/yoloGtold1/train/41500.png +../../data/yoloGtold1/train/41501.png +../../data/yoloGtold1/train/41502.png +../../data/yoloGtold1/train/41503.png +../../data/yoloGtold1/train/41504.png +../../data/yoloGtold1/train/41505.png +../../data/yoloGtold1/train/41506.png +../../data/yoloGtold1/train/41507.png +../../data/yoloGtold1/train/41508.png +../../data/yoloGtold1/train/41509.png +../../data/yoloGtold1/train/41510.png +../../data/yoloGtold1/train/41511.png +../../data/yoloGtold1/train/41512.png +../../data/yoloGtold1/train/41513.png +../../data/yoloGtold1/train/41514.png +../../data/yoloGtold1/train/41515.png +../../data/yoloGtold1/train/41516.png +../../data/yoloGtold1/train/41517.png +../../data/yoloGtold1/train/41518.png +../../data/yoloGtold1/train/41519.png +../../data/yoloGtold1/train/41520.png +../../data/yoloGtold1/train/41521.png +../../data/yoloGtold1/train/41522.png +../../data/yoloGtold1/train/41523.png +../../data/yoloGtold1/train/41524.png +../../data/yoloGtold1/train/41525.png +../../data/yoloGtold1/train/41526.png +../../data/yoloGtold1/train/41527.png +../../data/yoloGtold1/train/41528.png +../../data/yoloGtold1/train/41529.png +../../data/yoloGtold1/train/41530.png +../../data/yoloGtold1/train/41531.png +../../data/yoloGtold1/train/41532.png +../../data/yoloGtold1/train/41533.png +../../data/yoloGtold1/train/41534.png +../../data/yoloGtold1/train/41535.png +../../data/yoloGtold1/train/41536.png +../../data/yoloGtold1/train/41537.png +../../data/yoloGtold1/train/41538.png +../../data/yoloGtold1/train/41539.png +../../data/yoloGtold1/train/41540.png +../../data/yoloGtold1/train/41541.png +../../data/yoloGtold1/train/41542.png +../../data/yoloGtold1/train/41543.png +../../data/yoloGtold1/train/41544.png +../../data/yoloGtold1/train/41545.png +../../data/yoloGtold1/train/41546.png +../../data/yoloGtold1/train/41547.png +../../data/yoloGtold1/train/41548.png +../../data/yoloGtold1/train/41549.png +../../data/yoloGtold1/train/41550.png +../../data/yoloGtold1/train/41551.png +../../data/yoloGtold1/train/41552.png +../../data/yoloGtold1/train/41553.png +../../data/yoloGtold1/train/41554.png +../../data/yoloGtold1/train/41555.png +../../data/yoloGtold1/train/41556.png +../../data/yoloGtold1/train/41557.png +../../data/yoloGtold1/train/41558.png +../../data/yoloGtold1/train/41559.png +../../data/yoloGtold1/train/41560.png +../../data/yoloGtold1/train/41561.png +../../data/yoloGtold1/train/41562.png +../../data/yoloGtold1/train/41563.png +../../data/yoloGtold1/train/41564.png +../../data/yoloGtold1/train/41565.png +../../data/yoloGtold1/train/41566.png +../../data/yoloGtold1/train/41567.png +../../data/yoloGtold1/train/41568.png +../../data/yoloGtold1/train/41569.png +../../data/yoloGtold1/train/41570.png +../../data/yoloGtold1/train/41571.png +../../data/yoloGtold1/train/41572.png +../../data/yoloGtold1/train/41573.png +../../data/yoloGtold1/train/41574.png +../../data/yoloGtold1/train/41575.png +../../data/yoloGtold1/train/41576.png +../../data/yoloGtold1/train/41577.png +../../data/yoloGtold1/train/41578.png +../../data/yoloGtold1/train/41579.png +../../data/yoloGtold1/train/41580.png +../../data/yoloGtold1/train/41581.png +../../data/yoloGtold1/train/41582.png +../../data/yoloGtold1/train/41583.png +../../data/yoloGtold1/train/41584.png +../../data/yoloGtold1/train/41585.png +../../data/yoloGtold1/train/41586.png +../../data/yoloGtold1/train/41587.png +../../data/yoloGtold1/train/41588.png +../../data/yoloGtold1/train/41589.png +../../data/yoloGtold1/train/41590.png +../../data/yoloGtold1/train/41591.png +../../data/yoloGtold1/train/41592.png +../../data/yoloGtold1/train/41593.png +../../data/yoloGtold1/train/41594.png +../../data/yoloGtold1/train/41595.png +../../data/yoloGtold1/train/41596.png +../../data/yoloGtold1/train/41597.png +../../data/yoloGtold1/train/41598.png +../../data/yoloGtold1/train/41599.png +../../data/yoloGtold1/train/41600.png +../../data/yoloGtold1/train/41601.png +../../data/yoloGtold1/train/41602.png +../../data/yoloGtold1/train/41603.png +../../data/yoloGtold1/train/41604.png +../../data/yoloGtold1/train/41605.png +../../data/yoloGtold1/train/41606.png +../../data/yoloGtold1/train/41607.png +../../data/yoloGtold1/train/41608.png +../../data/yoloGtold1/train/41609.png +../../data/yoloGtold1/train/41610.png +../../data/yoloGtold1/train/41611.png +../../data/yoloGtold1/train/41612.png +../../data/yoloGtold1/train/41613.png +../../data/yoloGtold1/train/41614.png +../../data/yoloGtold1/train/41615.png +../../data/yoloGtold1/train/41616.png +../../data/yoloGtold1/train/41617.png +../../data/yoloGtold1/train/41618.png +../../data/yoloGtold1/train/41619.png +../../data/yoloGtold1/train/41620.png +../../data/yoloGtold1/train/41621.png +../../data/yoloGtold1/train/41622.png +../../data/yoloGtold1/train/41623.png +../../data/yoloGtold1/train/41624.png +../../data/yoloGtold1/train/41625.png +../../data/yoloGtold1/train/41626.png +../../data/yoloGtold1/train/41627.png +../../data/yoloGtold1/train/41628.png +../../data/yoloGtold1/train/41629.png +../../data/yoloGtold1/train/41630.png +../../data/yoloGtold1/train/41631.png +../../data/yoloGtold1/train/41632.png +../../data/yoloGtold1/train/41633.png +../../data/yoloGtold1/train/41634.png +../../data/yoloGtold1/train/41635.png +../../data/yoloGtold1/train/41636.png +../../data/yoloGtold1/train/41637.png +../../data/yoloGtold1/train/41638.png +../../data/yoloGtold1/train/41639.png +../../data/yoloGtold1/train/41640.png +../../data/yoloGtold1/train/41641.png +../../data/yoloGtold1/train/41642.png +../../data/yoloGtold1/train/41643.png +../../data/yoloGtold1/train/41644.png +../../data/yoloGtold1/train/41645.png +../../data/yoloGtold1/train/41646.png +../../data/yoloGtold1/train/41647.png +../../data/yoloGtold1/train/41648.png +../../data/yoloGtold1/train/41649.png +../../data/yoloGtold1/train/41650.png +../../data/yoloGtold1/train/41651.png +../../data/yoloGtold1/train/41652.png +../../data/yoloGtold1/train/41653.png +../../data/yoloGtold1/train/41654.png +../../data/yoloGtold1/train/41655.png +../../data/yoloGtold1/train/41656.png +../../data/yoloGtold1/train/41657.png +../../data/yoloGtold1/train/41658.png +../../data/yoloGtold1/train/41659.png +../../data/yoloGtold1/train/41660.png +../../data/yoloGtold1/train/41661.png +../../data/yoloGtold1/train/41662.png +../../data/yoloGtold1/train/41663.png +../../data/yoloGtold1/train/41664.png +../../data/yoloGtold1/train/41665.png +../../data/yoloGtold1/train/41666.png +../../data/yoloGtold1/train/41667.png +../../data/yoloGtold1/train/41668.png +../../data/yoloGtold1/train/41669.png +../../data/yoloGtold1/train/41670.png +../../data/yoloGtold1/train/41671.png +../../data/yoloGtold1/train/41672.png +../../data/yoloGtold1/train/41673.png +../../data/yoloGtold1/train/41674.png +../../data/yoloGtold1/train/41675.png +../../data/yoloGtold1/train/41676.png +../../data/yoloGtold1/train/41677.png +../../data/yoloGtold1/train/41678.png +../../data/yoloGtold1/train/41679.png +../../data/yoloGtold1/train/41680.png +../../data/yoloGtold1/train/41681.png +../../data/yoloGtold1/train/41682.png +../../data/yoloGtold1/train/41683.png +../../data/yoloGtold1/train/41684.png +../../data/yoloGtold1/train/41685.png +../../data/yoloGtold1/train/41686.png +../../data/yoloGtold1/train/41687.png +../../data/yoloGtold1/train/41688.png +../../data/yoloGtold1/train/41689.png +../../data/yoloGtold1/train/41690.png +../../data/yoloGtold1/train/41691.png +../../data/yoloGtold1/train/41692.png +../../data/yoloGtold1/train/41693.png +../../data/yoloGtold1/train/41694.png +../../data/yoloGtold1/train/41695.png +../../data/yoloGtold1/train/41696.png +../../data/yoloGtold1/train/41697.png +../../data/yoloGtold1/train/41698.png +../../data/yoloGtold1/train/41699.png +../../data/yoloGtold1/train/41700.png +../../data/yoloGtold1/train/41701.png +../../data/yoloGtold1/train/41702.png +../../data/yoloGtold1/train/41703.png +../../data/yoloGtold1/train/41704.png +../../data/yoloGtold1/train/41705.png +../../data/yoloGtold1/train/41706.png +../../data/yoloGtold1/train/41707.png +../../data/yoloGtold1/train/41708.png +../../data/yoloGtold1/train/41709.png +../../data/yoloGtold1/train/41710.png +../../data/yoloGtold1/train/41711.png +../../data/yoloGtold1/train/41712.png +../../data/yoloGtold1/train/41713.png +../../data/yoloGtold1/train/41714.png +../../data/yoloGtold1/train/41715.png +../../data/yoloGtold1/train/41716.png +../../data/yoloGtold1/train/41717.png +../../data/yoloGtold1/train/41718.png +../../data/yoloGtold1/train/41719.png +../../data/yoloGtold1/train/41720.png +../../data/yoloGtold1/train/41721.png +../../data/yoloGtold1/train/41722.png +../../data/yoloGtold1/train/41723.png +../../data/yoloGtold1/train/41724.png +../../data/yoloGtold1/train/41725.png +../../data/yoloGtold1/train/41726.png +../../data/yoloGtold1/train/41727.png +../../data/yoloGtold1/train/41728.png +../../data/yoloGtold1/train/41729.png +../../data/yoloGtold1/train/41730.png +../../data/yoloGtold1/train/41731.png +../../data/yoloGtold1/train/41732.png +../../data/yoloGtold1/train/41733.png +../../data/yoloGtold1/train/41734.png +../../data/yoloGtold1/train/41735.png +../../data/yoloGtold1/train/41736.png +../../data/yoloGtold1/train/41737.png +../../data/yoloGtold1/train/41738.png +../../data/yoloGtold1/train/41739.png +../../data/yoloGtold1/train/41740.png +../../data/yoloGtold1/train/41741.png +../../data/yoloGtold1/train/41742.png +../../data/yoloGtold1/train/41743.png +../../data/yoloGtold1/train/41744.png +../../data/yoloGtold1/train/41745.png +../../data/yoloGtold1/train/41746.png +../../data/yoloGtold1/train/41747.png +../../data/yoloGtold1/train/41748.png +../../data/yoloGtold1/train/41749.png +../../data/yoloGtold1/train/41750.png +../../data/yoloGtold1/train/41751.png +../../data/yoloGtold1/train/41752.png +../../data/yoloGtold1/train/41753.png +../../data/yoloGtold1/train/41754.png +../../data/yoloGtold1/train/41755.png +../../data/yoloGtold1/train/41756.png +../../data/yoloGtold1/train/41757.png +../../data/yoloGtold1/train/41758.png +../../data/yoloGtold1/train/41759.png +../../data/yoloGtold1/train/41760.png +../../data/yoloGtold1/train/41761.png +../../data/yoloGtold1/train/41762.png +../../data/yoloGtold1/train/41763.png +../../data/yoloGtold1/train/41764.png +../../data/yoloGtold1/train/41765.png +../../data/yoloGtold1/train/41766.png +../../data/yoloGtold1/train/41767.png +../../data/yoloGtold1/train/41768.png +../../data/yoloGtold1/train/41769.png +../../data/yoloGtold1/train/41770.png +../../data/yoloGtold1/train/41771.png +../../data/yoloGtold1/train/41772.png +../../data/yoloGtold1/train/41773.png +../../data/yoloGtold1/train/41774.png +../../data/yoloGtold1/train/41775.png +../../data/yoloGtold1/train/41776.png +../../data/yoloGtold1/train/41777.png +../../data/yoloGtold1/train/41778.png +../../data/yoloGtold1/train/41779.png +../../data/yoloGtold1/train/41780.png +../../data/yoloGtold1/train/41781.png +../../data/yoloGtold1/train/41782.png +../../data/yoloGtold1/train/41783.png +../../data/yoloGtold1/train/41784.png +../../data/yoloGtold1/train/41785.png +../../data/yoloGtold1/train/41786.png +../../data/yoloGtold1/train/41787.png +../../data/yoloGtold1/train/41788.png +../../data/yoloGtold1/train/41789.png +../../data/yoloGtold1/train/41790.png +../../data/yoloGtold1/train/41791.png +../../data/yoloGtold1/train/41792.png +../../data/yoloGtold1/train/41793.png +../../data/yoloGtold1/train/41794.png +../../data/yoloGtold1/train/41795.png +../../data/yoloGtold1/train/41796.png +../../data/yoloGtold1/train/41797.png +../../data/yoloGtold1/train/41798.png +../../data/yoloGtold1/train/41799.png +../../data/yoloGtold1/train/41800.png +../../data/yoloGtold1/train/41801.png +../../data/yoloGtold1/train/41802.png +../../data/yoloGtold1/train/41803.png +../../data/yoloGtold1/train/41804.png +../../data/yoloGtold1/train/41805.png +../../data/yoloGtold1/train/41806.png +../../data/yoloGtold1/train/41807.png +../../data/yoloGtold1/train/41808.png +../../data/yoloGtold1/train/41809.png +../../data/yoloGtold1/train/41810.png +../../data/yoloGtold1/train/41811.png +../../data/yoloGtold1/train/41812.png +../../data/yoloGtold1/train/41813.png +../../data/yoloGtold1/train/41814.png +../../data/yoloGtold1/train/41815.png +../../data/yoloGtold1/train/41816.png +../../data/yoloGtold1/train/41817.png +../../data/yoloGtold1/train/41818.png +../../data/yoloGtold1/train/41819.png +../../data/yoloGtold1/train/41820.png +../../data/yoloGtold1/train/41821.png +../../data/yoloGtold1/train/41822.png +../../data/yoloGtold1/train/41823.png +../../data/yoloGtold1/train/41824.png +../../data/yoloGtold1/train/41825.png +../../data/yoloGtold1/train/41826.png +../../data/yoloGtold1/train/41827.png +../../data/yoloGtold1/train/41828.png +../../data/yoloGtold1/train/41829.png +../../data/yoloGtold1/train/41830.png +../../data/yoloGtold1/train/41831.png +../../data/yoloGtold1/train/41832.png +../../data/yoloGtold1/train/41833.png +../../data/yoloGtold1/train/41834.png +../../data/yoloGtold1/train/41835.png +../../data/yoloGtold1/train/41836.png +../../data/yoloGtold1/train/41837.png +../../data/yoloGtold1/train/41838.png +../../data/yoloGtold1/train/41839.png +../../data/yoloGtold1/train/41840.png +../../data/yoloGtold1/train/41841.png +../../data/yoloGtold1/train/41842.png +../../data/yoloGtold1/train/41843.png +../../data/yoloGtold1/train/41844.png +../../data/yoloGtold1/train/41845.png +../../data/yoloGtold1/train/41846.png +../../data/yoloGtold1/train/41847.png +../../data/yoloGtold1/train/41848.png +../../data/yoloGtold1/train/41849.png +../../data/yoloGtold1/train/41850.png +../../data/yoloGtold1/train/41851.png +../../data/yoloGtold1/train/41852.png +../../data/yoloGtold1/train/41853.png +../../data/yoloGtold1/train/41854.png +../../data/yoloGtold1/train/41855.png +../../data/yoloGtold1/train/41856.png +../../data/yoloGtold1/train/41857.png +../../data/yoloGtold1/train/41858.png +../../data/yoloGtold1/train/41859.png +../../data/yoloGtold1/train/41860.png +../../data/yoloGtold1/train/41861.png +../../data/yoloGtold1/train/41862.png +../../data/yoloGtold1/train/41863.png +../../data/yoloGtold1/train/41864.png +../../data/yoloGtold1/train/41865.png +../../data/yoloGtold1/train/41866.png +../../data/yoloGtold1/train/41867.png +../../data/yoloGtold1/train/41868.png +../../data/yoloGtold1/train/41869.png +../../data/yoloGtold1/train/41870.png +../../data/yoloGtold1/train/41871.png +../../data/yoloGtold1/train/41872.png +../../data/yoloGtold1/train/41873.png +../../data/yoloGtold1/train/41874.png +../../data/yoloGtold1/train/41875.png +../../data/yoloGtold1/train/41876.png +../../data/yoloGtold1/train/41877.png +../../data/yoloGtold1/train/41878.png +../../data/yoloGtold1/train/41879.png +../../data/yoloGtold1/train/41880.png +../../data/yoloGtold1/train/41881.png +../../data/yoloGtold1/train/41882.png +../../data/yoloGtold1/train/41883.png +../../data/yoloGtold1/train/41884.png +../../data/yoloGtold1/train/41885.png +../../data/yoloGtold1/train/41886.png +../../data/yoloGtold1/train/41887.png +../../data/yoloGtold1/train/41888.png +../../data/yoloGtold1/train/41889.png +../../data/yoloGtold1/train/41890.png +../../data/yoloGtold1/train/41891.png +../../data/yoloGtold1/train/41892.png +../../data/yoloGtold1/train/41893.png +../../data/yoloGtold1/train/41894.png +../../data/yoloGtold1/train/41895.png +../../data/yoloGtold1/train/41896.png +../../data/yoloGtold1/train/41897.png +../../data/yoloGtold1/train/41898.png +../../data/yoloGtold1/train/41899.png +../../data/yoloGtold1/train/41900.png +../../data/yoloGtold1/train/41901.png +../../data/yoloGtold1/train/41902.png +../../data/yoloGtold1/train/41903.png +../../data/yoloGtold1/train/41904.png +../../data/yoloGtold1/train/41905.png +../../data/yoloGtold1/train/41906.png +../../data/yoloGtold1/train/41907.png +../../data/yoloGtold1/train/41908.png +../../data/yoloGtold1/train/41909.png +../../data/yoloGtold1/train/41910.png +../../data/yoloGtold1/train/41911.png +../../data/yoloGtold1/train/41912.png +../../data/yoloGtold1/train/41913.png +../../data/yoloGtold1/train/41914.png +../../data/yoloGtold1/train/41915.png +../../data/yoloGtold1/train/41916.png +../../data/yoloGtold1/train/41917.png +../../data/yoloGtold1/train/41918.png +../../data/yoloGtold1/train/41919.png +../../data/yoloGtold1/train/41920.png +../../data/yoloGtold1/train/41921.png +../../data/yoloGtold1/train/41922.png +../../data/yoloGtold1/train/41923.png +../../data/yoloGtold1/train/41924.png +../../data/yoloGtold1/train/41925.png +../../data/yoloGtold1/train/41926.png +../../data/yoloGtold1/train/41927.png +../../data/yoloGtold1/train/41928.png +../../data/yoloGtold1/train/41929.png +../../data/yoloGtold1/train/41930.png +../../data/yoloGtold1/train/41931.png +../../data/yoloGtold1/train/41932.png +../../data/yoloGtold1/train/41933.png +../../data/yoloGtold1/train/41934.png +../../data/yoloGtold1/train/41935.png +../../data/yoloGtold1/train/41936.png +../../data/yoloGtold1/train/41937.png +../../data/yoloGtold1/train/41938.png +../../data/yoloGtold1/train/41939.png +../../data/yoloGtold1/train/41940.png +../../data/yoloGtold1/train/41941.png +../../data/yoloGtold1/train/41942.png +../../data/yoloGtold1/train/41943.png +../../data/yoloGtold1/train/41944.png +../../data/yoloGtold1/train/41945.png +../../data/yoloGtold1/train/41946.png +../../data/yoloGtold1/train/41947.png +../../data/yoloGtold1/train/41948.png +../../data/yoloGtold1/train/41949.png +../../data/yoloGtold1/train/41950.png +../../data/yoloGtold1/train/41951.png +../../data/yoloGtold1/train/41952.png +../../data/yoloGtold1/train/41953.png +../../data/yoloGtold1/train/41954.png +../../data/yoloGtold1/train/41955.png +../../data/yoloGtold1/train/41956.png +../../data/yoloGtold1/train/41957.png +../../data/yoloGtold1/train/41958.png +../../data/yoloGtold1/train/41959.png +../../data/yoloGtold1/train/41960.png +../../data/yoloGtold1/train/41961.png +../../data/yoloGtold1/train/41962.png +../../data/yoloGtold1/train/41963.png +../../data/yoloGtold1/train/41964.png +../../data/yoloGtold1/train/41965.png +../../data/yoloGtold1/train/41966.png +../../data/yoloGtold1/train/41967.png +../../data/yoloGtold1/train/41968.png +../../data/yoloGtold1/train/41969.png +../../data/yoloGtold1/train/41970.png +../../data/yoloGtold1/train/41971.png +../../data/yoloGtold1/train/41972.png +../../data/yoloGtold1/train/41973.png +../../data/yoloGtold1/train/41974.png +../../data/yoloGtold1/train/41975.png +../../data/yoloGtold1/train/41976.png +../../data/yoloGtold1/train/41977.png +../../data/yoloGtold1/train/41978.png +../../data/yoloGtold1/train/41979.png +../../data/yoloGtold1/train/41980.png +../../data/yoloGtold1/train/41981.png +../../data/yoloGtold1/train/41982.png +../../data/yoloGtold1/train/41983.png +../../data/yoloGtold1/train/41984.png +../../data/yoloGtold1/train/41985.png +../../data/yoloGtold1/train/41986.png +../../data/yoloGtold1/train/41987.png +../../data/yoloGtold1/train/41988.png +../../data/yoloGtold1/train/41989.png +../../data/yoloGtold1/train/41990.png +../../data/yoloGtold1/train/41991.png +../../data/yoloGtold1/train/41992.png +../../data/yoloGtold1/train/41993.png +../../data/yoloGtold1/train/41994.png +../../data/yoloGtold1/train/41995.png +../../data/yoloGtold1/train/41996.png +../../data/yoloGtold1/train/41997.png +../../data/yoloGtold1/train/41998.png +../../data/yoloGtold1/train/41999.png +../../data/yoloGtold1/train/42000.png +../../data/yoloGtold1/train/42001.png +../../data/yoloGtold1/train/42002.png +../../data/yoloGtold1/train/42003.png +../../data/yoloGtold1/train/42004.png +../../data/yoloGtold1/train/42005.png +../../data/yoloGtold1/train/42006.png +../../data/yoloGtold1/train/42007.png +../../data/yoloGtold1/train/42008.png +../../data/yoloGtold1/train/42009.png +../../data/yoloGtold1/train/42010.png +../../data/yoloGtold1/train/42011.png +../../data/yoloGtold1/train/42012.png +../../data/yoloGtold1/train/42013.png +../../data/yoloGtold1/train/42014.png +../../data/yoloGtold1/train/42015.png +../../data/yoloGtold1/train/42016.png +../../data/yoloGtold1/train/42017.png +../../data/yoloGtold1/train/42018.png +../../data/yoloGtold1/train/42019.png +../../data/yoloGtold1/train/42020.png +../../data/yoloGtold1/train/42021.png +../../data/yoloGtold1/train/42022.png +../../data/yoloGtold1/train/42023.png +../../data/yoloGtold1/train/42024.png +../../data/yoloGtold1/train/42025.png +../../data/yoloGtold1/train/42026.png +../../data/yoloGtold1/train/42027.png +../../data/yoloGtold1/train/42028.png +../../data/yoloGtold1/train/42029.png +../../data/yoloGtold1/train/42030.png +../../data/yoloGtold1/train/42031.png +../../data/yoloGtold1/train/42032.png +../../data/yoloGtold1/train/42033.png +../../data/yoloGtold1/train/42034.png +../../data/yoloGtold1/train/42035.png +../../data/yoloGtold1/train/42036.png +../../data/yoloGtold1/train/42037.png +../../data/yoloGtold1/train/42038.png +../../data/yoloGtold1/train/42039.png +../../data/yoloGtold1/train/42040.png +../../data/yoloGtold1/train/42041.png +../../data/yoloGtold1/train/42042.png +../../data/yoloGtold1/train/42043.png +../../data/yoloGtold1/train/42044.png +../../data/yoloGtold1/train/42045.png +../../data/yoloGtold1/train/42046.png +../../data/yoloGtold1/train/42047.png +../../data/yoloGtold1/train/42048.png +../../data/yoloGtold1/train/42049.png +../../data/yoloGtold1/train/42050.png +../../data/yoloGtold1/train/42051.png +../../data/yoloGtold1/train/42052.png +../../data/yoloGtold1/train/42053.png +../../data/yoloGtold1/train/42054.png +../../data/yoloGtold1/train/42055.png +../../data/yoloGtold1/train/42056.png +../../data/yoloGtold1/train/42057.png +../../data/yoloGtold1/train/42058.png +../../data/yoloGtold1/train/42059.png +../../data/yoloGtold1/train/42060.png +../../data/yoloGtold1/train/42061.png +../../data/yoloGtold1/train/42062.png +../../data/yoloGtold1/train/42063.png +../../data/yoloGtold1/train/42064.png +../../data/yoloGtold1/train/42065.png +../../data/yoloGtold1/train/42066.png +../../data/yoloGtold1/train/42067.png +../../data/yoloGtold1/train/42068.png +../../data/yoloGtold1/train/42069.png +../../data/yoloGtold1/train/42070.png +../../data/yoloGtold1/train/42071.png +../../data/yoloGtold1/train/42072.png +../../data/yoloGtold1/train/42073.png +../../data/yoloGtold1/train/42074.png +../../data/yoloGtold1/train/42075.png +../../data/yoloGtold1/train/42076.png +../../data/yoloGtold1/train/42077.png +../../data/yoloGtold1/train/42078.png +../../data/yoloGtold1/train/42079.png +../../data/yoloGtold1/train/42080.png +../../data/yoloGtold1/train/42081.png +../../data/yoloGtold1/train/42082.png +../../data/yoloGtold1/train/42083.png +../../data/yoloGtold1/train/42084.png +../../data/yoloGtold1/train/42085.png +../../data/yoloGtold1/train/42086.png +../../data/yoloGtold1/train/42087.png +../../data/yoloGtold1/train/42088.png +../../data/yoloGtold1/train/42089.png +../../data/yoloGtold1/train/42090.png +../../data/yoloGtold1/train/42091.png +../../data/yoloGtold1/train/42092.png +../../data/yoloGtold1/train/42093.png +../../data/yoloGtold1/train/42094.png +../../data/yoloGtold1/train/42095.png +../../data/yoloGtold1/train/42096.png +../../data/yoloGtold1/train/42097.png +../../data/yoloGtold1/train/42098.png +../../data/yoloGtold1/train/42099.png +../../data/yoloGtold1/train/42100.png +../../data/yoloGtold1/train/42101.png +../../data/yoloGtold1/train/42102.png +../../data/yoloGtold1/train/42103.png +../../data/yoloGtold1/train/42104.png +../../data/yoloGtold1/train/42105.png +../../data/yoloGtold1/train/42106.png +../../data/yoloGtold1/train/42107.png +../../data/yoloGtold1/train/42108.png +../../data/yoloGtold1/train/42109.png +../../data/yoloGtold1/train/42110.png +../../data/yoloGtold1/train/42111.png +../../data/yoloGtold1/train/42112.png +../../data/yoloGtold1/train/42113.png +../../data/yoloGtold1/train/42114.png +../../data/yoloGtold1/train/42115.png +../../data/yoloGtold1/train/42116.png +../../data/yoloGtold1/train/42117.png +../../data/yoloGtold1/train/42118.png +../../data/yoloGtold1/train/42119.png +../../data/yoloGtold1/train/42120.png +../../data/yoloGtold1/train/42121.png +../../data/yoloGtold1/train/42122.png +../../data/yoloGtold1/train/42123.png +../../data/yoloGtold1/train/42124.png +../../data/yoloGtold1/train/42125.png +../../data/yoloGtold1/train/42126.png +../../data/yoloGtold1/train/42127.png +../../data/yoloGtold1/train/42128.png +../../data/yoloGtold1/train/42129.png +../../data/yoloGtold1/train/42130.png +../../data/yoloGtold1/train/42131.png +../../data/yoloGtold1/train/42132.png +../../data/yoloGtold1/train/42133.png +../../data/yoloGtold1/train/42134.png +../../data/yoloGtold1/train/42135.png +../../data/yoloGtold1/train/42136.png +../../data/yoloGtold1/train/42137.png +../../data/yoloGtold1/train/42138.png +../../data/yoloGtold1/train/42139.png +../../data/yoloGtold1/train/42140.png +../../data/yoloGtold1/train/42141.png +../../data/yoloGtold1/train/42142.png +../../data/yoloGtold1/train/42143.png +../../data/yoloGtold1/train/42144.png +../../data/yoloGtold1/train/42145.png +../../data/yoloGtold1/train/42146.png +../../data/yoloGtold1/train/42147.png +../../data/yoloGtold1/train/42148.png +../../data/yoloGtold1/train/42149.png +../../data/yoloGtold1/train/42150.png +../../data/yoloGtold1/train/42151.png +../../data/yoloGtold1/train/42152.png +../../data/yoloGtold1/train/42153.png +../../data/yoloGtold1/train/42154.png +../../data/yoloGtold1/train/42155.png +../../data/yoloGtold1/train/42156.png +../../data/yoloGtold1/train/42157.png +../../data/yoloGtold1/train/42158.png +../../data/yoloGtold1/train/42159.png +../../data/yoloGtold1/train/42160.png +../../data/yoloGtold1/train/42161.png +../../data/yoloGtold1/train/42162.png +../../data/yoloGtold1/train/42163.png +../../data/yoloGtold1/train/42164.png +../../data/yoloGtold1/train/42165.png +../../data/yoloGtold1/train/42166.png +../../data/yoloGtold1/train/42167.png +../../data/yoloGtold1/train/42168.png +../../data/yoloGtold1/train/42169.png +../../data/yoloGtold1/train/42170.png +../../data/yoloGtold1/train/42171.png +../../data/yoloGtold1/train/42172.png +../../data/yoloGtold1/train/42173.png +../../data/yoloGtold1/train/42174.png +../../data/yoloGtold1/train/42175.png +../../data/yoloGtold1/train/42176.png +../../data/yoloGtold1/train/42177.png +../../data/yoloGtold1/train/42178.png +../../data/yoloGtold1/train/42179.png +../../data/yoloGtold1/train/42180.png +../../data/yoloGtold1/train/42181.png +../../data/yoloGtold1/train/42182.png +../../data/yoloGtold1/train/42183.png +../../data/yoloGtold1/train/42184.png +../../data/yoloGtold1/train/42185.png +../../data/yoloGtold1/train/42186.png +../../data/yoloGtold1/train/42187.png +../../data/yoloGtold1/train/42188.png +../../data/yoloGtold1/train/42189.png +../../data/yoloGtold1/train/42190.png +../../data/yoloGtold1/train/42191.png +../../data/yoloGtold1/train/42192.png +../../data/yoloGtold1/train/42193.png +../../data/yoloGtold1/train/42194.png +../../data/yoloGtold1/train/42195.png +../../data/yoloGtold1/train/42196.png +../../data/yoloGtold1/train/42197.png +../../data/yoloGtold1/train/42198.png +../../data/yoloGtold1/train/42199.png +../../data/yoloGtold1/train/42200.png +../../data/yoloGtold1/train/42201.png +../../data/yoloGtold1/train/42202.png +../../data/yoloGtold1/train/42203.png +../../data/yoloGtold1/train/42204.png +../../data/yoloGtold1/train/42205.png +../../data/yoloGtold1/train/42206.png +../../data/yoloGtold1/train/42207.png +../../data/yoloGtold1/train/42208.png +../../data/yoloGtold1/train/42209.png +../../data/yoloGtold1/train/42210.png +../../data/yoloGtold1/train/42211.png +../../data/yoloGtold1/train/42212.png +../../data/yoloGtold1/train/42213.png +../../data/yoloGtold1/train/42214.png +../../data/yoloGtold1/train/42215.png +../../data/yoloGtold1/train/42216.png +../../data/yoloGtold1/train/42217.png +../../data/yoloGtold1/train/42218.png +../../data/yoloGtold1/train/42219.png +../../data/yoloGtold1/train/42220.png +../../data/yoloGtold1/train/42221.png +../../data/yoloGtold1/train/42222.png +../../data/yoloGtold1/train/42223.png +../../data/yoloGtold1/train/42224.png +../../data/yoloGtold1/train/42225.png +../../data/yoloGtold1/train/42226.png +../../data/yoloGtold1/train/42227.png +../../data/yoloGtold1/train/42228.png +../../data/yoloGtold1/train/42229.png +../../data/yoloGtold1/train/42230.png +../../data/yoloGtold1/train/42231.png +../../data/yoloGtold1/train/42232.png +../../data/yoloGtold1/train/42233.png +../../data/yoloGtold1/train/42234.png +../../data/yoloGtold1/train/42235.png +../../data/yoloGtold1/train/42236.png +../../data/yoloGtold1/train/42237.png +../../data/yoloGtold1/train/42238.png +../../data/yoloGtold1/train/42239.png +../../data/yoloGtold1/train/42240.png +../../data/yoloGtold1/train/42241.png +../../data/yoloGtold1/train/42242.png +../../data/yoloGtold1/train/42243.png +../../data/yoloGtold1/train/42244.png +../../data/yoloGtold1/train/42245.png +../../data/yoloGtold1/train/42246.png +../../data/yoloGtold1/train/42247.png +../../data/yoloGtold1/train/42248.png +../../data/yoloGtold1/train/42249.png +../../data/yoloGtold1/train/42250.png +../../data/yoloGtold1/train/42251.png +../../data/yoloGtold1/train/42252.png +../../data/yoloGtold1/train/42253.png +../../data/yoloGtold1/train/42254.png +../../data/yoloGtold1/train/42255.png +../../data/yoloGtold1/train/42256.png +../../data/yoloGtold1/train/42257.png +../../data/yoloGtold1/train/42258.png +../../data/yoloGtold1/train/42259.png +../../data/yoloGtold1/train/42260.png +../../data/yoloGtold1/train/42261.png +../../data/yoloGtold1/train/42262.png +../../data/yoloGtold1/train/42263.png +../../data/yoloGtold1/train/42264.png +../../data/yoloGtold1/train/42265.png +../../data/yoloGtold1/train/42266.png +../../data/yoloGtold1/train/42267.png +../../data/yoloGtold1/train/42268.png +../../data/yoloGtold1/train/42269.png +../../data/yoloGtold1/train/42270.png +../../data/yoloGtold1/train/42271.png +../../data/yoloGtold1/train/42272.png +../../data/yoloGtold1/train/42273.png +../../data/yoloGtold1/train/42274.png +../../data/yoloGtold1/train/42275.png +../../data/yoloGtold1/train/42276.png +../../data/yoloGtold1/train/42277.png +../../data/yoloGtold1/train/42278.png +../../data/yoloGtold1/train/42279.png +../../data/yoloGtold1/train/42280.png +../../data/yoloGtold1/train/42281.png +../../data/yoloGtold1/train/42282.png +../../data/yoloGtold1/train/42283.png +../../data/yoloGtold1/train/42284.png +../../data/yoloGtold1/train/42285.png +../../data/yoloGtold1/train/42286.png +../../data/yoloGtold1/train/42287.png +../../data/yoloGtold1/train/42288.png +../../data/yoloGtold1/train/42289.png +../../data/yoloGtold1/train/42290.png +../../data/yoloGtold1/train/42291.png +../../data/yoloGtold1/train/42292.png +../../data/yoloGtold1/train/42293.png +../../data/yoloGtold1/train/42294.png +../../data/yoloGtold1/train/42295.png +../../data/yoloGtold1/train/42296.png +../../data/yoloGtold1/train/42297.png +../../data/yoloGtold1/train/42298.png +../../data/yoloGtold1/train/42299.png +../../data/yoloGtold1/train/42300.png +../../data/yoloGtold1/train/42301.png +../../data/yoloGtold1/train/42302.png +../../data/yoloGtold1/train/42303.png +../../data/yoloGtold1/train/42304.png +../../data/yoloGtold1/train/42305.png +../../data/yoloGtold1/train/42306.png +../../data/yoloGtold1/train/42307.png +../../data/yoloGtold1/train/42308.png +../../data/yoloGtold1/train/42309.png +../../data/yoloGtold1/train/42310.png +../../data/yoloGtold1/train/42311.png +../../data/yoloGtold1/train/42312.png +../../data/yoloGtold1/train/42313.png +../../data/yoloGtold1/train/42314.png +../../data/yoloGtold1/train/42315.png +../../data/yoloGtold1/train/42316.png +../../data/yoloGtold1/train/42317.png +../../data/yoloGtold1/train/42318.png +../../data/yoloGtold1/train/42319.png +../../data/yoloGtold1/train/42320.png +../../data/yoloGtold1/train/42321.png +../../data/yoloGtold1/train/42322.png +../../data/yoloGtold1/train/42323.png +../../data/yoloGtold1/train/42324.png +../../data/yoloGtold1/train/42325.png +../../data/yoloGtold1/train/42326.png +../../data/yoloGtold1/train/42327.png +../../data/yoloGtold1/train/42328.png +../../data/yoloGtold1/train/42329.png +../../data/yoloGtold1/train/42330.png +../../data/yoloGtold1/train/42331.png +../../data/yoloGtold1/train/42332.png +../../data/yoloGtold1/train/42333.png +../../data/yoloGtold1/train/42334.png +../../data/yoloGtold1/train/42335.png +../../data/yoloGtold1/train/42336.png +../../data/yoloGtold1/train/42337.png +../../data/yoloGtold1/train/42338.png +../../data/yoloGtold1/train/42339.png +../../data/yoloGtold1/train/42340.png +../../data/yoloGtold1/train/42341.png +../../data/yoloGtold1/train/42342.png +../../data/yoloGtold1/train/42343.png +../../data/yoloGtold1/train/42344.png +../../data/yoloGtold1/train/42345.png +../../data/yoloGtold1/train/42346.png +../../data/yoloGtold1/train/42347.png +../../data/yoloGtold1/train/42348.png +../../data/yoloGtold1/train/42349.png +../../data/yoloGtold1/train/42350.png +../../data/yoloGtold1/train/42351.png +../../data/yoloGtold1/train/42352.png +../../data/yoloGtold1/train/42353.png +../../data/yoloGtold1/train/42354.png +../../data/yoloGtold1/train/42355.png +../../data/yoloGtold1/train/42356.png +../../data/yoloGtold1/train/42357.png +../../data/yoloGtold1/train/42358.png +../../data/yoloGtold1/train/42359.png +../../data/yoloGtold1/train/42360.png +../../data/yoloGtold1/train/42361.png +../../data/yoloGtold1/train/42362.png +../../data/yoloGtold1/train/42363.png +../../data/yoloGtold1/train/42364.png +../../data/yoloGtold1/train/42365.png +../../data/yoloGtold1/train/42366.png +../../data/yoloGtold1/train/42367.png +../../data/yoloGtold1/train/42368.png +../../data/yoloGtold1/train/42369.png +../../data/yoloGtold1/train/42370.png +../../data/yoloGtold1/train/42371.png +../../data/yoloGtold1/train/42372.png +../../data/yoloGtold1/train/42373.png +../../data/yoloGtold1/train/42374.png +../../data/yoloGtold1/train/42375.png +../../data/yoloGtold1/train/42376.png +../../data/yoloGtold1/train/42377.png +../../data/yoloGtold1/train/42378.png +../../data/yoloGtold1/train/42379.png +../../data/yoloGtold1/train/42380.png +../../data/yoloGtold1/train/42381.png +../../data/yoloGtold1/train/42382.png +../../data/yoloGtold1/train/42383.png +../../data/yoloGtold1/train/42384.png +../../data/yoloGtold1/train/42385.png +../../data/yoloGtold1/train/42386.png +../../data/yoloGtold1/train/42387.png +../../data/yoloGtold1/train/42388.png +../../data/yoloGtold1/train/42389.png +../../data/yoloGtold1/train/42390.png +../../data/yoloGtold1/train/42391.png +../../data/yoloGtold1/train/42392.png +../../data/yoloGtold1/train/42393.png +../../data/yoloGtold1/train/42394.png +../../data/yoloGtold1/train/42395.png +../../data/yoloGtold1/train/42396.png +../../data/yoloGtold1/train/42397.png +../../data/yoloGtold1/train/42398.png +../../data/yoloGtold1/train/42399.png +../../data/yoloGtold1/train/42400.png +../../data/yoloGtold1/train/42401.png +../../data/yoloGtold1/train/42402.png +../../data/yoloGtold1/train/42403.png +../../data/yoloGtold1/train/42404.png +../../data/yoloGtold1/train/42405.png +../../data/yoloGtold1/train/42406.png +../../data/yoloGtold1/train/42407.png +../../data/yoloGtold1/train/42408.png +../../data/yoloGtold1/train/42409.png +../../data/yoloGtold1/train/42410.png +../../data/yoloGtold1/train/42411.png +../../data/yoloGtold1/train/42412.png +../../data/yoloGtold1/train/42413.png +../../data/yoloGtold1/train/42414.png +../../data/yoloGtold1/train/42415.png +../../data/yoloGtold1/train/42416.png +../../data/yoloGtold1/train/42417.png +../../data/yoloGtold1/train/42418.png +../../data/yoloGtold1/train/42419.png +../../data/yoloGtold1/train/42420.png +../../data/yoloGtold1/train/42421.png +../../data/yoloGtold1/train/42422.png +../../data/yoloGtold1/train/42423.png +../../data/yoloGtold1/train/42424.png +../../data/yoloGtold1/train/42425.png +../../data/yoloGtold1/train/42426.png +../../data/yoloGtold1/train/42427.png +../../data/yoloGtold1/train/42428.png +../../data/yoloGtold1/train/42429.png +../../data/yoloGtold1/train/42430.png +../../data/yoloGtold1/train/42431.png +../../data/yoloGtold1/train/42432.png +../../data/yoloGtold1/train/42433.png +../../data/yoloGtold1/train/42434.png +../../data/yoloGtold1/train/42435.png +../../data/yoloGtold1/train/42436.png +../../data/yoloGtold1/train/42437.png +../../data/yoloGtold1/train/42438.png +../../data/yoloGtold1/train/42439.png +../../data/yoloGtold1/train/42440.png +../../data/yoloGtold1/train/42441.png +../../data/yoloGtold1/train/42442.png +../../data/yoloGtold1/train/42443.png +../../data/yoloGtold1/train/42444.png +../../data/yoloGtold1/train/42445.png +../../data/yoloGtold1/train/42446.png +../../data/yoloGtold1/train/42447.png +../../data/yoloGtold1/train/42448.png +../../data/yoloGtold1/train/42449.png +../../data/yoloGtold1/train/42450.png +../../data/yoloGtold1/train/42451.png +../../data/yoloGtold1/train/42452.png +../../data/yoloGtold1/train/42453.png +../../data/yoloGtold1/train/42454.png +../../data/yoloGtold1/train/42455.png +../../data/yoloGtold1/train/42456.png +../../data/yoloGtold1/train/42457.png +../../data/yoloGtold1/train/42458.png +../../data/yoloGtold1/train/42459.png +../../data/yoloGtold1/train/42460.png +../../data/yoloGtold1/train/42461.png +../../data/yoloGtold1/train/42462.png +../../data/yoloGtold1/train/42463.png +../../data/yoloGtold1/train/42464.png +../../data/yoloGtold1/train/42465.png +../../data/yoloGtold1/train/42466.png +../../data/yoloGtold1/train/42467.png +../../data/yoloGtold1/train/42468.png +../../data/yoloGtold1/train/42469.png +../../data/yoloGtold1/train/42470.png +../../data/yoloGtold1/train/42471.png +../../data/yoloGtold1/train/42472.png +../../data/yoloGtold1/train/42473.png +../../data/yoloGtold1/train/42474.png +../../data/yoloGtold1/train/42475.png +../../data/yoloGtold1/train/42476.png +../../data/yoloGtold1/train/42477.png +../../data/yoloGtold1/train/42478.png +../../data/yoloGtold1/train/42479.png +../../data/yoloGtold1/train/42480.png +../../data/yoloGtold1/train/42481.png +../../data/yoloGtold1/train/42482.png +../../data/yoloGtold1/train/42483.png +../../data/yoloGtold1/train/42484.png +../../data/yoloGtold1/train/42485.png +../../data/yoloGtold1/train/42486.png +../../data/yoloGtold1/train/42487.png +../../data/yoloGtold1/train/42488.png +../../data/yoloGtold1/train/42489.png +../../data/yoloGtold1/train/42490.png +../../data/yoloGtold1/train/42491.png +../../data/yoloGtold1/train/42492.png +../../data/yoloGtold1/train/42493.png +../../data/yoloGtold1/train/42494.png +../../data/yoloGtold1/train/42495.png +../../data/yoloGtold1/train/42496.png +../../data/yoloGtold1/train/42497.png +../../data/yoloGtold1/train/42498.png +../../data/yoloGtold1/train/42499.png +../../data/yoloGtold1/train/42500.png +../../data/yoloGtold1/train/42501.png +../../data/yoloGtold1/train/42502.png +../../data/yoloGtold1/train/42503.png +../../data/yoloGtold1/train/42504.png +../../data/yoloGtold1/train/42505.png +../../data/yoloGtold1/train/42506.png +../../data/yoloGtold1/train/42507.png +../../data/yoloGtold1/train/42508.png +../../data/yoloGtold1/train/42509.png +../../data/yoloGtold1/train/42510.png +../../data/yoloGtold1/train/42511.png +../../data/yoloGtold1/train/42512.png +../../data/yoloGtold1/train/42513.png +../../data/yoloGtold1/train/42514.png +../../data/yoloGtold1/train/42515.png +../../data/yoloGtold1/train/42516.png +../../data/yoloGtold1/train/42517.png +../../data/yoloGtold1/train/42518.png +../../data/yoloGtold1/train/42519.png +../../data/yoloGtold1/train/42520.png +../../data/yoloGtold1/train/42521.png +../../data/yoloGtold1/train/42522.png +../../data/yoloGtold1/train/42523.png +../../data/yoloGtold1/train/42524.png +../../data/yoloGtold1/train/42525.png +../../data/yoloGtold1/train/42526.png +../../data/yoloGtold1/train/42527.png +../../data/yoloGtold1/train/42528.png +../../data/yoloGtold1/train/42529.png +../../data/yoloGtold1/train/42530.png +../../data/yoloGtold1/train/42531.png +../../data/yoloGtold1/train/42532.png +../../data/yoloGtold1/train/42533.png +../../data/yoloGtold1/train/42534.png +../../data/yoloGtold1/train/42535.png +../../data/yoloGtold1/train/42536.png +../../data/yoloGtold1/train/42537.png +../../data/yoloGtold1/train/42538.png +../../data/yoloGtold1/train/42539.png +../../data/yoloGtold1/train/42540.png +../../data/yoloGtold1/train/42541.png +../../data/yoloGtold1/train/42542.png +../../data/yoloGtold1/train/42543.png +../../data/yoloGtold1/train/42544.png +../../data/yoloGtold1/train/42545.png +../../data/yoloGtold1/train/42546.png +../../data/yoloGtold1/train/42547.png +../../data/yoloGtold1/train/42548.png +../../data/yoloGtold1/train/42549.png +../../data/yoloGtold1/train/42550.png +../../data/yoloGtold1/train/42551.png +../../data/yoloGtold1/train/42552.png +../../data/yoloGtold1/train/42553.png +../../data/yoloGtold1/train/42554.png +../../data/yoloGtold1/train/42555.png +../../data/yoloGtold1/train/42556.png +../../data/yoloGtold1/train/42557.png +../../data/yoloGtold1/train/42558.png +../../data/yoloGtold1/train/42559.png +../../data/yoloGtold1/train/42560.png +../../data/yoloGtold1/train/42561.png +../../data/yoloGtold1/train/42562.png +../../data/yoloGtold1/train/42563.png +../../data/yoloGtold1/train/42564.png +../../data/yoloGtold1/train/42565.png +../../data/yoloGtold1/train/42566.png +../../data/yoloGtold1/train/42567.png +../../data/yoloGtold1/train/42568.png +../../data/yoloGtold1/train/42569.png +../../data/yoloGtold1/train/42570.png +../../data/yoloGtold1/train/42571.png +../../data/yoloGtold1/train/42572.png +../../data/yoloGtold1/train/42573.png +../../data/yoloGtold1/train/42574.png +../../data/yoloGtold1/train/42575.png +../../data/yoloGtold1/train/42576.png +../../data/yoloGtold1/train/42577.png +../../data/yoloGtold1/train/42578.png +../../data/yoloGtold1/train/42579.png +../../data/yoloGtold1/train/42580.png +../../data/yoloGtold1/train/42581.png +../../data/yoloGtold1/train/42582.png +../../data/yoloGtold1/train/42583.png +../../data/yoloGtold1/train/42584.png +../../data/yoloGtold1/train/42585.png +../../data/yoloGtold1/train/42586.png +../../data/yoloGtold1/train/42587.png +../../data/yoloGtold1/train/42588.png +../../data/yoloGtold1/train/42589.png +../../data/yoloGtold1/train/42590.png +../../data/yoloGtold1/train/42591.png +../../data/yoloGtold1/train/42592.png +../../data/yoloGtold1/train/42593.png +../../data/yoloGtold1/train/42594.png +../../data/yoloGtold1/train/42595.png +../../data/yoloGtold1/train/42596.png +../../data/yoloGtold1/train/42597.png +../../data/yoloGtold1/train/42598.png +../../data/yoloGtold1/train/42599.png +../../data/yoloGtold1/train/42600.png +../../data/yoloGtold1/train/42601.png +../../data/yoloGtold1/train/42602.png +../../data/yoloGtold1/train/42603.png +../../data/yoloGtold1/train/42604.png +../../data/yoloGtold1/train/42605.png +../../data/yoloGtold1/train/42606.png +../../data/yoloGtold1/train/42607.png +../../data/yoloGtold1/train/42608.png +../../data/yoloGtold1/train/42609.png +../../data/yoloGtold1/train/42610.png +../../data/yoloGtold1/train/42611.png +../../data/yoloGtold1/train/42612.png +../../data/yoloGtold1/train/42613.png +../../data/yoloGtold1/train/42614.png +../../data/yoloGtold1/train/42615.png +../../data/yoloGtold1/train/42616.png +../../data/yoloGtold1/train/42617.png +../../data/yoloGtold1/train/42618.png +../../data/yoloGtold1/train/42619.png +../../data/yoloGtold1/train/42620.png +../../data/yoloGtold1/train/42621.png +../../data/yoloGtold1/train/42622.png +../../data/yoloGtold1/train/42623.png +../../data/yoloGtold1/train/42624.png +../../data/yoloGtold1/train/42625.png +../../data/yoloGtold1/train/42626.png +../../data/yoloGtold1/train/42627.png +../../data/yoloGtold1/train/42628.png +../../data/yoloGtold1/train/42629.png +../../data/yoloGtold1/train/42630.png +../../data/yoloGtold1/train/42631.png +../../data/yoloGtold1/train/42632.png +../../data/yoloGtold1/train/42633.png +../../data/yoloGtold1/train/42634.png +../../data/yoloGtold1/train/42635.png +../../data/yoloGtold1/train/42636.png +../../data/yoloGtold1/train/42637.png +../../data/yoloGtold1/train/42638.png +../../data/yoloGtold1/train/42639.png +../../data/yoloGtold1/train/42640.png +../../data/yoloGtold1/train/42641.png +../../data/yoloGtold1/train/42642.png +../../data/yoloGtold1/train/42643.png +../../data/yoloGtold1/train/42644.png +../../data/yoloGtold1/train/42645.png +../../data/yoloGtold1/train/42646.png +../../data/yoloGtold1/train/42647.png +../../data/yoloGtold1/train/42648.png +../../data/yoloGtold1/train/42649.png +../../data/yoloGtold1/train/42650.png +../../data/yoloGtold1/train/42651.png +../../data/yoloGtold1/train/42652.png +../../data/yoloGtold1/train/42653.png +../../data/yoloGtold1/train/42654.png +../../data/yoloGtold1/train/42655.png +../../data/yoloGtold1/train/42656.png +../../data/yoloGtold1/train/42657.png +../../data/yoloGtold1/train/42658.png +../../data/yoloGtold1/train/42659.png +../../data/yoloGtold1/train/42660.png +../../data/yoloGtold1/train/42661.png +../../data/yoloGtold1/train/42662.png +../../data/yoloGtold1/train/42663.png +../../data/yoloGtold1/train/42664.png +../../data/yoloGtold1/train/42665.png +../../data/yoloGtold1/train/42666.png +../../data/yoloGtold1/train/42667.png +../../data/yoloGtold1/train/42668.png +../../data/yoloGtold1/train/42669.png +../../data/yoloGtold1/train/42670.png +../../data/yoloGtold1/train/42671.png +../../data/yoloGtold1/train/42672.png +../../data/yoloGtold1/train/42673.png +../../data/yoloGtold1/train/42674.png +../../data/yoloGtold1/train/42675.png +../../data/yoloGtold1/train/42676.png +../../data/yoloGtold1/train/42677.png +../../data/yoloGtold1/train/42678.png +../../data/yoloGtold1/train/42679.png +../../data/yoloGtold1/train/42680.png +../../data/yoloGtold1/train/42681.png +../../data/yoloGtold1/train/42682.png +../../data/yoloGtold1/train/42683.png +../../data/yoloGtold1/train/42684.png +../../data/yoloGtold1/train/42685.png +../../data/yoloGtold1/train/42686.png +../../data/yoloGtold1/train/42687.png +../../data/yoloGtold1/train/42688.png +../../data/yoloGtold1/train/42689.png +../../data/yoloGtold1/train/42690.png +../../data/yoloGtold1/train/42691.png +../../data/yoloGtold1/train/42692.png +../../data/yoloGtold1/train/42693.png +../../data/yoloGtold1/train/42694.png +../../data/yoloGtold1/train/42695.png +../../data/yoloGtold1/train/42696.png +../../data/yoloGtold1/train/42697.png +../../data/yoloGtold1/train/42698.png +../../data/yoloGtold1/train/42699.png +../../data/yoloGtold1/train/42700.png +../../data/yoloGtold1/train/42701.png +../../data/yoloGtold1/train/42702.png +../../data/yoloGtold1/train/42703.png +../../data/yoloGtold1/train/42704.png +../../data/yoloGtold1/train/42705.png +../../data/yoloGtold1/train/42706.png +../../data/yoloGtold1/train/42707.png +../../data/yoloGtold1/train/42708.png +../../data/yoloGtold1/train/42709.png +../../data/yoloGtold1/train/42710.png +../../data/yoloGtold1/train/42711.png +../../data/yoloGtold1/train/42712.png +../../data/yoloGtold1/train/42713.png +../../data/yoloGtold1/train/42714.png +../../data/yoloGtold1/train/42715.png +../../data/yoloGtold1/train/42716.png +../../data/yoloGtold1/train/42717.png +../../data/yoloGtold1/train/42718.png +../../data/yoloGtold1/train/42719.png +../../data/yoloGtold1/train/42720.png +../../data/yoloGtold1/train/42721.png +../../data/yoloGtold1/train/42722.png +../../data/yoloGtold1/train/42723.png +../../data/yoloGtold1/train/42724.png +../../data/yoloGtold1/train/42725.png +../../data/yoloGtold1/train/42726.png +../../data/yoloGtold1/train/42727.png +../../data/yoloGtold1/train/42728.png +../../data/yoloGtold1/train/42729.png +../../data/yoloGtold1/train/42730.png +../../data/yoloGtold1/train/42731.png +../../data/yoloGtold1/train/42732.png +../../data/yoloGtold1/train/42733.png +../../data/yoloGtold1/train/42734.png +../../data/yoloGtold1/train/42735.png +../../data/yoloGtold1/train/42736.png +../../data/yoloGtold1/train/42737.png +../../data/yoloGtold1/train/42738.png +../../data/yoloGtold1/train/42739.png +../../data/yoloGtold1/train/42740.png +../../data/yoloGtold1/train/42741.png +../../data/yoloGtold1/train/42742.png +../../data/yoloGtold1/train/42743.png +../../data/yoloGtold1/train/42744.png +../../data/yoloGtold1/train/42745.png +../../data/yoloGtold1/train/42746.png +../../data/yoloGtold1/train/42747.png +../../data/yoloGtold1/train/42748.png +../../data/yoloGtold1/train/42749.png +../../data/yoloGtold1/train/42750.png +../../data/yoloGtold1/train/42751.png +../../data/yoloGtold1/train/42752.png +../../data/yoloGtold1/train/42753.png +../../data/yoloGtold1/train/42754.png +../../data/yoloGtold1/train/42755.png +../../data/yoloGtold1/train/42756.png +../../data/yoloGtold1/train/42757.png +../../data/yoloGtold1/train/42758.png +../../data/yoloGtold1/train/42759.png +../../data/yoloGtold1/train/42760.png +../../data/yoloGtold1/train/42761.png +../../data/yoloGtold1/train/42762.png +../../data/yoloGtold1/train/42763.png +../../data/yoloGtold1/train/42764.png +../../data/yoloGtold1/train/42765.png +../../data/yoloGtold1/train/42766.png +../../data/yoloGtold1/train/42767.png +../../data/yoloGtold1/train/42768.png +../../data/yoloGtold1/train/42769.png +../../data/yoloGtold1/train/42770.png +../../data/yoloGtold1/train/42771.png +../../data/yoloGtold1/train/42772.png +../../data/yoloGtold1/train/42773.png +../../data/yoloGtold1/train/42774.png +../../data/yoloGtold1/train/42775.png +../../data/yoloGtold1/train/42776.png +../../data/yoloGtold1/train/42777.png +../../data/yoloGtold1/train/42778.png +../../data/yoloGtold1/train/42779.png +../../data/yoloGtold1/train/42780.png +../../data/yoloGtold1/train/42781.png +../../data/yoloGtold1/train/42782.png +../../data/yoloGtold1/train/42783.png +../../data/yoloGtold1/train/42784.png +../../data/yoloGtold1/train/42785.png +../../data/yoloGtold1/train/42786.png +../../data/yoloGtold1/train/42787.png +../../data/yoloGtold1/train/42788.png +../../data/yoloGtold1/train/42789.png +../../data/yoloGtold1/train/42790.png +../../data/yoloGtold1/train/42791.png +../../data/yoloGtold1/train/42792.png +../../data/yoloGtold1/train/42793.png +../../data/yoloGtold1/train/42794.png +../../data/yoloGtold1/train/42795.png +../../data/yoloGtold1/train/42796.png +../../data/yoloGtold1/train/42797.png +../../data/yoloGtold1/train/42798.png +../../data/yoloGtold1/train/42799.png +../../data/yoloGtold1/train/42800.png +../../data/yoloGtold1/train/42801.png +../../data/yoloGtold1/train/42802.png +../../data/yoloGtold1/train/42803.png +../../data/yoloGtold1/train/42804.png +../../data/yoloGtold1/train/42805.png +../../data/yoloGtold1/train/42806.png +../../data/yoloGtold1/train/42807.png +../../data/yoloGtold1/train/42808.png +../../data/yoloGtold1/train/42809.png +../../data/yoloGtold1/train/42810.png +../../data/yoloGtold1/train/42811.png +../../data/yoloGtold1/train/42812.png +../../data/yoloGtold1/train/42813.png +../../data/yoloGtold1/train/42814.png +../../data/yoloGtold1/train/42815.png +../../data/yoloGtold1/train/42816.png +../../data/yoloGtold1/train/42817.png +../../data/yoloGtold1/train/42818.png +../../data/yoloGtold1/train/42819.png +../../data/yoloGtold1/train/42820.png +../../data/yoloGtold1/train/42821.png +../../data/yoloGtold1/train/42822.png +../../data/yoloGtold1/train/42823.png +../../data/yoloGtold1/train/42824.png +../../data/yoloGtold1/train/42825.png +../../data/yoloGtold1/train/42826.png +../../data/yoloGtold1/train/42827.png +../../data/yoloGtold1/train/42828.png +../../data/yoloGtold1/train/42829.png +../../data/yoloGtold1/train/42830.png +../../data/yoloGtold1/train/42831.png +../../data/yoloGtold1/train/42832.png +../../data/yoloGtold1/train/42833.png +../../data/yoloGtold1/train/42834.png +../../data/yoloGtold1/train/42835.png +../../data/yoloGtold1/train/42836.png +../../data/yoloGtold1/train/42837.png +../../data/yoloGtold1/train/42838.png +../../data/yoloGtold1/train/42839.png +../../data/yoloGtold1/train/42840.png +../../data/yoloGtold1/train/42841.png +../../data/yoloGtold1/train/42842.png +../../data/yoloGtold1/train/42843.png +../../data/yoloGtold1/train/42844.png +../../data/yoloGtold1/train/42845.png +../../data/yoloGtold1/train/42846.png +../../data/yoloGtold1/train/42847.png +../../data/yoloGtold1/train/42848.png +../../data/yoloGtold1/train/42849.png +../../data/yoloGtold1/train/42850.png +../../data/yoloGtold1/train/42851.png +../../data/yoloGtold1/train/42852.png +../../data/yoloGtold1/train/42853.png +../../data/yoloGtold1/train/42854.png +../../data/yoloGtold1/train/42855.png +../../data/yoloGtold1/train/42856.png +../../data/yoloGtold1/train/42857.png +../../data/yoloGtold1/train/42858.png +../../data/yoloGtold1/train/42859.png +../../data/yoloGtold1/train/42860.png +../../data/yoloGtold1/train/42861.png +../../data/yoloGtold1/train/42862.png +../../data/yoloGtold1/train/42863.png +../../data/yoloGtold1/train/42864.png +../../data/yoloGtold1/train/42865.png +../../data/yoloGtold1/train/42866.png +../../data/yoloGtold1/train/42867.png +../../data/yoloGtold1/train/42868.png +../../data/yoloGtold1/train/42869.png +../../data/yoloGtold1/train/42870.png +../../data/yoloGtold1/train/42871.png +../../data/yoloGtold1/train/42872.png +../../data/yoloGtold1/train/42873.png +../../data/yoloGtold1/train/42874.png +../../data/yoloGtold1/train/42875.png +../../data/yoloGtold1/train/42876.png +../../data/yoloGtold1/train/42877.png +../../data/yoloGtold1/train/42878.png +../../data/yoloGtold1/train/42879.png +../../data/yoloGtold1/train/42880.png +../../data/yoloGtold1/train/42881.png +../../data/yoloGtold1/train/42882.png +../../data/yoloGtold1/train/42883.png +../../data/yoloGtold1/train/42884.png +../../data/yoloGtold1/train/42885.png +../../data/yoloGtold1/train/42886.png +../../data/yoloGtold1/train/42887.png +../../data/yoloGtold1/train/42888.png +../../data/yoloGtold1/train/42889.png +../../data/yoloGtold1/train/42890.png +../../data/yoloGtold1/train/42891.png +../../data/yoloGtold1/train/42892.png +../../data/yoloGtold1/train/42893.png +../../data/yoloGtold1/train/42894.png +../../data/yoloGtold1/train/42895.png +../../data/yoloGtold1/train/42896.png +../../data/yoloGtold1/train/42897.png +../../data/yoloGtold1/train/42898.png +../../data/yoloGtold1/train/42899.png +../../data/yoloGtold1/train/42900.png +../../data/yoloGtold1/train/42901.png +../../data/yoloGtold1/train/42902.png +../../data/yoloGtold1/train/42903.png +../../data/yoloGtold1/train/42904.png +../../data/yoloGtold1/train/42905.png +../../data/yoloGtold1/train/42906.png +../../data/yoloGtold1/train/42907.png +../../data/yoloGtold1/train/42908.png +../../data/yoloGtold1/train/42909.png +../../data/yoloGtold1/train/42910.png +../../data/yoloGtold1/train/42911.png +../../data/yoloGtold1/train/42912.png +../../data/yoloGtold1/train/42913.png +../../data/yoloGtold1/train/42914.png +../../data/yoloGtold1/train/42915.png +../../data/yoloGtold1/train/42916.png +../../data/yoloGtold1/train/42917.png +../../data/yoloGtold1/train/42918.png +../../data/yoloGtold1/train/42919.png +../../data/yoloGtold1/train/42920.png +../../data/yoloGtold1/train/42921.png +../../data/yoloGtold1/train/42922.png +../../data/yoloGtold1/train/42923.png +../../data/yoloGtold1/train/42924.png +../../data/yoloGtold1/train/42925.png +../../data/yoloGtold1/train/42926.png +../../data/yoloGtold1/train/42927.png +../../data/yoloGtold1/train/42928.png +../../data/yoloGtold1/train/42929.png +../../data/yoloGtold1/train/42930.png +../../data/yoloGtold1/train/42931.png +../../data/yoloGtold1/train/42932.png +../../data/yoloGtold1/train/42933.png +../../data/yoloGtold1/train/42934.png +../../data/yoloGtold1/train/42935.png +../../data/yoloGtold1/train/42936.png +../../data/yoloGtold1/train/42937.png +../../data/yoloGtold1/train/42938.png +../../data/yoloGtold1/train/42939.png +../../data/yoloGtold1/train/42940.png +../../data/yoloGtold1/train/42941.png +../../data/yoloGtold1/train/42942.png +../../data/yoloGtold1/train/42943.png +../../data/yoloGtold1/train/42944.png +../../data/yoloGtold1/train/42945.png +../../data/yoloGtold1/train/42946.png +../../data/yoloGtold1/train/42947.png +../../data/yoloGtold1/train/42948.png +../../data/yoloGtold1/train/42949.png +../../data/yoloGtold1/train/42950.png +../../data/yoloGtold1/train/42951.png +../../data/yoloGtold1/train/42952.png +../../data/yoloGtold1/train/42953.png +../../data/yoloGtold1/train/42954.png +../../data/yoloGtold1/train/42955.png +../../data/yoloGtold1/train/42956.png +../../data/yoloGtold1/train/42957.png +../../data/yoloGtold1/train/42958.png +../../data/yoloGtold1/train/42959.png +../../data/yoloGtold1/train/42960.png +../../data/yoloGtold1/train/42961.png +../../data/yoloGtold1/train/42962.png +../../data/yoloGtold1/train/42963.png +../../data/yoloGtold1/train/42964.png +../../data/yoloGtold1/train/42965.png +../../data/yoloGtold1/train/42966.png +../../data/yoloGtold1/train/42967.png +../../data/yoloGtold1/train/42968.png +../../data/yoloGtold1/train/42969.png +../../data/yoloGtold1/train/42970.png +../../data/yoloGtold1/train/42971.png +../../data/yoloGtold1/train/42972.png +../../data/yoloGtold1/train/42973.png +../../data/yoloGtold1/train/42974.png +../../data/yoloGtold1/train/42975.png +../../data/yoloGtold1/train/42976.png +../../data/yoloGtold1/train/42977.png +../../data/yoloGtold1/train/42978.png +../../data/yoloGtold1/train/42979.png +../../data/yoloGtold1/train/42980.png +../../data/yoloGtold1/train/42981.png +../../data/yoloGtold1/train/42982.png +../../data/yoloGtold1/train/42983.png +../../data/yoloGtold1/train/42984.png +../../data/yoloGtold1/train/42985.png +../../data/yoloGtold1/train/42986.png +../../data/yoloGtold1/train/42987.png +../../data/yoloGtold1/train/42988.png +../../data/yoloGtold1/train/42989.png +../../data/yoloGtold1/train/42990.png +../../data/yoloGtold1/train/42991.png +../../data/yoloGtold1/train/42992.png +../../data/yoloGtold1/train/42993.png +../../data/yoloGtold1/train/42994.png +../../data/yoloGtold1/train/42995.png +../../data/yoloGtold1/train/42996.png +../../data/yoloGtold1/train/42997.png +../../data/yoloGtold1/train/42998.png +../../data/yoloGtold1/train/42999.png +../../data/yoloGtold1/train/43000.png +../../data/yoloGtold1/train/43001.png +../../data/yoloGtold1/train/43002.png +../../data/yoloGtold1/train/43003.png +../../data/yoloGtold1/train/43004.png +../../data/yoloGtold1/train/43005.png +../../data/yoloGtold1/train/43006.png +../../data/yoloGtold1/train/43007.png +../../data/yoloGtold1/train/43008.png +../../data/yoloGtold1/train/43009.png +../../data/yoloGtold1/train/43010.png +../../data/yoloGtold1/train/43011.png +../../data/yoloGtold1/train/43012.png +../../data/yoloGtold1/train/43013.png +../../data/yoloGtold1/train/43014.png +../../data/yoloGtold1/train/43015.png +../../data/yoloGtold1/train/43016.png +../../data/yoloGtold1/train/43017.png +../../data/yoloGtold1/train/43018.png +../../data/yoloGtold1/train/43019.png +../../data/yoloGtold1/train/43020.png +../../data/yoloGtold1/train/43021.png +../../data/yoloGtold1/train/43022.png +../../data/yoloGtold1/train/43023.png +../../data/yoloGtold1/train/43024.png +../../data/yoloGtold1/train/43025.png +../../data/yoloGtold1/train/43026.png +../../data/yoloGtold1/train/43027.png +../../data/yoloGtold1/train/43028.png +../../data/yoloGtold1/train/43029.png +../../data/yoloGtold1/train/43030.png +../../data/yoloGtold1/train/43031.png +../../data/yoloGtold1/train/43032.png +../../data/yoloGtold1/train/43033.png +../../data/yoloGtold1/train/43034.png +../../data/yoloGtold1/train/43035.png +../../data/yoloGtold1/train/43036.png +../../data/yoloGtold1/train/43037.png +../../data/yoloGtold1/train/43038.png +../../data/yoloGtold1/train/43039.png +../../data/yoloGtold1/train/43040.png +../../data/yoloGtold1/train/43041.png +../../data/yoloGtold1/train/43042.png +../../data/yoloGtold1/train/43043.png +../../data/yoloGtold1/train/43044.png +../../data/yoloGtold1/train/43045.png +../../data/yoloGtold1/train/43046.png +../../data/yoloGtold1/train/43047.png +../../data/yoloGtold1/train/43048.png +../../data/yoloGtold1/train/43049.png +../../data/yoloGtold1/train/43050.png +../../data/yoloGtold1/train/43051.png +../../data/yoloGtold1/train/43052.png +../../data/yoloGtold1/train/43053.png +../../data/yoloGtold1/train/43054.png +../../data/yoloGtold1/train/43055.png +../../data/yoloGtold1/train/43056.png +../../data/yoloGtold1/train/43057.png +../../data/yoloGtold1/train/43058.png +../../data/yoloGtold1/train/43059.png +../../data/yoloGtold1/train/43060.png +../../data/yoloGtold1/train/43061.png +../../data/yoloGtold1/train/43062.png +../../data/yoloGtold1/train/43063.png +../../data/yoloGtold1/train/43064.png +../../data/yoloGtold1/train/43065.png +../../data/yoloGtold1/train/43066.png +../../data/yoloGtold1/train/43067.png +../../data/yoloGtold1/train/43068.png +../../data/yoloGtold1/train/43069.png +../../data/yoloGtold1/train/43070.png +../../data/yoloGtold1/train/43071.png +../../data/yoloGtold1/train/43072.png +../../data/yoloGtold1/train/43073.png +../../data/yoloGtold1/train/43074.png +../../data/yoloGtold1/train/43075.png +../../data/yoloGtold1/train/43076.png +../../data/yoloGtold1/train/43077.png +../../data/yoloGtold1/train/43078.png +../../data/yoloGtold1/train/43079.png +../../data/yoloGtold1/train/43080.png +../../data/yoloGtold1/train/43081.png +../../data/yoloGtold1/train/43082.png +../../data/yoloGtold1/train/43083.png +../../data/yoloGtold1/train/43084.png +../../data/yoloGtold1/train/43085.png +../../data/yoloGtold1/train/43086.png +../../data/yoloGtold1/train/43087.png +../../data/yoloGtold1/train/43088.png +../../data/yoloGtold1/train/43089.png +../../data/yoloGtold1/train/43090.png +../../data/yoloGtold1/train/43091.png +../../data/yoloGtold1/train/43092.png +../../data/yoloGtold1/train/43093.png +../../data/yoloGtold1/train/43094.png +../../data/yoloGtold1/train/43095.png +../../data/yoloGtold1/train/43096.png +../../data/yoloGtold1/train/43097.png +../../data/yoloGtold1/train/43098.png +../../data/yoloGtold1/train/43099.png +../../data/yoloGtold1/train/43100.png +../../data/yoloGtold1/train/43101.png +../../data/yoloGtold1/train/43102.png +../../data/yoloGtold1/train/43103.png +../../data/yoloGtold1/train/43104.png +../../data/yoloGtold1/train/43105.png +../../data/yoloGtold1/train/43106.png +../../data/yoloGtold1/train/43107.png +../../data/yoloGtold1/train/43108.png +../../data/yoloGtold1/train/43109.png +../../data/yoloGtold1/train/43110.png +../../data/yoloGtold1/train/43111.png +../../data/yoloGtold1/train/43112.png +../../data/yoloGtold1/train/43113.png +../../data/yoloGtold1/train/43114.png +../../data/yoloGtold1/train/43115.png +../../data/yoloGtold1/train/43116.png +../../data/yoloGtold1/train/43117.png +../../data/yoloGtold1/train/43118.png +../../data/yoloGtold1/train/43119.png +../../data/yoloGtold1/train/43120.png +../../data/yoloGtold1/train/43121.png +../../data/yoloGtold1/train/43122.png +../../data/yoloGtold1/train/43123.png +../../data/yoloGtold1/train/43124.png +../../data/yoloGtold1/train/43125.png +../../data/yoloGtold1/train/43126.png +../../data/yoloGtold1/train/43127.png +../../data/yoloGtold1/train/43128.png +../../data/yoloGtold1/train/43129.png +../../data/yoloGtold1/train/43130.png +../../data/yoloGtold1/train/43131.png +../../data/yoloGtold1/train/43132.png +../../data/yoloGtold1/train/43133.png +../../data/yoloGtold1/train/43134.png +../../data/yoloGtold1/train/43135.png +../../data/yoloGtold1/train/43136.png +../../data/yoloGtold1/train/43137.png +../../data/yoloGtold1/train/43138.png +../../data/yoloGtold1/train/43139.png +../../data/yoloGtold1/train/43140.png +../../data/yoloGtold1/train/43141.png +../../data/yoloGtold1/train/43142.png +../../data/yoloGtold1/train/43143.png +../../data/yoloGtold1/train/43144.png +../../data/yoloGtold1/train/43145.png +../../data/yoloGtold1/train/43146.png +../../data/yoloGtold1/train/43147.png +../../data/yoloGtold1/train/43148.png +../../data/yoloGtold1/train/43149.png +../../data/yoloGtold1/train/43150.png +../../data/yoloGtold1/train/43151.png +../../data/yoloGtold1/train/43152.png +../../data/yoloGtold1/train/43153.png +../../data/yoloGtold1/train/43154.png +../../data/yoloGtold1/train/43155.png +../../data/yoloGtold1/train/43156.png +../../data/yoloGtold1/train/43157.png +../../data/yoloGtold1/train/43158.png +../../data/yoloGtold1/train/43159.png +../../data/yoloGtold1/train/43160.png +../../data/yoloGtold1/train/43161.png +../../data/yoloGtold1/train/43162.png +../../data/yoloGtold1/train/43163.png +../../data/yoloGtold1/train/43164.png +../../data/yoloGtold1/train/43165.png +../../data/yoloGtold1/train/43166.png +../../data/yoloGtold1/train/43167.png +../../data/yoloGtold1/train/43168.png +../../data/yoloGtold1/train/43169.png +../../data/yoloGtold1/train/43170.png +../../data/yoloGtold1/train/43171.png +../../data/yoloGtold1/train/43172.png +../../data/yoloGtold1/train/43173.png +../../data/yoloGtold1/train/43174.png +../../data/yoloGtold1/train/43175.png +../../data/yoloGtold1/train/43176.png +../../data/yoloGtold1/train/43177.png +../../data/yoloGtold1/train/43178.png +../../data/yoloGtold1/train/43179.png +../../data/yoloGtold1/train/43180.png +../../data/yoloGtold1/train/43181.png +../../data/yoloGtold1/train/43182.png +../../data/yoloGtold1/train/43183.png +../../data/yoloGtold1/train/43184.png +../../data/yoloGtold1/train/43185.png +../../data/yoloGtold1/train/43186.png +../../data/yoloGtold1/train/43187.png +../../data/yoloGtold1/train/43188.png +../../data/yoloGtold1/train/43189.png +../../data/yoloGtold1/train/43190.png +../../data/yoloGtold1/train/43191.png +../../data/yoloGtold1/train/43192.png +../../data/yoloGtold1/train/43193.png +../../data/yoloGtold1/train/43194.png +../../data/yoloGtold1/train/43195.png +../../data/yoloGtold1/train/43196.png +../../data/yoloGtold1/train/43197.png +../../data/yoloGtold1/train/43198.png +../../data/yoloGtold1/train/43199.png +../../data/yoloGtold1/train/43200.png +../../data/yoloGtold1/train/43201.png +../../data/yoloGtold1/train/43202.png +../../data/yoloGtold1/train/43203.png +../../data/yoloGtold1/train/43204.png +../../data/yoloGtold1/train/43205.png +../../data/yoloGtold1/train/43206.png +../../data/yoloGtold1/train/43207.png +../../data/yoloGtold1/train/43208.png +../../data/yoloGtold1/train/43209.png +../../data/yoloGtold1/train/43210.png +../../data/yoloGtold1/train/43211.png +../../data/yoloGtold1/train/43212.png +../../data/yoloGtold1/train/43213.png +../../data/yoloGtold1/train/43214.png +../../data/yoloGtold1/train/43215.png +../../data/yoloGtold1/train/43216.png +../../data/yoloGtold1/train/43217.png +../../data/yoloGtold1/train/43218.png +../../data/yoloGtold1/train/43219.png +../../data/yoloGtold1/train/43220.png +../../data/yoloGtold1/train/43221.png +../../data/yoloGtold1/train/43222.png +../../data/yoloGtold1/train/43223.png +../../data/yoloGtold1/train/43224.png +../../data/yoloGtold1/train/43225.png +../../data/yoloGtold1/train/43226.png +../../data/yoloGtold1/train/43227.png +../../data/yoloGtold1/train/43228.png +../../data/yoloGtold1/train/43229.png +../../data/yoloGtold1/train/43230.png +../../data/yoloGtold1/train/43231.png +../../data/yoloGtold1/train/43232.png +../../data/yoloGtold1/train/43233.png +../../data/yoloGtold1/train/43234.png +../../data/yoloGtold1/train/43235.png +../../data/yoloGtold1/train/43236.png +../../data/yoloGtold1/train/43237.png +../../data/yoloGtold1/train/43238.png +../../data/yoloGtold1/train/43239.png +../../data/yoloGtold1/train/43240.png +../../data/yoloGtold1/train/43241.png +../../data/yoloGtold1/train/43242.png +../../data/yoloGtold1/train/43243.png +../../data/yoloGtold1/train/43244.png +../../data/yoloGtold1/train/43245.png +../../data/yoloGtold1/train/43246.png +../../data/yoloGtold1/train/43247.png +../../data/yoloGtold1/train/43248.png +../../data/yoloGtold1/train/43249.png +../../data/yoloGtold1/train/43250.png +../../data/yoloGtold1/train/43251.png +../../data/yoloGtold1/train/43252.png +../../data/yoloGtold1/train/43253.png +../../data/yoloGtold1/train/43254.png +../../data/yoloGtold1/train/43255.png +../../data/yoloGtold1/train/43256.png +../../data/yoloGtold1/train/43257.png +../../data/yoloGtold1/train/43258.png +../../data/yoloGtold1/train/43259.png +../../data/yoloGtold1/train/43260.png +../../data/yoloGtold1/train/43261.png +../../data/yoloGtold1/train/43262.png +../../data/yoloGtold1/train/43263.png +../../data/yoloGtold1/train/43264.png +../../data/yoloGtold1/train/43265.png +../../data/yoloGtold1/train/43266.png +../../data/yoloGtold1/train/43267.png +../../data/yoloGtold1/train/43268.png +../../data/yoloGtold1/train/43269.png +../../data/yoloGtold1/train/43270.png +../../data/yoloGtold1/train/43271.png +../../data/yoloGtold1/train/43272.png +../../data/yoloGtold1/train/43273.png +../../data/yoloGtold1/train/43274.png +../../data/yoloGtold1/train/43275.png +../../data/yoloGtold1/train/43276.png +../../data/yoloGtold1/train/43277.png +../../data/yoloGtold1/train/43278.png +../../data/yoloGtold1/train/43279.png +../../data/yoloGtold1/train/43280.png +../../data/yoloGtold1/train/43281.png +../../data/yoloGtold1/train/43282.png +../../data/yoloGtold1/train/43283.png +../../data/yoloGtold1/train/43284.png +../../data/yoloGtold1/train/43285.png +../../data/yoloGtold1/train/43286.png +../../data/yoloGtold1/train/43287.png +../../data/yoloGtold1/train/43288.png +../../data/yoloGtold1/train/43289.png +../../data/yoloGtold1/train/43290.png +../../data/yoloGtold1/train/43291.png +../../data/yoloGtold1/train/43292.png +../../data/yoloGtold1/train/43293.png +../../data/yoloGtold1/train/43294.png +../../data/yoloGtold1/train/43295.png +../../data/yoloGtold1/train/43296.png +../../data/yoloGtold1/train/43297.png +../../data/yoloGtold1/train/43298.png +../../data/yoloGtold1/train/43299.png +../../data/yoloGtold1/train/43300.png +../../data/yoloGtold1/train/43301.png +../../data/yoloGtold1/train/43302.png +../../data/yoloGtold1/train/43303.png +../../data/yoloGtold1/train/43304.png +../../data/yoloGtold1/train/43305.png +../../data/yoloGtold1/train/43306.png +../../data/yoloGtold1/train/43307.png +../../data/yoloGtold1/train/43308.png +../../data/yoloGtold1/train/43309.png +../../data/yoloGtold1/train/43310.png +../../data/yoloGtold1/train/43311.png +../../data/yoloGtold1/train/43312.png +../../data/yoloGtold1/train/43313.png +../../data/yoloGtold1/train/43314.png +../../data/yoloGtold1/train/43315.png +../../data/yoloGtold1/train/43316.png +../../data/yoloGtold1/train/43317.png +../../data/yoloGtold1/train/43318.png +../../data/yoloGtold1/train/43319.png +../../data/yoloGtold1/train/43320.png +../../data/yoloGtold1/train/43321.png +../../data/yoloGtold1/train/43322.png +../../data/yoloGtold1/train/43323.png +../../data/yoloGtold1/train/43324.png +../../data/yoloGtold1/train/43325.png +../../data/yoloGtold1/train/43326.png +../../data/yoloGtold1/train/43327.png +../../data/yoloGtold1/train/43328.png +../../data/yoloGtold1/train/43329.png +../../data/yoloGtold1/train/43330.png +../../data/yoloGtold1/train/43331.png +../../data/yoloGtold1/train/43332.png +../../data/yoloGtold1/train/43333.png +../../data/yoloGtold1/train/43334.png +../../data/yoloGtold1/train/43335.png +../../data/yoloGtold1/train/43336.png +../../data/yoloGtold1/train/43337.png +../../data/yoloGtold1/train/43338.png +../../data/yoloGtold1/train/43339.png +../../data/yoloGtold1/train/43340.png +../../data/yoloGtold1/train/43341.png +../../data/yoloGtold1/train/43342.png +../../data/yoloGtold1/train/43343.png +../../data/yoloGtold1/train/43344.png +../../data/yoloGtold1/train/43345.png +../../data/yoloGtold1/train/43346.png +../../data/yoloGtold1/train/43347.png +../../data/yoloGtold1/train/43348.png +../../data/yoloGtold1/train/43349.png +../../data/yoloGtold1/train/43350.png +../../data/yoloGtold1/train/43351.png +../../data/yoloGtold1/train/43352.png +../../data/yoloGtold1/train/43353.png +../../data/yoloGtold1/train/43354.png +../../data/yoloGtold1/train/43355.png +../../data/yoloGtold1/train/43356.png +../../data/yoloGtold1/train/43357.png +../../data/yoloGtold1/train/43358.png +../../data/yoloGtold1/train/43359.png +../../data/yoloGtold1/train/43360.png +../../data/yoloGtold1/train/43361.png +../../data/yoloGtold1/train/43362.png +../../data/yoloGtold1/train/43363.png +../../data/yoloGtold1/train/43364.png +../../data/yoloGtold1/train/43365.png +../../data/yoloGtold1/train/43366.png +../../data/yoloGtold1/train/43367.png +../../data/yoloGtold1/train/43368.png +../../data/yoloGtold1/train/43369.png +../../data/yoloGtold1/train/43370.png +../../data/yoloGtold1/train/43371.png +../../data/yoloGtold1/train/43372.png +../../data/yoloGtold1/train/43373.png +../../data/yoloGtold1/train/43374.png +../../data/yoloGtold1/train/43375.png +../../data/yoloGtold1/train/43376.png +../../data/yoloGtold1/train/43377.png +../../data/yoloGtold1/train/43378.png +../../data/yoloGtold1/train/43379.png +../../data/yoloGtold1/train/43380.png +../../data/yoloGtold1/train/43381.png +../../data/yoloGtold1/train/43382.png +../../data/yoloGtold1/train/43383.png +../../data/yoloGtold1/train/43384.png +../../data/yoloGtold1/train/43385.png +../../data/yoloGtold1/train/43386.png +../../data/yoloGtold1/train/43387.png +../../data/yoloGtold1/train/43388.png +../../data/yoloGtold1/train/43389.png +../../data/yoloGtold1/train/43390.png +../../data/yoloGtold1/train/43391.png +../../data/yoloGtold1/train/43392.png +../../data/yoloGtold1/train/43393.png +../../data/yoloGtold1/train/43394.png +../../data/yoloGtold1/train/43395.png +../../data/yoloGtold1/train/43396.png +../../data/yoloGtold1/train/43397.png +../../data/yoloGtold1/train/43398.png +../../data/yoloGtold1/train/43399.png +../../data/yoloGtold1/train/43400.png +../../data/yoloGtold1/train/43401.png +../../data/yoloGtold1/train/43402.png +../../data/yoloGtold1/train/43403.png +../../data/yoloGtold1/train/43404.png +../../data/yoloGtold1/train/43405.png +../../data/yoloGtold1/train/43406.png +../../data/yoloGtold1/train/43407.png +../../data/yoloGtold1/train/43408.png +../../data/yoloGtold1/train/43409.png +../../data/yoloGtold1/train/43410.png +../../data/yoloGtold1/train/43411.png +../../data/yoloGtold1/train/43412.png +../../data/yoloGtold1/train/43413.png +../../data/yoloGtold1/train/43414.png +../../data/yoloGtold1/train/43415.png +../../data/yoloGtold1/train/43416.png +../../data/yoloGtold1/train/43417.png +../../data/yoloGtold1/train/43418.png +../../data/yoloGtold1/train/43419.png +../../data/yoloGtold1/train/43420.png +../../data/yoloGtold1/train/43421.png +../../data/yoloGtold1/train/43422.png +../../data/yoloGtold1/train/43423.png +../../data/yoloGtold1/train/43424.png +../../data/yoloGtold1/train/43425.png +../../data/yoloGtold1/train/43426.png +../../data/yoloGtold1/train/43427.png +../../data/yoloGtold1/train/43428.png +../../data/yoloGtold1/train/43429.png +../../data/yoloGtold1/train/43430.png +../../data/yoloGtold1/train/43431.png +../../data/yoloGtold1/train/43432.png +../../data/yoloGtold1/train/43433.png +../../data/yoloGtold1/train/43434.png +../../data/yoloGtold1/train/43435.png +../../data/yoloGtold1/train/43436.png +../../data/yoloGtold1/train/43437.png +../../data/yoloGtold1/train/43438.png +../../data/yoloGtold1/train/43439.png +../../data/yoloGtold1/train/43440.png +../../data/yoloGtold1/train/43441.png +../../data/yoloGtold1/train/43442.png +../../data/yoloGtold1/train/43443.png +../../data/yoloGtold1/train/43444.png +../../data/yoloGtold1/train/43445.png +../../data/yoloGtold1/train/43446.png +../../data/yoloGtold1/train/43447.png +../../data/yoloGtold1/train/43448.png +../../data/yoloGtold1/train/43449.png +../../data/yoloGtold1/train/43450.png +../../data/yoloGtold1/train/43451.png +../../data/yoloGtold1/train/43452.png +../../data/yoloGtold1/train/43453.png +../../data/yoloGtold1/train/43454.png +../../data/yoloGtold1/train/43455.png +../../data/yoloGtold1/train/43456.png +../../data/yoloGtold1/train/43457.png +../../data/yoloGtold1/train/43458.png +../../data/yoloGtold1/train/43459.png +../../data/yoloGtold1/train/43460.png +../../data/yoloGtold1/train/43461.png +../../data/yoloGtold1/train/43462.png +../../data/yoloGtold1/train/43463.png +../../data/yoloGtold1/train/43464.png +../../data/yoloGtold1/train/43465.png +../../data/yoloGtold1/train/43466.png +../../data/yoloGtold1/train/43467.png +../../data/yoloGtold1/train/43468.png +../../data/yoloGtold1/train/43469.png +../../data/yoloGtold1/train/43470.png +../../data/yoloGtold1/train/43471.png +../../data/yoloGtold1/train/43472.png +../../data/yoloGtold1/train/43473.png +../../data/yoloGtold1/train/43474.png +../../data/yoloGtold1/train/43475.png +../../data/yoloGtold1/train/43476.png +../../data/yoloGtold1/train/43477.png +../../data/yoloGtold1/train/43478.png +../../data/yoloGtold1/train/43479.png +../../data/yoloGtold1/train/43480.png +../../data/yoloGtold1/train/43481.png +../../data/yoloGtold1/train/43482.png +../../data/yoloGtold1/train/43483.png +../../data/yoloGtold1/train/43484.png +../../data/yoloGtold1/train/43485.png +../../data/yoloGtold1/train/43486.png +../../data/yoloGtold1/train/43487.png +../../data/yoloGtold1/train/43488.png +../../data/yoloGtold1/train/43489.png +../../data/yoloGtold1/train/43490.png +../../data/yoloGtold1/train/43491.png +../../data/yoloGtold1/train/43492.png +../../data/yoloGtold1/train/43493.png +../../data/yoloGtold1/train/43494.png +../../data/yoloGtold1/train/43495.png +../../data/yoloGtold1/train/43496.png +../../data/yoloGtold1/train/43497.png +../../data/yoloGtold1/train/43498.png +../../data/yoloGtold1/train/43499.png +../../data/yoloGtold1/train/43500.png +../../data/yoloGtold1/train/43501.png +../../data/yoloGtold1/train/43502.png +../../data/yoloGtold1/train/43503.png +../../data/yoloGtold1/train/43504.png +../../data/yoloGtold1/train/43505.png +../../data/yoloGtold1/train/43506.png +../../data/yoloGtold1/train/43507.png +../../data/yoloGtold1/train/43508.png +../../data/yoloGtold1/train/43509.png +../../data/yoloGtold1/train/43510.png +../../data/yoloGtold1/train/43511.png +../../data/yoloGtold1/train/43512.png +../../data/yoloGtold1/train/43513.png +../../data/yoloGtold1/train/43514.png +../../data/yoloGtold1/train/43515.png +../../data/yoloGtold1/train/43516.png +../../data/yoloGtold1/train/43517.png +../../data/yoloGtold1/train/43518.png +../../data/yoloGtold1/train/43519.png +../../data/yoloGtold1/train/43520.png +../../data/yoloGtold1/train/43521.png +../../data/yoloGtold1/train/43522.png +../../data/yoloGtold1/train/43523.png +../../data/yoloGtold1/train/43524.png +../../data/yoloGtold1/train/43525.png +../../data/yoloGtold1/train/43526.png +../../data/yoloGtold1/train/43527.png +../../data/yoloGtold1/train/43528.png +../../data/yoloGtold1/train/43529.png +../../data/yoloGtold1/train/43530.png +../../data/yoloGtold1/train/43531.png +../../data/yoloGtold1/train/43532.png +../../data/yoloGtold1/train/43533.png +../../data/yoloGtold1/train/43534.png +../../data/yoloGtold1/train/43535.png +../../data/yoloGtold1/train/43536.png +../../data/yoloGtold1/train/43537.png +../../data/yoloGtold1/train/43538.png +../../data/yoloGtold1/train/43539.png +../../data/yoloGtold1/train/43540.png +../../data/yoloGtold1/train/43541.png +../../data/yoloGtold1/train/43542.png +../../data/yoloGtold1/train/43543.png +../../data/yoloGtold1/train/43544.png +../../data/yoloGtold1/train/43545.png +../../data/yoloGtold1/train/43546.png +../../data/yoloGtold1/train/43547.png +../../data/yoloGtold1/train/43548.png +../../data/yoloGtold1/train/43549.png +../../data/yoloGtold1/train/43550.png +../../data/yoloGtold1/train/43551.png +../../data/yoloGtold1/train/43552.png +../../data/yoloGtold1/train/43553.png +../../data/yoloGtold1/train/43554.png +../../data/yoloGtold1/train/43555.png +../../data/yoloGtold1/train/43556.png +../../data/yoloGtold1/train/43557.png +../../data/yoloGtold1/train/43558.png +../../data/yoloGtold1/train/43559.png +../../data/yoloGtold1/train/43560.png +../../data/yoloGtold1/train/43561.png +../../data/yoloGtold1/train/43562.png +../../data/yoloGtold1/train/43563.png +../../data/yoloGtold1/train/43564.png +../../data/yoloGtold1/train/43565.png +../../data/yoloGtold1/train/43566.png +../../data/yoloGtold1/train/43567.png +../../data/yoloGtold1/train/43568.png +../../data/yoloGtold1/train/43569.png +../../data/yoloGtold1/train/43570.png +../../data/yoloGtold1/train/43571.png +../../data/yoloGtold1/train/43572.png +../../data/yoloGtold1/train/43573.png +../../data/yoloGtold1/train/43574.png +../../data/yoloGtold1/train/43575.png +../../data/yoloGtold1/train/43576.png +../../data/yoloGtold1/train/43577.png +../../data/yoloGtold1/train/43578.png +../../data/yoloGtold1/train/43579.png +../../data/yoloGtold1/train/43580.png +../../data/yoloGtold1/train/43581.png +../../data/yoloGtold1/train/43582.png +../../data/yoloGtold1/train/43583.png +../../data/yoloGtold1/train/43584.png +../../data/yoloGtold1/train/43585.png +../../data/yoloGtold1/train/43586.png +../../data/yoloGtold1/train/43587.png +../../data/yoloGtold1/train/43588.png +../../data/yoloGtold1/train/43589.png +../../data/yoloGtold1/train/43590.png +../../data/yoloGtold1/train/43591.png +../../data/yoloGtold1/train/43592.png +../../data/yoloGtold1/train/43593.png +../../data/yoloGtold1/train/43594.png +../../data/yoloGtold1/train/43595.png +../../data/yoloGtold1/train/43596.png +../../data/yoloGtold1/train/43597.png +../../data/yoloGtold1/train/43598.png +../../data/yoloGtold1/train/43599.png +../../data/yoloGtold1/train/43600.png +../../data/yoloGtold1/train/43601.png +../../data/yoloGtold1/train/43602.png +../../data/yoloGtold1/train/43603.png +../../data/yoloGtold1/train/43604.png +../../data/yoloGtold1/train/43605.png +../../data/yoloGtold1/train/43606.png +../../data/yoloGtold1/train/43607.png +../../data/yoloGtold1/train/43608.png +../../data/yoloGtold1/train/43609.png +../../data/yoloGtold1/train/43610.png +../../data/yoloGtold1/train/43611.png +../../data/yoloGtold1/train/43612.png +../../data/yoloGtold1/train/43613.png +../../data/yoloGtold1/train/43614.png +../../data/yoloGtold1/train/43615.png +../../data/yoloGtold1/train/43616.png +../../data/yoloGtold1/train/43617.png +../../data/yoloGtold1/train/43618.png +../../data/yoloGtold1/train/43619.png +../../data/yoloGtold1/train/43620.png +../../data/yoloGtold1/train/43621.png +../../data/yoloGtold1/train/43622.png +../../data/yoloGtold1/train/43623.png +../../data/yoloGtold1/train/43624.png +../../data/yoloGtold1/train/43625.png +../../data/yoloGtold1/train/43626.png +../../data/yoloGtold1/train/43627.png +../../data/yoloGtold1/train/43628.png +../../data/yoloGtold1/train/43629.png +../../data/yoloGtold1/train/43630.png +../../data/yoloGtold1/train/43631.png +../../data/yoloGtold1/train/43632.png +../../data/yoloGtold1/train/43633.png +../../data/yoloGtold1/train/43634.png +../../data/yoloGtold1/train/43635.png +../../data/yoloGtold1/train/43636.png +../../data/yoloGtold1/train/43637.png +../../data/yoloGtold1/train/43638.png +../../data/yoloGtold1/train/43639.png +../../data/yoloGtold1/train/43640.png +../../data/yoloGtold1/train/43641.png +../../data/yoloGtold1/train/43642.png +../../data/yoloGtold1/train/43643.png +../../data/yoloGtold1/train/43644.png +../../data/yoloGtold1/train/43645.png +../../data/yoloGtold1/train/43646.png +../../data/yoloGtold1/train/43647.png +../../data/yoloGtold1/train/43648.png +../../data/yoloGtold1/train/43649.png +../../data/yoloGtold1/train/43650.png +../../data/yoloGtold1/train/43651.png +../../data/yoloGtold1/train/43652.png +../../data/yoloGtold1/train/43653.png +../../data/yoloGtold1/train/43654.png +../../data/yoloGtold1/train/43655.png +../../data/yoloGtold1/train/43656.png +../../data/yoloGtold1/train/43657.png +../../data/yoloGtold1/train/43658.png +../../data/yoloGtold1/train/43659.png +../../data/yoloGtold1/train/43660.png +../../data/yoloGtold1/train/43661.png +../../data/yoloGtold1/train/43662.png +../../data/yoloGtold1/train/43663.png +../../data/yoloGtold1/train/43664.png +../../data/yoloGtold1/train/43665.png +../../data/yoloGtold1/train/43666.png +../../data/yoloGtold1/train/43667.png +../../data/yoloGtold1/train/43668.png +../../data/yoloGtold1/train/43669.png +../../data/yoloGtold1/train/43670.png +../../data/yoloGtold1/train/43671.png +../../data/yoloGtold1/train/43672.png +../../data/yoloGtold1/train/43673.png +../../data/yoloGtold1/train/43674.png +../../data/yoloGtold1/train/43675.png +../../data/yoloGtold1/train/43676.png +../../data/yoloGtold1/train/43677.png +../../data/yoloGtold1/train/43678.png +../../data/yoloGtold1/train/43679.png +../../data/yoloGtold1/train/43680.png +../../data/yoloGtold1/train/43681.png +../../data/yoloGtold1/train/43682.png +../../data/yoloGtold1/train/43683.png +../../data/yoloGtold1/train/43684.png +../../data/yoloGtold1/train/43685.png +../../data/yoloGtold1/train/43686.png +../../data/yoloGtold1/train/43687.png +../../data/yoloGtold1/train/43688.png +../../data/yoloGtold1/train/43689.png +../../data/yoloGtold1/train/43690.png +../../data/yoloGtold1/train/43691.png +../../data/yoloGtold1/train/43692.png +../../data/yoloGtold1/train/43693.png +../../data/yoloGtold1/train/43694.png +../../data/yoloGtold1/train/43695.png +../../data/yoloGtold1/train/43696.png +../../data/yoloGtold1/train/43697.png +../../data/yoloGtold1/train/43698.png +../../data/yoloGtold1/train/43699.png +../../data/yoloGtold1/train/43700.png +../../data/yoloGtold1/train/43701.png +../../data/yoloGtold1/train/43702.png +../../data/yoloGtold1/train/43703.png +../../data/yoloGtold1/train/43704.png +../../data/yoloGtold1/train/43705.png +../../data/yoloGtold1/train/43706.png +../../data/yoloGtold1/train/43707.png +../../data/yoloGtold1/train/43708.png +../../data/yoloGtold1/train/43709.png +../../data/yoloGtold1/train/43710.png +../../data/yoloGtold1/train/43711.png +../../data/yoloGtold1/train/43712.png +../../data/yoloGtold1/train/43713.png +../../data/yoloGtold1/train/43714.png +../../data/yoloGtold1/train/43715.png +../../data/yoloGtold1/train/43716.png +../../data/yoloGtold1/train/43717.png +../../data/yoloGtold1/train/43718.png +../../data/yoloGtold1/train/43719.png +../../data/yoloGtold1/train/43720.png +../../data/yoloGtold1/train/43721.png +../../data/yoloGtold1/train/43722.png +../../data/yoloGtold1/train/43723.png +../../data/yoloGtold1/train/43724.png +../../data/yoloGtold1/train/43725.png +../../data/yoloGtold1/train/43726.png +../../data/yoloGtold1/train/43727.png +../../data/yoloGtold1/train/43728.png +../../data/yoloGtold1/train/43729.png +../../data/yoloGtold1/train/43730.png +../../data/yoloGtold1/train/43731.png +../../data/yoloGtold1/train/43732.png +../../data/yoloGtold1/train/43733.png +../../data/yoloGtold1/train/43734.png +../../data/yoloGtold1/train/43735.png +../../data/yoloGtold1/train/43736.png +../../data/yoloGtold1/train/43737.png +../../data/yoloGtold1/train/43738.png +../../data/yoloGtold1/train/43739.png +../../data/yoloGtold1/train/43740.png +../../data/yoloGtold1/train/43741.png +../../data/yoloGtold1/train/43742.png +../../data/yoloGtold1/train/43743.png +../../data/yoloGtold1/train/43744.png +../../data/yoloGtold1/train/43745.png +../../data/yoloGtold1/train/43746.png +../../data/yoloGtold1/train/43747.png +../../data/yoloGtold1/train/43748.png +../../data/yoloGtold1/train/43749.png +../../data/yoloGtold1/train/43750.png +../../data/yoloGtold1/train/43751.png +../../data/yoloGtold1/train/43752.png +../../data/yoloGtold1/train/43753.png +../../data/yoloGtold1/train/43754.png +../../data/yoloGtold1/train/43755.png +../../data/yoloGtold1/train/43756.png +../../data/yoloGtold1/train/43757.png +../../data/yoloGtold1/train/43758.png +../../data/yoloGtold1/train/43759.png +../../data/yoloGtold1/train/43760.png +../../data/yoloGtold1/train/43761.png +../../data/yoloGtold1/train/43762.png +../../data/yoloGtold1/train/43763.png +../../data/yoloGtold1/train/43764.png +../../data/yoloGtold1/train/43765.png +../../data/yoloGtold1/train/43766.png +../../data/yoloGtold1/train/43767.png +../../data/yoloGtold1/train/43768.png +../../data/yoloGtold1/train/43769.png +../../data/yoloGtold1/train/43770.png +../../data/yoloGtold1/train/43771.png +../../data/yoloGtold1/train/43772.png +../../data/yoloGtold1/train/43773.png +../../data/yoloGtold1/train/43774.png +../../data/yoloGtold1/train/43775.png +../../data/yoloGtold1/train/43776.png +../../data/yoloGtold1/train/43777.png +../../data/yoloGtold1/train/43778.png +../../data/yoloGtold1/train/43779.png +../../data/yoloGtold1/train/43780.png +../../data/yoloGtold1/train/43781.png +../../data/yoloGtold1/train/43782.png +../../data/yoloGtold1/train/43783.png +../../data/yoloGtold1/train/43784.png +../../data/yoloGtold1/train/43785.png +../../data/yoloGtold1/train/43786.png +../../data/yoloGtold1/train/43787.png +../../data/yoloGtold1/train/43788.png +../../data/yoloGtold1/train/43789.png +../../data/yoloGtold1/train/43790.png +../../data/yoloGtold1/train/43791.png +../../data/yoloGtold1/train/43792.png +../../data/yoloGtold1/train/43793.png +../../data/yoloGtold1/train/43794.png +../../data/yoloGtold1/train/43795.png +../../data/yoloGtold1/train/43796.png +../../data/yoloGtold1/train/43797.png +../../data/yoloGtold1/train/43798.png +../../data/yoloGtold1/train/43799.png +../../data/yoloGtold1/train/43800.png +../../data/yoloGtold1/train/43801.png +../../data/yoloGtold1/train/43802.png +../../data/yoloGtold1/train/43803.png +../../data/yoloGtold1/train/43804.png +../../data/yoloGtold1/train/43805.png +../../data/yoloGtold1/train/43806.png +../../data/yoloGtold1/train/43807.png +../../data/yoloGtold1/train/43808.png +../../data/yoloGtold1/train/43809.png +../../data/yoloGtold1/train/43810.png +../../data/yoloGtold1/train/43811.png +../../data/yoloGtold1/train/43812.png +../../data/yoloGtold1/train/43813.png +../../data/yoloGtold1/train/43814.png +../../data/yoloGtold1/train/43815.png +../../data/yoloGtold1/train/43816.png +../../data/yoloGtold1/train/43817.png +../../data/yoloGtold1/train/43818.png +../../data/yoloGtold1/train/43819.png +../../data/yoloGtold1/train/43820.png +../../data/yoloGtold1/train/43821.png +../../data/yoloGtold1/train/43822.png +../../data/yoloGtold1/train/43823.png +../../data/yoloGtold1/train/43824.png +../../data/yoloGtold1/train/43825.png +../../data/yoloGtold1/train/43826.png +../../data/yoloGtold1/train/43827.png +../../data/yoloGtold1/train/43828.png +../../data/yoloGtold1/train/43829.png +../../data/yoloGtold1/train/43830.png +../../data/yoloGtold1/train/43831.png +../../data/yoloGtold1/train/43832.png +../../data/yoloGtold1/train/43833.png +../../data/yoloGtold1/train/43834.png +../../data/yoloGtold1/train/43835.png +../../data/yoloGtold1/train/43836.png +../../data/yoloGtold1/train/43837.png +../../data/yoloGtold1/train/43838.png +../../data/yoloGtold1/train/43839.png +../../data/yoloGtold1/train/43840.png +../../data/yoloGtold1/train/43841.png +../../data/yoloGtold1/train/43842.png +../../data/yoloGtold1/train/43843.png +../../data/yoloGtold1/train/43844.png +../../data/yoloGtold1/train/43845.png +../../data/yoloGtold1/train/43846.png +../../data/yoloGtold1/train/43847.png +../../data/yoloGtold1/train/43848.png +../../data/yoloGtold1/train/43849.png +../../data/yoloGtold1/train/43850.png +../../data/yoloGtold1/train/43851.png +../../data/yoloGtold1/train/43852.png +../../data/yoloGtold1/train/43853.png +../../data/yoloGtold1/train/43854.png +../../data/yoloGtold1/train/43855.png +../../data/yoloGtold1/train/43856.png +../../data/yoloGtold1/train/43857.png +../../data/yoloGtold1/train/43858.png +../../data/yoloGtold1/train/43859.png +../../data/yoloGtold1/train/43860.png +../../data/yoloGtold1/train/43861.png +../../data/yoloGtold1/train/43862.png +../../data/yoloGtold1/train/43863.png +../../data/yoloGtold1/train/43864.png +../../data/yoloGtold1/train/43865.png +../../data/yoloGtold1/train/43866.png +../../data/yoloGtold1/train/43867.png +../../data/yoloGtold1/train/43868.png +../../data/yoloGtold1/train/43869.png +../../data/yoloGtold1/train/43870.png +../../data/yoloGtold1/train/43871.png +../../data/yoloGtold1/train/43872.png +../../data/yoloGtold1/train/43873.png +../../data/yoloGtold1/train/43874.png +../../data/yoloGtold1/train/43875.png +../../data/yoloGtold1/train/43876.png +../../data/yoloGtold1/train/43877.png +../../data/yoloGtold1/train/43878.png +../../data/yoloGtold1/train/43879.png +../../data/yoloGtold1/train/43880.png +../../data/yoloGtold1/train/43881.png +../../data/yoloGtold1/train/43882.png +../../data/yoloGtold1/train/43883.png +../../data/yoloGtold1/train/43884.png +../../data/yoloGtold1/train/43885.png +../../data/yoloGtold1/train/43886.png +../../data/yoloGtold1/train/43887.png +../../data/yoloGtold1/train/43888.png +../../data/yoloGtold1/train/43889.png +../../data/yoloGtold1/train/43890.png +../../data/yoloGtold1/train/43891.png +../../data/yoloGtold1/train/43892.png +../../data/yoloGtold1/train/43893.png +../../data/yoloGtold1/train/43894.png +../../data/yoloGtold1/train/43895.png +../../data/yoloGtold1/train/43896.png +../../data/yoloGtold1/train/43897.png +../../data/yoloGtold1/train/43898.png +../../data/yoloGtold1/train/43899.png +../../data/yoloGtold1/train/43900.png +../../data/yoloGtold1/train/43901.png +../../data/yoloGtold1/train/43902.png +../../data/yoloGtold1/train/43903.png +../../data/yoloGtold1/train/43904.png +../../data/yoloGtold1/train/43905.png +../../data/yoloGtold1/train/43906.png +../../data/yoloGtold1/train/43907.png +../../data/yoloGtold1/train/43908.png +../../data/yoloGtold1/train/43909.png +../../data/yoloGtold1/train/43910.png +../../data/yoloGtold1/train/43911.png +../../data/yoloGtold1/train/43912.png +../../data/yoloGtold1/train/43913.png +../../data/yoloGtold1/train/43914.png +../../data/yoloGtold1/train/43915.png +../../data/yoloGtold1/train/43916.png +../../data/yoloGtold1/train/43917.png +../../data/yoloGtold1/train/43918.png +../../data/yoloGtold1/train/43919.png +../../data/yoloGtold1/train/43920.png +../../data/yoloGtold1/train/43921.png +../../data/yoloGtold1/train/43922.png +../../data/yoloGtold1/train/43923.png +../../data/yoloGtold1/train/43924.png +../../data/yoloGtold1/train/43925.png +../../data/yoloGtold1/train/43926.png +../../data/yoloGtold1/train/43927.png +../../data/yoloGtold1/train/43928.png +../../data/yoloGtold1/train/43929.png +../../data/yoloGtold1/train/43930.png +../../data/yoloGtold1/train/43931.png +../../data/yoloGtold1/train/43932.png +../../data/yoloGtold1/train/43933.png +../../data/yoloGtold1/train/43934.png +../../data/yoloGtold1/train/43935.png +../../data/yoloGtold1/train/43936.png +../../data/yoloGtold1/train/43937.png +../../data/yoloGtold1/train/43938.png +../../data/yoloGtold1/train/43939.png +../../data/yoloGtold1/train/43940.png +../../data/yoloGtold1/train/43941.png +../../data/yoloGtold1/train/43942.png +../../data/yoloGtold1/train/43943.png +../../data/yoloGtold1/train/43944.png +../../data/yoloGtold1/train/43945.png +../../data/yoloGtold1/train/43946.png +../../data/yoloGtold1/train/43947.png +../../data/yoloGtold1/train/43948.png +../../data/yoloGtold1/train/43949.png +../../data/yoloGtold1/train/43950.png +../../data/yoloGtold1/train/43951.png +../../data/yoloGtold1/train/43952.png +../../data/yoloGtold1/train/43953.png +../../data/yoloGtold1/train/43954.png +../../data/yoloGtold1/train/43955.png +../../data/yoloGtold1/train/43956.png +../../data/yoloGtold1/train/43957.png +../../data/yoloGtold1/train/43958.png +../../data/yoloGtold1/train/43959.png +../../data/yoloGtold1/train/43960.png +../../data/yoloGtold1/train/43961.png +../../data/yoloGtold1/train/43962.png +../../data/yoloGtold1/train/43963.png +../../data/yoloGtold1/train/43964.png +../../data/yoloGtold1/train/43965.png +../../data/yoloGtold1/train/43966.png +../../data/yoloGtold1/train/43967.png +../../data/yoloGtold1/train/43968.png +../../data/yoloGtold1/train/43969.png +../../data/yoloGtold1/train/43970.png +../../data/yoloGtold1/train/43971.png +../../data/yoloGtold1/train/43972.png +../../data/yoloGtold1/train/43973.png +../../data/yoloGtold1/train/43974.png +../../data/yoloGtold1/train/43975.png +../../data/yoloGtold1/train/43976.png +../../data/yoloGtold1/train/43977.png +../../data/yoloGtold1/train/43978.png +../../data/yoloGtold1/train/43979.png +../../data/yoloGtold1/train/43980.png +../../data/yoloGtold1/train/43981.png +../../data/yoloGtold1/train/43982.png +../../data/yoloGtold1/train/43983.png +../../data/yoloGtold1/train/43984.png +../../data/yoloGtold1/train/43985.png +../../data/yoloGtold1/train/43986.png +../../data/yoloGtold1/train/43987.png +../../data/yoloGtold1/train/43988.png +../../data/yoloGtold1/train/43989.png +../../data/yoloGtold1/train/43990.png +../../data/yoloGtold1/train/43991.png +../../data/yoloGtold1/train/43992.png +../../data/yoloGtold1/train/43993.png +../../data/yoloGtold1/train/43994.png +../../data/yoloGtold1/train/43995.png +../../data/yoloGtold1/train/43996.png +../../data/yoloGtold1/train/43997.png +../../data/yoloGtold1/train/43998.png +../../data/yoloGtold1/train/43999.png +../../data/yoloGtold1/train/44000.png +../../data/yoloGtold1/train/44001.png +../../data/yoloGtold1/train/44002.png +../../data/yoloGtold1/train/44003.png +../../data/yoloGtold1/train/44004.png +../../data/yoloGtold1/train/44005.png +../../data/yoloGtold1/train/44006.png +../../data/yoloGtold1/train/44007.png +../../data/yoloGtold1/train/44008.png +../../data/yoloGtold1/train/44009.png +../../data/yoloGtold1/train/44010.png +../../data/yoloGtold1/train/44011.png +../../data/yoloGtold1/train/44012.png +../../data/yoloGtold1/train/44013.png +../../data/yoloGtold1/train/44014.png +../../data/yoloGtold1/train/44015.png +../../data/yoloGtold1/train/44016.png +../../data/yoloGtold1/train/44017.png +../../data/yoloGtold1/train/44018.png +../../data/yoloGtold1/train/44019.png +../../data/yoloGtold1/train/44020.png +../../data/yoloGtold1/train/44021.png +../../data/yoloGtold1/train/44022.png +../../data/yoloGtold1/train/44023.png +../../data/yoloGtold1/train/44024.png +../../data/yoloGtold1/train/44025.png +../../data/yoloGtold1/train/44026.png +../../data/yoloGtold1/train/44027.png +../../data/yoloGtold1/train/44028.png +../../data/yoloGtold1/train/44029.png +../../data/yoloGtold1/train/44030.png +../../data/yoloGtold1/train/44031.png +../../data/yoloGtold1/train/44032.png +../../data/yoloGtold1/train/44033.png +../../data/yoloGtold1/train/44034.png +../../data/yoloGtold1/train/44035.png +../../data/yoloGtold1/train/44036.png +../../data/yoloGtold1/train/44037.png +../../data/yoloGtold1/train/44038.png +../../data/yoloGtold1/train/44039.png +../../data/yoloGtold1/train/44040.png +../../data/yoloGtold1/train/44041.png +../../data/yoloGtold1/train/44042.png +../../data/yoloGtold1/train/44043.png +../../data/yoloGtold1/train/44044.png +../../data/yoloGtold1/train/44045.png +../../data/yoloGtold1/train/44046.png +../../data/yoloGtold1/train/44047.png +../../data/yoloGtold1/train/44048.png +../../data/yoloGtold1/train/44049.png +../../data/yoloGtold1/train/44050.png +../../data/yoloGtold1/train/44051.png +../../data/yoloGtold1/train/44052.png +../../data/yoloGtold1/train/44053.png +../../data/yoloGtold1/train/44054.png +../../data/yoloGtold1/train/44055.png +../../data/yoloGtold1/train/44056.png +../../data/yoloGtold1/train/44057.png +../../data/yoloGtold1/train/44058.png +../../data/yoloGtold1/train/44059.png +../../data/yoloGtold1/train/44060.png +../../data/yoloGtold1/train/44061.png +../../data/yoloGtold1/train/44062.png +../../data/yoloGtold1/train/44063.png +../../data/yoloGtold1/train/44064.png +../../data/yoloGtold1/train/44065.png +../../data/yoloGtold1/train/44066.png +../../data/yoloGtold1/train/44067.png +../../data/yoloGtold1/train/44068.png +../../data/yoloGtold1/train/44069.png +../../data/yoloGtold1/train/44070.png +../../data/yoloGtold1/train/44071.png +../../data/yoloGtold1/train/44072.png +../../data/yoloGtold1/train/44073.png +../../data/yoloGtold1/train/44074.png +../../data/yoloGtold1/train/44075.png +../../data/yoloGtold1/train/44076.png +../../data/yoloGtold1/train/44077.png +../../data/yoloGtold1/train/44078.png +../../data/yoloGtold1/train/44079.png +../../data/yoloGtold1/train/44080.png +../../data/yoloGtold1/train/44081.png +../../data/yoloGtold1/train/44082.png +../../data/yoloGtold1/train/44083.png +../../data/yoloGtold1/train/44084.png +../../data/yoloGtold1/train/44085.png +../../data/yoloGtold1/train/44086.png +../../data/yoloGtold1/train/44087.png +../../data/yoloGtold1/train/44088.png +../../data/yoloGtold1/train/44089.png +../../data/yoloGtold1/train/44090.png +../../data/yoloGtold1/train/44091.png +../../data/yoloGtold1/train/44092.png +../../data/yoloGtold1/train/44093.png +../../data/yoloGtold1/train/44094.png +../../data/yoloGtold1/train/44095.png +../../data/yoloGtold1/train/44096.png +../../data/yoloGtold1/train/44097.png +../../data/yoloGtold1/train/44098.png +../../data/yoloGtold1/train/44099.png +../../data/yoloGtold1/train/44100.png +../../data/yoloGtold1/train/44101.png +../../data/yoloGtold1/train/44102.png +../../data/yoloGtold1/train/44103.png +../../data/yoloGtold1/train/44104.png +../../data/yoloGtold1/train/44105.png +../../data/yoloGtold1/train/44106.png +../../data/yoloGtold1/train/44107.png +../../data/yoloGtold1/train/44108.png +../../data/yoloGtold1/train/44109.png +../../data/yoloGtold1/train/44110.png +../../data/yoloGtold1/train/44111.png +../../data/yoloGtold1/train/44112.png +../../data/yoloGtold1/train/44113.png +../../data/yoloGtold1/train/44114.png +../../data/yoloGtold1/train/44115.png +../../data/yoloGtold1/train/44116.png +../../data/yoloGtold1/train/44117.png +../../data/yoloGtold1/train/44118.png +../../data/yoloGtold1/train/44119.png +../../data/yoloGtold1/train/44120.png +../../data/yoloGtold1/train/44121.png +../../data/yoloGtold1/train/44122.png +../../data/yoloGtold1/train/44123.png +../../data/yoloGtold1/train/44124.png +../../data/yoloGtold1/train/44125.png +../../data/yoloGtold1/train/44126.png +../../data/yoloGtold1/train/44127.png +../../data/yoloGtold1/train/44128.png +../../data/yoloGtold1/train/44129.png +../../data/yoloGtold1/train/44130.png +../../data/yoloGtold1/train/44131.png +../../data/yoloGtold1/train/44132.png +../../data/yoloGtold1/train/44133.png +../../data/yoloGtold1/train/44134.png +../../data/yoloGtold1/train/44135.png +../../data/yoloGtold1/train/44136.png +../../data/yoloGtold1/train/44137.png +../../data/yoloGtold1/train/44138.png +../../data/yoloGtold1/train/44139.png +../../data/yoloGtold1/train/44140.png +../../data/yoloGtold1/train/44141.png +../../data/yoloGtold1/train/44142.png +../../data/yoloGtold1/train/44143.png +../../data/yoloGtold1/train/44144.png +../../data/yoloGtold1/train/44145.png +../../data/yoloGtold1/train/44146.png +../../data/yoloGtold1/train/44147.png +../../data/yoloGtold1/train/44148.png +../../data/yoloGtold1/train/44149.png +../../data/yoloGtold1/train/44150.png +../../data/yoloGtold1/train/44151.png +../../data/yoloGtold1/train/44152.png +../../data/yoloGtold1/train/44153.png +../../data/yoloGtold1/train/44154.png +../../data/yoloGtold1/train/44155.png +../../data/yoloGtold1/train/44156.png +../../data/yoloGtold1/train/44157.png +../../data/yoloGtold1/train/44158.png +../../data/yoloGtold1/train/44159.png +../../data/yoloGtold1/train/44160.png +../../data/yoloGtold1/train/44161.png +../../data/yoloGtold1/train/44162.png +../../data/yoloGtold1/train/44163.png +../../data/yoloGtold1/train/44164.png +../../data/yoloGtold1/train/44165.png +../../data/yoloGtold1/train/44166.png +../../data/yoloGtold1/train/44167.png +../../data/yoloGtold1/train/44168.png +../../data/yoloGtold1/train/44169.png +../../data/yoloGtold1/train/44170.png +../../data/yoloGtold1/train/44171.png +../../data/yoloGtold1/train/44172.png +../../data/yoloGtold1/train/44173.png +../../data/yoloGtold1/train/44174.png +../../data/yoloGtold1/train/44175.png +../../data/yoloGtold1/train/44176.png +../../data/yoloGtold1/train/44177.png +../../data/yoloGtold1/train/44178.png +../../data/yoloGtold1/train/44179.png +../../data/yoloGtold1/train/44180.png +../../data/yoloGtold1/train/44181.png +../../data/yoloGtold1/train/44182.png +../../data/yoloGtold1/train/44183.png +../../data/yoloGtold1/train/44184.png +../../data/yoloGtold1/train/44185.png +../../data/yoloGtold1/train/44186.png +../../data/yoloGtold1/train/44187.png +../../data/yoloGtold1/train/44188.png +../../data/yoloGtold1/train/44189.png +../../data/yoloGtold1/train/44190.png +../../data/yoloGtold1/train/44191.png +../../data/yoloGtold1/train/44192.png +../../data/yoloGtold1/train/44193.png +../../data/yoloGtold1/train/44194.png +../../data/yoloGtold1/train/44195.png +../../data/yoloGtold1/train/44196.png +../../data/yoloGtold1/train/44197.png +../../data/yoloGtold1/train/44198.png +../../data/yoloGtold1/train/44199.png +../../data/yoloGtold1/train/44200.png +../../data/yoloGtold1/train/44201.png +../../data/yoloGtold1/train/44202.png +../../data/yoloGtold1/train/44203.png +../../data/yoloGtold1/train/44204.png +../../data/yoloGtold1/train/44205.png +../../data/yoloGtold1/train/44206.png +../../data/yoloGtold1/train/44207.png +../../data/yoloGtold1/train/44208.png +../../data/yoloGtold1/train/44209.png +../../data/yoloGtold1/train/44210.png +../../data/yoloGtold1/train/44211.png +../../data/yoloGtold1/train/44212.png +../../data/yoloGtold1/train/44213.png +../../data/yoloGtold1/train/44214.png +../../data/yoloGtold1/train/44215.png +../../data/yoloGtold1/train/44216.png +../../data/yoloGtold1/train/44217.png +../../data/yoloGtold1/train/44218.png +../../data/yoloGtold1/train/44219.png +../../data/yoloGtold1/train/44220.png +../../data/yoloGtold1/train/44221.png +../../data/yoloGtold1/train/44222.png +../../data/yoloGtold1/train/44223.png +../../data/yoloGtold1/train/44224.png +../../data/yoloGtold1/train/44225.png +../../data/yoloGtold1/train/44226.png +../../data/yoloGtold1/train/44227.png +../../data/yoloGtold1/train/44228.png +../../data/yoloGtold1/train/44229.png +../../data/yoloGtold1/train/44230.png +../../data/yoloGtold1/train/44231.png +../../data/yoloGtold1/train/44232.png +../../data/yoloGtold1/train/44233.png +../../data/yoloGtold1/train/44234.png +../../data/yoloGtold1/train/44235.png +../../data/yoloGtold1/train/44236.png +../../data/yoloGtold1/train/44237.png +../../data/yoloGtold1/train/44238.png +../../data/yoloGtold1/train/44239.png +../../data/yoloGtold1/train/44240.png +../../data/yoloGtold1/train/44241.png +../../data/yoloGtold1/train/44242.png +../../data/yoloGtold1/train/44243.png +../../data/yoloGtold1/train/44244.png +../../data/yoloGtold1/train/44245.png +../../data/yoloGtold1/train/44246.png +../../data/yoloGtold1/train/44247.png +../../data/yoloGtold1/train/44248.png +../../data/yoloGtold1/train/44249.png +../../data/yoloGtold1/train/44250.png +../../data/yoloGtold1/train/44251.png +../../data/yoloGtold1/train/44252.png +../../data/yoloGtold1/train/44253.png +../../data/yoloGtold1/train/44254.png +../../data/yoloGtold1/train/44255.png +../../data/yoloGtold1/train/44256.png +../../data/yoloGtold1/train/44257.png +../../data/yoloGtold1/train/44258.png +../../data/yoloGtold1/train/44259.png +../../data/yoloGtold1/train/44260.png +../../data/yoloGtold1/train/44261.png +../../data/yoloGtold1/train/44262.png +../../data/yoloGtold1/train/44263.png +../../data/yoloGtold1/train/44264.png +../../data/yoloGtold1/train/44265.png +../../data/yoloGtold1/train/44266.png +../../data/yoloGtold1/train/44267.png +../../data/yoloGtold1/train/44268.png +../../data/yoloGtold1/train/44269.png +../../data/yoloGtold1/train/44270.png +../../data/yoloGtold1/train/44271.png +../../data/yoloGtold1/train/44272.png +../../data/yoloGtold1/train/44273.png +../../data/yoloGtold1/train/44274.png +../../data/yoloGtold1/train/44275.png +../../data/yoloGtold1/train/44276.png +../../data/yoloGtold1/train/44277.png +../../data/yoloGtold1/train/44278.png +../../data/yoloGtold1/train/44279.png +../../data/yoloGtold1/train/44280.png +../../data/yoloGtold1/train/44281.png +../../data/yoloGtold1/train/44282.png +../../data/yoloGtold1/train/44283.png +../../data/yoloGtold1/train/44284.png +../../data/yoloGtold1/train/44285.png +../../data/yoloGtold1/train/44286.png +../../data/yoloGtold1/train/44287.png +../../data/yoloGtold1/train/44288.png +../../data/yoloGtold1/train/44289.png +../../data/yoloGtold1/train/44290.png +../../data/yoloGtold1/train/44291.png +../../data/yoloGtold1/train/44292.png +../../data/yoloGtold1/train/44293.png +../../data/yoloGtold1/train/44294.png +../../data/yoloGtold1/train/44295.png +../../data/yoloGtold1/train/44296.png +../../data/yoloGtold1/train/44297.png +../../data/yoloGtold1/train/44298.png +../../data/yoloGtold1/train/44299.png +../../data/yoloGtold1/train/44300.png +../../data/yoloGtold1/train/44301.png +../../data/yoloGtold1/train/44302.png +../../data/yoloGtold1/train/44303.png +../../data/yoloGtold1/train/44304.png +../../data/yoloGtold1/train/44305.png +../../data/yoloGtold1/train/44306.png +../../data/yoloGtold1/train/44307.png +../../data/yoloGtold1/train/44308.png +../../data/yoloGtold1/train/44309.png +../../data/yoloGtold1/train/44310.png +../../data/yoloGtold1/train/44311.png +../../data/yoloGtold1/train/44312.png +../../data/yoloGtold1/train/44313.png +../../data/yoloGtold1/train/44314.png +../../data/yoloGtold1/train/44315.png +../../data/yoloGtold1/train/44316.png +../../data/yoloGtold1/train/44317.png +../../data/yoloGtold1/train/44318.png +../../data/yoloGtold1/train/44319.png +../../data/yoloGtold1/train/44320.png +../../data/yoloGtold1/train/44321.png +../../data/yoloGtold1/train/44322.png +../../data/yoloGtold1/train/44323.png +../../data/yoloGtold1/train/44324.png +../../data/yoloGtold1/train/44325.png +../../data/yoloGtold1/train/44326.png +../../data/yoloGtold1/train/44327.png +../../data/yoloGtold1/train/44328.png +../../data/yoloGtold1/train/44329.png +../../data/yoloGtold1/train/44330.png +../../data/yoloGtold1/train/44331.png +../../data/yoloGtold1/train/44332.png +../../data/yoloGtold1/train/44333.png +../../data/yoloGtold1/train/44334.png +../../data/yoloGtold1/train/44335.png +../../data/yoloGtold1/train/44336.png +../../data/yoloGtold1/train/44337.png +../../data/yoloGtold1/train/44338.png +../../data/yoloGtold1/train/44339.png +../../data/yoloGtold1/train/44340.png +../../data/yoloGtold1/train/44341.png +../../data/yoloGtold1/train/44342.png +../../data/yoloGtold1/train/44343.png +../../data/yoloGtold1/train/44344.png +../../data/yoloGtold1/train/44345.png +../../data/yoloGtold1/train/44346.png +../../data/yoloGtold1/train/44347.png +../../data/yoloGtold1/train/44348.png +../../data/yoloGtold1/train/44349.png +../../data/yoloGtold1/train/44350.png +../../data/yoloGtold1/train/44351.png +../../data/yoloGtold1/train/44352.png +../../data/yoloGtold1/train/44353.png +../../data/yoloGtold1/train/44354.png +../../data/yoloGtold1/train/44355.png +../../data/yoloGtold1/train/44356.png +../../data/yoloGtold1/train/44357.png +../../data/yoloGtold1/train/44358.png +../../data/yoloGtold1/train/44359.png +../../data/yoloGtold1/train/44360.png +../../data/yoloGtold1/train/44361.png +../../data/yoloGtold1/train/44362.png +../../data/yoloGtold1/train/44363.png +../../data/yoloGtold1/train/44364.png +../../data/yoloGtold1/train/44365.png +../../data/yoloGtold1/train/44366.png +../../data/yoloGtold1/train/44367.png +../../data/yoloGtold1/train/44368.png +../../data/yoloGtold1/train/44369.png +../../data/yoloGtold1/train/44370.png +../../data/yoloGtold1/train/44371.png +../../data/yoloGtold1/train/44372.png +../../data/yoloGtold1/train/44373.png +../../data/yoloGtold1/train/44374.png +../../data/yoloGtold1/train/44375.png +../../data/yoloGtold1/train/44376.png +../../data/yoloGtold1/train/44377.png +../../data/yoloGtold1/train/44378.png +../../data/yoloGtold1/train/44379.png +../../data/yoloGtold1/train/44380.png +../../data/yoloGtold1/train/44381.png +../../data/yoloGtold1/train/44382.png +../../data/yoloGtold1/train/44383.png +../../data/yoloGtold1/train/44384.png +../../data/yoloGtold1/train/44385.png +../../data/yoloGtold1/train/44386.png +../../data/yoloGtold1/train/44387.png +../../data/yoloGtold1/train/44388.png +../../data/yoloGtold1/train/44389.png +../../data/yoloGtold1/train/44390.png +../../data/yoloGtold1/train/44391.png +../../data/yoloGtold1/train/44392.png +../../data/yoloGtold1/train/44393.png +../../data/yoloGtold1/train/44394.png +../../data/yoloGtold1/train/44395.png +../../data/yoloGtold1/train/44396.png +../../data/yoloGtold1/train/44397.png +../../data/yoloGtold1/train/44398.png +../../data/yoloGtold1/train/44399.png +../../data/yoloGtold1/train/44400.png +../../data/yoloGtold1/train/44401.png +../../data/yoloGtold1/train/44402.png +../../data/yoloGtold1/train/44403.png +../../data/yoloGtold1/train/44404.png +../../data/yoloGtold1/train/44405.png +../../data/yoloGtold1/train/44406.png +../../data/yoloGtold1/train/44407.png +../../data/yoloGtold1/train/44408.png +../../data/yoloGtold1/train/44409.png +../../data/yoloGtold1/train/44410.png +../../data/yoloGtold1/train/44411.png +../../data/yoloGtold1/train/44412.png +../../data/yoloGtold1/train/44413.png +../../data/yoloGtold1/train/44414.png +../../data/yoloGtold1/train/44415.png +../../data/yoloGtold1/train/44416.png +../../data/yoloGtold1/train/44417.png +../../data/yoloGtold1/train/44418.png +../../data/yoloGtold1/train/44419.png +../../data/yoloGtold1/train/44420.png +../../data/yoloGtold1/train/44421.png +../../data/yoloGtold1/train/44422.png +../../data/yoloGtold1/train/44423.png +../../data/yoloGtold1/train/44424.png +../../data/yoloGtold1/train/44425.png +../../data/yoloGtold1/train/44426.png +../../data/yoloGtold1/train/44427.png +../../data/yoloGtold1/train/44428.png +../../data/yoloGtold1/train/44429.png +../../data/yoloGtold1/train/44430.png +../../data/yoloGtold1/train/44431.png +../../data/yoloGtold1/train/44432.png +../../data/yoloGtold1/train/44433.png +../../data/yoloGtold1/train/44434.png +../../data/yoloGtold1/train/44435.png +../../data/yoloGtold1/train/44436.png +../../data/yoloGtold1/train/44437.png +../../data/yoloGtold1/train/44438.png +../../data/yoloGtold1/train/44439.png +../../data/yoloGtold1/train/44440.png +../../data/yoloGtold1/train/44441.png +../../data/yoloGtold1/train/44442.png +../../data/yoloGtold1/train/44443.png +../../data/yoloGtold1/train/44444.png +../../data/yoloGtold1/train/44445.png +../../data/yoloGtold1/train/44446.png +../../data/yoloGtold1/train/44447.png +../../data/yoloGtold1/train/44448.png +../../data/yoloGtold1/train/44449.png +../../data/yoloGtold1/train/44450.png +../../data/yoloGtold1/train/44451.png +../../data/yoloGtold1/train/44452.png +../../data/yoloGtold1/train/44453.png +../../data/yoloGtold1/train/44454.png +../../data/yoloGtold1/train/44455.png +../../data/yoloGtold1/train/44456.png +../../data/yoloGtold1/train/44457.png +../../data/yoloGtold1/train/44458.png +../../data/yoloGtold1/train/44459.png +../../data/yoloGtold1/train/44460.png +../../data/yoloGtold1/train/44461.png +../../data/yoloGtold1/train/44462.png +../../data/yoloGtold1/train/44463.png +../../data/yoloGtold1/train/44464.png +../../data/yoloGtold1/train/44465.png +../../data/yoloGtold1/train/44466.png +../../data/yoloGtold1/train/44467.png +../../data/yoloGtold1/train/44468.png +../../data/yoloGtold1/train/44469.png +../../data/yoloGtold1/train/44470.png +../../data/yoloGtold1/train/44471.png +../../data/yoloGtold1/train/44472.png +../../data/yoloGtold1/train/44473.png +../../data/yoloGtold1/train/44474.png +../../data/yoloGtold1/train/44475.png +../../data/yoloGtold1/train/44476.png +../../data/yoloGtold1/train/44477.png +../../data/yoloGtold1/train/44478.png +../../data/yoloGtold1/train/44479.png +../../data/yoloGtold1/train/44480.png +../../data/yoloGtold1/train/44481.png +../../data/yoloGtold1/train/44482.png +../../data/yoloGtold1/train/44483.png +../../data/yoloGtold1/train/44484.png +../../data/yoloGtold1/train/44485.png +../../data/yoloGtold1/train/44486.png +../../data/yoloGtold1/train/44487.png +../../data/yoloGtold1/train/44488.png +../../data/yoloGtold1/train/44489.png +../../data/yoloGtold1/train/44490.png +../../data/yoloGtold1/train/44491.png +../../data/yoloGtold1/train/44492.png +../../data/yoloGtold1/train/44493.png +../../data/yoloGtold1/train/44494.png +../../data/yoloGtold1/train/44495.png +../../data/yoloGtold1/train/44496.png +../../data/yoloGtold1/train/44497.png +../../data/yoloGtold1/train/44498.png +../../data/yoloGtold1/train/44499.png +../../data/yoloGtold1/train/44500.png +../../data/yoloGtold1/train/44501.png +../../data/yoloGtold1/train/44502.png +../../data/yoloGtold1/train/44503.png +../../data/yoloGtold1/train/44504.png +../../data/yoloGtold1/train/44505.png +../../data/yoloGtold1/train/44506.png +../../data/yoloGtold1/train/44507.png +../../data/yoloGtold1/train/44508.png +../../data/yoloGtold1/train/44509.png +../../data/yoloGtold1/train/44510.png +../../data/yoloGtold1/train/44511.png +../../data/yoloGtold1/train/44512.png +../../data/yoloGtold1/train/44513.png +../../data/yoloGtold1/train/44514.png +../../data/yoloGtold1/train/44515.png +../../data/yoloGtold1/train/44516.png +../../data/yoloGtold1/train/44517.png +../../data/yoloGtold1/train/44518.png +../../data/yoloGtold1/train/44519.png +../../data/yoloGtold1/train/44520.png +../../data/yoloGtold1/train/44521.png +../../data/yoloGtold1/train/44522.png +../../data/yoloGtold1/train/44523.png +../../data/yoloGtold1/train/44524.png +../../data/yoloGtold1/train/44525.png +../../data/yoloGtold1/train/44526.png +../../data/yoloGtold1/train/44527.png +../../data/yoloGtold1/train/44528.png +../../data/yoloGtold1/train/44529.png +../../data/yoloGtold1/train/44530.png +../../data/yoloGtold1/train/44531.png +../../data/yoloGtold1/train/44532.png +../../data/yoloGtold1/train/44533.png +../../data/yoloGtold1/train/44534.png +../../data/yoloGtold1/train/44535.png +../../data/yoloGtold1/train/44536.png +../../data/yoloGtold1/train/44537.png +../../data/yoloGtold1/train/44538.png +../../data/yoloGtold1/train/44539.png +../../data/yoloGtold1/train/44540.png +../../data/yoloGtold1/train/44541.png +../../data/yoloGtold1/train/44542.png +../../data/yoloGtold1/train/44543.png +../../data/yoloGtold1/train/44544.png +../../data/yoloGtold1/train/44545.png +../../data/yoloGtold1/train/44546.png +../../data/yoloGtold1/train/44547.png +../../data/yoloGtold1/train/44548.png +../../data/yoloGtold1/train/44549.png +../../data/yoloGtold1/train/44550.png +../../data/yoloGtold1/train/44551.png +../../data/yoloGtold1/train/44552.png +../../data/yoloGtold1/train/44553.png +../../data/yoloGtold1/train/44554.png +../../data/yoloGtold1/train/44555.png +../../data/yoloGtold1/train/44556.png +../../data/yoloGtold1/train/44557.png +../../data/yoloGtold1/train/44558.png +../../data/yoloGtold1/train/44559.png +../../data/yoloGtold1/train/44560.png +../../data/yoloGtold1/train/44561.png +../../data/yoloGtold1/train/44562.png +../../data/yoloGtold1/train/44563.png +../../data/yoloGtold1/train/44564.png +../../data/yoloGtold1/train/44565.png +../../data/yoloGtold1/train/44566.png +../../data/yoloGtold1/train/44567.png +../../data/yoloGtold1/train/44568.png +../../data/yoloGtold1/train/44569.png +../../data/yoloGtold1/train/44570.png +../../data/yoloGtold1/train/44571.png +../../data/yoloGtold1/train/44572.png +../../data/yoloGtold1/train/44573.png +../../data/yoloGtold1/train/44574.png +../../data/yoloGtold1/train/44575.png +../../data/yoloGtold1/train/44576.png +../../data/yoloGtold1/train/44577.png +../../data/yoloGtold1/train/44578.png +../../data/yoloGtold1/train/44579.png +../../data/yoloGtold1/train/44580.png +../../data/yoloGtold1/train/44581.png +../../data/yoloGtold1/train/44582.png +../../data/yoloGtold1/train/44583.png +../../data/yoloGtold1/train/44584.png +../../data/yoloGtold1/train/44585.png +../../data/yoloGtold1/train/44586.png +../../data/yoloGtold1/train/44587.png +../../data/yoloGtold1/train/44588.png +../../data/yoloGtold1/train/44589.png +../../data/yoloGtold1/train/44590.png +../../data/yoloGtold1/train/44591.png +../../data/yoloGtold1/train/44592.png +../../data/yoloGtold1/train/44593.png +../../data/yoloGtold1/train/44594.png +../../data/yoloGtold1/train/44595.png +../../data/yoloGtold1/train/44596.png +../../data/yoloGtold1/train/44597.png +../../data/yoloGtold1/train/44598.png +../../data/yoloGtold1/train/44599.png +../../data/yoloGtold1/train/44600.png +../../data/yoloGtold1/train/44601.png +../../data/yoloGtold1/train/44602.png +../../data/yoloGtold1/train/44603.png +../../data/yoloGtold1/train/44604.png +../../data/yoloGtold1/train/44605.png +../../data/yoloGtold1/train/44606.png +../../data/yoloGtold1/train/44607.png +../../data/yoloGtold1/train/44608.png +../../data/yoloGtold1/train/44609.png +../../data/yoloGtold1/train/44610.png +../../data/yoloGtold1/train/44611.png +../../data/yoloGtold1/train/44612.png +../../data/yoloGtold1/train/44613.png +../../data/yoloGtold1/train/44614.png +../../data/yoloGtold1/train/44615.png +../../data/yoloGtold1/train/44616.png +../../data/yoloGtold1/train/44617.png +../../data/yoloGtold1/train/44618.png +../../data/yoloGtold1/train/44619.png +../../data/yoloGtold1/train/44620.png +../../data/yoloGtold1/train/44621.png +../../data/yoloGtold1/train/44622.png +../../data/yoloGtold1/train/44623.png +../../data/yoloGtold1/train/44624.png +../../data/yoloGtold1/train/44625.png +../../data/yoloGtold1/train/44626.png +../../data/yoloGtold1/train/44627.png +../../data/yoloGtold1/train/44628.png +../../data/yoloGtold1/train/44629.png +../../data/yoloGtold1/train/44630.png +../../data/yoloGtold1/train/44631.png +../../data/yoloGtold1/train/44632.png +../../data/yoloGtold1/train/44633.png +../../data/yoloGtold1/train/44634.png +../../data/yoloGtold1/train/44635.png +../../data/yoloGtold1/train/44636.png +../../data/yoloGtold1/train/44637.png +../../data/yoloGtold1/train/44638.png +../../data/yoloGtold1/train/44639.png +../../data/yoloGtold1/train/44640.png +../../data/yoloGtold1/train/44641.png +../../data/yoloGtold1/train/44642.png +../../data/yoloGtold1/train/44643.png +../../data/yoloGtold1/train/44644.png +../../data/yoloGtold1/train/44645.png +../../data/yoloGtold1/train/44646.png +../../data/yoloGtold1/train/44647.png +../../data/yoloGtold1/train/44648.png +../../data/yoloGtold1/train/44649.png +../../data/yoloGtold1/train/44650.png +../../data/yoloGtold1/train/44651.png +../../data/yoloGtold1/train/44652.png +../../data/yoloGtold1/train/44653.png +../../data/yoloGtold1/train/44654.png +../../data/yoloGtold1/train/44655.png +../../data/yoloGtold1/train/44656.png +../../data/yoloGtold1/train/44657.png +../../data/yoloGtold1/train/44658.png +../../data/yoloGtold1/train/44659.png +../../data/yoloGtold1/train/44660.png +../../data/yoloGtold1/train/44661.png +../../data/yoloGtold1/train/44662.png +../../data/yoloGtold1/train/44663.png +../../data/yoloGtold1/train/44664.png +../../data/yoloGtold1/train/44665.png +../../data/yoloGtold1/train/44666.png +../../data/yoloGtold1/train/44667.png +../../data/yoloGtold1/train/44668.png +../../data/yoloGtold1/train/44669.png +../../data/yoloGtold1/train/44670.png +../../data/yoloGtold1/train/44671.png +../../data/yoloGtold1/train/44672.png +../../data/yoloGtold1/train/44673.png +../../data/yoloGtold1/train/44674.png +../../data/yoloGtold1/train/44675.png +../../data/yoloGtold1/train/44676.png +../../data/yoloGtold1/train/44677.png +../../data/yoloGtold1/train/44678.png +../../data/yoloGtold1/train/44679.png +../../data/yoloGtold1/train/44680.png +../../data/yoloGtold1/train/44681.png +../../data/yoloGtold1/train/44682.png +../../data/yoloGtold1/train/44683.png +../../data/yoloGtold1/train/44684.png +../../data/yoloGtold1/train/44685.png +../../data/yoloGtold1/train/44686.png +../../data/yoloGtold1/train/44687.png +../../data/yoloGtold1/train/44688.png +../../data/yoloGtold1/train/44689.png +../../data/yoloGtold1/train/44690.png +../../data/yoloGtold1/train/44691.png +../../data/yoloGtold1/train/44692.png +../../data/yoloGtold1/train/44693.png +../../data/yoloGtold1/train/44694.png +../../data/yoloGtold1/train/44695.png +../../data/yoloGtold1/train/44696.png +../../data/yoloGtold1/train/44697.png +../../data/yoloGtold1/train/44698.png +../../data/yoloGtold1/train/44699.png +../../data/yoloGtold1/train/44700.png +../../data/yoloGtold1/train/44701.png +../../data/yoloGtold1/train/44702.png +../../data/yoloGtold1/train/44703.png +../../data/yoloGtold1/train/44704.png +../../data/yoloGtold1/train/44705.png +../../data/yoloGtold1/train/44706.png +../../data/yoloGtold1/train/44707.png +../../data/yoloGtold1/train/44708.png +../../data/yoloGtold1/train/44709.png +../../data/yoloGtold1/train/44710.png +../../data/yoloGtold1/train/44711.png +../../data/yoloGtold1/train/44712.png +../../data/yoloGtold1/train/44713.png +../../data/yoloGtold1/train/44714.png +../../data/yoloGtold1/train/44715.png +../../data/yoloGtold1/train/44716.png +../../data/yoloGtold1/train/44717.png +../../data/yoloGtold1/train/44718.png +../../data/yoloGtold1/train/44719.png +../../data/yoloGtold1/train/44720.png +../../data/yoloGtold1/train/44721.png +../../data/yoloGtold1/train/44722.png +../../data/yoloGtold1/train/44723.png +../../data/yoloGtold1/train/44724.png +../../data/yoloGtold1/train/44725.png +../../data/yoloGtold1/train/44726.png +../../data/yoloGtold1/train/44727.png +../../data/yoloGtold1/train/44728.png +../../data/yoloGtold1/train/44729.png +../../data/yoloGtold1/train/44730.png +../../data/yoloGtold1/train/44731.png +../../data/yoloGtold1/train/44732.png +../../data/yoloGtold1/train/44733.png +../../data/yoloGtold1/train/44734.png +../../data/yoloGtold1/train/44735.png +../../data/yoloGtold1/train/44736.png +../../data/yoloGtold1/train/44737.png +../../data/yoloGtold1/train/44738.png +../../data/yoloGtold1/train/44739.png +../../data/yoloGtold1/train/44740.png +../../data/yoloGtold1/train/44741.png +../../data/yoloGtold1/train/44742.png +../../data/yoloGtold1/train/44743.png +../../data/yoloGtold1/train/44744.png +../../data/yoloGtold1/train/44745.png +../../data/yoloGtold1/train/44746.png +../../data/yoloGtold1/train/44747.png +../../data/yoloGtold1/train/44748.png +../../data/yoloGtold1/train/44749.png +../../data/yoloGtold1/train/44750.png +../../data/yoloGtold1/train/44751.png +../../data/yoloGtold1/train/44752.png +../../data/yoloGtold1/train/44753.png +../../data/yoloGtold1/train/44754.png +../../data/yoloGtold1/train/44755.png +../../data/yoloGtold1/train/44756.png +../../data/yoloGtold1/train/44757.png +../../data/yoloGtold1/train/44758.png +../../data/yoloGtold1/train/44759.png +../../data/yoloGtold1/train/44760.png +../../data/yoloGtold1/train/44761.png +../../data/yoloGtold1/train/44762.png +../../data/yoloGtold1/train/44763.png +../../data/yoloGtold1/train/44764.png +../../data/yoloGtold1/train/44765.png +../../data/yoloGtold1/train/44766.png +../../data/yoloGtold1/train/44767.png +../../data/yoloGtold1/train/44768.png +../../data/yoloGtold1/train/44769.png +../../data/yoloGtold1/train/44770.png +../../data/yoloGtold1/train/44771.png +../../data/yoloGtold1/train/44772.png +../../data/yoloGtold1/train/44773.png +../../data/yoloGtold1/train/44774.png +../../data/yoloGtold1/train/44775.png +../../data/yoloGtold1/train/44776.png +../../data/yoloGtold1/train/44777.png +../../data/yoloGtold1/train/44778.png +../../data/yoloGtold1/train/44779.png +../../data/yoloGtold1/train/44780.png +../../data/yoloGtold1/train/44781.png +../../data/yoloGtold1/train/44782.png +../../data/yoloGtold1/train/44783.png +../../data/yoloGtold1/train/44784.png +../../data/yoloGtold1/train/44785.png +../../data/yoloGtold1/train/44786.png +../../data/yoloGtold1/train/44787.png +../../data/yoloGtold1/train/44788.png +../../data/yoloGtold1/train/44789.png +../../data/yoloGtold1/train/44790.png +../../data/yoloGtold1/train/44791.png +../../data/yoloGtold1/train/44792.png +../../data/yoloGtold1/train/44793.png +../../data/yoloGtold1/train/44794.png +../../data/yoloGtold1/train/44795.png +../../data/yoloGtold1/train/44796.png +../../data/yoloGtold1/train/44797.png +../../data/yoloGtold1/train/44798.png +../../data/yoloGtold1/train/44799.png +../../data/yoloGtold1/train/44800.png +../../data/yoloGtold1/train/44801.png +../../data/yoloGtold1/train/44802.png +../../data/yoloGtold1/train/44803.png +../../data/yoloGtold1/train/44804.png +../../data/yoloGtold1/train/44805.png +../../data/yoloGtold1/train/44806.png +../../data/yoloGtold1/train/44807.png +../../data/yoloGtold1/train/44808.png +../../data/yoloGtold1/train/44809.png +../../data/yoloGtold1/train/44810.png +../../data/yoloGtold1/train/44811.png +../../data/yoloGtold1/train/44812.png +../../data/yoloGtold1/train/44813.png +../../data/yoloGtold1/train/44814.png +../../data/yoloGtold1/train/44815.png +../../data/yoloGtold1/train/44816.png +../../data/yoloGtold1/train/44817.png +../../data/yoloGtold1/train/44818.png +../../data/yoloGtold1/train/44819.png +../../data/yoloGtold1/train/44820.png +../../data/yoloGtold1/train/44821.png +../../data/yoloGtold1/train/44822.png +../../data/yoloGtold1/train/44823.png +../../data/yoloGtold1/train/44824.png +../../data/yoloGtold1/train/44825.png +../../data/yoloGtold1/train/44826.png +../../data/yoloGtold1/train/44827.png +../../data/yoloGtold1/train/44828.png +../../data/yoloGtold1/train/44829.png +../../data/yoloGtold1/train/44830.png +../../data/yoloGtold1/train/44831.png +../../data/yoloGtold1/train/44832.png +../../data/yoloGtold1/train/44833.png +../../data/yoloGtold1/train/44834.png +../../data/yoloGtold1/train/44835.png +../../data/yoloGtold1/train/44836.png +../../data/yoloGtold1/train/44837.png +../../data/yoloGtold1/train/44838.png +../../data/yoloGtold1/train/44839.png +../../data/yoloGtold1/train/44840.png +../../data/yoloGtold1/train/44841.png +../../data/yoloGtold1/train/44842.png +../../data/yoloGtold1/train/44843.png +../../data/yoloGtold1/train/44844.png +../../data/yoloGtold1/train/44845.png +../../data/yoloGtold1/train/44846.png +../../data/yoloGtold1/train/44847.png +../../data/yoloGtold1/train/44848.png +../../data/yoloGtold1/train/44849.png +../../data/yoloGtold1/train/44850.png +../../data/yoloGtold1/train/44851.png +../../data/yoloGtold1/train/44852.png +../../data/yoloGtold1/train/44853.png +../../data/yoloGtold1/train/44854.png +../../data/yoloGtold1/train/44855.png +../../data/yoloGtold1/train/44856.png +../../data/yoloGtold1/train/44857.png +../../data/yoloGtold1/train/44858.png +../../data/yoloGtold1/train/44859.png +../../data/yoloGtold1/train/44860.png +../../data/yoloGtold1/train/44861.png +../../data/yoloGtold1/train/44862.png +../../data/yoloGtold1/train/44863.png +../../data/yoloGtold1/train/44864.png +../../data/yoloGtold1/train/44865.png +../../data/yoloGtold1/train/44866.png +../../data/yoloGtold1/train/44867.png +../../data/yoloGtold1/train/44868.png +../../data/yoloGtold1/train/44869.png +../../data/yoloGtold1/train/44870.png +../../data/yoloGtold1/train/44871.png +../../data/yoloGtold1/train/44872.png +../../data/yoloGtold1/train/44873.png +../../data/yoloGtold1/train/44874.png +../../data/yoloGtold1/train/44875.png +../../data/yoloGtold1/train/44876.png +../../data/yoloGtold1/train/44877.png +../../data/yoloGtold1/train/44878.png +../../data/yoloGtold1/train/44879.png +../../data/yoloGtold1/train/44880.png +../../data/yoloGtold1/train/44881.png +../../data/yoloGtold1/train/44882.png +../../data/yoloGtold1/train/44883.png +../../data/yoloGtold1/train/44884.png +../../data/yoloGtold1/train/44885.png +../../data/yoloGtold1/train/44886.png +../../data/yoloGtold1/train/44887.png +../../data/yoloGtold1/train/44888.png +../../data/yoloGtold1/train/44889.png +../../data/yoloGtold1/train/44890.png +../../data/yoloGtold1/train/44891.png +../../data/yoloGtold1/train/44892.png +../../data/yoloGtold1/train/44893.png +../../data/yoloGtold1/train/44894.png +../../data/yoloGtold1/train/44895.png +../../data/yoloGtold1/train/44896.png +../../data/yoloGtold1/train/44897.png +../../data/yoloGtold1/train/44898.png +../../data/yoloGtold1/train/44899.png +../../data/yoloGtold1/train/44900.png +../../data/yoloGtold1/train/44901.png +../../data/yoloGtold1/train/44902.png +../../data/yoloGtold1/train/44903.png +../../data/yoloGtold1/train/44904.png +../../data/yoloGtold1/train/44905.png +../../data/yoloGtold1/train/44906.png +../../data/yoloGtold1/train/44907.png +../../data/yoloGtold1/train/44908.png +../../data/yoloGtold1/train/44909.png +../../data/yoloGtold1/train/44910.png +../../data/yoloGtold1/train/44911.png +../../data/yoloGtold1/train/44912.png +../../data/yoloGtold1/train/44913.png +../../data/yoloGtold1/train/44914.png +../../data/yoloGtold1/train/44915.png +../../data/yoloGtold1/train/44916.png +../../data/yoloGtold1/train/44917.png +../../data/yoloGtold1/train/44918.png +../../data/yoloGtold1/train/44919.png +../../data/yoloGtold1/train/44920.png +../../data/yoloGtold1/train/44921.png +../../data/yoloGtold1/train/44922.png +../../data/yoloGtold1/train/44923.png +../../data/yoloGtold1/train/44924.png +../../data/yoloGtold1/train/44925.png +../../data/yoloGtold1/train/44926.png +../../data/yoloGtold1/train/44927.png +../../data/yoloGtold1/train/44928.png +../../data/yoloGtold1/train/44929.png +../../data/yoloGtold1/train/44930.png +../../data/yoloGtold1/train/44931.png +../../data/yoloGtold1/train/44932.png +../../data/yoloGtold1/train/44933.png +../../data/yoloGtold1/train/44934.png +../../data/yoloGtold1/train/44935.png +../../data/yoloGtold1/train/44936.png +../../data/yoloGtold1/train/44937.png +../../data/yoloGtold1/train/44938.png +../../data/yoloGtold1/train/44939.png +../../data/yoloGtold1/train/44940.png +../../data/yoloGtold1/train/44941.png +../../data/yoloGtold1/train/44942.png +../../data/yoloGtold1/train/44943.png +../../data/yoloGtold1/train/44944.png +../../data/yoloGtold1/train/44945.png +../../data/yoloGtold1/train/44946.png +../../data/yoloGtold1/train/44947.png +../../data/yoloGtold1/train/44948.png +../../data/yoloGtold1/train/44949.png +../../data/yoloGtold1/train/44950.png +../../data/yoloGtold1/train/44951.png +../../data/yoloGtold1/train/44952.png +../../data/yoloGtold1/train/44953.png +../../data/yoloGtold1/train/44954.png +../../data/yoloGtold1/train/44955.png +../../data/yoloGtold1/train/44956.png +../../data/yoloGtold1/train/44957.png +../../data/yoloGtold1/train/44958.png +../../data/yoloGtold1/train/44959.png +../../data/yoloGtold1/train/44960.png +../../data/yoloGtold1/train/44961.png +../../data/yoloGtold1/train/44962.png +../../data/yoloGtold1/train/44963.png +../../data/yoloGtold1/train/44964.png +../../data/yoloGtold1/train/44965.png +../../data/yoloGtold1/train/44966.png +../../data/yoloGtold1/train/44967.png +../../data/yoloGtold1/train/44968.png +../../data/yoloGtold1/train/44969.png +../../data/yoloGtold1/train/44970.png +../../data/yoloGtold1/train/44971.png +../../data/yoloGtold1/train/44972.png +../../data/yoloGtold1/train/44973.png +../../data/yoloGtold1/train/44974.png +../../data/yoloGtold1/train/44975.png +../../data/yoloGtold1/train/44976.png +../../data/yoloGtold1/train/44977.png +../../data/yoloGtold1/train/44978.png +../../data/yoloGtold1/train/44979.png +../../data/yoloGtold1/train/44980.png +../../data/yoloGtold1/train/44981.png +../../data/yoloGtold1/train/44982.png +../../data/yoloGtold1/train/44983.png +../../data/yoloGtold1/train/44984.png +../../data/yoloGtold1/train/44985.png +../../data/yoloGtold1/train/44986.png +../../data/yoloGtold1/train/44987.png +../../data/yoloGtold1/train/44988.png +../../data/yoloGtold1/train/44989.png +../../data/yoloGtold1/train/44990.png +../../data/yoloGtold1/train/44991.png +../../data/yoloGtold1/train/44992.png +../../data/yoloGtold1/train/44993.png +../../data/yoloGtold1/train/44994.png +../../data/yoloGtold1/train/44995.png +../../data/yoloGtold1/train/44996.png +../../data/yoloGtold1/train/44997.png +../../data/yoloGtold1/train/44998.png +../../data/yoloGtold1/train/44999.png +../../data/yoloGtold1/train/45000.png +../../data/yoloGtold1/train/45001.png +../../data/yoloGtold1/train/45002.png +../../data/yoloGtold1/train/45003.png +../../data/yoloGtold1/train/45004.png +../../data/yoloGtold1/train/45005.png +../../data/yoloGtold1/train/45006.png +../../data/yoloGtold1/train/45007.png +../../data/yoloGtold1/train/45008.png +../../data/yoloGtold1/train/45009.png +../../data/yoloGtold1/train/45010.png +../../data/yoloGtold1/train/45011.png +../../data/yoloGtold1/train/45012.png +../../data/yoloGtold1/train/45013.png +../../data/yoloGtold1/train/45014.png +../../data/yoloGtold1/train/45015.png +../../data/yoloGtold1/train/45016.png +../../data/yoloGtold1/train/45017.png +../../data/yoloGtold1/train/45018.png +../../data/yoloGtold1/train/45019.png +../../data/yoloGtold1/train/45020.png +../../data/yoloGtold1/train/45021.png +../../data/yoloGtold1/train/45022.png +../../data/yoloGtold1/train/45023.png +../../data/yoloGtold1/train/45024.png +../../data/yoloGtold1/train/45025.png +../../data/yoloGtold1/train/45026.png +../../data/yoloGtold1/train/45027.png +../../data/yoloGtold1/train/45028.png +../../data/yoloGtold1/train/45029.png +../../data/yoloGtold1/train/45030.png +../../data/yoloGtold1/train/45031.png +../../data/yoloGtold1/train/45032.png +../../data/yoloGtold1/train/45033.png +../../data/yoloGtold1/train/45034.png +../../data/yoloGtold1/train/45035.png +../../data/yoloGtold1/train/45036.png +../../data/yoloGtold1/train/45037.png +../../data/yoloGtold1/train/45038.png +../../data/yoloGtold1/train/45039.png +../../data/yoloGtold1/train/45040.png +../../data/yoloGtold1/train/45041.png +../../data/yoloGtold1/train/45042.png +../../data/yoloGtold1/train/45043.png +../../data/yoloGtold1/train/45044.png +../../data/yoloGtold1/train/45045.png +../../data/yoloGtold1/train/45046.png +../../data/yoloGtold1/train/45047.png +../../data/yoloGtold1/train/45048.png +../../data/yoloGtold1/train/45049.png +../../data/yoloGtold1/train/45050.png +../../data/yoloGtold1/train/45051.png +../../data/yoloGtold1/train/45052.png +../../data/yoloGtold1/train/45053.png +../../data/yoloGtold1/train/45054.png +../../data/yoloGtold1/train/45055.png +../../data/yoloGtold1/train/45056.png +../../data/yoloGtold1/train/45057.png +../../data/yoloGtold1/train/45058.png +../../data/yoloGtold1/train/45059.png +../../data/yoloGtold1/train/45060.png +../../data/yoloGtold1/train/45061.png +../../data/yoloGtold1/train/45062.png +../../data/yoloGtold1/train/45063.png +../../data/yoloGtold1/train/45064.png +../../data/yoloGtold1/train/45065.png +../../data/yoloGtold1/train/45066.png +../../data/yoloGtold1/train/45067.png +../../data/yoloGtold1/train/45068.png +../../data/yoloGtold1/train/45069.png +../../data/yoloGtold1/train/45070.png +../../data/yoloGtold1/train/45071.png +../../data/yoloGtold1/train/45072.png +../../data/yoloGtold1/train/45073.png +../../data/yoloGtold1/train/45074.png +../../data/yoloGtold1/train/45075.png +../../data/yoloGtold1/train/45076.png +../../data/yoloGtold1/train/45077.png +../../data/yoloGtold1/train/45078.png +../../data/yoloGtold1/train/45079.png +../../data/yoloGtold1/train/45080.png +../../data/yoloGtold1/train/45081.png +../../data/yoloGtold1/train/45082.png +../../data/yoloGtold1/train/45083.png +../../data/yoloGtold1/train/45084.png +../../data/yoloGtold1/train/45085.png +../../data/yoloGtold1/train/45086.png +../../data/yoloGtold1/train/45087.png +../../data/yoloGtold1/train/45088.png +../../data/yoloGtold1/train/45089.png +../../data/yoloGtold1/train/45090.png +../../data/yoloGtold1/train/45091.png +../../data/yoloGtold1/train/45092.png +../../data/yoloGtold1/train/45093.png +../../data/yoloGtold1/train/45094.png +../../data/yoloGtold1/train/45095.png +../../data/yoloGtold1/train/45096.png +../../data/yoloGtold1/train/45097.png +../../data/yoloGtold1/train/45098.png +../../data/yoloGtold1/train/45099.png +../../data/yoloGtold1/train/45100.png +../../data/yoloGtold1/train/45101.png +../../data/yoloGtold1/train/45102.png +../../data/yoloGtold1/train/45103.png +../../data/yoloGtold1/train/45104.png +../../data/yoloGtold1/train/45105.png +../../data/yoloGtold1/train/45106.png +../../data/yoloGtold1/train/45107.png +../../data/yoloGtold1/train/45108.png +../../data/yoloGtold1/train/45109.png +../../data/yoloGtold1/train/45110.png +../../data/yoloGtold1/train/45111.png +../../data/yoloGtold1/train/45112.png +../../data/yoloGtold1/train/45113.png +../../data/yoloGtold1/train/45114.png +../../data/yoloGtold1/train/45115.png +../../data/yoloGtold1/train/45116.png +../../data/yoloGtold1/train/45117.png +../../data/yoloGtold1/train/45118.png +../../data/yoloGtold1/train/45119.png +../../data/yoloGtold1/train/45120.png +../../data/yoloGtold1/train/45121.png +../../data/yoloGtold1/train/45122.png +../../data/yoloGtold1/train/45123.png +../../data/yoloGtold1/train/45124.png +../../data/yoloGtold1/train/45125.png +../../data/yoloGtold1/train/45126.png +../../data/yoloGtold1/train/45127.png +../../data/yoloGtold1/train/45128.png +../../data/yoloGtold1/train/45129.png +../../data/yoloGtold1/train/45130.png +../../data/yoloGtold1/train/45131.png +../../data/yoloGtold1/train/45132.png +../../data/yoloGtold1/train/45133.png +../../data/yoloGtold1/train/45134.png +../../data/yoloGtold1/train/45135.png +../../data/yoloGtold1/train/45136.png +../../data/yoloGtold1/train/45137.png +../../data/yoloGtold1/train/45138.png +../../data/yoloGtold1/train/45139.png +../../data/yoloGtold1/train/45140.png +../../data/yoloGtold1/train/45141.png +../../data/yoloGtold1/train/45142.png +../../data/yoloGtold1/train/45143.png +../../data/yoloGtold1/train/45144.png +../../data/yoloGtold1/train/45145.png +../../data/yoloGtold1/train/45146.png +../../data/yoloGtold1/train/45147.png +../../data/yoloGtold1/train/45148.png +../../data/yoloGtold1/train/45149.png +../../data/yoloGtold1/train/45150.png +../../data/yoloGtold1/train/45151.png +../../data/yoloGtold1/train/45152.png +../../data/yoloGtold1/train/45153.png +../../data/yoloGtold1/train/45154.png +../../data/yoloGtold1/train/45155.png +../../data/yoloGtold1/train/45156.png +../../data/yoloGtold1/train/45157.png +../../data/yoloGtold1/train/45158.png +../../data/yoloGtold1/train/45159.png +../../data/yoloGtold1/train/45160.png +../../data/yoloGtold1/train/45161.png +../../data/yoloGtold1/train/45162.png +../../data/yoloGtold1/train/45163.png +../../data/yoloGtold1/train/45164.png +../../data/yoloGtold1/train/45165.png +../../data/yoloGtold1/train/45166.png +../../data/yoloGtold1/train/45167.png +../../data/yoloGtold1/train/45168.png +../../data/yoloGtold1/train/45169.png +../../data/yoloGtold1/train/45170.png +../../data/yoloGtold1/train/45171.png +../../data/yoloGtold1/train/45172.png +../../data/yoloGtold1/train/45173.png +../../data/yoloGtold1/train/45174.png +../../data/yoloGtold1/train/45175.png +../../data/yoloGtold1/train/45176.png +../../data/yoloGtold1/train/45177.png +../../data/yoloGtold1/train/45178.png +../../data/yoloGtold1/train/45179.png +../../data/yoloGtold1/train/45180.png +../../data/yoloGtold1/train/45181.png +../../data/yoloGtold1/train/45182.png +../../data/yoloGtold1/train/45183.png +../../data/yoloGtold1/train/45184.png +../../data/yoloGtold1/train/45185.png +../../data/yoloGtold1/train/45186.png +../../data/yoloGtold1/train/45187.png +../../data/yoloGtold1/train/45188.png +../../data/yoloGtold1/train/45189.png +../../data/yoloGtold1/train/45190.png +../../data/yoloGtold1/train/45191.png +../../data/yoloGtold1/train/45192.png +../../data/yoloGtold1/train/45193.png +../../data/yoloGtold1/train/45194.png +../../data/yoloGtold1/train/45195.png +../../data/yoloGtold1/train/45196.png +../../data/yoloGtold1/train/45197.png +../../data/yoloGtold1/train/45198.png +../../data/yoloGtold1/train/45199.png +../../data/yoloGtold1/train/45200.png +../../data/yoloGtold1/train/45201.png +../../data/yoloGtold1/train/45202.png +../../data/yoloGtold1/train/45203.png +../../data/yoloGtold1/train/45204.png +../../data/yoloGtold1/train/45205.png +../../data/yoloGtold1/train/45206.png +../../data/yoloGtold1/train/45207.png +../../data/yoloGtold1/train/45208.png +../../data/yoloGtold1/train/45209.png +../../data/yoloGtold1/train/45210.png +../../data/yoloGtold1/train/45211.png +../../data/yoloGtold1/train/45212.png +../../data/yoloGtold1/train/45213.png +../../data/yoloGtold1/train/45214.png +../../data/yoloGtold1/train/45215.png +../../data/yoloGtold1/train/45216.png +../../data/yoloGtold1/train/45217.png +../../data/yoloGtold1/train/45218.png +../../data/yoloGtold1/train/45219.png +../../data/yoloGtold1/train/45220.png +../../data/yoloGtold1/train/45221.png +../../data/yoloGtold1/train/45222.png +../../data/yoloGtold1/train/45223.png +../../data/yoloGtold1/train/45224.png +../../data/yoloGtold1/train/45225.png +../../data/yoloGtold1/train/45226.png +../../data/yoloGtold1/train/45227.png +../../data/yoloGtold1/train/45228.png +../../data/yoloGtold1/train/45229.png +../../data/yoloGtold1/train/45230.png +../../data/yoloGtold1/train/45231.png +../../data/yoloGtold1/train/45232.png +../../data/yoloGtold1/train/45233.png +../../data/yoloGtold1/train/45234.png +../../data/yoloGtold1/train/45235.png +../../data/yoloGtold1/train/45236.png +../../data/yoloGtold1/train/45237.png +../../data/yoloGtold1/train/45238.png +../../data/yoloGtold1/train/45239.png +../../data/yoloGtold1/train/45240.png +../../data/yoloGtold1/train/45241.png +../../data/yoloGtold1/train/45242.png +../../data/yoloGtold1/train/45243.png +../../data/yoloGtold1/train/45244.png +../../data/yoloGtold1/train/45245.png +../../data/yoloGtold1/train/45246.png +../../data/yoloGtold1/train/45247.png +../../data/yoloGtold1/train/45248.png +../../data/yoloGtold1/train/45249.png +../../data/yoloGtold1/train/45250.png +../../data/yoloGtold1/train/45251.png +../../data/yoloGtold1/train/45252.png +../../data/yoloGtold1/train/45253.png +../../data/yoloGtold1/train/45254.png +../../data/yoloGtold1/train/45255.png +../../data/yoloGtold1/train/45256.png +../../data/yoloGtold1/train/45257.png +../../data/yoloGtold1/train/45258.png +../../data/yoloGtold1/train/45259.png +../../data/yoloGtold1/train/45260.png +../../data/yoloGtold1/train/45261.png +../../data/yoloGtold1/train/45262.png +../../data/yoloGtold1/train/45263.png +../../data/yoloGtold1/train/45264.png +../../data/yoloGtold1/train/45265.png +../../data/yoloGtold1/train/45266.png +../../data/yoloGtold1/train/45267.png +../../data/yoloGtold1/train/45268.png +../../data/yoloGtold1/train/45269.png +../../data/yoloGtold1/train/45270.png +../../data/yoloGtold1/train/45271.png +../../data/yoloGtold1/train/45272.png +../../data/yoloGtold1/train/45273.png +../../data/yoloGtold1/train/45274.png +../../data/yoloGtold1/train/45275.png +../../data/yoloGtold1/train/45276.png +../../data/yoloGtold1/train/45277.png +../../data/yoloGtold1/train/45278.png +../../data/yoloGtold1/train/45279.png +../../data/yoloGtold1/train/45280.png +../../data/yoloGtold1/train/45281.png +../../data/yoloGtold1/train/45282.png +../../data/yoloGtold1/train/45283.png +../../data/yoloGtold1/train/45284.png +../../data/yoloGtold1/train/45285.png +../../data/yoloGtold1/train/45286.png +../../data/yoloGtold1/train/45287.png +../../data/yoloGtold1/train/45288.png +../../data/yoloGtold1/train/45289.png +../../data/yoloGtold1/train/45290.png +../../data/yoloGtold1/train/45291.png +../../data/yoloGtold1/train/45292.png +../../data/yoloGtold1/train/45293.png +../../data/yoloGtold1/train/45294.png +../../data/yoloGtold1/train/45295.png +../../data/yoloGtold1/train/45296.png +../../data/yoloGtold1/train/45297.png +../../data/yoloGtold1/train/45298.png +../../data/yoloGtold1/train/45299.png +../../data/yoloGtold1/train/45300.png +../../data/yoloGtold1/train/45301.png +../../data/yoloGtold1/train/45302.png +../../data/yoloGtold1/train/45303.png +../../data/yoloGtold1/train/45304.png +../../data/yoloGtold1/train/45305.png +../../data/yoloGtold1/train/45306.png +../../data/yoloGtold1/train/45307.png +../../data/yoloGtold1/train/45308.png +../../data/yoloGtold1/train/45309.png +../../data/yoloGtold1/train/45310.png +../../data/yoloGtold1/train/45311.png +../../data/yoloGtold1/train/45312.png +../../data/yoloGtold1/train/45313.png +../../data/yoloGtold1/train/45314.png +../../data/yoloGtold1/train/45315.png +../../data/yoloGtold1/train/45316.png +../../data/yoloGtold1/train/45317.png +../../data/yoloGtold1/train/45318.png +../../data/yoloGtold1/train/45319.png +../../data/yoloGtold1/train/45320.png +../../data/yoloGtold1/train/45321.png +../../data/yoloGtold1/train/45322.png +../../data/yoloGtold1/train/45323.png +../../data/yoloGtold1/train/45324.png +../../data/yoloGtold1/train/45325.png +../../data/yoloGtold1/train/45326.png +../../data/yoloGtold1/train/45327.png +../../data/yoloGtold1/train/45328.png +../../data/yoloGtold1/train/45329.png +../../data/yoloGtold1/train/45330.png +../../data/yoloGtold1/train/45331.png +../../data/yoloGtold1/train/45332.png +../../data/yoloGtold1/train/45333.png +../../data/yoloGtold1/train/45334.png +../../data/yoloGtold1/train/45335.png +../../data/yoloGtold1/train/45336.png +../../data/yoloGtold1/train/45337.png +../../data/yoloGtold1/train/45338.png +../../data/yoloGtold1/train/45339.png +../../data/yoloGtold1/train/45340.png +../../data/yoloGtold1/train/45341.png +../../data/yoloGtold1/train/45342.png +../../data/yoloGtold1/train/45343.png +../../data/yoloGtold1/train/45344.png +../../data/yoloGtold1/train/45345.png +../../data/yoloGtold1/train/45346.png +../../data/yoloGtold1/train/45347.png +../../data/yoloGtold1/train/45348.png +../../data/yoloGtold1/train/45349.png +../../data/yoloGtold1/train/45350.png +../../data/yoloGtold1/train/45351.png +../../data/yoloGtold1/train/45352.png +../../data/yoloGtold1/train/45353.png +../../data/yoloGtold1/train/45354.png +../../data/yoloGtold1/train/45355.png +../../data/yoloGtold1/train/45356.png +../../data/yoloGtold1/train/45357.png +../../data/yoloGtold1/train/45358.png +../../data/yoloGtold1/train/45359.png +../../data/yoloGtold1/train/45360.png +../../data/yoloGtold1/train/45361.png +../../data/yoloGtold1/train/45362.png +../../data/yoloGtold1/train/45363.png +../../data/yoloGtold1/train/45364.png +../../data/yoloGtold1/train/45365.png +../../data/yoloGtold1/train/45366.png +../../data/yoloGtold1/train/45367.png +../../data/yoloGtold1/train/45368.png +../../data/yoloGtold1/train/45369.png +../../data/yoloGtold1/train/45370.png +../../data/yoloGtold1/train/45371.png +../../data/yoloGtold1/train/45372.png +../../data/yoloGtold1/train/45373.png +../../data/yoloGtold1/train/45374.png +../../data/yoloGtold1/train/45375.png +../../data/yoloGtold1/train/45376.png +../../data/yoloGtold1/train/45377.png +../../data/yoloGtold1/train/45378.png +../../data/yoloGtold1/train/45379.png +../../data/yoloGtold1/train/45380.png +../../data/yoloGtold1/train/45381.png +../../data/yoloGtold1/train/45382.png +../../data/yoloGtold1/train/45383.png +../../data/yoloGtold1/train/45384.png +../../data/yoloGtold1/train/45385.png +../../data/yoloGtold1/train/45386.png +../../data/yoloGtold1/train/45387.png +../../data/yoloGtold1/train/45388.png +../../data/yoloGtold1/train/45389.png +../../data/yoloGtold1/train/45390.png +../../data/yoloGtold1/train/45391.png +../../data/yoloGtold1/train/45392.png +../../data/yoloGtold1/train/45393.png +../../data/yoloGtold1/train/45394.png +../../data/yoloGtold1/train/45395.png +../../data/yoloGtold1/train/45396.png +../../data/yoloGtold1/train/45397.png +../../data/yoloGtold1/train/45398.png +../../data/yoloGtold1/train/45399.png +../../data/yoloGtold1/train/45400.png +../../data/yoloGtold1/train/45401.png +../../data/yoloGtold1/train/45402.png +../../data/yoloGtold1/train/45403.png +../../data/yoloGtold1/train/45404.png +../../data/yoloGtold1/train/45405.png +../../data/yoloGtold1/train/45406.png +../../data/yoloGtold1/train/45407.png +../../data/yoloGtold1/train/45408.png +../../data/yoloGtold1/train/45409.png +../../data/yoloGtold1/train/45410.png +../../data/yoloGtold1/train/45411.png +../../data/yoloGtold1/train/45412.png +../../data/yoloGtold1/train/45413.png +../../data/yoloGtold1/train/45414.png +../../data/yoloGtold1/train/45415.png +../../data/yoloGtold1/train/45416.png +../../data/yoloGtold1/train/45417.png +../../data/yoloGtold1/train/45418.png +../../data/yoloGtold1/train/45419.png +../../data/yoloGtold1/train/45420.png +../../data/yoloGtold1/train/45421.png +../../data/yoloGtold1/train/45422.png +../../data/yoloGtold1/train/45423.png +../../data/yoloGtold1/train/45424.png +../../data/yoloGtold1/train/45425.png +../../data/yoloGtold1/train/45426.png +../../data/yoloGtold1/train/45427.png +../../data/yoloGtold1/train/45428.png +../../data/yoloGtold1/train/45429.png +../../data/yoloGtold1/train/45430.png +../../data/yoloGtold1/train/45431.png +../../data/yoloGtold1/train/45432.png +../../data/yoloGtold1/train/45433.png +../../data/yoloGtold1/train/45434.png +../../data/yoloGtold1/train/45435.png +../../data/yoloGtold1/train/45436.png +../../data/yoloGtold1/train/45437.png +../../data/yoloGtold1/train/45438.png +../../data/yoloGtold1/train/45439.png +../../data/yoloGtold1/train/45440.png +../../data/yoloGtold1/train/45441.png +../../data/yoloGtold1/train/45442.png +../../data/yoloGtold1/train/45443.png +../../data/yoloGtold1/train/45444.png +../../data/yoloGtold1/train/45445.png +../../data/yoloGtold1/train/45446.png +../../data/yoloGtold1/train/45447.png +../../data/yoloGtold1/train/45448.png +../../data/yoloGtold1/train/45449.png +../../data/yoloGtold1/train/45450.png +../../data/yoloGtold1/train/45451.png +../../data/yoloGtold1/train/45452.png +../../data/yoloGtold1/train/45453.png +../../data/yoloGtold1/train/45454.png +../../data/yoloGtold1/train/45455.png +../../data/yoloGtold1/train/45456.png +../../data/yoloGtold1/train/45457.png +../../data/yoloGtold1/train/45458.png +../../data/yoloGtold1/train/45459.png +../../data/yoloGtold1/train/45460.png +../../data/yoloGtold1/train/45461.png +../../data/yoloGtold1/train/45462.png +../../data/yoloGtold1/train/45463.png +../../data/yoloGtold1/train/45464.png +../../data/yoloGtold1/train/45465.png +../../data/yoloGtold1/train/45466.png +../../data/yoloGtold1/train/45467.png +../../data/yoloGtold1/train/45468.png +../../data/yoloGtold1/train/45469.png +../../data/yoloGtold1/train/45470.png +../../data/yoloGtold1/train/45471.png +../../data/yoloGtold1/train/45472.png +../../data/yoloGtold1/train/45473.png +../../data/yoloGtold1/train/45474.png +../../data/yoloGtold1/train/45475.png +../../data/yoloGtold1/train/45476.png +../../data/yoloGtold1/train/45477.png +../../data/yoloGtold1/train/45478.png +../../data/yoloGtold1/train/45479.png +../../data/yoloGtold1/train/45480.png +../../data/yoloGtold1/train/45481.png +../../data/yoloGtold1/train/45482.png +../../data/yoloGtold1/train/45483.png +../../data/yoloGtold1/train/45484.png +../../data/yoloGtold1/train/45485.png +../../data/yoloGtold1/train/45486.png +../../data/yoloGtold1/train/45487.png +../../data/yoloGtold1/train/45488.png +../../data/yoloGtold1/train/45489.png +../../data/yoloGtold1/train/45490.png +../../data/yoloGtold1/train/45491.png +../../data/yoloGtold1/train/45492.png +../../data/yoloGtold1/train/45493.png +../../data/yoloGtold1/train/45494.png +../../data/yoloGtold1/train/45495.png +../../data/yoloGtold1/train/45496.png +../../data/yoloGtold1/train/45497.png +../../data/yoloGtold1/train/45498.png +../../data/yoloGtold1/train/45499.png +../../data/yoloGtold1/train/45500.png +../../data/yoloGtold1/train/45501.png +../../data/yoloGtold1/train/45502.png +../../data/yoloGtold1/train/45503.png +../../data/yoloGtold1/train/45504.png +../../data/yoloGtold1/train/45505.png +../../data/yoloGtold1/train/45506.png +../../data/yoloGtold1/train/45507.png +../../data/yoloGtold1/train/45508.png +../../data/yoloGtold1/train/45509.png +../../data/yoloGtold1/train/45510.png +../../data/yoloGtold1/train/45511.png +../../data/yoloGtold1/train/45512.png +../../data/yoloGtold1/train/45513.png +../../data/yoloGtold1/train/45514.png +../../data/yoloGtold1/train/45515.png +../../data/yoloGtold1/train/45516.png +../../data/yoloGtold1/train/45517.png +../../data/yoloGtold1/train/45518.png +../../data/yoloGtold1/train/45519.png +../../data/yoloGtold1/train/45520.png +../../data/yoloGtold1/train/45521.png +../../data/yoloGtold1/train/45522.png +../../data/yoloGtold1/train/45523.png +../../data/yoloGtold1/train/45524.png +../../data/yoloGtold1/train/45525.png +../../data/yoloGtold1/train/45526.png +../../data/yoloGtold1/train/45527.png +../../data/yoloGtold1/train/45528.png +../../data/yoloGtold1/train/45529.png +../../data/yoloGtold1/train/45530.png +../../data/yoloGtold1/train/45531.png +../../data/yoloGtold1/train/45532.png +../../data/yoloGtold1/train/45533.png +../../data/yoloGtold1/train/45534.png +../../data/yoloGtold1/train/45535.png +../../data/yoloGtold1/train/45536.png +../../data/yoloGtold1/train/45537.png +../../data/yoloGtold1/train/45538.png +../../data/yoloGtold1/train/45539.png +../../data/yoloGtold1/train/45540.png +../../data/yoloGtold1/train/45541.png +../../data/yoloGtold1/train/45542.png +../../data/yoloGtold1/train/45543.png +../../data/yoloGtold1/train/45544.png +../../data/yoloGtold1/train/45545.png +../../data/yoloGtold1/train/45546.png +../../data/yoloGtold1/train/45547.png +../../data/yoloGtold1/train/45548.png +../../data/yoloGtold1/train/45549.png +../../data/yoloGtold1/train/45550.png +../../data/yoloGtold1/train/45551.png +../../data/yoloGtold1/train/45552.png +../../data/yoloGtold1/train/45553.png +../../data/yoloGtold1/train/45554.png +../../data/yoloGtold1/train/45555.png +../../data/yoloGtold1/train/45556.png +../../data/yoloGtold1/train/45557.png +../../data/yoloGtold1/train/45558.png +../../data/yoloGtold1/train/45559.png +../../data/yoloGtold1/train/45560.png +../../data/yoloGtold1/train/45561.png +../../data/yoloGtold1/train/45562.png +../../data/yoloGtold1/train/45563.png +../../data/yoloGtold1/train/45564.png +../../data/yoloGtold1/train/45565.png +../../data/yoloGtold1/train/45566.png +../../data/yoloGtold1/train/45567.png +../../data/yoloGtold1/train/45568.png +../../data/yoloGtold1/train/45569.png +../../data/yoloGtold1/train/45570.png +../../data/yoloGtold1/train/45571.png +../../data/yoloGtold1/train/45572.png +../../data/yoloGtold1/train/45573.png +../../data/yoloGtold1/train/45574.png +../../data/yoloGtold1/train/45575.png +../../data/yoloGtold1/train/45576.png +../../data/yoloGtold1/train/45577.png +../../data/yoloGtold1/train/45578.png +../../data/yoloGtold1/train/45579.png +../../data/yoloGtold1/train/45580.png +../../data/yoloGtold1/train/45581.png +../../data/yoloGtold1/train/45582.png +../../data/yoloGtold1/train/45583.png +../../data/yoloGtold1/train/45584.png +../../data/yoloGtold1/train/45585.png +../../data/yoloGtold1/train/45586.png +../../data/yoloGtold1/train/45587.png +../../data/yoloGtold1/train/45588.png +../../data/yoloGtold1/train/45589.png +../../data/yoloGtold1/train/45590.png +../../data/yoloGtold1/train/45591.png +../../data/yoloGtold1/train/45592.png +../../data/yoloGtold1/train/45593.png +../../data/yoloGtold1/train/45594.png +../../data/yoloGtold1/train/45595.png +../../data/yoloGtold1/train/45596.png +../../data/yoloGtold1/train/45597.png +../../data/yoloGtold1/train/45598.png +../../data/yoloGtold1/train/45599.png +../../data/yoloGtold1/train/45600.png +../../data/yoloGtold1/train/45601.png +../../data/yoloGtold1/train/45602.png +../../data/yoloGtold1/train/45603.png +../../data/yoloGtold1/train/45604.png +../../data/yoloGtold1/train/45605.png +../../data/yoloGtold1/train/45606.png +../../data/yoloGtold1/train/45607.png +../../data/yoloGtold1/train/45608.png +../../data/yoloGtold1/train/45609.png +../../data/yoloGtold1/train/45610.png +../../data/yoloGtold1/train/45611.png +../../data/yoloGtold1/train/45612.png +../../data/yoloGtold1/train/45613.png +../../data/yoloGtold1/train/45614.png +../../data/yoloGtold1/train/45615.png +../../data/yoloGtold1/train/45616.png +../../data/yoloGtold1/train/45617.png +../../data/yoloGtold1/train/45618.png +../../data/yoloGtold1/train/45619.png +../../data/yoloGtold1/train/45620.png +../../data/yoloGtold1/train/45621.png +../../data/yoloGtold1/train/45622.png +../../data/yoloGtold1/train/45623.png +../../data/yoloGtold1/train/45624.png +../../data/yoloGtold1/train/45625.png +../../data/yoloGtold1/train/45626.png +../../data/yoloGtold1/train/45627.png +../../data/yoloGtold1/train/45628.png +../../data/yoloGtold1/train/45629.png +../../data/yoloGtold1/train/45630.png +../../data/yoloGtold1/train/45631.png +../../data/yoloGtold1/train/45632.png +../../data/yoloGtold1/train/45633.png +../../data/yoloGtold1/train/45634.png +../../data/yoloGtold1/train/45635.png +../../data/yoloGtold1/train/45636.png +../../data/yoloGtold1/train/45637.png +../../data/yoloGtold1/train/45638.png +../../data/yoloGtold1/train/45639.png +../../data/yoloGtold1/train/45640.png +../../data/yoloGtold1/train/45641.png +../../data/yoloGtold1/train/45642.png +../../data/yoloGtold1/train/45643.png +../../data/yoloGtold1/train/45644.png +../../data/yoloGtold1/train/45645.png +../../data/yoloGtold1/train/45646.png +../../data/yoloGtold1/train/45647.png +../../data/yoloGtold1/train/45648.png +../../data/yoloGtold1/train/45649.png +../../data/yoloGtold1/train/45650.png +../../data/yoloGtold1/train/45651.png +../../data/yoloGtold1/train/45652.png +../../data/yoloGtold1/train/45653.png +../../data/yoloGtold1/train/45654.png +../../data/yoloGtold1/train/45655.png +../../data/yoloGtold1/train/45656.png +../../data/yoloGtold1/train/45657.png +../../data/yoloGtold1/train/45658.png +../../data/yoloGtold1/train/45659.png +../../data/yoloGtold1/train/45660.png +../../data/yoloGtold1/train/45661.png +../../data/yoloGtold1/train/45662.png +../../data/yoloGtold1/train/45663.png +../../data/yoloGtold1/train/45664.png +../../data/yoloGtold1/train/45665.png +../../data/yoloGtold1/train/45666.png +../../data/yoloGtold1/train/45667.png +../../data/yoloGtold1/train/45668.png +../../data/yoloGtold1/train/45669.png +../../data/yoloGtold1/train/45670.png +../../data/yoloGtold1/train/45671.png +../../data/yoloGtold1/train/45672.png +../../data/yoloGtold1/train/45673.png +../../data/yoloGtold1/train/45674.png +../../data/yoloGtold1/train/45675.png +../../data/yoloGtold1/train/45676.png +../../data/yoloGtold1/train/45677.png +../../data/yoloGtold1/train/45678.png +../../data/yoloGtold1/train/45679.png +../../data/yoloGtold1/train/45680.png +../../data/yoloGtold1/train/45681.png +../../data/yoloGtold1/train/45682.png +../../data/yoloGtold1/train/45683.png +../../data/yoloGtold1/train/45684.png +../../data/yoloGtold1/train/45685.png +../../data/yoloGtold1/train/45686.png +../../data/yoloGtold1/train/45687.png +../../data/yoloGtold1/train/45688.png +../../data/yoloGtold1/train/45689.png +../../data/yoloGtold1/train/45690.png +../../data/yoloGtold1/train/45691.png +../../data/yoloGtold1/train/45692.png +../../data/yoloGtold1/train/45693.png +../../data/yoloGtold1/train/45694.png +../../data/yoloGtold1/train/45695.png +../../data/yoloGtold1/train/45696.png +../../data/yoloGtold1/train/45697.png +../../data/yoloGtold1/train/45698.png +../../data/yoloGtold1/train/45699.png +../../data/yoloGtold1/train/45700.png +../../data/yoloGtold1/train/45701.png +../../data/yoloGtold1/train/45702.png +../../data/yoloGtold1/train/45703.png +../../data/yoloGtold1/train/45704.png +../../data/yoloGtold1/train/45705.png +../../data/yoloGtold1/train/45706.png +../../data/yoloGtold1/train/45707.png +../../data/yoloGtold1/train/45708.png +../../data/yoloGtold1/train/45709.png +../../data/yoloGtold1/train/45710.png +../../data/yoloGtold1/train/45711.png +../../data/yoloGtold1/train/45712.png +../../data/yoloGtold1/train/45713.png +../../data/yoloGtold1/train/45714.png +../../data/yoloGtold1/train/45715.png +../../data/yoloGtold1/train/45716.png +../../data/yoloGtold1/train/45717.png +../../data/yoloGtold1/train/45718.png +../../data/yoloGtold1/train/45719.png +../../data/yoloGtold1/train/45720.png +../../data/yoloGtold1/train/45721.png +../../data/yoloGtold1/train/45722.png +../../data/yoloGtold1/train/45723.png +../../data/yoloGtold1/train/45724.png +../../data/yoloGtold1/train/45725.png +../../data/yoloGtold1/train/45726.png +../../data/yoloGtold1/train/45727.png +../../data/yoloGtold1/train/45728.png +../../data/yoloGtold1/train/45729.png +../../data/yoloGtold1/train/45730.png +../../data/yoloGtold1/train/45731.png +../../data/yoloGtold1/train/45732.png +../../data/yoloGtold1/train/45733.png +../../data/yoloGtold1/train/45734.png +../../data/yoloGtold1/train/45735.png +../../data/yoloGtold1/train/45736.png +../../data/yoloGtold1/train/45737.png +../../data/yoloGtold1/train/45738.png +../../data/yoloGtold1/train/45739.png +../../data/yoloGtold1/train/45740.png +../../data/yoloGtold1/train/45741.png +../../data/yoloGtold1/train/45742.png +../../data/yoloGtold1/train/45743.png +../../data/yoloGtold1/train/45744.png +../../data/yoloGtold1/train/45745.png +../../data/yoloGtold1/train/45746.png +../../data/yoloGtold1/train/45747.png +../../data/yoloGtold1/train/45748.png +../../data/yoloGtold1/train/45749.png +../../data/yoloGtold1/train/45750.png +../../data/yoloGtold1/train/45751.png +../../data/yoloGtold1/train/45752.png +../../data/yoloGtold1/train/45753.png +../../data/yoloGtold1/train/45754.png +../../data/yoloGtold1/train/45755.png +../../data/yoloGtold1/train/45756.png +../../data/yoloGtold1/train/45757.png +../../data/yoloGtold1/train/45758.png +../../data/yoloGtold1/train/45759.png +../../data/yoloGtold1/train/45760.png +../../data/yoloGtold1/train/45761.png +../../data/yoloGtold1/train/45762.png +../../data/yoloGtold1/train/45763.png +../../data/yoloGtold1/train/45764.png +../../data/yoloGtold1/train/45765.png +../../data/yoloGtold1/train/45766.png +../../data/yoloGtold1/train/45767.png +../../data/yoloGtold1/train/45768.png +../../data/yoloGtold1/train/45769.png +../../data/yoloGtold1/train/45770.png +../../data/yoloGtold1/train/45771.png +../../data/yoloGtold1/train/45772.png +../../data/yoloGtold1/train/45773.png +../../data/yoloGtold1/train/45774.png +../../data/yoloGtold1/train/45775.png +../../data/yoloGtold1/train/45776.png +../../data/yoloGtold1/train/45777.png +../../data/yoloGtold1/train/45778.png +../../data/yoloGtold1/train/45779.png +../../data/yoloGtold1/train/45780.png +../../data/yoloGtold1/train/45781.png +../../data/yoloGtold1/train/45782.png +../../data/yoloGtold1/train/45783.png +../../data/yoloGtold1/train/45784.png +../../data/yoloGtold1/train/45785.png +../../data/yoloGtold1/train/45786.png +../../data/yoloGtold1/train/45787.png +../../data/yoloGtold1/train/45788.png +../../data/yoloGtold1/train/45789.png +../../data/yoloGtold1/train/45790.png +../../data/yoloGtold1/train/45791.png +../../data/yoloGtold1/train/45792.png +../../data/yoloGtold1/train/45793.png +../../data/yoloGtold1/train/45794.png +../../data/yoloGtold1/train/45795.png +../../data/yoloGtold1/train/45796.png +../../data/yoloGtold1/train/45797.png +../../data/yoloGtold1/train/45798.png +../../data/yoloGtold1/train/45799.png +../../data/yoloGtold1/train/45800.png +../../data/yoloGtold1/train/45801.png +../../data/yoloGtold1/train/45802.png +../../data/yoloGtold1/train/45803.png +../../data/yoloGtold1/train/45804.png +../../data/yoloGtold1/train/45805.png +../../data/yoloGtold1/train/45806.png +../../data/yoloGtold1/train/45807.png +../../data/yoloGtold1/train/45808.png +../../data/yoloGtold1/train/45809.png +../../data/yoloGtold1/train/45810.png +../../data/yoloGtold1/train/45811.png +../../data/yoloGtold1/train/45812.png +../../data/yoloGtold1/train/45813.png +../../data/yoloGtold1/train/45814.png +../../data/yoloGtold1/train/45815.png +../../data/yoloGtold1/train/45816.png +../../data/yoloGtold1/train/45817.png +../../data/yoloGtold1/train/45818.png +../../data/yoloGtold1/train/45819.png +../../data/yoloGtold1/train/45820.png +../../data/yoloGtold1/train/45821.png +../../data/yoloGtold1/train/45822.png +../../data/yoloGtold1/train/45823.png +../../data/yoloGtold1/train/45824.png +../../data/yoloGtold1/train/45825.png +../../data/yoloGtold1/train/45826.png +../../data/yoloGtold1/train/45827.png +../../data/yoloGtold1/train/45828.png +../../data/yoloGtold1/train/45829.png +../../data/yoloGtold1/train/45830.png +../../data/yoloGtold1/train/45831.png +../../data/yoloGtold1/train/45832.png +../../data/yoloGtold1/train/45833.png +../../data/yoloGtold1/train/45834.png +../../data/yoloGtold1/train/45835.png +../../data/yoloGtold1/train/45836.png +../../data/yoloGtold1/train/45837.png +../../data/yoloGtold1/train/45838.png +../../data/yoloGtold1/train/45839.png +../../data/yoloGtold1/train/45840.png +../../data/yoloGtold1/train/45841.png +../../data/yoloGtold1/train/45842.png +../../data/yoloGtold1/train/45843.png +../../data/yoloGtold1/train/45844.png +../../data/yoloGtold1/train/45845.png +../../data/yoloGtold1/train/45846.png +../../data/yoloGtold1/train/45847.png +../../data/yoloGtold1/train/45848.png +../../data/yoloGtold1/train/45849.png +../../data/yoloGtold1/train/45850.png +../../data/yoloGtold1/train/45851.png +../../data/yoloGtold1/train/45852.png +../../data/yoloGtold1/train/45853.png +../../data/yoloGtold1/train/45854.png +../../data/yoloGtold1/train/45855.png +../../data/yoloGtold1/train/45856.png +../../data/yoloGtold1/train/45857.png +../../data/yoloGtold1/train/45858.png +../../data/yoloGtold1/train/45859.png +../../data/yoloGtold1/train/45860.png +../../data/yoloGtold1/train/45861.png +../../data/yoloGtold1/train/45862.png +../../data/yoloGtold1/train/45863.png +../../data/yoloGtold1/train/45864.png +../../data/yoloGtold1/train/45865.png +../../data/yoloGtold1/train/45866.png +../../data/yoloGtold1/train/45867.png +../../data/yoloGtold1/train/45868.png +../../data/yoloGtold1/train/45869.png +../../data/yoloGtold1/train/45870.png +../../data/yoloGtold1/train/45871.png +../../data/yoloGtold1/train/45872.png +../../data/yoloGtold1/train/45873.png +../../data/yoloGtold1/train/45874.png +../../data/yoloGtold1/train/45875.png +../../data/yoloGtold1/train/45876.png +../../data/yoloGtold1/train/45877.png +../../data/yoloGtold1/train/45878.png +../../data/yoloGtold1/train/45879.png +../../data/yoloGtold1/train/45880.png +../../data/yoloGtold1/train/45881.png +../../data/yoloGtold1/train/45882.png +../../data/yoloGtold1/train/45883.png +../../data/yoloGtold1/train/45884.png +../../data/yoloGtold1/train/45885.png +../../data/yoloGtold1/train/45886.png +../../data/yoloGtold1/train/45887.png +../../data/yoloGtold1/train/45888.png +../../data/yoloGtold1/train/45889.png +../../data/yoloGtold1/train/45890.png +../../data/yoloGtold1/train/45891.png +../../data/yoloGtold1/train/45892.png +../../data/yoloGtold1/train/45893.png +../../data/yoloGtold1/train/45894.png +../../data/yoloGtold1/train/45895.png +../../data/yoloGtold1/train/45896.png +../../data/yoloGtold1/train/45897.png +../../data/yoloGtold1/train/45898.png +../../data/yoloGtold1/train/45899.png +../../data/yoloGtold1/train/45900.png +../../data/yoloGtold1/train/45901.png +../../data/yoloGtold1/train/45902.png +../../data/yoloGtold1/train/45903.png +../../data/yoloGtold1/train/45904.png +../../data/yoloGtold1/train/45905.png +../../data/yoloGtold1/train/45906.png +../../data/yoloGtold1/train/45907.png +../../data/yoloGtold1/train/45908.png +../../data/yoloGtold1/train/45909.png +../../data/yoloGtold1/train/45910.png +../../data/yoloGtold1/train/45911.png +../../data/yoloGtold1/train/45912.png +../../data/yoloGtold1/train/45913.png +../../data/yoloGtold1/train/45914.png +../../data/yoloGtold1/train/45915.png +../../data/yoloGtold1/train/45916.png +../../data/yoloGtold1/train/45917.png +../../data/yoloGtold1/train/45918.png +../../data/yoloGtold1/train/45919.png +../../data/yoloGtold1/train/45920.png +../../data/yoloGtold1/train/45921.png +../../data/yoloGtold1/train/45922.png +../../data/yoloGtold1/train/45923.png +../../data/yoloGtold1/train/45924.png +../../data/yoloGtold1/train/45925.png +../../data/yoloGtold1/train/45926.png +../../data/yoloGtold1/train/45927.png +../../data/yoloGtold1/train/45928.png +../../data/yoloGtold1/train/45929.png +../../data/yoloGtold1/train/45930.png +../../data/yoloGtold1/train/45931.png +../../data/yoloGtold1/train/45932.png +../../data/yoloGtold1/train/45933.png +../../data/yoloGtold1/train/45934.png +../../data/yoloGtold1/train/45935.png +../../data/yoloGtold1/train/45936.png +../../data/yoloGtold1/train/45937.png +../../data/yoloGtold1/train/45938.png +../../data/yoloGtold1/train/45939.png +../../data/yoloGtold1/train/45940.png +../../data/yoloGtold1/train/45941.png +../../data/yoloGtold1/train/45942.png +../../data/yoloGtold1/train/45943.png +../../data/yoloGtold1/train/45944.png +../../data/yoloGtold1/train/45945.png +../../data/yoloGtold1/train/45946.png +../../data/yoloGtold1/train/45947.png +../../data/yoloGtold1/train/45948.png +../../data/yoloGtold1/train/45949.png +../../data/yoloGtold1/train/45950.png +../../data/yoloGtold1/train/45951.png +../../data/yoloGtold1/train/45952.png +../../data/yoloGtold1/train/45953.png +../../data/yoloGtold1/train/45954.png +../../data/yoloGtold1/train/45955.png +../../data/yoloGtold1/train/45956.png +../../data/yoloGtold1/train/45957.png +../../data/yoloGtold1/train/45958.png +../../data/yoloGtold1/train/45959.png +../../data/yoloGtold1/train/45960.png +../../data/yoloGtold1/train/45961.png +../../data/yoloGtold1/train/45962.png +../../data/yoloGtold1/train/45963.png +../../data/yoloGtold1/train/45964.png +../../data/yoloGtold1/train/45965.png +../../data/yoloGtold1/train/45966.png +../../data/yoloGtold1/train/45967.png +../../data/yoloGtold1/train/45968.png +../../data/yoloGtold1/train/45969.png +../../data/yoloGtold1/train/45970.png +../../data/yoloGtold1/train/45971.png +../../data/yoloGtold1/train/45972.png +../../data/yoloGtold1/train/45973.png +../../data/yoloGtold1/train/45974.png +../../data/yoloGtold1/train/45975.png +../../data/yoloGtold1/train/45976.png +../../data/yoloGtold1/train/45977.png +../../data/yoloGtold1/train/45978.png +../../data/yoloGtold1/train/45979.png +../../data/yoloGtold1/train/45980.png +../../data/yoloGtold1/train/45981.png +../../data/yoloGtold1/train/45982.png +../../data/yoloGtold1/train/45983.png +../../data/yoloGtold1/train/45984.png +../../data/yoloGtold1/train/45985.png +../../data/yoloGtold1/train/45986.png +../../data/yoloGtold1/train/45987.png +../../data/yoloGtold1/train/45988.png +../../data/yoloGtold1/train/45989.png +../../data/yoloGtold1/train/45990.png +../../data/yoloGtold1/train/45991.png +../../data/yoloGtold1/train/45992.png +../../data/yoloGtold1/train/45993.png +../../data/yoloGtold1/train/45994.png +../../data/yoloGtold1/train/45995.png +../../data/yoloGtold1/train/45996.png +../../data/yoloGtold1/train/45997.png +../../data/yoloGtold1/train/45998.png +../../data/yoloGtold1/train/45999.png +../../data/yoloGtold1/train/46000.png +../../data/yoloGtold1/train/46001.png +../../data/yoloGtold1/train/46002.png +../../data/yoloGtold1/train/46003.png +../../data/yoloGtold1/train/46004.png +../../data/yoloGtold1/train/46005.png +../../data/yoloGtold1/train/46006.png +../../data/yoloGtold1/train/46007.png +../../data/yoloGtold1/train/46008.png +../../data/yoloGtold1/train/46009.png +../../data/yoloGtold1/train/46010.png +../../data/yoloGtold1/train/46011.png +../../data/yoloGtold1/train/46012.png +../../data/yoloGtold1/train/46013.png +../../data/yoloGtold1/train/46014.png +../../data/yoloGtold1/train/46015.png +../../data/yoloGtold1/train/46016.png +../../data/yoloGtold1/train/46017.png +../../data/yoloGtold1/train/46018.png +../../data/yoloGtold1/train/46019.png +../../data/yoloGtold1/train/46020.png +../../data/yoloGtold1/train/46021.png +../../data/yoloGtold1/train/46022.png +../../data/yoloGtold1/train/46023.png +../../data/yoloGtold1/train/46024.png +../../data/yoloGtold1/train/46025.png +../../data/yoloGtold1/train/46026.png +../../data/yoloGtold1/train/46027.png +../../data/yoloGtold1/train/46028.png +../../data/yoloGtold1/train/46029.png +../../data/yoloGtold1/train/46030.png +../../data/yoloGtold1/train/46031.png +../../data/yoloGtold1/train/46032.png +../../data/yoloGtold1/train/46033.png +../../data/yoloGtold1/train/46034.png +../../data/yoloGtold1/train/46035.png +../../data/yoloGtold1/train/46036.png +../../data/yoloGtold1/train/46037.png +../../data/yoloGtold1/train/46038.png +../../data/yoloGtold1/train/46039.png +../../data/yoloGtold1/train/46040.png +../../data/yoloGtold1/train/46041.png +../../data/yoloGtold1/train/46042.png +../../data/yoloGtold1/train/46043.png +../../data/yoloGtold1/train/46044.png +../../data/yoloGtold1/train/46045.png +../../data/yoloGtold1/train/46046.png +../../data/yoloGtold1/train/46047.png +../../data/yoloGtold1/train/46048.png +../../data/yoloGtold1/train/46049.png +../../data/yoloGtold1/train/46050.png +../../data/yoloGtold1/train/46051.png +../../data/yoloGtold1/train/46052.png +../../data/yoloGtold1/train/46053.png +../../data/yoloGtold1/train/46054.png +../../data/yoloGtold1/train/46055.png +../../data/yoloGtold1/train/46056.png +../../data/yoloGtold1/train/46057.png +../../data/yoloGtold1/train/46058.png +../../data/yoloGtold1/train/46059.png +../../data/yoloGtold1/train/46060.png +../../data/yoloGtold1/train/46061.png +../../data/yoloGtold1/train/46062.png +../../data/yoloGtold1/train/46063.png +../../data/yoloGtold1/train/46064.png +../../data/yoloGtold1/train/46065.png +../../data/yoloGtold1/train/46066.png +../../data/yoloGtold1/train/46067.png +../../data/yoloGtold1/train/46068.png +../../data/yoloGtold1/train/46069.png +../../data/yoloGtold1/train/46070.png +../../data/yoloGtold1/train/46071.png +../../data/yoloGtold1/train/46072.png +../../data/yoloGtold1/train/46073.png +../../data/yoloGtold1/train/46074.png +../../data/yoloGtold1/train/46075.png +../../data/yoloGtold1/train/46076.png +../../data/yoloGtold1/train/46077.png +../../data/yoloGtold1/train/46078.png +../../data/yoloGtold1/train/46079.png +../../data/yoloGtold1/train/46080.png +../../data/yoloGtold1/train/46081.png +../../data/yoloGtold1/train/46082.png +../../data/yoloGtold1/train/46083.png +../../data/yoloGtold1/train/46084.png +../../data/yoloGtold1/train/46085.png +../../data/yoloGtold1/train/46086.png +../../data/yoloGtold1/train/46087.png +../../data/yoloGtold1/train/46088.png +../../data/yoloGtold1/train/46089.png +../../data/yoloGtold1/train/46090.png +../../data/yoloGtold1/train/46091.png +../../data/yoloGtold1/train/46092.png +../../data/yoloGtold1/train/46093.png +../../data/yoloGtold1/train/46094.png +../../data/yoloGtold1/train/46095.png +../../data/yoloGtold1/train/46096.png +../../data/yoloGtold1/train/46097.png +../../data/yoloGtold1/train/46098.png +../../data/yoloGtold1/train/46099.png +../../data/yoloGtold1/train/46100.png +../../data/yoloGtold1/train/46101.png +../../data/yoloGtold1/train/46102.png +../../data/yoloGtold1/train/46103.png +../../data/yoloGtold1/train/46104.png +../../data/yoloGtold1/train/46105.png +../../data/yoloGtold1/train/46106.png +../../data/yoloGtold1/train/46107.png +../../data/yoloGtold1/train/46108.png +../../data/yoloGtold1/train/46109.png +../../data/yoloGtold1/train/46110.png +../../data/yoloGtold1/train/46111.png +../../data/yoloGtold1/train/46112.png +../../data/yoloGtold1/train/46113.png +../../data/yoloGtold1/train/46114.png +../../data/yoloGtold1/train/46115.png +../../data/yoloGtold1/train/46116.png +../../data/yoloGtold1/train/46117.png +../../data/yoloGtold1/train/46118.png +../../data/yoloGtold1/train/46119.png +../../data/yoloGtold1/train/46120.png +../../data/yoloGtold1/train/46121.png +../../data/yoloGtold1/train/46122.png +../../data/yoloGtold1/train/46123.png +../../data/yoloGtold1/train/46124.png +../../data/yoloGtold1/train/46125.png +../../data/yoloGtold1/train/46126.png +../../data/yoloGtold1/train/46127.png +../../data/yoloGtold1/train/46128.png +../../data/yoloGtold1/train/46129.png +../../data/yoloGtold1/train/46130.png +../../data/yoloGtold1/train/46131.png +../../data/yoloGtold1/train/46132.png +../../data/yoloGtold1/train/46133.png +../../data/yoloGtold1/train/46134.png +../../data/yoloGtold1/train/46135.png +../../data/yoloGtold1/train/46136.png +../../data/yoloGtold1/train/46137.png +../../data/yoloGtold1/train/46138.png +../../data/yoloGtold1/train/46139.png +../../data/yoloGtold1/train/46140.png +../../data/yoloGtold1/train/46141.png +../../data/yoloGtold1/train/46142.png +../../data/yoloGtold1/train/46143.png +../../data/yoloGtold1/train/46144.png +../../data/yoloGtold1/train/46145.png +../../data/yoloGtold1/train/46146.png +../../data/yoloGtold1/train/46147.png +../../data/yoloGtold1/train/46148.png +../../data/yoloGtold1/train/46149.png +../../data/yoloGtold1/train/46150.png +../../data/yoloGtold1/train/46151.png +../../data/yoloGtold1/train/46152.png +../../data/yoloGtold1/train/46153.png +../../data/yoloGtold1/train/46154.png +../../data/yoloGtold1/train/46155.png +../../data/yoloGtold1/train/46156.png +../../data/yoloGtold1/train/46157.png +../../data/yoloGtold1/train/46158.png +../../data/yoloGtold1/train/46159.png +../../data/yoloGtold1/train/46160.png +../../data/yoloGtold1/train/46161.png +../../data/yoloGtold1/train/46162.png +../../data/yoloGtold1/train/46163.png +../../data/yoloGtold1/train/46164.png +../../data/yoloGtold1/train/46165.png +../../data/yoloGtold1/train/46166.png +../../data/yoloGtold1/train/46167.png +../../data/yoloGtold1/train/46168.png +../../data/yoloGtold1/train/46169.png +../../data/yoloGtold1/train/46170.png +../../data/yoloGtold1/train/46171.png +../../data/yoloGtold1/train/46172.png +../../data/yoloGtold1/train/46173.png +../../data/yoloGtold1/train/46174.png +../../data/yoloGtold1/train/46175.png +../../data/yoloGtold1/train/46176.png +../../data/yoloGtold1/train/46177.png +../../data/yoloGtold1/train/46178.png +../../data/yoloGtold1/train/46179.png +../../data/yoloGtold1/train/46180.png +../../data/yoloGtold1/train/46181.png +../../data/yoloGtold1/train/46182.png +../../data/yoloGtold1/train/46183.png +../../data/yoloGtold1/train/46184.png +../../data/yoloGtold1/train/46185.png +../../data/yoloGtold1/train/46186.png +../../data/yoloGtold1/train/46187.png +../../data/yoloGtold1/train/46188.png +../../data/yoloGtold1/train/46189.png +../../data/yoloGtold1/train/46190.png +../../data/yoloGtold1/train/46191.png +../../data/yoloGtold1/train/46192.png +../../data/yoloGtold1/train/46193.png +../../data/yoloGtold1/train/46194.png +../../data/yoloGtold1/train/46195.png +../../data/yoloGtold1/train/46196.png +../../data/yoloGtold1/train/46197.png +../../data/yoloGtold1/train/46198.png +../../data/yoloGtold1/train/46199.png +../../data/yoloGtold1/train/46200.png +../../data/yoloGtold1/train/46201.png +../../data/yoloGtold1/train/46202.png +../../data/yoloGtold1/train/46203.png +../../data/yoloGtold1/train/46204.png +../../data/yoloGtold1/train/46205.png +../../data/yoloGtold1/train/46206.png +../../data/yoloGtold1/train/46207.png +../../data/yoloGtold1/train/46208.png +../../data/yoloGtold1/train/46209.png +../../data/yoloGtold1/train/46210.png +../../data/yoloGtold1/train/46211.png +../../data/yoloGtold1/train/46212.png +../../data/yoloGtold1/train/46213.png +../../data/yoloGtold1/train/46214.png +../../data/yoloGtold1/train/46215.png +../../data/yoloGtold1/train/46216.png +../../data/yoloGtold1/train/46217.png +../../data/yoloGtold1/train/46218.png +../../data/yoloGtold1/train/46219.png +../../data/yoloGtold1/train/46220.png +../../data/yoloGtold1/train/46221.png +../../data/yoloGtold1/train/46222.png +../../data/yoloGtold1/train/46223.png +../../data/yoloGtold1/train/46224.png +../../data/yoloGtold1/train/46225.png +../../data/yoloGtold1/train/46226.png +../../data/yoloGtold1/train/46227.png +../../data/yoloGtold1/train/46228.png +../../data/yoloGtold1/train/46229.png +../../data/yoloGtold1/train/46230.png +../../data/yoloGtold1/train/46231.png +../../data/yoloGtold1/train/46232.png +../../data/yoloGtold1/train/46233.png +../../data/yoloGtold1/train/46234.png +../../data/yoloGtold1/train/46235.png +../../data/yoloGtold1/train/46236.png +../../data/yoloGtold1/train/46237.png +../../data/yoloGtold1/train/46238.png +../../data/yoloGtold1/train/46239.png +../../data/yoloGtold1/train/46240.png +../../data/yoloGtold1/train/46241.png +../../data/yoloGtold1/train/46242.png +../../data/yoloGtold1/train/46243.png +../../data/yoloGtold1/train/46244.png +../../data/yoloGtold1/train/46245.png +../../data/yoloGtold1/train/46246.png +../../data/yoloGtold1/train/46247.png +../../data/yoloGtold1/train/46248.png +../../data/yoloGtold1/train/46249.png +../../data/yoloGtold1/train/46250.png +../../data/yoloGtold1/train/46251.png +../../data/yoloGtold1/train/46252.png +../../data/yoloGtold1/train/46253.png +../../data/yoloGtold1/train/46254.png +../../data/yoloGtold1/train/46255.png +../../data/yoloGtold1/train/46256.png +../../data/yoloGtold1/train/46257.png +../../data/yoloGtold1/train/46258.png +../../data/yoloGtold1/train/46259.png +../../data/yoloGtold1/train/46260.png +../../data/yoloGtold1/train/46261.png +../../data/yoloGtold1/train/46262.png +../../data/yoloGtold1/train/46263.png +../../data/yoloGtold1/train/46264.png +../../data/yoloGtold1/train/46265.png +../../data/yoloGtold1/train/46266.png +../../data/yoloGtold1/train/46267.png +../../data/yoloGtold1/train/46268.png +../../data/yoloGtold1/train/46269.png +../../data/yoloGtold1/train/46270.png +../../data/yoloGtold1/train/46271.png +../../data/yoloGtold1/train/46272.png +../../data/yoloGtold1/train/46273.png +../../data/yoloGtold1/train/46274.png +../../data/yoloGtold1/train/46275.png +../../data/yoloGtold1/train/46276.png +../../data/yoloGtold1/train/46277.png +../../data/yoloGtold1/train/46278.png +../../data/yoloGtold1/train/46279.png +../../data/yoloGtold1/train/46280.png +../../data/yoloGtold1/train/46281.png +../../data/yoloGtold1/train/46282.png +../../data/yoloGtold1/train/46283.png +../../data/yoloGtold1/train/46284.png +../../data/yoloGtold1/train/46285.png +../../data/yoloGtold1/train/46286.png +../../data/yoloGtold1/train/46287.png +../../data/yoloGtold1/train/46288.png +../../data/yoloGtold1/train/46289.png +../../data/yoloGtold1/train/46290.png +../../data/yoloGtold1/train/46291.png +../../data/yoloGtold1/train/46292.png +../../data/yoloGtold1/train/46293.png +../../data/yoloGtold1/train/46294.png +../../data/yoloGtold1/train/46295.png +../../data/yoloGtold1/train/46296.png +../../data/yoloGtold1/train/46297.png +../../data/yoloGtold1/train/46298.png +../../data/yoloGtold1/train/46299.png +../../data/yoloGtold1/train/46300.png +../../data/yoloGtold1/train/46301.png +../../data/yoloGtold1/train/46302.png +../../data/yoloGtold1/train/46303.png +../../data/yoloGtold1/train/46304.png +../../data/yoloGtold1/train/46305.png +../../data/yoloGtold1/train/46306.png +../../data/yoloGtold1/train/46307.png +../../data/yoloGtold1/train/46308.png +../../data/yoloGtold1/train/46309.png +../../data/yoloGtold1/train/46310.png +../../data/yoloGtold1/train/46311.png +../../data/yoloGtold1/train/46312.png +../../data/yoloGtold1/train/46313.png +../../data/yoloGtold1/train/46314.png +../../data/yoloGtold1/train/46315.png +../../data/yoloGtold1/train/46316.png +../../data/yoloGtold1/train/46317.png +../../data/yoloGtold1/train/46318.png +../../data/yoloGtold1/train/46319.png +../../data/yoloGtold1/train/46320.png +../../data/yoloGtold1/train/46321.png +../../data/yoloGtold1/train/46322.png +../../data/yoloGtold1/train/46323.png +../../data/yoloGtold1/train/46324.png +../../data/yoloGtold1/train/46325.png +../../data/yoloGtold1/train/46326.png +../../data/yoloGtold1/train/46327.png +../../data/yoloGtold1/train/46328.png +../../data/yoloGtold1/train/46329.png +../../data/yoloGtold1/train/46330.png +../../data/yoloGtold1/train/46331.png +../../data/yoloGtold1/train/46332.png +../../data/yoloGtold1/train/46333.png +../../data/yoloGtold1/train/46334.png +../../data/yoloGtold1/train/46335.png +../../data/yoloGtold1/train/46336.png +../../data/yoloGtold1/train/46337.png +../../data/yoloGtold1/train/46338.png +../../data/yoloGtold1/train/46339.png +../../data/yoloGtold1/train/46340.png +../../data/yoloGtold1/train/46341.png +../../data/yoloGtold1/train/46342.png +../../data/yoloGtold1/train/46343.png +../../data/yoloGtold1/train/46344.png +../../data/yoloGtold1/train/46345.png +../../data/yoloGtold1/train/46346.png +../../data/yoloGtold1/train/46347.png +../../data/yoloGtold1/train/46348.png +../../data/yoloGtold1/train/46349.png +../../data/yoloGtold1/train/46350.png +../../data/yoloGtold1/train/46351.png +../../data/yoloGtold1/train/46352.png +../../data/yoloGtold1/train/46353.png +../../data/yoloGtold1/train/46354.png +../../data/yoloGtold1/train/46355.png +../../data/yoloGtold1/train/46356.png +../../data/yoloGtold1/train/46357.png +../../data/yoloGtold1/train/46358.png +../../data/yoloGtold1/train/46359.png +../../data/yoloGtold1/train/46360.png +../../data/yoloGtold1/train/46361.png +../../data/yoloGtold1/train/46362.png +../../data/yoloGtold1/train/46363.png +../../data/yoloGtold1/train/46364.png +../../data/yoloGtold1/train/46365.png +../../data/yoloGtold1/train/46366.png +../../data/yoloGtold1/train/46367.png +../../data/yoloGtold1/train/46368.png +../../data/yoloGtold1/train/46369.png +../../data/yoloGtold1/train/46370.png +../../data/yoloGtold1/train/46371.png +../../data/yoloGtold1/train/46372.png +../../data/yoloGtold1/train/46373.png +../../data/yoloGtold1/train/46374.png +../../data/yoloGtold1/train/46375.png +../../data/yoloGtold1/train/46376.png +../../data/yoloGtold1/train/46377.png +../../data/yoloGtold1/train/46378.png +../../data/yoloGtold1/train/46379.png +../../data/yoloGtold1/train/46380.png +../../data/yoloGtold1/train/46381.png +../../data/yoloGtold1/train/46382.png +../../data/yoloGtold1/train/46383.png +../../data/yoloGtold1/train/46384.png +../../data/yoloGtold1/train/46385.png +../../data/yoloGtold1/train/46386.png +../../data/yoloGtold1/train/46387.png +../../data/yoloGtold1/train/46388.png +../../data/yoloGtold1/train/46389.png +../../data/yoloGtold1/train/46390.png +../../data/yoloGtold1/train/46391.png +../../data/yoloGtold1/train/46392.png +../../data/yoloGtold1/train/46393.png +../../data/yoloGtold1/train/46394.png +../../data/yoloGtold1/train/46395.png +../../data/yoloGtold1/train/46396.png +../../data/yoloGtold1/train/46397.png +../../data/yoloGtold1/train/46398.png +../../data/yoloGtold1/train/46399.png +../../data/yoloGtold1/train/46400.png +../../data/yoloGtold1/train/46401.png +../../data/yoloGtold1/train/46402.png +../../data/yoloGtold1/train/46403.png +../../data/yoloGtold1/train/46404.png +../../data/yoloGtold1/train/46405.png +../../data/yoloGtold1/train/46406.png +../../data/yoloGtold1/train/46407.png +../../data/yoloGtold1/train/46408.png +../../data/yoloGtold1/train/46409.png +../../data/yoloGtold1/train/46410.png +../../data/yoloGtold1/train/46411.png +../../data/yoloGtold1/train/46412.png +../../data/yoloGtold1/train/46413.png +../../data/yoloGtold1/train/46414.png +../../data/yoloGtold1/train/46415.png +../../data/yoloGtold1/train/46416.png +../../data/yoloGtold1/train/46417.png +../../data/yoloGtold1/train/46418.png +../../data/yoloGtold1/train/46419.png +../../data/yoloGtold1/train/46420.png +../../data/yoloGtold1/train/46421.png +../../data/yoloGtold1/train/46422.png +../../data/yoloGtold1/train/46423.png +../../data/yoloGtold1/train/46424.png +../../data/yoloGtold1/train/46425.png +../../data/yoloGtold1/train/46426.png +../../data/yoloGtold1/train/46427.png +../../data/yoloGtold1/train/46428.png +../../data/yoloGtold1/train/46429.png +../../data/yoloGtold1/train/46430.png +../../data/yoloGtold1/train/46431.png +../../data/yoloGtold1/train/46432.png +../../data/yoloGtold1/train/46433.png +../../data/yoloGtold1/train/46434.png +../../data/yoloGtold1/train/46435.png +../../data/yoloGtold1/train/46436.png +../../data/yoloGtold1/train/46437.png +../../data/yoloGtold1/train/46438.png +../../data/yoloGtold1/train/46439.png +../../data/yoloGtold1/train/46440.png +../../data/yoloGtold1/train/46441.png +../../data/yoloGtold1/train/46442.png +../../data/yoloGtold1/train/46443.png +../../data/yoloGtold1/train/46444.png +../../data/yoloGtold1/train/46445.png +../../data/yoloGtold1/train/46446.png +../../data/yoloGtold1/train/46447.png +../../data/yoloGtold1/train/46448.png +../../data/yoloGtold1/train/46449.png +../../data/yoloGtold1/train/46450.png +../../data/yoloGtold1/train/46451.png +../../data/yoloGtold1/train/46452.png +../../data/yoloGtold1/train/46453.png +../../data/yoloGtold1/train/46454.png +../../data/yoloGtold1/train/46455.png +../../data/yoloGtold1/train/46456.png +../../data/yoloGtold1/train/46457.png +../../data/yoloGtold1/train/46458.png +../../data/yoloGtold1/train/46459.png +../../data/yoloGtold1/train/46460.png +../../data/yoloGtold1/train/46461.png +../../data/yoloGtold1/train/46462.png +../../data/yoloGtold1/train/46463.png +../../data/yoloGtold1/train/46464.png +../../data/yoloGtold1/train/46465.png +../../data/yoloGtold1/train/46466.png +../../data/yoloGtold1/train/46467.png +../../data/yoloGtold1/train/46468.png +../../data/yoloGtold1/train/46469.png +../../data/yoloGtold1/train/46470.png +../../data/yoloGtold1/train/46471.png +../../data/yoloGtold1/train/46472.png +../../data/yoloGtold1/train/46473.png +../../data/yoloGtold1/train/46474.png +../../data/yoloGtold1/train/46475.png +../../data/yoloGtold1/train/46476.png +../../data/yoloGtold1/train/46477.png +../../data/yoloGtold1/train/46478.png +../../data/yoloGtold1/train/46479.png +../../data/yoloGtold1/train/46480.png +../../data/yoloGtold1/train/46481.png +../../data/yoloGtold1/train/46482.png +../../data/yoloGtold1/train/46483.png +../../data/yoloGtold1/train/46484.png +../../data/yoloGtold1/train/46485.png +../../data/yoloGtold1/train/46486.png +../../data/yoloGtold1/train/46487.png +../../data/yoloGtold1/train/46488.png +../../data/yoloGtold1/train/46489.png +../../data/yoloGtold1/train/46490.png +../../data/yoloGtold1/train/46491.png +../../data/yoloGtold1/train/46492.png +../../data/yoloGtold1/train/46493.png +../../data/yoloGtold1/train/46494.png +../../data/yoloGtold1/train/46495.png +../../data/yoloGtold1/train/46496.png +../../data/yoloGtold1/train/46497.png +../../data/yoloGtold1/train/46498.png +../../data/yoloGtold1/train/46499.png +../../data/yoloGtold1/train/46500.png +../../data/yoloGtold1/train/46501.png +../../data/yoloGtold1/train/46502.png +../../data/yoloGtold1/train/46503.png +../../data/yoloGtold1/train/46504.png +../../data/yoloGtold1/train/46505.png +../../data/yoloGtold1/train/46506.png +../../data/yoloGtold1/train/46507.png +../../data/yoloGtold1/train/46508.png +../../data/yoloGtold1/train/46509.png +../../data/yoloGtold1/train/46510.png +../../data/yoloGtold1/train/46511.png +../../data/yoloGtold1/train/46512.png +../../data/yoloGtold1/train/46513.png +../../data/yoloGtold1/train/46514.png +../../data/yoloGtold1/train/46515.png +../../data/yoloGtold1/train/46516.png +../../data/yoloGtold1/train/46517.png +../../data/yoloGtold1/train/46518.png +../../data/yoloGtold1/train/46519.png +../../data/yoloGtold1/train/46520.png +../../data/yoloGtold1/train/46521.png +../../data/yoloGtold1/train/46522.png +../../data/yoloGtold1/train/46523.png +../../data/yoloGtold1/train/46524.png +../../data/yoloGtold1/train/46525.png +../../data/yoloGtold1/train/46526.png +../../data/yoloGtold1/train/46527.png +../../data/yoloGtold1/train/46528.png +../../data/yoloGtold1/train/46529.png +../../data/yoloGtold1/train/46530.png +../../data/yoloGtold1/train/46531.png +../../data/yoloGtold1/train/46532.png +../../data/yoloGtold1/train/46533.png +../../data/yoloGtold1/train/46534.png +../../data/yoloGtold1/train/46535.png +../../data/yoloGtold1/train/46536.png +../../data/yoloGtold1/train/46537.png +../../data/yoloGtold1/train/46538.png +../../data/yoloGtold1/train/46539.png +../../data/yoloGtold1/train/46540.png +../../data/yoloGtold1/train/46541.png +../../data/yoloGtold1/train/46542.png +../../data/yoloGtold1/train/46543.png +../../data/yoloGtold1/train/46544.png +../../data/yoloGtold1/train/46545.png +../../data/yoloGtold1/train/46546.png +../../data/yoloGtold1/train/46547.png +../../data/yoloGtold1/train/46548.png +../../data/yoloGtold1/train/46549.png +../../data/yoloGtold1/train/46550.png +../../data/yoloGtold1/train/46551.png +../../data/yoloGtold1/train/46552.png +../../data/yoloGtold1/train/46553.png +../../data/yoloGtold1/train/46554.png +../../data/yoloGtold1/train/46555.png +../../data/yoloGtold1/train/46556.png +../../data/yoloGtold1/train/46557.png +../../data/yoloGtold1/train/46558.png +../../data/yoloGtold1/train/46559.png +../../data/yoloGtold1/train/46560.png +../../data/yoloGtold1/train/46561.png +../../data/yoloGtold1/train/46562.png +../../data/yoloGtold1/train/46563.png +../../data/yoloGtold1/train/46564.png +../../data/yoloGtold1/train/46565.png +../../data/yoloGtold1/train/46566.png +../../data/yoloGtold1/train/46567.png +../../data/yoloGtold1/train/46568.png +../../data/yoloGtold1/train/46569.png +../../data/yoloGtold1/train/46570.png +../../data/yoloGtold1/train/46571.png +../../data/yoloGtold1/train/46572.png +../../data/yoloGtold1/train/46573.png +../../data/yoloGtold1/train/46574.png +../../data/yoloGtold1/train/46575.png +../../data/yoloGtold1/train/46576.png +../../data/yoloGtold1/train/46577.png +../../data/yoloGtold1/train/46578.png +../../data/yoloGtold1/train/46579.png +../../data/yoloGtold1/train/46580.png +../../data/yoloGtold1/train/46581.png +../../data/yoloGtold1/train/46582.png +../../data/yoloGtold1/train/46583.png +../../data/yoloGtold1/train/46584.png +../../data/yoloGtold1/train/46585.png +../../data/yoloGtold1/train/46586.png +../../data/yoloGtold1/train/46587.png +../../data/yoloGtold1/train/46588.png +../../data/yoloGtold1/train/46589.png +../../data/yoloGtold1/train/46590.png +../../data/yoloGtold1/train/46591.png +../../data/yoloGtold1/train/46592.png +../../data/yoloGtold1/train/46593.png +../../data/yoloGtold1/train/46594.png +../../data/yoloGtold1/train/46595.png +../../data/yoloGtold1/train/46596.png +../../data/yoloGtold1/train/46597.png +../../data/yoloGtold1/train/46598.png +../../data/yoloGtold1/train/46599.png +../../data/yoloGtold1/train/46600.png +../../data/yoloGtold1/train/46601.png +../../data/yoloGtold1/train/46602.png +../../data/yoloGtold1/train/46603.png +../../data/yoloGtold1/train/46604.png +../../data/yoloGtold1/train/46605.png +../../data/yoloGtold1/train/46606.png +../../data/yoloGtold1/train/46607.png +../../data/yoloGtold1/train/46608.png +../../data/yoloGtold1/train/46609.png +../../data/yoloGtold1/train/46610.png +../../data/yoloGtold1/train/46611.png +../../data/yoloGtold1/train/46612.png +../../data/yoloGtold1/train/46613.png +../../data/yoloGtold1/train/46614.png +../../data/yoloGtold1/train/46615.png +../../data/yoloGtold1/train/46616.png +../../data/yoloGtold1/train/46617.png +../../data/yoloGtold1/train/46618.png +../../data/yoloGtold1/train/46619.png +../../data/yoloGtold1/train/46620.png +../../data/yoloGtold1/train/46621.png +../../data/yoloGtold1/train/46622.png +../../data/yoloGtold1/train/46623.png +../../data/yoloGtold1/train/46624.png +../../data/yoloGtold1/train/46625.png +../../data/yoloGtold1/train/46626.png +../../data/yoloGtold1/train/46627.png +../../data/yoloGtold1/train/46628.png +../../data/yoloGtold1/train/46629.png +../../data/yoloGtold1/train/46630.png +../../data/yoloGtold1/train/46631.png +../../data/yoloGtold1/train/46632.png +../../data/yoloGtold1/train/46633.png +../../data/yoloGtold1/train/46634.png +../../data/yoloGtold1/train/46635.png +../../data/yoloGtold1/train/46636.png +../../data/yoloGtold1/train/46637.png +../../data/yoloGtold1/train/46638.png +../../data/yoloGtold1/train/46639.png +../../data/yoloGtold1/train/46640.png +../../data/yoloGtold1/train/46641.png +../../data/yoloGtold1/train/46642.png +../../data/yoloGtold1/train/46643.png +../../data/yoloGtold1/train/46644.png +../../data/yoloGtold1/train/46645.png +../../data/yoloGtold1/train/46646.png +../../data/yoloGtold1/train/46647.png +../../data/yoloGtold1/train/46648.png +../../data/yoloGtold1/train/46649.png +../../data/yoloGtold1/train/46650.png +../../data/yoloGtold1/train/46651.png +../../data/yoloGtold1/train/46652.png +../../data/yoloGtold1/train/46653.png +../../data/yoloGtold1/train/46654.png +../../data/yoloGtold1/train/46655.png +../../data/yoloGtold1/train/46656.png +../../data/yoloGtold1/train/46657.png +../../data/yoloGtold1/train/46658.png +../../data/yoloGtold1/train/46659.png +../../data/yoloGtold1/train/46660.png +../../data/yoloGtold1/train/46661.png +../../data/yoloGtold1/train/46662.png +../../data/yoloGtold1/train/46663.png +../../data/yoloGtold1/train/46664.png +../../data/yoloGtold1/train/46665.png +../../data/yoloGtold1/train/46666.png +../../data/yoloGtold1/train/46667.png +../../data/yoloGtold1/train/46668.png +../../data/yoloGtold1/train/46669.png +../../data/yoloGtold1/train/46670.png +../../data/yoloGtold1/train/46671.png +../../data/yoloGtold1/train/46672.png +../../data/yoloGtold1/train/46673.png +../../data/yoloGtold1/train/46674.png +../../data/yoloGtold1/train/46675.png +../../data/yoloGtold1/train/46676.png +../../data/yoloGtold1/train/46677.png +../../data/yoloGtold1/train/46678.png +../../data/yoloGtold1/train/46679.png +../../data/yoloGtold1/train/46680.png +../../data/yoloGtold1/train/46681.png +../../data/yoloGtold1/train/46682.png +../../data/yoloGtold1/train/46683.png +../../data/yoloGtold1/train/46684.png +../../data/yoloGtold1/train/46685.png +../../data/yoloGtold1/train/46686.png +../../data/yoloGtold1/train/46687.png +../../data/yoloGtold1/train/46688.png +../../data/yoloGtold1/train/46689.png +../../data/yoloGtold1/train/46690.png +../../data/yoloGtold1/train/46691.png +../../data/yoloGtold1/train/46692.png +../../data/yoloGtold1/train/46693.png +../../data/yoloGtold1/train/46694.png +../../data/yoloGtold1/train/46695.png +../../data/yoloGtold1/train/46696.png +../../data/yoloGtold1/train/46697.png +../../data/yoloGtold1/train/46698.png +../../data/yoloGtold1/train/46699.png +../../data/yoloGtold1/train/46700.png +../../data/yoloGtold1/train/46701.png +../../data/yoloGtold1/train/46702.png +../../data/yoloGtold1/train/46703.png +../../data/yoloGtold1/train/46704.png +../../data/yoloGtold1/train/46705.png +../../data/yoloGtold1/train/46706.png +../../data/yoloGtold1/train/46707.png +../../data/yoloGtold1/train/46708.png +../../data/yoloGtold1/train/46709.png +../../data/yoloGtold1/train/46710.png +../../data/yoloGtold1/train/46711.png +../../data/yoloGtold1/train/46712.png +../../data/yoloGtold1/train/46713.png +../../data/yoloGtold1/train/46714.png +../../data/yoloGtold1/train/46715.png +../../data/yoloGtold1/train/46716.png +../../data/yoloGtold1/train/46717.png +../../data/yoloGtold1/train/46718.png +../../data/yoloGtold1/train/46719.png +../../data/yoloGtold1/train/46720.png +../../data/yoloGtold1/train/46721.png +../../data/yoloGtold1/train/46722.png +../../data/yoloGtold1/train/46723.png +../../data/yoloGtold1/train/46724.png +../../data/yoloGtold1/train/46725.png +../../data/yoloGtold1/train/46726.png +../../data/yoloGtold1/train/46727.png +../../data/yoloGtold1/train/46728.png +../../data/yoloGtold1/train/46729.png +../../data/yoloGtold1/train/46730.png +../../data/yoloGtold1/train/46731.png +../../data/yoloGtold1/train/46732.png +../../data/yoloGtold1/train/46733.png +../../data/yoloGtold1/train/46734.png +../../data/yoloGtold1/train/46735.png +../../data/yoloGtold1/train/46736.png +../../data/yoloGtold1/train/46737.png +../../data/yoloGtold1/train/46738.png +../../data/yoloGtold1/train/46739.png +../../data/yoloGtold1/train/46740.png +../../data/yoloGtold1/train/46741.png +../../data/yoloGtold1/train/46742.png +../../data/yoloGtold1/train/46743.png +../../data/yoloGtold1/train/46744.png +../../data/yoloGtold1/train/46745.png +../../data/yoloGtold1/train/46746.png +../../data/yoloGtold1/train/46747.png +../../data/yoloGtold1/train/46748.png +../../data/yoloGtold1/train/46749.png +../../data/yoloGtold1/train/46750.png +../../data/yoloGtold1/train/46751.png +../../data/yoloGtold1/train/46752.png +../../data/yoloGtold1/train/46753.png +../../data/yoloGtold1/train/46754.png +../../data/yoloGtold1/train/46755.png +../../data/yoloGtold1/train/46756.png +../../data/yoloGtold1/train/46757.png +../../data/yoloGtold1/train/46758.png +../../data/yoloGtold1/train/46759.png +../../data/yoloGtold1/train/46760.png +../../data/yoloGtold1/train/46761.png +../../data/yoloGtold1/train/46762.png +../../data/yoloGtold1/train/46763.png +../../data/yoloGtold1/train/46764.png +../../data/yoloGtold1/train/46765.png +../../data/yoloGtold1/train/46766.png +../../data/yoloGtold1/train/46767.png +../../data/yoloGtold1/train/46768.png +../../data/yoloGtold1/train/46769.png +../../data/yoloGtold1/train/46770.png +../../data/yoloGtold1/train/46771.png +../../data/yoloGtold1/train/46772.png +../../data/yoloGtold1/train/46773.png +../../data/yoloGtold1/train/46774.png +../../data/yoloGtold1/train/46775.png +../../data/yoloGtold1/train/46776.png +../../data/yoloGtold1/train/46777.png +../../data/yoloGtold1/train/46778.png +../../data/yoloGtold1/train/46779.png +../../data/yoloGtold1/train/46780.png +../../data/yoloGtold1/train/46781.png +../../data/yoloGtold1/train/46782.png +../../data/yoloGtold1/train/46783.png +../../data/yoloGtold1/train/46784.png +../../data/yoloGtold1/train/46785.png +../../data/yoloGtold1/train/46786.png +../../data/yoloGtold1/train/46787.png +../../data/yoloGtold1/train/46788.png +../../data/yoloGtold1/train/46789.png +../../data/yoloGtold1/train/46790.png +../../data/yoloGtold1/train/46791.png +../../data/yoloGtold1/train/46792.png +../../data/yoloGtold1/train/46793.png +../../data/yoloGtold1/train/46794.png +../../data/yoloGtold1/train/46795.png +../../data/yoloGtold1/train/46796.png +../../data/yoloGtold1/train/46797.png +../../data/yoloGtold1/train/46798.png +../../data/yoloGtold1/train/46799.png +../../data/yoloGtold1/train/46800.png +../../data/yoloGtold1/train/46801.png +../../data/yoloGtold1/train/46802.png +../../data/yoloGtold1/train/46803.png +../../data/yoloGtold1/train/46804.png +../../data/yoloGtold1/train/46805.png +../../data/yoloGtold1/train/46806.png +../../data/yoloGtold1/train/46807.png +../../data/yoloGtold1/train/46808.png +../../data/yoloGtold1/train/46809.png +../../data/yoloGtold1/train/46810.png +../../data/yoloGtold1/train/46811.png +../../data/yoloGtold1/train/46812.png +../../data/yoloGtold1/train/46813.png +../../data/yoloGtold1/train/46814.png +../../data/yoloGtold1/train/46815.png +../../data/yoloGtold1/train/46816.png +../../data/yoloGtold1/train/46817.png +../../data/yoloGtold1/train/46818.png +../../data/yoloGtold1/train/46819.png +../../data/yoloGtold1/train/46820.png +../../data/yoloGtold1/train/46821.png +../../data/yoloGtold1/train/46822.png +../../data/yoloGtold1/train/46823.png +../../data/yoloGtold1/train/46824.png +../../data/yoloGtold1/train/46825.png +../../data/yoloGtold1/train/46826.png +../../data/yoloGtold1/train/46827.png +../../data/yoloGtold1/train/46828.png +../../data/yoloGtold1/train/46829.png +../../data/yoloGtold1/train/46830.png +../../data/yoloGtold1/train/46831.png +../../data/yoloGtold1/train/46832.png +../../data/yoloGtold1/train/46833.png +../../data/yoloGtold1/train/46834.png +../../data/yoloGtold1/train/46835.png +../../data/yoloGtold1/train/46836.png +../../data/yoloGtold1/train/46837.png +../../data/yoloGtold1/train/46838.png +../../data/yoloGtold1/train/46839.png +../../data/yoloGtold1/train/46840.png +../../data/yoloGtold1/train/46841.png +../../data/yoloGtold1/train/46842.png +../../data/yoloGtold1/train/46843.png +../../data/yoloGtold1/train/46844.png +../../data/yoloGtold1/train/46845.png +../../data/yoloGtold1/train/46846.png +../../data/yoloGtold1/train/46847.png +../../data/yoloGtold1/train/46848.png +../../data/yoloGtold1/train/46849.png +../../data/yoloGtold1/train/46850.png +../../data/yoloGtold1/train/46851.png +../../data/yoloGtold1/train/46852.png +../../data/yoloGtold1/train/46853.png +../../data/yoloGtold1/train/46854.png +../../data/yoloGtold1/train/46855.png +../../data/yoloGtold1/train/46856.png +../../data/yoloGtold1/train/46857.png +../../data/yoloGtold1/train/46858.png +../../data/yoloGtold1/train/46859.png +../../data/yoloGtold1/train/46860.png +../../data/yoloGtold1/train/46861.png +../../data/yoloGtold1/train/46862.png +../../data/yoloGtold1/train/46863.png +../../data/yoloGtold1/train/46864.png +../../data/yoloGtold1/train/46865.png +../../data/yoloGtold1/train/46866.png +../../data/yoloGtold1/train/46867.png +../../data/yoloGtold1/train/46868.png +../../data/yoloGtold1/train/46869.png +../../data/yoloGtold1/train/46870.png +../../data/yoloGtold1/train/46871.png +../../data/yoloGtold1/train/46872.png +../../data/yoloGtold1/train/46873.png +../../data/yoloGtold1/train/46874.png +../../data/yoloGtold1/train/46875.png +../../data/yoloGtold1/train/46876.png +../../data/yoloGtold1/train/46877.png +../../data/yoloGtold1/train/46878.png +../../data/yoloGtold1/train/46879.png +../../data/yoloGtold1/train/46880.png +../../data/yoloGtold1/train/46881.png +../../data/yoloGtold1/train/46882.png +../../data/yoloGtold1/train/46883.png +../../data/yoloGtold1/train/46884.png +../../data/yoloGtold1/train/46885.png +../../data/yoloGtold1/train/46886.png +../../data/yoloGtold1/train/46887.png +../../data/yoloGtold1/train/46888.png +../../data/yoloGtold1/train/46889.png +../../data/yoloGtold1/train/46890.png +../../data/yoloGtold1/train/46891.png +../../data/yoloGtold1/train/46892.png +../../data/yoloGtold1/train/46893.png +../../data/yoloGtold1/train/46894.png +../../data/yoloGtold1/train/46895.png +../../data/yoloGtold1/train/46896.png +../../data/yoloGtold1/train/46897.png +../../data/yoloGtold1/train/46898.png +../../data/yoloGtold1/train/46899.png +../../data/yoloGtold1/train/46900.png +../../data/yoloGtold1/train/46901.png +../../data/yoloGtold1/train/46902.png +../../data/yoloGtold1/train/46903.png +../../data/yoloGtold1/train/46904.png +../../data/yoloGtold1/train/46905.png +../../data/yoloGtold1/train/46906.png +../../data/yoloGtold1/train/46907.png +../../data/yoloGtold1/train/46908.png +../../data/yoloGtold1/train/46909.png +../../data/yoloGtold1/train/46910.png +../../data/yoloGtold1/train/46911.png +../../data/yoloGtold1/train/46912.png +../../data/yoloGtold1/train/46913.png +../../data/yoloGtold1/train/46914.png +../../data/yoloGtold1/train/46915.png +../../data/yoloGtold1/train/46916.png +../../data/yoloGtold1/train/46917.png +../../data/yoloGtold1/train/46918.png +../../data/yoloGtold1/train/46919.png +../../data/yoloGtold1/train/46920.png +../../data/yoloGtold1/train/46921.png +../../data/yoloGtold1/train/46922.png +../../data/yoloGtold1/train/46923.png +../../data/yoloGtold1/train/46924.png +../../data/yoloGtold1/train/46925.png +../../data/yoloGtold1/train/46926.png +../../data/yoloGtold1/train/46927.png +../../data/yoloGtold1/train/46928.png +../../data/yoloGtold1/train/46929.png +../../data/yoloGtold1/train/46930.png +../../data/yoloGtold1/train/46931.png +../../data/yoloGtold1/train/46932.png +../../data/yoloGtold1/train/46933.png +../../data/yoloGtold1/train/46934.png +../../data/yoloGtold1/train/46935.png +../../data/yoloGtold1/train/46936.png +../../data/yoloGtold1/train/46937.png +../../data/yoloGtold1/train/46938.png +../../data/yoloGtold1/train/46939.png +../../data/yoloGtold1/train/46940.png +../../data/yoloGtold1/train/46941.png +../../data/yoloGtold1/train/46942.png +../../data/yoloGtold1/train/46943.png +../../data/yoloGtold1/train/46944.png +../../data/yoloGtold1/train/46945.png +../../data/yoloGtold1/train/46946.png +../../data/yoloGtold1/train/46947.png +../../data/yoloGtold1/train/46948.png +../../data/yoloGtold1/train/46949.png +../../data/yoloGtold1/train/46950.png +../../data/yoloGtold1/train/46951.png +../../data/yoloGtold1/train/46952.png +../../data/yoloGtold1/train/46953.png +../../data/yoloGtold1/train/46954.png +../../data/yoloGtold1/train/46955.png +../../data/yoloGtold1/train/46956.png +../../data/yoloGtold1/train/46957.png +../../data/yoloGtold1/train/46958.png +../../data/yoloGtold1/train/46959.png +../../data/yoloGtold1/train/46960.png +../../data/yoloGtold1/train/46961.png +../../data/yoloGtold1/train/46962.png +../../data/yoloGtold1/train/46963.png +../../data/yoloGtold1/train/46964.png +../../data/yoloGtold1/train/46965.png +../../data/yoloGtold1/train/46966.png +../../data/yoloGtold1/train/46967.png +../../data/yoloGtold1/train/46968.png +../../data/yoloGtold1/train/46969.png +../../data/yoloGtold1/train/46970.png +../../data/yoloGtold1/train/46971.png +../../data/yoloGtold1/train/46972.png +../../data/yoloGtold1/train/46973.png +../../data/yoloGtold1/train/46974.png +../../data/yoloGtold1/train/46975.png +../../data/yoloGtold1/train/46976.png +../../data/yoloGtold1/train/46977.png +../../data/yoloGtold1/train/46978.png +../../data/yoloGtold1/train/46979.png +../../data/yoloGtold1/train/46980.png +../../data/yoloGtold1/train/46981.png +../../data/yoloGtold1/train/46982.png +../../data/yoloGtold1/train/46983.png +../../data/yoloGtold1/train/46984.png +../../data/yoloGtold1/train/46985.png +../../data/yoloGtold1/train/46986.png +../../data/yoloGtold1/train/46987.png +../../data/yoloGtold1/train/46988.png +../../data/yoloGtold1/train/46989.png +../../data/yoloGtold1/train/46990.png +../../data/yoloGtold1/train/46991.png +../../data/yoloGtold1/train/46992.png +../../data/yoloGtold1/train/46993.png +../../data/yoloGtold1/train/46994.png +../../data/yoloGtold1/train/46995.png +../../data/yoloGtold1/train/46996.png +../../data/yoloGtold1/train/46997.png +../../data/yoloGtold1/train/46998.png +../../data/yoloGtold1/train/46999.png +../../data/yoloGtold1/train/47000.png +../../data/yoloGtold1/train/47001.png +../../data/yoloGtold1/train/47002.png +../../data/yoloGtold1/train/47003.png +../../data/yoloGtold1/train/47004.png +../../data/yoloGtold1/train/47005.png +../../data/yoloGtold1/train/47006.png +../../data/yoloGtold1/train/47007.png +../../data/yoloGtold1/train/47008.png +../../data/yoloGtold1/train/47009.png +../../data/yoloGtold1/train/47010.png +../../data/yoloGtold1/train/47011.png +../../data/yoloGtold1/train/47012.png +../../data/yoloGtold1/train/47013.png +../../data/yoloGtold1/train/47014.png +../../data/yoloGtold1/train/47015.png +../../data/yoloGtold1/train/47016.png +../../data/yoloGtold1/train/47017.png +../../data/yoloGtold1/train/47018.png +../../data/yoloGtold1/train/47019.png +../../data/yoloGtold1/train/47020.png +../../data/yoloGtold1/train/47021.png +../../data/yoloGtold1/train/47022.png +../../data/yoloGtold1/train/47023.png +../../data/yoloGtold1/train/47024.png +../../data/yoloGtold1/train/47025.png +../../data/yoloGtold1/train/47026.png +../../data/yoloGtold1/train/47027.png +../../data/yoloGtold1/train/47028.png +../../data/yoloGtold1/train/47029.png +../../data/yoloGtold1/train/47030.png +../../data/yoloGtold1/train/47031.png +../../data/yoloGtold1/train/47032.png +../../data/yoloGtold1/train/47033.png +../../data/yoloGtold1/train/47034.png +../../data/yoloGtold1/train/47035.png +../../data/yoloGtold1/train/47036.png +../../data/yoloGtold1/train/47037.png +../../data/yoloGtold1/train/47038.png +../../data/yoloGtold1/train/47039.png +../../data/yoloGtold1/train/47040.png +../../data/yoloGtold1/train/47041.png +../../data/yoloGtold1/train/47042.png +../../data/yoloGtold1/train/47043.png +../../data/yoloGtold1/train/47044.png +../../data/yoloGtold1/train/47045.png +../../data/yoloGtold1/train/47046.png +../../data/yoloGtold1/train/47047.png +../../data/yoloGtold1/train/47048.png +../../data/yoloGtold1/train/47049.png +../../data/yoloGtold1/train/47050.png +../../data/yoloGtold1/train/47051.png +../../data/yoloGtold1/train/47052.png +../../data/yoloGtold1/train/47053.png +../../data/yoloGtold1/train/47054.png +../../data/yoloGtold1/train/47055.png +../../data/yoloGtold1/train/47056.png +../../data/yoloGtold1/train/47057.png +../../data/yoloGtold1/train/47058.png +../../data/yoloGtold1/train/47059.png +../../data/yoloGtold1/train/47060.png +../../data/yoloGtold1/train/47061.png +../../data/yoloGtold1/train/47062.png +../../data/yoloGtold1/train/47063.png +../../data/yoloGtold1/train/47064.png +../../data/yoloGtold1/train/47065.png +../../data/yoloGtold1/train/47066.png +../../data/yoloGtold1/train/47067.png +../../data/yoloGtold1/train/47068.png +../../data/yoloGtold1/train/47069.png +../../data/yoloGtold1/train/47070.png +../../data/yoloGtold1/train/47071.png +../../data/yoloGtold1/train/47072.png +../../data/yoloGtold1/train/47073.png +../../data/yoloGtold1/train/47074.png +../../data/yoloGtold1/train/47075.png +../../data/yoloGtold1/train/47076.png +../../data/yoloGtold1/train/47077.png +../../data/yoloGtold1/train/47078.png +../../data/yoloGtold1/train/47079.png +../../data/yoloGtold1/train/47080.png +../../data/yoloGtold1/train/47081.png +../../data/yoloGtold1/train/47082.png +../../data/yoloGtold1/train/47083.png +../../data/yoloGtold1/train/47084.png +../../data/yoloGtold1/train/47085.png +../../data/yoloGtold1/train/47086.png +../../data/yoloGtold1/train/47087.png +../../data/yoloGtold1/train/47088.png +../../data/yoloGtold1/train/47089.png +../../data/yoloGtold1/train/47090.png +../../data/yoloGtold1/train/47091.png +../../data/yoloGtold1/train/47092.png +../../data/yoloGtold1/train/47093.png +../../data/yoloGtold1/train/47094.png +../../data/yoloGtold1/train/47095.png +../../data/yoloGtold1/train/47096.png +../../data/yoloGtold1/train/47097.png +../../data/yoloGtold1/train/47098.png +../../data/yoloGtold1/train/47099.png +../../data/yoloGtold1/train/47100.png +../../data/yoloGtold1/train/47101.png +../../data/yoloGtold1/train/47102.png +../../data/yoloGtold1/train/47103.png +../../data/yoloGtold1/train/47104.png +../../data/yoloGtold1/train/47105.png +../../data/yoloGtold1/train/47106.png +../../data/yoloGtold1/train/47107.png +../../data/yoloGtold1/train/47108.png +../../data/yoloGtold1/train/47109.png +../../data/yoloGtold1/train/47110.png +../../data/yoloGtold1/train/47111.png +../../data/yoloGtold1/train/47112.png +../../data/yoloGtold1/train/47113.png +../../data/yoloGtold1/train/47114.png +../../data/yoloGtold1/train/47115.png +../../data/yoloGtold1/train/47116.png +../../data/yoloGtold1/train/47117.png +../../data/yoloGtold1/train/47118.png +../../data/yoloGtold1/train/47119.png +../../data/yoloGtold1/train/47120.png +../../data/yoloGtold1/train/47121.png +../../data/yoloGtold1/train/47122.png +../../data/yoloGtold1/train/47123.png +../../data/yoloGtold1/train/47124.png +../../data/yoloGtold1/train/47125.png +../../data/yoloGtold1/train/47126.png +../../data/yoloGtold1/train/47127.png +../../data/yoloGtold1/train/47128.png +../../data/yoloGtold1/train/47129.png +../../data/yoloGtold1/train/47130.png +../../data/yoloGtold1/train/47131.png +../../data/yoloGtold1/train/47132.png +../../data/yoloGtold1/train/47133.png +../../data/yoloGtold1/train/47134.png +../../data/yoloGtold1/train/47135.png +../../data/yoloGtold1/train/47136.png +../../data/yoloGtold1/train/47137.png +../../data/yoloGtold1/train/47138.png +../../data/yoloGtold1/train/47139.png +../../data/yoloGtold1/train/47140.png +../../data/yoloGtold1/train/47141.png +../../data/yoloGtold1/train/47142.png +../../data/yoloGtold1/train/47143.png +../../data/yoloGtold1/train/47144.png +../../data/yoloGtold1/train/47145.png +../../data/yoloGtold1/train/47146.png +../../data/yoloGtold1/train/47147.png +../../data/yoloGtold1/train/47148.png +../../data/yoloGtold1/train/47149.png +../../data/yoloGtold1/train/47150.png +../../data/yoloGtold1/train/47151.png +../../data/yoloGtold1/train/47152.png +../../data/yoloGtold1/train/47153.png +../../data/yoloGtold1/train/47154.png +../../data/yoloGtold1/train/47155.png +../../data/yoloGtold1/train/47156.png +../../data/yoloGtold1/train/47157.png +../../data/yoloGtold1/train/47158.png +../../data/yoloGtold1/train/47159.png +../../data/yoloGtold1/train/47160.png +../../data/yoloGtold1/train/47161.png +../../data/yoloGtold1/train/47162.png +../../data/yoloGtold1/train/47163.png +../../data/yoloGtold1/train/47164.png +../../data/yoloGtold1/train/47165.png +../../data/yoloGtold1/train/47166.png +../../data/yoloGtold1/train/47167.png +../../data/yoloGtold1/train/47168.png +../../data/yoloGtold1/train/47169.png +../../data/yoloGtold1/train/47170.png +../../data/yoloGtold1/train/47171.png +../../data/yoloGtold1/train/47172.png +../../data/yoloGtold1/train/47173.png +../../data/yoloGtold1/train/47174.png +../../data/yoloGtold1/train/47175.png +../../data/yoloGtold1/train/47176.png +../../data/yoloGtold1/train/47177.png +../../data/yoloGtold1/train/47178.png +../../data/yoloGtold1/train/47179.png +../../data/yoloGtold1/train/47180.png +../../data/yoloGtold1/train/47181.png +../../data/yoloGtold1/train/47182.png +../../data/yoloGtold1/train/47183.png +../../data/yoloGtold1/train/47184.png +../../data/yoloGtold1/train/47185.png +../../data/yoloGtold1/train/47186.png +../../data/yoloGtold1/train/47187.png +../../data/yoloGtold1/train/47188.png +../../data/yoloGtold1/train/47189.png +../../data/yoloGtold1/train/47190.png +../../data/yoloGtold1/train/47191.png +../../data/yoloGtold1/train/47192.png +../../data/yoloGtold1/train/47193.png +../../data/yoloGtold1/train/47194.png +../../data/yoloGtold1/train/47195.png +../../data/yoloGtold1/train/47196.png +../../data/yoloGtold1/train/47197.png +../../data/yoloGtold1/train/47198.png +../../data/yoloGtold1/train/47199.png +../../data/yoloGtold1/train/47200.png +../../data/yoloGtold1/train/47201.png +../../data/yoloGtold1/train/47202.png +../../data/yoloGtold1/train/47203.png +../../data/yoloGtold1/train/47204.png +../../data/yoloGtold1/train/47205.png +../../data/yoloGtold1/train/47206.png +../../data/yoloGtold1/train/47207.png +../../data/yoloGtold1/train/47208.png +../../data/yoloGtold1/train/47209.png +../../data/yoloGtold1/train/47210.png +../../data/yoloGtold1/train/47211.png +../../data/yoloGtold1/train/47212.png +../../data/yoloGtold1/train/47213.png +../../data/yoloGtold1/train/47214.png +../../data/yoloGtold1/train/47215.png +../../data/yoloGtold1/train/47216.png +../../data/yoloGtold1/train/47217.png +../../data/yoloGtold1/train/47218.png +../../data/yoloGtold1/train/47219.png +../../data/yoloGtold1/train/47220.png +../../data/yoloGtold1/train/47221.png +../../data/yoloGtold1/train/47222.png +../../data/yoloGtold1/train/47223.png +../../data/yoloGtold1/train/47224.png +../../data/yoloGtold1/train/47225.png +../../data/yoloGtold1/train/47226.png +../../data/yoloGtold1/train/47227.png +../../data/yoloGtold1/train/47228.png +../../data/yoloGtold1/train/47229.png +../../data/yoloGtold1/train/47230.png +../../data/yoloGtold1/train/47231.png +../../data/yoloGtold1/train/47232.png +../../data/yoloGtold1/train/47233.png +../../data/yoloGtold1/train/47234.png +../../data/yoloGtold1/train/47235.png +../../data/yoloGtold1/train/47236.png +../../data/yoloGtold1/train/47237.png +../../data/yoloGtold1/train/47238.png +../../data/yoloGtold1/train/47239.png +../../data/yoloGtold1/train/47240.png +../../data/yoloGtold1/train/47241.png +../../data/yoloGtold1/train/47242.png +../../data/yoloGtold1/train/47243.png +../../data/yoloGtold1/train/47244.png +../../data/yoloGtold1/train/47245.png +../../data/yoloGtold1/train/47246.png +../../data/yoloGtold1/train/47247.png +../../data/yoloGtold1/train/47248.png +../../data/yoloGtold1/train/47249.png +../../data/yoloGtold1/train/47250.png +../../data/yoloGtold1/train/47251.png +../../data/yoloGtold1/train/47252.png +../../data/yoloGtold1/train/47253.png +../../data/yoloGtold1/train/47254.png +../../data/yoloGtold1/train/47255.png +../../data/yoloGtold1/train/47256.png +../../data/yoloGtold1/train/47257.png +../../data/yoloGtold1/train/47258.png +../../data/yoloGtold1/train/47259.png +../../data/yoloGtold1/train/47260.png +../../data/yoloGtold1/train/47261.png +../../data/yoloGtold1/train/47262.png +../../data/yoloGtold1/train/47263.png +../../data/yoloGtold1/train/47264.png +../../data/yoloGtold1/train/47265.png +../../data/yoloGtold1/train/47266.png +../../data/yoloGtold1/train/47267.png +../../data/yoloGtold1/train/47268.png +../../data/yoloGtold1/train/47269.png +../../data/yoloGtold1/train/47270.png +../../data/yoloGtold1/train/47271.png +../../data/yoloGtold1/train/47272.png +../../data/yoloGtold1/train/47273.png +../../data/yoloGtold1/train/47274.png +../../data/yoloGtold1/train/47275.png +../../data/yoloGtold1/train/47276.png +../../data/yoloGtold1/train/47277.png +../../data/yoloGtold1/train/47278.png +../../data/yoloGtold1/train/47279.png +../../data/yoloGtold1/train/47280.png +../../data/yoloGtold1/train/47281.png +../../data/yoloGtold1/train/47282.png +../../data/yoloGtold1/train/47283.png +../../data/yoloGtold1/train/47284.png +../../data/yoloGtold1/train/47285.png +../../data/yoloGtold1/train/47286.png +../../data/yoloGtold1/train/47287.png +../../data/yoloGtold1/train/47288.png +../../data/yoloGtold1/train/47289.png +../../data/yoloGtold1/train/47290.png +../../data/yoloGtold1/train/47291.png +../../data/yoloGtold1/train/47292.png +../../data/yoloGtold1/train/47293.png +../../data/yoloGtold1/train/47294.png +../../data/yoloGtold1/train/47295.png +../../data/yoloGtold1/train/47296.png +../../data/yoloGtold1/train/47297.png +../../data/yoloGtold1/train/47298.png +../../data/yoloGtold1/train/47299.png +../../data/yoloGtold1/train/47300.png +../../data/yoloGtold1/train/47301.png +../../data/yoloGtold1/train/47302.png +../../data/yoloGtold1/train/47303.png +../../data/yoloGtold1/train/47304.png +../../data/yoloGtold1/train/47305.png +../../data/yoloGtold1/train/47306.png +../../data/yoloGtold1/train/47307.png +../../data/yoloGtold1/train/47308.png +../../data/yoloGtold1/train/47309.png +../../data/yoloGtold1/train/47310.png +../../data/yoloGtold1/train/47311.png +../../data/yoloGtold1/train/47312.png +../../data/yoloGtold1/train/47313.png +../../data/yoloGtold1/train/47314.png +../../data/yoloGtold1/train/47315.png +../../data/yoloGtold1/train/47316.png +../../data/yoloGtold1/train/47317.png +../../data/yoloGtold1/train/47318.png +../../data/yoloGtold1/train/47319.png +../../data/yoloGtold1/train/47320.png +../../data/yoloGtold1/train/47321.png +../../data/yoloGtold1/train/47322.png +../../data/yoloGtold1/train/47323.png +../../data/yoloGtold1/train/47324.png +../../data/yoloGtold1/train/47325.png +../../data/yoloGtold1/train/47326.png +../../data/yoloGtold1/train/47327.png +../../data/yoloGtold1/train/47328.png +../../data/yoloGtold1/train/47329.png +../../data/yoloGtold1/train/47330.png +../../data/yoloGtold1/train/47331.png +../../data/yoloGtold1/train/47332.png +../../data/yoloGtold1/train/47333.png +../../data/yoloGtold1/train/47334.png +../../data/yoloGtold1/train/47335.png +../../data/yoloGtold1/train/47336.png +../../data/yoloGtold1/train/47337.png +../../data/yoloGtold1/train/47338.png +../../data/yoloGtold1/train/47339.png +../../data/yoloGtold1/train/47340.png +../../data/yoloGtold1/train/47341.png +../../data/yoloGtold1/train/47342.png +../../data/yoloGtold1/train/47343.png +../../data/yoloGtold1/train/47344.png +../../data/yoloGtold1/train/47345.png +../../data/yoloGtold1/train/47346.png +../../data/yoloGtold1/train/47347.png +../../data/yoloGtold1/train/47348.png +../../data/yoloGtold1/train/47349.png +../../data/yoloGtold1/train/47350.png +../../data/yoloGtold1/train/47351.png +../../data/yoloGtold1/train/47352.png +../../data/yoloGtold1/train/47353.png +../../data/yoloGtold1/train/47354.png +../../data/yoloGtold1/train/47355.png +../../data/yoloGtold1/train/47356.png +../../data/yoloGtold1/train/47357.png +../../data/yoloGtold1/train/47358.png +../../data/yoloGtold1/train/47359.png +../../data/yoloGtold1/train/47360.png +../../data/yoloGtold1/train/47361.png +../../data/yoloGtold1/train/47362.png +../../data/yoloGtold1/train/47363.png +../../data/yoloGtold1/train/47364.png +../../data/yoloGtold1/train/47365.png +../../data/yoloGtold1/train/47366.png +../../data/yoloGtold1/train/47367.png +../../data/yoloGtold1/train/47368.png +../../data/yoloGtold1/train/47369.png +../../data/yoloGtold1/train/47370.png +../../data/yoloGtold1/train/47371.png +../../data/yoloGtold1/train/47372.png +../../data/yoloGtold1/train/47373.png +../../data/yoloGtold1/train/47374.png +../../data/yoloGtold1/train/47375.png +../../data/yoloGtold1/train/47376.png +../../data/yoloGtold1/train/47377.png +../../data/yoloGtold1/train/47378.png +../../data/yoloGtold1/train/47379.png +../../data/yoloGtold1/train/47380.png +../../data/yoloGtold1/train/47381.png +../../data/yoloGtold1/train/47382.png +../../data/yoloGtold1/train/47383.png +../../data/yoloGtold1/train/47384.png +../../data/yoloGtold1/train/47385.png +../../data/yoloGtold1/train/47386.png +../../data/yoloGtold1/train/47387.png +../../data/yoloGtold1/train/47388.png +../../data/yoloGtold1/train/47389.png +../../data/yoloGtold1/train/47390.png +../../data/yoloGtold1/train/47391.png +../../data/yoloGtold1/train/47392.png +../../data/yoloGtold1/train/47393.png +../../data/yoloGtold1/train/47394.png +../../data/yoloGtold1/train/47395.png +../../data/yoloGtold1/train/47396.png +../../data/yoloGtold1/train/47397.png +../../data/yoloGtold1/train/47398.png +../../data/yoloGtold1/train/47399.png +../../data/yoloGtold1/train/47400.png +../../data/yoloGtold1/train/47401.png +../../data/yoloGtold1/train/47402.png +../../data/yoloGtold1/train/47403.png +../../data/yoloGtold1/train/47404.png +../../data/yoloGtold1/train/47405.png +../../data/yoloGtold1/train/47406.png +../../data/yoloGtold1/train/47407.png +../../data/yoloGtold1/train/47408.png +../../data/yoloGtold1/train/47409.png +../../data/yoloGtold1/train/47410.png +../../data/yoloGtold1/train/47411.png +../../data/yoloGtold1/train/47412.png +../../data/yoloGtold1/train/47413.png +../../data/yoloGtold1/train/47414.png +../../data/yoloGtold1/train/47415.png +../../data/yoloGtold1/train/47416.png +../../data/yoloGtold1/train/47417.png +../../data/yoloGtold1/train/47418.png +../../data/yoloGtold1/train/47419.png +../../data/yoloGtold1/train/47420.png +../../data/yoloGtold1/train/47421.png +../../data/yoloGtold1/train/47422.png +../../data/yoloGtold1/train/47423.png +../../data/yoloGtold1/train/47424.png +../../data/yoloGtold1/train/47425.png +../../data/yoloGtold1/train/47426.png +../../data/yoloGtold1/train/47427.png +../../data/yoloGtold1/train/47428.png +../../data/yoloGtold1/train/47429.png +../../data/yoloGtold1/train/47430.png +../../data/yoloGtold1/train/47431.png +../../data/yoloGtold1/train/47432.png +../../data/yoloGtold1/train/47433.png +../../data/yoloGtold1/train/47434.png +../../data/yoloGtold1/train/47435.png +../../data/yoloGtold1/train/47436.png +../../data/yoloGtold1/train/47437.png +../../data/yoloGtold1/train/47438.png +../../data/yoloGtold1/train/47439.png +../../data/yoloGtold1/train/47440.png +../../data/yoloGtold1/train/47441.png +../../data/yoloGtold1/train/47442.png +../../data/yoloGtold1/train/47443.png +../../data/yoloGtold1/train/47444.png +../../data/yoloGtold1/train/47445.png +../../data/yoloGtold1/train/47446.png +../../data/yoloGtold1/train/47447.png +../../data/yoloGtold1/train/47448.png +../../data/yoloGtold1/train/47449.png +../../data/yoloGtold1/train/47450.png +../../data/yoloGtold1/train/47451.png +../../data/yoloGtold1/train/47452.png +../../data/yoloGtold1/train/47453.png +../../data/yoloGtold1/train/47454.png +../../data/yoloGtold1/train/47455.png +../../data/yoloGtold1/train/47456.png +../../data/yoloGtold1/train/47457.png +../../data/yoloGtold1/train/47458.png +../../data/yoloGtold1/train/47459.png +../../data/yoloGtold1/train/47460.png +../../data/yoloGtold1/train/47461.png +../../data/yoloGtold1/train/47462.png +../../data/yoloGtold1/train/47463.png +../../data/yoloGtold1/train/47464.png +../../data/yoloGtold1/train/47465.png +../../data/yoloGtold1/train/47466.png +../../data/yoloGtold1/train/47467.png +../../data/yoloGtold1/train/47468.png +../../data/yoloGtold1/train/47469.png +../../data/yoloGtold1/train/47470.png +../../data/yoloGtold1/train/47471.png +../../data/yoloGtold1/train/47472.png +../../data/yoloGtold1/train/47473.png +../../data/yoloGtold1/train/47474.png +../../data/yoloGtold1/train/47475.png +../../data/yoloGtold1/train/47476.png +../../data/yoloGtold1/train/47477.png +../../data/yoloGtold1/train/47478.png +../../data/yoloGtold1/train/47479.png +../../data/yoloGtold1/train/47480.png +../../data/yoloGtold1/train/47481.png +../../data/yoloGtold1/train/47482.png +../../data/yoloGtold1/train/47483.png +../../data/yoloGtold1/train/47484.png +../../data/yoloGtold1/train/47485.png +../../data/yoloGtold1/train/47486.png +../../data/yoloGtold1/train/47487.png +../../data/yoloGtold1/train/47488.png +../../data/yoloGtold1/train/47489.png +../../data/yoloGtold1/train/47490.png +../../data/yoloGtold1/train/47491.png +../../data/yoloGtold1/train/47492.png +../../data/yoloGtold1/train/47493.png +../../data/yoloGtold1/train/47494.png +../../data/yoloGtold1/train/47495.png +../../data/yoloGtold1/train/47496.png +../../data/yoloGtold1/train/47497.png +../../data/yoloGtold1/train/47498.png +../../data/yoloGtold1/train/47499.png +../../data/yoloGtold1/train/47500.png +../../data/yoloGtold1/train/47501.png +../../data/yoloGtold1/train/47502.png +../../data/yoloGtold1/train/47503.png +../../data/yoloGtold1/train/47504.png +../../data/yoloGtold1/train/47505.png +../../data/yoloGtold1/train/47506.png +../../data/yoloGtold1/train/47507.png +../../data/yoloGtold1/train/47508.png +../../data/yoloGtold1/train/47509.png +../../data/yoloGtold1/train/47510.png +../../data/yoloGtold1/train/47511.png +../../data/yoloGtold1/train/47512.png +../../data/yoloGtold1/train/47513.png +../../data/yoloGtold1/train/47514.png +../../data/yoloGtold1/train/47515.png +../../data/yoloGtold1/train/47516.png +../../data/yoloGtold1/train/47517.png +../../data/yoloGtold1/train/47518.png +../../data/yoloGtold1/train/47519.png +../../data/yoloGtold1/train/47520.png +../../data/yoloGtold1/train/47521.png +../../data/yoloGtold1/train/47522.png +../../data/yoloGtold1/train/47523.png +../../data/yoloGtold1/train/47524.png +../../data/yoloGtold1/train/47525.png +../../data/yoloGtold1/train/47526.png +../../data/yoloGtold1/train/47527.png +../../data/yoloGtold1/train/47528.png +../../data/yoloGtold1/train/47529.png +../../data/yoloGtold1/train/47530.png +../../data/yoloGtold1/train/47531.png +../../data/yoloGtold1/train/47532.png +../../data/yoloGtold1/train/47533.png +../../data/yoloGtold1/train/47534.png +../../data/yoloGtold1/train/47535.png +../../data/yoloGtold1/train/47536.png +../../data/yoloGtold1/train/47537.png +../../data/yoloGtold1/train/47538.png +../../data/yoloGtold1/train/47539.png +../../data/yoloGtold1/train/47540.png +../../data/yoloGtold1/train/47541.png +../../data/yoloGtold1/train/47542.png +../../data/yoloGtold1/train/47543.png +../../data/yoloGtold1/train/47544.png +../../data/yoloGtold1/train/47545.png +../../data/yoloGtold1/train/47546.png +../../data/yoloGtold1/train/47547.png +../../data/yoloGtold1/train/47548.png +../../data/yoloGtold1/train/47549.png +../../data/yoloGtold1/train/47550.png +../../data/yoloGtold1/train/47551.png +../../data/yoloGtold1/train/47552.png +../../data/yoloGtold1/train/47553.png +../../data/yoloGtold1/train/47554.png +../../data/yoloGtold1/train/47555.png +../../data/yoloGtold1/train/47556.png +../../data/yoloGtold1/train/47557.png +../../data/yoloGtold1/train/47558.png +../../data/yoloGtold1/train/47559.png +../../data/yoloGtold1/train/47560.png +../../data/yoloGtold1/train/47561.png +../../data/yoloGtold1/train/47562.png +../../data/yoloGtold1/train/47563.png +../../data/yoloGtold1/train/47564.png +../../data/yoloGtold1/train/47565.png +../../data/yoloGtold1/train/47566.png +../../data/yoloGtold1/train/47567.png +../../data/yoloGtold1/train/47568.png +../../data/yoloGtold1/train/47569.png +../../data/yoloGtold1/train/47570.png +../../data/yoloGtold1/train/47571.png +../../data/yoloGtold1/train/47572.png +../../data/yoloGtold1/train/47573.png +../../data/yoloGtold1/train/47574.png +../../data/yoloGtold1/train/47575.png +../../data/yoloGtold1/train/47576.png +../../data/yoloGtold1/train/47577.png +../../data/yoloGtold1/train/47578.png +../../data/yoloGtold1/train/47579.png +../../data/yoloGtold1/train/47580.png +../../data/yoloGtold1/train/47581.png +../../data/yoloGtold1/train/47582.png +../../data/yoloGtold1/train/47583.png +../../data/yoloGtold1/train/47584.png +../../data/yoloGtold1/train/47585.png +../../data/yoloGtold1/train/47586.png +../../data/yoloGtold1/train/47587.png +../../data/yoloGtold1/train/47588.png +../../data/yoloGtold1/train/47589.png +../../data/yoloGtold1/train/47590.png +../../data/yoloGtold1/train/47591.png +../../data/yoloGtold1/train/47592.png +../../data/yoloGtold1/train/47593.png +../../data/yoloGtold1/train/47594.png +../../data/yoloGtold1/train/47595.png +../../data/yoloGtold1/train/47596.png +../../data/yoloGtold1/train/47597.png +../../data/yoloGtold1/train/47598.png +../../data/yoloGtold1/train/47599.png +../../data/yoloGtold1/train/47600.png +../../data/yoloGtold1/train/47601.png +../../data/yoloGtold1/train/47602.png +../../data/yoloGtold1/train/47603.png +../../data/yoloGtold1/train/47604.png +../../data/yoloGtold1/train/47605.png +../../data/yoloGtold1/train/47606.png +../../data/yoloGtold1/train/47607.png +../../data/yoloGtold1/train/47608.png +../../data/yoloGtold1/train/47609.png +../../data/yoloGtold1/train/47610.png +../../data/yoloGtold1/train/47611.png +../../data/yoloGtold1/train/47612.png +../../data/yoloGtold1/train/47613.png +../../data/yoloGtold1/train/47614.png +../../data/yoloGtold1/train/47615.png +../../data/yoloGtold1/train/47616.png +../../data/yoloGtold1/train/47617.png +../../data/yoloGtold1/train/47618.png +../../data/yoloGtold1/train/47619.png +../../data/yoloGtold1/train/47620.png +../../data/yoloGtold1/train/47621.png +../../data/yoloGtold1/train/47622.png +../../data/yoloGtold1/train/47623.png +../../data/yoloGtold1/train/47624.png +../../data/yoloGtold1/train/47625.png +../../data/yoloGtold1/train/47626.png +../../data/yoloGtold1/train/47627.png +../../data/yoloGtold1/train/47628.png +../../data/yoloGtold1/train/47629.png +../../data/yoloGtold1/train/47630.png +../../data/yoloGtold1/train/47631.png +../../data/yoloGtold1/train/47632.png +../../data/yoloGtold1/train/47633.png +../../data/yoloGtold1/train/47634.png +../../data/yoloGtold1/train/47635.png +../../data/yoloGtold1/train/47636.png +../../data/yoloGtold1/train/47637.png +../../data/yoloGtold1/train/47638.png +../../data/yoloGtold1/train/47639.png +../../data/yoloGtold1/train/47640.png +../../data/yoloGtold1/train/47641.png +../../data/yoloGtold1/train/47642.png +../../data/yoloGtold1/train/47643.png +../../data/yoloGtold1/train/47644.png +../../data/yoloGtold1/train/47645.png +../../data/yoloGtold1/train/47646.png +../../data/yoloGtold1/train/47647.png +../../data/yoloGtold1/train/47648.png +../../data/yoloGtold1/train/47649.png +../../data/yoloGtold1/train/47650.png +../../data/yoloGtold1/train/47651.png +../../data/yoloGtold1/train/47652.png +../../data/yoloGtold1/train/47653.png +../../data/yoloGtold1/train/47654.png +../../data/yoloGtold1/train/47655.png +../../data/yoloGtold1/train/47656.png +../../data/yoloGtold1/train/47657.png +../../data/yoloGtold1/train/47658.png +../../data/yoloGtold1/train/47659.png +../../data/yoloGtold1/train/47660.png +../../data/yoloGtold1/train/47661.png +../../data/yoloGtold1/train/47662.png +../../data/yoloGtold1/train/47663.png +../../data/yoloGtold1/train/47664.png +../../data/yoloGtold1/train/47665.png +../../data/yoloGtold1/train/47666.png +../../data/yoloGtold1/train/47667.png +../../data/yoloGtold1/train/47668.png +../../data/yoloGtold1/train/47669.png +../../data/yoloGtold1/train/47670.png +../../data/yoloGtold1/train/47671.png +../../data/yoloGtold1/train/47672.png +../../data/yoloGtold1/train/47673.png +../../data/yoloGtold1/train/47674.png +../../data/yoloGtold1/train/47675.png +../../data/yoloGtold1/train/47676.png +../../data/yoloGtold1/train/47677.png +../../data/yoloGtold1/train/47678.png +../../data/yoloGtold1/train/47679.png +../../data/yoloGtold1/train/47680.png +../../data/yoloGtold1/train/47681.png +../../data/yoloGtold1/train/47682.png +../../data/yoloGtold1/train/47683.png +../../data/yoloGtold1/train/47684.png +../../data/yoloGtold1/train/47685.png +../../data/yoloGtold1/train/47686.png +../../data/yoloGtold1/train/47687.png +../../data/yoloGtold1/train/47688.png +../../data/yoloGtold1/train/47689.png +../../data/yoloGtold1/train/47690.png +../../data/yoloGtold1/train/47691.png +../../data/yoloGtold1/train/47692.png +../../data/yoloGtold1/train/47693.png +../../data/yoloGtold1/train/47694.png +../../data/yoloGtold1/train/47695.png +../../data/yoloGtold1/train/47696.png +../../data/yoloGtold1/train/47697.png +../../data/yoloGtold1/train/47698.png +../../data/yoloGtold1/train/47699.png +../../data/yoloGtold1/train/47700.png +../../data/yoloGtold1/train/47701.png +../../data/yoloGtold1/train/47702.png +../../data/yoloGtold1/train/47703.png +../../data/yoloGtold1/train/47704.png +../../data/yoloGtold1/train/47705.png +../../data/yoloGtold1/train/47706.png +../../data/yoloGtold1/train/47707.png +../../data/yoloGtold1/train/47708.png +../../data/yoloGtold1/train/47709.png +../../data/yoloGtold1/train/47710.png +../../data/yoloGtold1/train/47711.png +../../data/yoloGtold1/train/47712.png +../../data/yoloGtold1/train/47713.png +../../data/yoloGtold1/train/47714.png +../../data/yoloGtold1/train/47715.png +../../data/yoloGtold1/train/47716.png +../../data/yoloGtold1/train/47717.png +../../data/yoloGtold1/train/47718.png +../../data/yoloGtold1/train/47719.png +../../data/yoloGtold1/train/47720.png +../../data/yoloGtold1/train/47721.png +../../data/yoloGtold1/train/47722.png +../../data/yoloGtold1/train/47723.png +../../data/yoloGtold1/train/47724.png +../../data/yoloGtold1/train/47725.png +../../data/yoloGtold1/train/47726.png +../../data/yoloGtold1/train/47727.png +../../data/yoloGtold1/train/47728.png +../../data/yoloGtold1/train/47729.png +../../data/yoloGtold1/train/47730.png +../../data/yoloGtold1/train/47731.png +../../data/yoloGtold1/train/47732.png +../../data/yoloGtold1/train/47733.png +../../data/yoloGtold1/train/47734.png +../../data/yoloGtold1/train/47735.png +../../data/yoloGtold1/train/47736.png +../../data/yoloGtold1/train/47737.png +../../data/yoloGtold1/train/47738.png +../../data/yoloGtold1/train/47739.png +../../data/yoloGtold1/train/47740.png +../../data/yoloGtold1/train/47741.png +../../data/yoloGtold1/train/47742.png +../../data/yoloGtold1/train/47743.png +../../data/yoloGtold1/train/47744.png +../../data/yoloGtold1/train/47745.png +../../data/yoloGtold1/train/47746.png +../../data/yoloGtold1/train/47747.png +../../data/yoloGtold1/train/47748.png +../../data/yoloGtold1/train/47749.png +../../data/yoloGtold1/train/47750.png +../../data/yoloGtold1/train/47751.png +../../data/yoloGtold1/train/47752.png +../../data/yoloGtold1/train/47753.png +../../data/yoloGtold1/train/47754.png +../../data/yoloGtold1/train/47755.png +../../data/yoloGtold1/train/47756.png +../../data/yoloGtold1/train/47757.png +../../data/yoloGtold1/train/47758.png +../../data/yoloGtold1/train/47759.png +../../data/yoloGtold1/train/47760.png +../../data/yoloGtold1/train/47761.png +../../data/yoloGtold1/train/47762.png +../../data/yoloGtold1/train/47763.png +../../data/yoloGtold1/train/47764.png +../../data/yoloGtold1/train/47765.png +../../data/yoloGtold1/train/47766.png +../../data/yoloGtold1/train/47767.png +../../data/yoloGtold1/train/47768.png +../../data/yoloGtold1/train/47769.png +../../data/yoloGtold1/train/47770.png +../../data/yoloGtold1/train/47771.png +../../data/yoloGtold1/train/47772.png +../../data/yoloGtold1/train/47773.png +../../data/yoloGtold1/train/47774.png +../../data/yoloGtold1/train/47775.png +../../data/yoloGtold1/train/47776.png +../../data/yoloGtold1/train/47777.png +../../data/yoloGtold1/train/47778.png +../../data/yoloGtold1/train/47779.png +../../data/yoloGtold1/train/47780.png +../../data/yoloGtold1/train/47781.png +../../data/yoloGtold1/train/47782.png +../../data/yoloGtold1/train/47783.png +../../data/yoloGtold1/train/47784.png +../../data/yoloGtold1/train/47785.png +../../data/yoloGtold1/train/47786.png +../../data/yoloGtold1/train/47787.png +../../data/yoloGtold1/train/47788.png +../../data/yoloGtold1/train/47789.png +../../data/yoloGtold1/train/47790.png +../../data/yoloGtold1/train/47791.png +../../data/yoloGtold1/train/47792.png +../../data/yoloGtold1/train/47793.png +../../data/yoloGtold1/train/47794.png +../../data/yoloGtold1/train/47795.png +../../data/yoloGtold1/train/47796.png +../../data/yoloGtold1/train/47797.png +../../data/yoloGtold1/train/47798.png +../../data/yoloGtold1/train/47799.png +../../data/yoloGtold1/train/47800.png +../../data/yoloGtold1/train/47801.png +../../data/yoloGtold1/train/47802.png +../../data/yoloGtold1/train/47803.png +../../data/yoloGtold1/train/47804.png +../../data/yoloGtold1/train/47805.png +../../data/yoloGtold1/train/47806.png +../../data/yoloGtold1/train/47807.png +../../data/yoloGtold1/train/47808.png +../../data/yoloGtold1/train/47809.png +../../data/yoloGtold1/train/47810.png +../../data/yoloGtold1/train/47811.png +../../data/yoloGtold1/train/47812.png +../../data/yoloGtold1/train/47813.png +../../data/yoloGtold1/train/47814.png +../../data/yoloGtold1/train/47815.png +../../data/yoloGtold1/train/47816.png +../../data/yoloGtold1/train/47817.png +../../data/yoloGtold1/train/47818.png +../../data/yoloGtold1/train/47819.png +../../data/yoloGtold1/train/47820.png +../../data/yoloGtold1/train/47821.png +../../data/yoloGtold1/train/47822.png +../../data/yoloGtold1/train/47823.png +../../data/yoloGtold1/train/47824.png +../../data/yoloGtold1/train/47825.png +../../data/yoloGtold1/train/47826.png +../../data/yoloGtold1/train/47827.png +../../data/yoloGtold1/train/47828.png +../../data/yoloGtold1/train/47829.png +../../data/yoloGtold1/train/47830.png +../../data/yoloGtold1/train/47831.png +../../data/yoloGtold1/train/47832.png +../../data/yoloGtold1/train/47833.png +../../data/yoloGtold1/train/47834.png +../../data/yoloGtold1/train/47835.png +../../data/yoloGtold1/train/47836.png +../../data/yoloGtold1/train/47837.png +../../data/yoloGtold1/train/47838.png +../../data/yoloGtold1/train/47839.png +../../data/yoloGtold1/train/47840.png +../../data/yoloGtold1/train/47841.png +../../data/yoloGtold1/train/47842.png +../../data/yoloGtold1/train/47843.png +../../data/yoloGtold1/train/47844.png +../../data/yoloGtold1/train/47845.png +../../data/yoloGtold1/train/47846.png +../../data/yoloGtold1/train/47847.png +../../data/yoloGtold1/train/47848.png +../../data/yoloGtold1/train/47849.png +../../data/yoloGtold1/train/47850.png +../../data/yoloGtold1/train/47851.png +../../data/yoloGtold1/train/47852.png +../../data/yoloGtold1/train/47853.png +../../data/yoloGtold1/train/47854.png +../../data/yoloGtold1/train/47855.png +../../data/yoloGtold1/train/47856.png +../../data/yoloGtold1/train/47857.png +../../data/yoloGtold1/train/47858.png +../../data/yoloGtold1/train/47859.png +../../data/yoloGtold1/train/47860.png +../../data/yoloGtold1/train/47861.png +../../data/yoloGtold1/train/47862.png +../../data/yoloGtold1/train/47863.png +../../data/yoloGtold1/train/47864.png +../../data/yoloGtold1/train/47865.png +../../data/yoloGtold1/train/47866.png +../../data/yoloGtold1/train/47867.png +../../data/yoloGtold1/train/47868.png +../../data/yoloGtold1/train/47869.png +../../data/yoloGtold1/train/47870.png +../../data/yoloGtold1/train/47871.png +../../data/yoloGtold1/train/47872.png +../../data/yoloGtold1/train/47873.png +../../data/yoloGtold1/train/47874.png +../../data/yoloGtold1/train/47875.png +../../data/yoloGtold1/train/47876.png +../../data/yoloGtold1/train/47877.png +../../data/yoloGtold1/train/47878.png +../../data/yoloGtold1/train/47879.png +../../data/yoloGtold1/train/47880.png +../../data/yoloGtold1/train/47881.png +../../data/yoloGtold1/train/47882.png +../../data/yoloGtold1/train/47883.png +../../data/yoloGtold1/train/47884.png +../../data/yoloGtold1/train/47885.png +../../data/yoloGtold1/train/47886.png +../../data/yoloGtold1/train/47887.png +../../data/yoloGtold1/train/47888.png +../../data/yoloGtold1/train/47889.png +../../data/yoloGtold1/train/47890.png +../../data/yoloGtold1/train/47891.png +../../data/yoloGtold1/train/47892.png +../../data/yoloGtold1/train/47893.png +../../data/yoloGtold1/train/47894.png +../../data/yoloGtold1/train/47895.png +../../data/yoloGtold1/train/47896.png +../../data/yoloGtold1/train/47897.png +../../data/yoloGtold1/train/47898.png +../../data/yoloGtold1/train/47899.png +../../data/yoloGtold1/train/47900.png +../../data/yoloGtold1/train/47901.png +../../data/yoloGtold1/train/47902.png +../../data/yoloGtold1/train/47903.png +../../data/yoloGtold1/train/47904.png +../../data/yoloGtold1/train/47905.png +../../data/yoloGtold1/train/47906.png +../../data/yoloGtold1/train/47907.png +../../data/yoloGtold1/train/47908.png +../../data/yoloGtold1/train/47909.png +../../data/yoloGtold1/train/47910.png +../../data/yoloGtold1/train/47911.png +../../data/yoloGtold1/train/47912.png +../../data/yoloGtold1/train/47913.png +../../data/yoloGtold1/train/47914.png +../../data/yoloGtold1/train/47915.png +../../data/yoloGtold1/train/47916.png +../../data/yoloGtold1/train/47917.png +../../data/yoloGtold1/train/47918.png +../../data/yoloGtold1/train/47919.png +../../data/yoloGtold1/train/47920.png +../../data/yoloGtold1/train/47921.png +../../data/yoloGtold1/train/47922.png +../../data/yoloGtold1/train/47923.png +../../data/yoloGtold1/train/47924.png +../../data/yoloGtold1/train/47925.png +../../data/yoloGtold1/train/47926.png +../../data/yoloGtold1/train/47927.png +../../data/yoloGtold1/train/47928.png +../../data/yoloGtold1/train/47929.png +../../data/yoloGtold1/train/47930.png +../../data/yoloGtold1/train/47931.png +../../data/yoloGtold1/train/47932.png +../../data/yoloGtold1/train/47933.png +../../data/yoloGtold1/train/47934.png +../../data/yoloGtold1/train/47935.png +../../data/yoloGtold1/train/47936.png +../../data/yoloGtold1/train/47937.png +../../data/yoloGtold1/train/47938.png +../../data/yoloGtold1/train/47939.png +../../data/yoloGtold1/train/47940.png +../../data/yoloGtold1/train/47941.png +../../data/yoloGtold1/train/47942.png +../../data/yoloGtold1/train/47943.png +../../data/yoloGtold1/train/47944.png +../../data/yoloGtold1/train/47945.png +../../data/yoloGtold1/train/47946.png +../../data/yoloGtold1/train/47947.png +../../data/yoloGtold1/train/47948.png +../../data/yoloGtold1/train/47949.png +../../data/yoloGtold1/train/47950.png +../../data/yoloGtold1/train/47951.png +../../data/yoloGtold1/train/47952.png +../../data/yoloGtold1/train/47953.png +../../data/yoloGtold1/train/47954.png +../../data/yoloGtold1/train/47955.png +../../data/yoloGtold1/train/47956.png +../../data/yoloGtold1/train/47957.png +../../data/yoloGtold1/train/47958.png +../../data/yoloGtold1/train/47959.png +../../data/yoloGtold1/train/47960.png +../../data/yoloGtold1/train/47961.png +../../data/yoloGtold1/train/47962.png +../../data/yoloGtold1/train/47963.png +../../data/yoloGtold1/train/47964.png +../../data/yoloGtold1/train/47965.png +../../data/yoloGtold1/train/47966.png +../../data/yoloGtold1/train/47967.png +../../data/yoloGtold1/train/47968.png +../../data/yoloGtold1/train/47969.png +../../data/yoloGtold1/train/47970.png +../../data/yoloGtold1/train/47971.png +../../data/yoloGtold1/train/47972.png +../../data/yoloGtold1/train/47973.png +../../data/yoloGtold1/train/47974.png +../../data/yoloGtold1/train/47975.png +../../data/yoloGtold1/train/47976.png +../../data/yoloGtold1/train/47977.png +../../data/yoloGtold1/train/47978.png +../../data/yoloGtold1/train/47979.png +../../data/yoloGtold1/train/47980.png +../../data/yoloGtold1/train/47981.png +../../data/yoloGtold1/train/47982.png +../../data/yoloGtold1/train/47983.png +../../data/yoloGtold1/train/47984.png +../../data/yoloGtold1/train/47985.png +../../data/yoloGtold1/train/47986.png +../../data/yoloGtold1/train/47987.png +../../data/yoloGtold1/train/47988.png +../../data/yoloGtold1/train/47989.png +../../data/yoloGtold1/train/47990.png +../../data/yoloGtold1/train/47991.png +../../data/yoloGtold1/train/47992.png +../../data/yoloGtold1/train/47993.png +../../data/yoloGtold1/train/47994.png +../../data/yoloGtold1/train/47995.png +../../data/yoloGtold1/train/47996.png +../../data/yoloGtold1/train/47997.png +../../data/yoloGtold1/train/47998.png +../../data/yoloGtold1/train/47999.png +../../data/yoloGtold1/train/48000.png +../../data/yoloGtold1/train/48001.png +../../data/yoloGtold1/train/48002.png +../../data/yoloGtold1/train/48003.png +../../data/yoloGtold1/train/48004.png +../../data/yoloGtold1/train/48005.png +../../data/yoloGtold1/train/48006.png +../../data/yoloGtold1/train/48007.png +../../data/yoloGtold1/train/48008.png +../../data/yoloGtold1/train/48009.png +../../data/yoloGtold1/train/48010.png +../../data/yoloGtold1/train/48011.png +../../data/yoloGtold1/train/48012.png +../../data/yoloGtold1/train/48013.png +../../data/yoloGtold1/train/48014.png +../../data/yoloGtold1/train/48015.png +../../data/yoloGtold1/train/48016.png +../../data/yoloGtold1/train/48017.png +../../data/yoloGtold1/train/48018.png +../../data/yoloGtold1/train/48019.png +../../data/yoloGtold1/train/48020.png +../../data/yoloGtold1/train/48021.png +../../data/yoloGtold1/train/48022.png +../../data/yoloGtold1/train/48023.png +../../data/yoloGtold1/train/48024.png +../../data/yoloGtold1/train/48025.png +../../data/yoloGtold1/train/48026.png +../../data/yoloGtold1/train/48027.png +../../data/yoloGtold1/train/48028.png +../../data/yoloGtold1/train/48029.png +../../data/yoloGtold1/train/48030.png +../../data/yoloGtold1/train/48031.png +../../data/yoloGtold1/train/48032.png +../../data/yoloGtold1/train/48033.png +../../data/yoloGtold1/train/48034.png +../../data/yoloGtold1/train/48035.png +../../data/yoloGtold1/train/48036.png +../../data/yoloGtold1/train/48037.png +../../data/yoloGtold1/train/48038.png +../../data/yoloGtold1/train/48039.png +../../data/yoloGtold1/train/48040.png +../../data/yoloGtold1/train/48041.png +../../data/yoloGtold1/train/48042.png +../../data/yoloGtold1/train/48043.png +../../data/yoloGtold1/train/48044.png +../../data/yoloGtold1/train/48045.png +../../data/yoloGtold1/train/48046.png +../../data/yoloGtold1/train/48047.png +../../data/yoloGtold1/train/48048.png +../../data/yoloGtold1/train/48049.png +../../data/yoloGtold1/train/48050.png +../../data/yoloGtold1/train/48051.png +../../data/yoloGtold1/train/48052.png +../../data/yoloGtold1/train/48053.png +../../data/yoloGtold1/train/48054.png +../../data/yoloGtold1/train/48055.png +../../data/yoloGtold1/train/48056.png +../../data/yoloGtold1/train/48057.png +../../data/yoloGtold1/train/48058.png +../../data/yoloGtold1/train/48059.png +../../data/yoloGtold1/train/48060.png +../../data/yoloGtold1/train/48061.png +../../data/yoloGtold1/train/48062.png +../../data/yoloGtold1/train/48063.png +../../data/yoloGtold1/train/48064.png +../../data/yoloGtold1/train/48065.png +../../data/yoloGtold1/train/48066.png +../../data/yoloGtold1/train/48067.png +../../data/yoloGtold1/train/48068.png +../../data/yoloGtold1/train/48069.png +../../data/yoloGtold1/train/48070.png +../../data/yoloGtold1/train/48071.png +../../data/yoloGtold1/train/48072.png +../../data/yoloGtold1/train/48073.png +../../data/yoloGtold1/train/48074.png +../../data/yoloGtold1/train/48075.png +../../data/yoloGtold1/train/48076.png +../../data/yoloGtold1/train/48077.png +../../data/yoloGtold1/train/48078.png +../../data/yoloGtold1/train/48079.png +../../data/yoloGtold1/train/48080.png +../../data/yoloGtold1/train/48081.png +../../data/yoloGtold1/train/48082.png +../../data/yoloGtold1/train/48083.png +../../data/yoloGtold1/train/48084.png +../../data/yoloGtold1/train/48085.png +../../data/yoloGtold1/train/48086.png +../../data/yoloGtold1/train/48087.png +../../data/yoloGtold1/train/48088.png +../../data/yoloGtold1/train/48089.png +../../data/yoloGtold1/train/48090.png +../../data/yoloGtold1/train/48091.png +../../data/yoloGtold1/train/48092.png +../../data/yoloGtold1/train/48093.png +../../data/yoloGtold1/train/48094.png +../../data/yoloGtold1/train/48095.png +../../data/yoloGtold1/train/48096.png +../../data/yoloGtold1/train/48097.png +../../data/yoloGtold1/train/48098.png +../../data/yoloGtold1/train/48099.png +../../data/yoloGtold1/train/48100.png +../../data/yoloGtold1/train/48101.png +../../data/yoloGtold1/train/48102.png +../../data/yoloGtold1/train/48103.png +../../data/yoloGtold1/train/48104.png +../../data/yoloGtold1/train/48105.png +../../data/yoloGtold1/train/48106.png +../../data/yoloGtold1/train/48107.png +../../data/yoloGtold1/train/48108.png +../../data/yoloGtold1/train/48109.png +../../data/yoloGtold1/train/48110.png +../../data/yoloGtold1/train/48111.png +../../data/yoloGtold1/train/48112.png +../../data/yoloGtold1/train/48113.png +../../data/yoloGtold1/train/48114.png +../../data/yoloGtold1/train/48115.png +../../data/yoloGtold1/train/48116.png +../../data/yoloGtold1/train/48117.png +../../data/yoloGtold1/train/48118.png +../../data/yoloGtold1/train/48119.png +../../data/yoloGtold1/train/48120.png +../../data/yoloGtold1/train/48121.png +../../data/yoloGtold1/train/48122.png +../../data/yoloGtold1/train/48123.png +../../data/yoloGtold1/train/48124.png +../../data/yoloGtold1/train/48125.png +../../data/yoloGtold1/train/48126.png +../../data/yoloGtold1/train/48127.png +../../data/yoloGtold1/train/48128.png +../../data/yoloGtold1/train/48129.png +../../data/yoloGtold1/train/48130.png +../../data/yoloGtold1/train/48131.png +../../data/yoloGtold1/train/48132.png +../../data/yoloGtold1/train/48133.png +../../data/yoloGtold1/train/48134.png +../../data/yoloGtold1/train/48135.png +../../data/yoloGtold1/train/48136.png +../../data/yoloGtold1/train/48137.png +../../data/yoloGtold1/train/48138.png +../../data/yoloGtold1/train/48139.png +../../data/yoloGtold1/train/48140.png +../../data/yoloGtold1/train/48141.png +../../data/yoloGtold1/train/48142.png +../../data/yoloGtold1/train/48143.png +../../data/yoloGtold1/train/48144.png +../../data/yoloGtold1/train/48145.png +../../data/yoloGtold1/train/48146.png +../../data/yoloGtold1/train/48147.png +../../data/yoloGtold1/train/48148.png +../../data/yoloGtold1/train/48149.png +../../data/yoloGtold1/train/48150.png +../../data/yoloGtold1/train/48151.png +../../data/yoloGtold1/train/48152.png +../../data/yoloGtold1/train/48153.png +../../data/yoloGtold1/train/48154.png +../../data/yoloGtold1/train/48155.png +../../data/yoloGtold1/train/48156.png +../../data/yoloGtold1/train/48157.png +../../data/yoloGtold1/train/48158.png +../../data/yoloGtold1/train/48159.png +../../data/yoloGtold1/train/48160.png +../../data/yoloGtold1/train/48161.png +../../data/yoloGtold1/train/48162.png +../../data/yoloGtold1/train/48163.png +../../data/yoloGtold1/train/48164.png +../../data/yoloGtold1/train/48165.png +../../data/yoloGtold1/train/48166.png +../../data/yoloGtold1/train/48167.png +../../data/yoloGtold1/train/48168.png +../../data/yoloGtold1/train/48169.png +../../data/yoloGtold1/train/48170.png +../../data/yoloGtold1/train/48171.png +../../data/yoloGtold1/train/48172.png +../../data/yoloGtold1/train/48173.png +../../data/yoloGtold1/train/48174.png +../../data/yoloGtold1/train/48175.png +../../data/yoloGtold1/train/48176.png +../../data/yoloGtold1/train/48177.png +../../data/yoloGtold1/train/48178.png +../../data/yoloGtold1/train/48179.png +../../data/yoloGtold1/train/48180.png +../../data/yoloGtold1/train/48181.png +../../data/yoloGtold1/train/48182.png +../../data/yoloGtold1/train/48183.png +../../data/yoloGtold1/train/48184.png +../../data/yoloGtold1/train/48185.png +../../data/yoloGtold1/train/48186.png +../../data/yoloGtold1/train/48187.png +../../data/yoloGtold1/train/48188.png +../../data/yoloGtold1/train/48189.png +../../data/yoloGtold1/train/48190.png +../../data/yoloGtold1/train/48191.png +../../data/yoloGtold1/train/48192.png +../../data/yoloGtold1/train/48193.png +../../data/yoloGtold1/train/48194.png +../../data/yoloGtold1/train/48195.png +../../data/yoloGtold1/train/48196.png +../../data/yoloGtold1/train/48197.png +../../data/yoloGtold1/train/48198.png +../../data/yoloGtold1/train/48199.png +../../data/yoloGtold1/train/48200.png +../../data/yoloGtold1/train/48201.png +../../data/yoloGtold1/train/48202.png +../../data/yoloGtold1/train/48203.png +../../data/yoloGtold1/train/48204.png +../../data/yoloGtold1/train/48205.png +../../data/yoloGtold1/train/48206.png +../../data/yoloGtold1/train/48207.png +../../data/yoloGtold1/train/48208.png +../../data/yoloGtold1/train/48209.png +../../data/yoloGtold1/train/48210.png +../../data/yoloGtold1/train/48211.png +../../data/yoloGtold1/train/48212.png +../../data/yoloGtold1/train/48213.png +../../data/yoloGtold1/train/48214.png +../../data/yoloGtold1/train/48215.png +../../data/yoloGtold1/train/48216.png +../../data/yoloGtold1/train/48217.png +../../data/yoloGtold1/train/48218.png +../../data/yoloGtold1/train/48219.png +../../data/yoloGtold1/train/48220.png +../../data/yoloGtold1/train/48221.png +../../data/yoloGtold1/train/48222.png +../../data/yoloGtold1/train/48223.png +../../data/yoloGtold1/train/48224.png +../../data/yoloGtold1/train/48225.png +../../data/yoloGtold1/train/48226.png +../../data/yoloGtold1/train/48227.png +../../data/yoloGtold1/train/48228.png +../../data/yoloGtold1/train/48229.png +../../data/yoloGtold1/train/48230.png +../../data/yoloGtold1/train/48231.png +../../data/yoloGtold1/train/48232.png +../../data/yoloGtold1/train/48233.png +../../data/yoloGtold1/train/48234.png +../../data/yoloGtold1/train/48235.png +../../data/yoloGtold1/train/48236.png +../../data/yoloGtold1/train/48237.png +../../data/yoloGtold1/train/48238.png +../../data/yoloGtold1/train/48239.png +../../data/yoloGtold1/train/48240.png +../../data/yoloGtold1/train/48241.png +../../data/yoloGtold1/train/48242.png +../../data/yoloGtold1/train/48243.png +../../data/yoloGtold1/train/48244.png +../../data/yoloGtold1/train/48245.png +../../data/yoloGtold1/train/48246.png +../../data/yoloGtold1/train/48247.png +../../data/yoloGtold1/train/48248.png +../../data/yoloGtold1/train/48249.png +../../data/yoloGtold1/train/48250.png +../../data/yoloGtold1/train/48251.png +../../data/yoloGtold1/train/48252.png +../../data/yoloGtold1/train/48253.png +../../data/yoloGtold1/train/48254.png +../../data/yoloGtold1/train/48255.png +../../data/yoloGtold1/train/48256.png +../../data/yoloGtold1/train/48257.png +../../data/yoloGtold1/train/48258.png +../../data/yoloGtold1/train/48259.png +../../data/yoloGtold1/train/48260.png +../../data/yoloGtold1/train/48261.png +../../data/yoloGtold1/train/48262.png +../../data/yoloGtold1/train/48263.png +../../data/yoloGtold1/train/48264.png +../../data/yoloGtold1/train/48265.png +../../data/yoloGtold1/train/48266.png +../../data/yoloGtold1/train/48267.png +../../data/yoloGtold1/train/48268.png +../../data/yoloGtold1/train/48269.png +../../data/yoloGtold1/train/48270.png +../../data/yoloGtold1/train/48271.png +../../data/yoloGtold1/train/48272.png +../../data/yoloGtold1/train/48273.png +../../data/yoloGtold1/train/48274.png +../../data/yoloGtold1/train/48275.png +../../data/yoloGtold1/train/48276.png +../../data/yoloGtold1/train/48277.png +../../data/yoloGtold1/train/48278.png +../../data/yoloGtold1/train/48279.png +../../data/yoloGtold1/train/48280.png +../../data/yoloGtold1/train/48281.png +../../data/yoloGtold1/train/48282.png +../../data/yoloGtold1/train/48283.png +../../data/yoloGtold1/train/48284.png +../../data/yoloGtold1/train/48285.png +../../data/yoloGtold1/train/48286.png +../../data/yoloGtold1/train/48287.png +../../data/yoloGtold1/train/48288.png +../../data/yoloGtold1/train/48289.png +../../data/yoloGtold1/train/48290.png +../../data/yoloGtold1/train/48291.png +../../data/yoloGtold1/train/48292.png +../../data/yoloGtold1/train/48293.png +../../data/yoloGtold1/train/48294.png +../../data/yoloGtold1/train/48295.png +../../data/yoloGtold1/train/48296.png +../../data/yoloGtold1/train/48297.png +../../data/yoloGtold1/train/48298.png +../../data/yoloGtold1/train/48299.png +../../data/yoloGtold1/train/48300.png +../../data/yoloGtold1/train/48301.png +../../data/yoloGtold1/train/48302.png +../../data/yoloGtold1/train/48303.png +../../data/yoloGtold1/train/48304.png +../../data/yoloGtold1/train/48305.png +../../data/yoloGtold1/train/48306.png +../../data/yoloGtold1/train/48307.png +../../data/yoloGtold1/train/48308.png +../../data/yoloGtold1/train/48309.png +../../data/yoloGtold1/train/48310.png +../../data/yoloGtold1/train/48311.png +../../data/yoloGtold1/train/48312.png +../../data/yoloGtold1/train/48313.png +../../data/yoloGtold1/train/48314.png +../../data/yoloGtold1/train/48315.png +../../data/yoloGtold1/train/48316.png +../../data/yoloGtold1/train/48317.png +../../data/yoloGtold1/train/48318.png +../../data/yoloGtold1/train/48319.png +../../data/yoloGtold1/train/48320.png +../../data/yoloGtold1/train/48321.png +../../data/yoloGtold1/train/48322.png +../../data/yoloGtold1/train/48323.png +../../data/yoloGtold1/train/48324.png +../../data/yoloGtold1/train/48325.png +../../data/yoloGtold1/train/48326.png +../../data/yoloGtold1/train/48327.png +../../data/yoloGtold1/train/48328.png +../../data/yoloGtold1/train/48329.png +../../data/yoloGtold1/train/48330.png +../../data/yoloGtold1/train/48331.png +../../data/yoloGtold1/train/48332.png +../../data/yoloGtold1/train/48333.png +../../data/yoloGtold1/train/48334.png +../../data/yoloGtold1/train/48335.png +../../data/yoloGtold1/train/48336.png +../../data/yoloGtold1/train/48337.png +../../data/yoloGtold1/train/48338.png +../../data/yoloGtold1/train/48339.png +../../data/yoloGtold1/train/48340.png +../../data/yoloGtold1/train/48341.png +../../data/yoloGtold1/train/48342.png +../../data/yoloGtold1/train/48343.png +../../data/yoloGtold1/train/48344.png +../../data/yoloGtold1/train/48345.png +../../data/yoloGtold1/train/48346.png +../../data/yoloGtold1/train/48347.png +../../data/yoloGtold1/train/48348.png +../../data/yoloGtold1/train/48349.png +../../data/yoloGtold1/train/48350.png +../../data/yoloGtold1/train/48351.png +../../data/yoloGtold1/train/48352.png +../../data/yoloGtold1/train/48353.png +../../data/yoloGtold1/train/48354.png +../../data/yoloGtold1/train/48355.png +../../data/yoloGtold1/train/48356.png +../../data/yoloGtold1/train/48357.png +../../data/yoloGtold1/train/48358.png +../../data/yoloGtold1/train/48359.png +../../data/yoloGtold1/train/48360.png +../../data/yoloGtold1/train/48361.png +../../data/yoloGtold1/train/48362.png +../../data/yoloGtold1/train/48363.png +../../data/yoloGtold1/train/48364.png +../../data/yoloGtold1/train/48365.png +../../data/yoloGtold1/train/48366.png +../../data/yoloGtold1/train/48367.png +../../data/yoloGtold1/train/48368.png +../../data/yoloGtold1/train/48369.png +../../data/yoloGtold1/train/48370.png +../../data/yoloGtold1/train/48371.png +../../data/yoloGtold1/train/48372.png +../../data/yoloGtold1/train/48373.png +../../data/yoloGtold1/train/48374.png +../../data/yoloGtold1/train/48375.png +../../data/yoloGtold1/train/48376.png +../../data/yoloGtold1/train/48377.png +../../data/yoloGtold1/train/48378.png +../../data/yoloGtold1/train/48379.png +../../data/yoloGtold1/train/48380.png +../../data/yoloGtold1/train/48381.png +../../data/yoloGtold1/train/48382.png +../../data/yoloGtold1/train/48383.png +../../data/yoloGtold1/train/48384.png +../../data/yoloGtold1/train/48385.png +../../data/yoloGtold1/train/48386.png +../../data/yoloGtold1/train/48387.png +../../data/yoloGtold1/train/48388.png +../../data/yoloGtold1/train/48389.png +../../data/yoloGtold1/train/48390.png +../../data/yoloGtold1/train/48391.png +../../data/yoloGtold1/train/48392.png +../../data/yoloGtold1/train/48393.png +../../data/yoloGtold1/train/48394.png +../../data/yoloGtold1/train/48395.png +../../data/yoloGtold1/train/48396.png +../../data/yoloGtold1/train/48397.png +../../data/yoloGtold1/train/48398.png +../../data/yoloGtold1/train/48399.png +../../data/yoloGtold1/train/48400.png +../../data/yoloGtold1/train/48401.png +../../data/yoloGtold1/train/48402.png +../../data/yoloGtold1/train/48403.png +../../data/yoloGtold1/train/48404.png +../../data/yoloGtold1/train/48405.png +../../data/yoloGtold1/train/48406.png +../../data/yoloGtold1/train/48407.png +../../data/yoloGtold1/train/48408.png +../../data/yoloGtold1/train/48409.png +../../data/yoloGtold1/train/48410.png +../../data/yoloGtold1/train/48411.png +../../data/yoloGtold1/train/48412.png +../../data/yoloGtold1/train/48413.png +../../data/yoloGtold1/train/48414.png +../../data/yoloGtold1/train/48415.png +../../data/yoloGtold1/train/48416.png +../../data/yoloGtold1/train/48417.png +../../data/yoloGtold1/train/48418.png +../../data/yoloGtold1/train/48419.png +../../data/yoloGtold1/train/48420.png +../../data/yoloGtold1/train/48421.png +../../data/yoloGtold1/train/48422.png +../../data/yoloGtold1/train/48423.png +../../data/yoloGtold1/train/48424.png +../../data/yoloGtold1/train/48425.png +../../data/yoloGtold1/train/48426.png +../../data/yoloGtold1/train/48427.png +../../data/yoloGtold1/train/48428.png +../../data/yoloGtold1/train/48429.png +../../data/yoloGtold1/train/48430.png +../../data/yoloGtold1/train/48431.png +../../data/yoloGtold1/train/48432.png +../../data/yoloGtold1/train/48433.png +../../data/yoloGtold1/train/48434.png +../../data/yoloGtold1/train/48435.png +../../data/yoloGtold1/train/48436.png +../../data/yoloGtold1/train/48437.png +../../data/yoloGtold1/train/48438.png +../../data/yoloGtold1/train/48439.png +../../data/yoloGtold1/train/48440.png +../../data/yoloGtold1/train/48441.png +../../data/yoloGtold1/train/48442.png +../../data/yoloGtold1/train/48443.png +../../data/yoloGtold1/train/48444.png +../../data/yoloGtold1/train/48445.png +../../data/yoloGtold1/train/48446.png +../../data/yoloGtold1/train/48447.png +../../data/yoloGtold1/train/48448.png +../../data/yoloGtold1/train/48449.png +../../data/yoloGtold1/train/48450.png +../../data/yoloGtold1/train/48451.png +../../data/yoloGtold1/train/48452.png +../../data/yoloGtold1/train/48453.png +../../data/yoloGtold1/train/48454.png +../../data/yoloGtold1/train/48455.png +../../data/yoloGtold1/train/48456.png +../../data/yoloGtold1/train/48457.png +../../data/yoloGtold1/train/48458.png +../../data/yoloGtold1/train/48459.png +../../data/yoloGtold1/train/48460.png +../../data/yoloGtold1/train/48461.png +../../data/yoloGtold1/train/48462.png +../../data/yoloGtold1/train/48463.png +../../data/yoloGtold1/train/48464.png +../../data/yoloGtold1/train/48465.png +../../data/yoloGtold1/train/48466.png +../../data/yoloGtold1/train/48467.png +../../data/yoloGtold1/train/48468.png +../../data/yoloGtold1/train/48469.png +../../data/yoloGtold1/train/48470.png +../../data/yoloGtold1/train/48471.png +../../data/yoloGtold1/train/48472.png +../../data/yoloGtold1/train/48473.png +../../data/yoloGtold1/train/48474.png +../../data/yoloGtold1/train/48475.png +../../data/yoloGtold1/train/48476.png +../../data/yoloGtold1/train/48477.png +../../data/yoloGtold1/train/48478.png +../../data/yoloGtold1/train/48479.png +../../data/yoloGtold1/train/48480.png +../../data/yoloGtold1/train/48481.png +../../data/yoloGtold1/train/48482.png +../../data/yoloGtold1/train/48483.png +../../data/yoloGtold1/train/48484.png +../../data/yoloGtold1/train/48485.png +../../data/yoloGtold1/train/48486.png +../../data/yoloGtold1/train/48487.png +../../data/yoloGtold1/train/48488.png +../../data/yoloGtold1/train/48489.png +../../data/yoloGtold1/train/48490.png +../../data/yoloGtold1/train/48491.png +../../data/yoloGtold1/train/48492.png +../../data/yoloGtold1/train/48493.png +../../data/yoloGtold1/train/48494.png +../../data/yoloGtold1/train/48495.png +../../data/yoloGtold1/train/48496.png +../../data/yoloGtold1/train/48497.png +../../data/yoloGtold1/train/48498.png +../../data/yoloGtold1/train/48499.png +../../data/yoloGtold1/train/48500.png +../../data/yoloGtold1/train/48501.png +../../data/yoloGtold1/train/48502.png +../../data/yoloGtold1/train/48503.png +../../data/yoloGtold1/train/48504.png +../../data/yoloGtold1/train/48505.png +../../data/yoloGtold1/train/48506.png +../../data/yoloGtold1/train/48507.png +../../data/yoloGtold1/train/48508.png +../../data/yoloGtold1/train/48509.png +../../data/yoloGtold1/train/48510.png +../../data/yoloGtold1/train/48511.png +../../data/yoloGtold1/train/48512.png +../../data/yoloGtold1/train/48513.png +../../data/yoloGtold1/train/48514.png +../../data/yoloGtold1/train/48515.png +../../data/yoloGtold1/train/48516.png +../../data/yoloGtold1/train/48517.png +../../data/yoloGtold1/train/48518.png +../../data/yoloGtold1/train/48519.png +../../data/yoloGtold1/train/48520.png +../../data/yoloGtold1/train/48521.png +../../data/yoloGtold1/train/48522.png +../../data/yoloGtold1/train/48523.png +../../data/yoloGtold1/train/48524.png +../../data/yoloGtold1/train/48525.png +../../data/yoloGtold1/train/48526.png +../../data/yoloGtold1/train/48527.png +../../data/yoloGtold1/train/48528.png +../../data/yoloGtold1/train/48529.png +../../data/yoloGtold1/train/48530.png +../../data/yoloGtold1/train/48531.png +../../data/yoloGtold1/train/48532.png +../../data/yoloGtold1/train/48533.png +../../data/yoloGtold1/train/48534.png +../../data/yoloGtold1/train/48535.png +../../data/yoloGtold1/train/48536.png +../../data/yoloGtold1/train/48537.png +../../data/yoloGtold1/train/48538.png +../../data/yoloGtold1/train/48539.png +../../data/yoloGtold1/train/48540.png +../../data/yoloGtold1/train/48541.png +../../data/yoloGtold1/train/48542.png +../../data/yoloGtold1/train/48543.png +../../data/yoloGtold1/train/48544.png +../../data/yoloGtold1/train/48545.png +../../data/yoloGtold1/train/48546.png +../../data/yoloGtold1/train/48547.png +../../data/yoloGtold1/train/48548.png +../../data/yoloGtold1/train/48549.png +../../data/yoloGtold1/train/48550.png +../../data/yoloGtold1/train/48551.png +../../data/yoloGtold1/train/48552.png +../../data/yoloGtold1/train/48553.png +../../data/yoloGtold1/train/48554.png +../../data/yoloGtold1/train/48555.png +../../data/yoloGtold1/train/48556.png +../../data/yoloGtold1/train/48557.png +../../data/yoloGtold1/train/48558.png +../../data/yoloGtold1/train/48559.png +../../data/yoloGtold1/train/48560.png +../../data/yoloGtold1/train/48561.png +../../data/yoloGtold1/train/48562.png +../../data/yoloGtold1/train/48563.png +../../data/yoloGtold1/train/48564.png +../../data/yoloGtold1/train/48565.png +../../data/yoloGtold1/train/48566.png +../../data/yoloGtold1/train/48567.png +../../data/yoloGtold1/train/48568.png +../../data/yoloGtold1/train/48569.png +../../data/yoloGtold1/train/48570.png +../../data/yoloGtold1/train/48571.png +../../data/yoloGtold1/train/48572.png +../../data/yoloGtold1/train/48573.png +../../data/yoloGtold1/train/48574.png +../../data/yoloGtold1/train/48575.png +../../data/yoloGtold1/train/48576.png +../../data/yoloGtold1/train/48577.png +../../data/yoloGtold1/train/48578.png +../../data/yoloGtold1/train/48579.png +../../data/yoloGtold1/train/48580.png +../../data/yoloGtold1/train/48581.png +../../data/yoloGtold1/train/48582.png +../../data/yoloGtold1/train/48583.png +../../data/yoloGtold1/train/48584.png +../../data/yoloGtold1/train/48585.png +../../data/yoloGtold1/train/48586.png +../../data/yoloGtold1/train/48587.png +../../data/yoloGtold1/train/48588.png +../../data/yoloGtold1/train/48589.png +../../data/yoloGtold1/train/48590.png +../../data/yoloGtold1/train/48591.png +../../data/yoloGtold1/train/48592.png +../../data/yoloGtold1/train/48593.png +../../data/yoloGtold1/train/48594.png +../../data/yoloGtold1/train/48595.png +../../data/yoloGtold1/train/48596.png +../../data/yoloGtold1/train/48597.png +../../data/yoloGtold1/train/48598.png +../../data/yoloGtold1/train/48599.png +../../data/yoloGtold1/train/48600.png +../../data/yoloGtold1/train/48601.png +../../data/yoloGtold1/train/48602.png +../../data/yoloGtold1/train/48603.png +../../data/yoloGtold1/train/48604.png +../../data/yoloGtold1/train/48605.png +../../data/yoloGtold1/train/48606.png +../../data/yoloGtold1/train/48607.png +../../data/yoloGtold1/train/48608.png +../../data/yoloGtold1/train/48609.png +../../data/yoloGtold1/train/48610.png +../../data/yoloGtold1/train/48611.png +../../data/yoloGtold1/train/48612.png +../../data/yoloGtold1/train/48613.png +../../data/yoloGtold1/train/48614.png +../../data/yoloGtold1/train/48615.png +../../data/yoloGtold1/train/48616.png +../../data/yoloGtold1/train/48617.png +../../data/yoloGtold1/train/48618.png +../../data/yoloGtold1/train/48619.png +../../data/yoloGtold1/train/48620.png +../../data/yoloGtold1/train/48621.png +../../data/yoloGtold1/train/48622.png +../../data/yoloGtold1/train/48623.png +../../data/yoloGtold1/train/48624.png +../../data/yoloGtold1/train/48625.png +../../data/yoloGtold1/train/48626.png +../../data/yoloGtold1/train/48627.png +../../data/yoloGtold1/train/48628.png +../../data/yoloGtold1/train/48629.png +../../data/yoloGtold1/train/48630.png +../../data/yoloGtold1/train/48631.png +../../data/yoloGtold1/train/48632.png +../../data/yoloGtold1/train/48633.png +../../data/yoloGtold1/train/48634.png +../../data/yoloGtold1/train/48635.png +../../data/yoloGtold1/train/48636.png +../../data/yoloGtold1/train/48637.png +../../data/yoloGtold1/train/48638.png +../../data/yoloGtold1/train/48639.png +../../data/yoloGtold1/train/48640.png +../../data/yoloGtold1/train/48641.png +../../data/yoloGtold1/train/48642.png +../../data/yoloGtold1/train/48643.png +../../data/yoloGtold1/train/48644.png +../../data/yoloGtold1/train/48645.png +../../data/yoloGtold1/train/48646.png +../../data/yoloGtold1/train/48647.png +../../data/yoloGtold1/train/48648.png +../../data/yoloGtold1/train/48649.png +../../data/yoloGtold1/train/48650.png +../../data/yoloGtold1/train/48651.png +../../data/yoloGtold1/train/48652.png +../../data/yoloGtold1/train/48653.png +../../data/yoloGtold1/train/48654.png +../../data/yoloGtold1/train/48655.png +../../data/yoloGtold1/train/48656.png +../../data/yoloGtold1/train/48657.png +../../data/yoloGtold1/train/48658.png +../../data/yoloGtold1/train/48659.png +../../data/yoloGtold1/train/48660.png +../../data/yoloGtold1/train/48661.png +../../data/yoloGtold1/train/48662.png +../../data/yoloGtold1/train/48663.png +../../data/yoloGtold1/train/48664.png +../../data/yoloGtold1/train/48665.png +../../data/yoloGtold1/train/48666.png +../../data/yoloGtold1/train/48667.png +../../data/yoloGtold1/train/48668.png +../../data/yoloGtold1/train/48669.png +../../data/yoloGtold1/train/48670.png +../../data/yoloGtold1/train/48671.png +../../data/yoloGtold1/train/48672.png +../../data/yoloGtold1/train/48673.png +../../data/yoloGtold1/train/48674.png +../../data/yoloGtold1/train/48675.png +../../data/yoloGtold1/train/48676.png +../../data/yoloGtold1/train/48677.png +../../data/yoloGtold1/train/48678.png +../../data/yoloGtold1/train/48679.png +../../data/yoloGtold1/train/48680.png +../../data/yoloGtold1/train/48681.png +../../data/yoloGtold1/train/48682.png +../../data/yoloGtold1/train/48683.png +../../data/yoloGtold1/train/48684.png +../../data/yoloGtold1/train/48685.png +../../data/yoloGtold1/train/48686.png +../../data/yoloGtold1/train/48687.png +../../data/yoloGtold1/train/48688.png +../../data/yoloGtold1/train/48689.png +../../data/yoloGtold1/train/48690.png +../../data/yoloGtold1/train/48691.png +../../data/yoloGtold1/train/48692.png +../../data/yoloGtold1/train/48693.png +../../data/yoloGtold1/train/48694.png +../../data/yoloGtold1/train/48695.png +../../data/yoloGtold1/train/48696.png +../../data/yoloGtold1/train/48697.png +../../data/yoloGtold1/train/48698.png +../../data/yoloGtold1/train/48699.png +../../data/yoloGtold1/train/48700.png +../../data/yoloGtold1/train/48701.png +../../data/yoloGtold1/train/48702.png +../../data/yoloGtold1/train/48703.png +../../data/yoloGtold1/train/48704.png +../../data/yoloGtold1/train/48705.png +../../data/yoloGtold1/train/48706.png +../../data/yoloGtold1/train/48707.png +../../data/yoloGtold1/train/48708.png +../../data/yoloGtold1/train/48709.png +../../data/yoloGtold1/train/48710.png +../../data/yoloGtold1/train/48711.png +../../data/yoloGtold1/train/48712.png +../../data/yoloGtold1/train/48713.png +../../data/yoloGtold1/train/48714.png +../../data/yoloGtold1/train/48715.png +../../data/yoloGtold1/train/48716.png +../../data/yoloGtold1/train/48717.png +../../data/yoloGtold1/train/48718.png +../../data/yoloGtold1/train/48719.png +../../data/yoloGtold1/train/48720.png +../../data/yoloGtold1/train/48721.png +../../data/yoloGtold1/train/48722.png +../../data/yoloGtold1/train/48723.png +../../data/yoloGtold1/train/48724.png +../../data/yoloGtold1/train/48725.png +../../data/yoloGtold1/train/48726.png +../../data/yoloGtold1/train/48727.png +../../data/yoloGtold1/train/48728.png +../../data/yoloGtold1/train/48729.png +../../data/yoloGtold1/train/48730.png +../../data/yoloGtold1/train/48731.png +../../data/yoloGtold1/train/48732.png +../../data/yoloGtold1/train/48733.png +../../data/yoloGtold1/train/48734.png +../../data/yoloGtold1/train/48735.png +../../data/yoloGtold1/train/48736.png +../../data/yoloGtold1/train/48737.png +../../data/yoloGtold1/train/48738.png +../../data/yoloGtold1/train/48739.png +../../data/yoloGtold1/train/48740.png +../../data/yoloGtold1/train/48741.png +../../data/yoloGtold1/train/48742.png +../../data/yoloGtold1/train/48743.png +../../data/yoloGtold1/train/48744.png +../../data/yoloGtold1/train/48745.png +../../data/yoloGtold1/train/48746.png +../../data/yoloGtold1/train/48747.png +../../data/yoloGtold1/train/48748.png +../../data/yoloGtold1/train/48749.png +../../data/yoloGtold1/train/48750.png +../../data/yoloGtold1/train/48751.png +../../data/yoloGtold1/train/48752.png +../../data/yoloGtold1/train/48753.png +../../data/yoloGtold1/train/48754.png +../../data/yoloGtold1/train/48755.png +../../data/yoloGtold1/train/48756.png +../../data/yoloGtold1/train/48757.png +../../data/yoloGtold1/train/48758.png +../../data/yoloGtold1/train/48759.png +../../data/yoloGtold1/train/48760.png +../../data/yoloGtold1/train/48761.png +../../data/yoloGtold1/train/48762.png +../../data/yoloGtold1/train/48763.png +../../data/yoloGtold1/train/48764.png +../../data/yoloGtold1/train/48765.png +../../data/yoloGtold1/train/48766.png +../../data/yoloGtold1/train/48767.png +../../data/yoloGtold1/train/48768.png +../../data/yoloGtold1/train/48769.png +../../data/yoloGtold1/train/48770.png +../../data/yoloGtold1/train/48771.png +../../data/yoloGtold1/train/48772.png +../../data/yoloGtold1/train/48773.png +../../data/yoloGtold1/train/48774.png +../../data/yoloGtold1/train/48775.png +../../data/yoloGtold1/train/48776.png +../../data/yoloGtold1/train/48777.png +../../data/yoloGtold1/train/48778.png +../../data/yoloGtold1/train/48779.png +../../data/yoloGtold1/train/48780.png +../../data/yoloGtold1/train/48781.png +../../data/yoloGtold1/train/48782.png +../../data/yoloGtold1/train/48783.png +../../data/yoloGtold1/train/48784.png +../../data/yoloGtold1/train/48785.png +../../data/yoloGtold1/train/48786.png +../../data/yoloGtold1/train/48787.png +../../data/yoloGtold1/train/48788.png +../../data/yoloGtold1/train/48789.png +../../data/yoloGtold1/train/48790.png +../../data/yoloGtold1/train/48791.png +../../data/yoloGtold1/train/48792.png +../../data/yoloGtold1/train/48793.png +../../data/yoloGtold1/train/48794.png +../../data/yoloGtold1/train/48795.png +../../data/yoloGtold1/train/48796.png +../../data/yoloGtold1/train/48797.png +../../data/yoloGtold1/train/48798.png +../../data/yoloGtold1/train/48799.png +../../data/yoloGtold1/train/48800.png +../../data/yoloGtold1/train/48801.png +../../data/yoloGtold1/train/48802.png +../../data/yoloGtold1/train/48803.png +../../data/yoloGtold1/train/48804.png +../../data/yoloGtold1/train/48805.png +../../data/yoloGtold1/train/48806.png +../../data/yoloGtold1/train/48807.png +../../data/yoloGtold1/train/48808.png +../../data/yoloGtold1/train/48809.png +../../data/yoloGtold1/train/48810.png +../../data/yoloGtold1/train/48811.png +../../data/yoloGtold1/train/48812.png +../../data/yoloGtold1/train/48813.png +../../data/yoloGtold1/train/48814.png +../../data/yoloGtold1/train/48815.png +../../data/yoloGtold1/train/48816.png +../../data/yoloGtold1/train/48817.png +../../data/yoloGtold1/train/48818.png +../../data/yoloGtold1/train/48819.png +../../data/yoloGtold1/train/48820.png +../../data/yoloGtold1/train/48821.png +../../data/yoloGtold1/train/48822.png +../../data/yoloGtold1/train/48823.png +../../data/yoloGtold1/train/48824.png +../../data/yoloGtold1/train/48825.png +../../data/yoloGtold1/train/48826.png +../../data/yoloGtold1/train/48827.png +../../data/yoloGtold1/train/48828.png +../../data/yoloGtold1/train/48829.png +../../data/yoloGtold1/train/48830.png +../../data/yoloGtold1/train/48831.png +../../data/yoloGtold1/train/48832.png +../../data/yoloGtold1/train/48833.png +../../data/yoloGtold1/train/48834.png +../../data/yoloGtold1/train/48835.png +../../data/yoloGtold1/train/48836.png +../../data/yoloGtold1/train/48837.png +../../data/yoloGtold1/train/48838.png +../../data/yoloGtold1/train/48839.png +../../data/yoloGtold1/train/48840.png +../../data/yoloGtold1/train/48841.png +../../data/yoloGtold1/train/48842.png +../../data/yoloGtold1/train/48843.png +../../data/yoloGtold1/train/48844.png +../../data/yoloGtold1/train/48845.png +../../data/yoloGtold1/train/48846.png +../../data/yoloGtold1/train/48847.png +../../data/yoloGtold1/train/48848.png +../../data/yoloGtold1/train/48849.png +../../data/yoloGtold1/train/48850.png +../../data/yoloGtold1/train/48851.png +../../data/yoloGtold1/train/48852.png +../../data/yoloGtold1/train/48853.png +../../data/yoloGtold1/train/48854.png +../../data/yoloGtold1/train/48855.png +../../data/yoloGtold1/train/48856.png +../../data/yoloGtold1/train/48857.png +../../data/yoloGtold1/train/48858.png +../../data/yoloGtold1/train/48859.png +../../data/yoloGtold1/train/48860.png +../../data/yoloGtold1/train/48861.png +../../data/yoloGtold1/train/48862.png +../../data/yoloGtold1/train/48863.png +../../data/yoloGtold1/train/48864.png +../../data/yoloGtold1/train/48865.png +../../data/yoloGtold1/train/48866.png +../../data/yoloGtold1/train/48867.png +../../data/yoloGtold1/train/48868.png +../../data/yoloGtold1/train/48869.png +../../data/yoloGtold1/train/48870.png +../../data/yoloGtold1/train/48871.png +../../data/yoloGtold1/train/48872.png +../../data/yoloGtold1/train/48873.png +../../data/yoloGtold1/train/48874.png +../../data/yoloGtold1/train/48875.png +../../data/yoloGtold1/train/48876.png +../../data/yoloGtold1/train/48877.png +../../data/yoloGtold1/train/48878.png +../../data/yoloGtold1/train/48879.png +../../data/yoloGtold1/train/48880.png +../../data/yoloGtold1/train/48881.png +../../data/yoloGtold1/train/48882.png +../../data/yoloGtold1/train/48883.png +../../data/yoloGtold1/train/48884.png +../../data/yoloGtold1/train/48885.png +../../data/yoloGtold1/train/48886.png +../../data/yoloGtold1/train/48887.png +../../data/yoloGtold1/train/48888.png +../../data/yoloGtold1/train/48889.png +../../data/yoloGtold1/train/48890.png +../../data/yoloGtold1/train/48891.png +../../data/yoloGtold1/train/48892.png +../../data/yoloGtold1/train/48893.png +../../data/yoloGtold1/train/48894.png +../../data/yoloGtold1/train/48895.png +../../data/yoloGtold1/train/48896.png +../../data/yoloGtold1/train/48897.png +../../data/yoloGtold1/train/48898.png +../../data/yoloGtold1/train/48899.png +../../data/yoloGtold1/train/48900.png +../../data/yoloGtold1/train/48901.png +../../data/yoloGtold1/train/48902.png +../../data/yoloGtold1/train/48903.png +../../data/yoloGtold1/train/48904.png +../../data/yoloGtold1/train/48905.png +../../data/yoloGtold1/train/48906.png +../../data/yoloGtold1/train/48907.png +../../data/yoloGtold1/train/48908.png +../../data/yoloGtold1/train/48909.png +../../data/yoloGtold1/train/48910.png +../../data/yoloGtold1/train/48911.png +../../data/yoloGtold1/train/48912.png +../../data/yoloGtold1/train/48913.png +../../data/yoloGtold1/train/48914.png +../../data/yoloGtold1/train/48915.png +../../data/yoloGtold1/train/48916.png +../../data/yoloGtold1/train/48917.png +../../data/yoloGtold1/train/48918.png +../../data/yoloGtold1/train/48919.png +../../data/yoloGtold1/train/48920.png +../../data/yoloGtold1/train/48921.png +../../data/yoloGtold1/train/48922.png +../../data/yoloGtold1/train/48923.png +../../data/yoloGtold1/train/48924.png +../../data/yoloGtold1/train/48925.png +../../data/yoloGtold1/train/48926.png +../../data/yoloGtold1/train/48927.png +../../data/yoloGtold1/train/48928.png +../../data/yoloGtold1/train/48929.png +../../data/yoloGtold1/train/48930.png +../../data/yoloGtold1/train/48931.png +../../data/yoloGtold1/train/48932.png +../../data/yoloGtold1/train/48933.png +../../data/yoloGtold1/train/48934.png +../../data/yoloGtold1/train/48935.png +../../data/yoloGtold1/train/48936.png +../../data/yoloGtold1/train/48937.png +../../data/yoloGtold1/train/48938.png +../../data/yoloGtold1/train/48939.png +../../data/yoloGtold1/train/48940.png +../../data/yoloGtold1/train/48941.png +../../data/yoloGtold1/train/48942.png +../../data/yoloGtold1/train/48943.png +../../data/yoloGtold1/train/48944.png +../../data/yoloGtold1/train/48945.png +../../data/yoloGtold1/train/48946.png +../../data/yoloGtold1/train/48947.png +../../data/yoloGtold1/train/48948.png +../../data/yoloGtold1/train/48949.png +../../data/yoloGtold1/train/48950.png +../../data/yoloGtold1/train/48951.png +../../data/yoloGtold1/train/48952.png +../../data/yoloGtold1/train/48953.png +../../data/yoloGtold1/train/48954.png +../../data/yoloGtold1/train/48955.png +../../data/yoloGtold1/train/48956.png +../../data/yoloGtold1/train/48957.png +../../data/yoloGtold1/train/48958.png +../../data/yoloGtold1/train/48959.png +../../data/yoloGtold1/train/48960.png +../../data/yoloGtold1/train/48961.png +../../data/yoloGtold1/train/48962.png +../../data/yoloGtold1/train/48963.png +../../data/yoloGtold1/train/48964.png +../../data/yoloGtold1/train/48965.png +../../data/yoloGtold1/train/48966.png +../../data/yoloGtold1/train/48967.png +../../data/yoloGtold1/train/48968.png +../../data/yoloGtold1/train/48969.png +../../data/yoloGtold1/train/48970.png +../../data/yoloGtold1/train/48971.png +../../data/yoloGtold1/train/48972.png +../../data/yoloGtold1/train/48973.png +../../data/yoloGtold1/train/48974.png +../../data/yoloGtold1/train/48975.png +../../data/yoloGtold1/train/48976.png +../../data/yoloGtold1/train/48977.png +../../data/yoloGtold1/train/48978.png +../../data/yoloGtold1/train/48979.png +../../data/yoloGtold1/train/48980.png +../../data/yoloGtold1/train/48981.png +../../data/yoloGtold1/train/48982.png +../../data/yoloGtold1/train/48983.png +../../data/yoloGtold1/train/48984.png +../../data/yoloGtold1/train/48985.png +../../data/yoloGtold1/train/48986.png +../../data/yoloGtold1/train/48987.png +../../data/yoloGtold1/train/48988.png +../../data/yoloGtold1/train/48989.png +../../data/yoloGtold1/train/48990.png +../../data/yoloGtold1/train/48991.png +../../data/yoloGtold1/train/48992.png +../../data/yoloGtold1/train/48993.png +../../data/yoloGtold1/train/48994.png +../../data/yoloGtold1/train/48995.png +../../data/yoloGtold1/train/48996.png +../../data/yoloGtold1/train/48997.png +../../data/yoloGtold1/train/48998.png +../../data/yoloGtold1/train/48999.png +../../data/yoloGtold1/train/49000.png +../../data/yoloGtold1/train/49001.png +../../data/yoloGtold1/train/49002.png +../../data/yoloGtold1/train/49003.png +../../data/yoloGtold1/train/49004.png +../../data/yoloGtold1/train/49005.png +../../data/yoloGtold1/train/49006.png +../../data/yoloGtold1/train/49007.png +../../data/yoloGtold1/train/49008.png +../../data/yoloGtold1/train/49009.png +../../data/yoloGtold1/train/49010.png +../../data/yoloGtold1/train/49011.png +../../data/yoloGtold1/train/49012.png +../../data/yoloGtold1/train/49013.png +../../data/yoloGtold1/train/49014.png +../../data/yoloGtold1/train/49015.png +../../data/yoloGtold1/train/49016.png +../../data/yoloGtold1/train/49017.png +../../data/yoloGtold1/train/49018.png +../../data/yoloGtold1/train/49019.png +../../data/yoloGtold1/train/49020.png +../../data/yoloGtold1/train/49021.png +../../data/yoloGtold1/train/49022.png +../../data/yoloGtold1/train/49023.png +../../data/yoloGtold1/train/49024.png +../../data/yoloGtold1/train/49025.png +../../data/yoloGtold1/train/49026.png +../../data/yoloGtold1/train/49027.png +../../data/yoloGtold1/train/49028.png +../../data/yoloGtold1/train/49029.png +../../data/yoloGtold1/train/49030.png +../../data/yoloGtold1/train/49031.png +../../data/yoloGtold1/train/49032.png +../../data/yoloGtold1/train/49033.png +../../data/yoloGtold1/train/49034.png +../../data/yoloGtold1/train/49035.png +../../data/yoloGtold1/train/49036.png +../../data/yoloGtold1/train/49037.png +../../data/yoloGtold1/train/49038.png +../../data/yoloGtold1/train/49039.png +../../data/yoloGtold1/train/49040.png +../../data/yoloGtold1/train/49041.png +../../data/yoloGtold1/train/49042.png +../../data/yoloGtold1/train/49043.png +../../data/yoloGtold1/train/49044.png +../../data/yoloGtold1/train/49045.png +../../data/yoloGtold1/train/49046.png +../../data/yoloGtold1/train/49047.png +../../data/yoloGtold1/train/49048.png +../../data/yoloGtold1/train/49049.png +../../data/yoloGtold1/train/49050.png +../../data/yoloGtold1/train/49051.png +../../data/yoloGtold1/train/49052.png +../../data/yoloGtold1/train/49053.png +../../data/yoloGtold1/train/49054.png +../../data/yoloGtold1/train/49055.png +../../data/yoloGtold1/train/49056.png +../../data/yoloGtold1/train/49057.png +../../data/yoloGtold1/train/49058.png +../../data/yoloGtold1/train/49059.png +../../data/yoloGtold1/train/49060.png +../../data/yoloGtold1/train/49061.png +../../data/yoloGtold1/train/49062.png +../../data/yoloGtold1/train/49063.png +../../data/yoloGtold1/train/49064.png +../../data/yoloGtold1/train/49065.png +../../data/yoloGtold1/train/49066.png +../../data/yoloGtold1/train/49067.png +../../data/yoloGtold1/train/49068.png +../../data/yoloGtold1/train/49069.png +../../data/yoloGtold1/train/49070.png +../../data/yoloGtold1/train/49071.png +../../data/yoloGtold1/train/49072.png +../../data/yoloGtold1/train/49073.png +../../data/yoloGtold1/train/49074.png +../../data/yoloGtold1/train/49075.png +../../data/yoloGtold1/train/49076.png +../../data/yoloGtold1/train/49077.png +../../data/yoloGtold1/train/49078.png +../../data/yoloGtold1/train/49079.png +../../data/yoloGtold1/train/49080.png +../../data/yoloGtold1/train/49081.png +../../data/yoloGtold1/train/49082.png +../../data/yoloGtold1/train/49083.png +../../data/yoloGtold1/train/49084.png +../../data/yoloGtold1/train/49085.png +../../data/yoloGtold1/train/49086.png +../../data/yoloGtold1/train/49087.png +../../data/yoloGtold1/train/49088.png +../../data/yoloGtold1/train/49089.png +../../data/yoloGtold1/train/49090.png +../../data/yoloGtold1/train/49091.png +../../data/yoloGtold1/train/49092.png +../../data/yoloGtold1/train/49093.png +../../data/yoloGtold1/train/49094.png +../../data/yoloGtold1/train/49095.png +../../data/yoloGtold1/train/49096.png +../../data/yoloGtold1/train/49097.png +../../data/yoloGtold1/train/49098.png +../../data/yoloGtold1/train/49099.png +../../data/yoloGtold1/train/49100.png +../../data/yoloGtold1/train/49101.png +../../data/yoloGtold1/train/49102.png +../../data/yoloGtold1/train/49103.png +../../data/yoloGtold1/train/49104.png +../../data/yoloGtold1/train/49105.png +../../data/yoloGtold1/train/49106.png +../../data/yoloGtold1/train/49107.png +../../data/yoloGtold1/train/49108.png +../../data/yoloGtold1/train/49109.png +../../data/yoloGtold1/train/49110.png +../../data/yoloGtold1/train/49111.png +../../data/yoloGtold1/train/49112.png +../../data/yoloGtold1/train/49113.png +../../data/yoloGtold1/train/49114.png +../../data/yoloGtold1/train/49115.png +../../data/yoloGtold1/train/49116.png +../../data/yoloGtold1/train/49117.png +../../data/yoloGtold1/train/49118.png +../../data/yoloGtold1/train/49119.png +../../data/yoloGtold1/train/49120.png +../../data/yoloGtold1/train/49121.png +../../data/yoloGtold1/train/49122.png +../../data/yoloGtold1/train/49123.png +../../data/yoloGtold1/train/49124.png +../../data/yoloGtold1/train/49125.png +../../data/yoloGtold1/train/49126.png +../../data/yoloGtold1/train/49127.png +../../data/yoloGtold1/train/49128.png +../../data/yoloGtold1/train/49129.png +../../data/yoloGtold1/train/49130.png +../../data/yoloGtold1/train/49131.png +../../data/yoloGtold1/train/49132.png +../../data/yoloGtold1/train/49133.png +../../data/yoloGtold1/train/49134.png +../../data/yoloGtold1/train/49135.png +../../data/yoloGtold1/train/49136.png +../../data/yoloGtold1/train/49137.png +../../data/yoloGtold1/train/49138.png +../../data/yoloGtold1/train/49139.png +../../data/yoloGtold1/train/49140.png +../../data/yoloGtold1/train/49141.png +../../data/yoloGtold1/train/49142.png +../../data/yoloGtold1/train/49143.png +../../data/yoloGtold1/train/49144.png +../../data/yoloGtold1/train/49145.png +../../data/yoloGtold1/train/49146.png +../../data/yoloGtold1/train/49147.png +../../data/yoloGtold1/train/49148.png +../../data/yoloGtold1/train/49149.png +../../data/yoloGtold1/train/49150.png +../../data/yoloGtold1/train/49151.png +../../data/yoloGtold1/train/49152.png +../../data/yoloGtold1/train/49153.png +../../data/yoloGtold1/train/49154.png +../../data/yoloGtold1/train/49155.png +../../data/yoloGtold1/train/49156.png +../../data/yoloGtold1/train/49157.png +../../data/yoloGtold1/train/49158.png +../../data/yoloGtold1/train/49159.png +../../data/yoloGtold1/train/49160.png +../../data/yoloGtold1/train/49161.png +../../data/yoloGtold1/train/49162.png +../../data/yoloGtold1/train/49163.png +../../data/yoloGtold1/train/49164.png +../../data/yoloGtold1/train/49165.png +../../data/yoloGtold1/train/49166.png +../../data/yoloGtold1/train/49167.png +../../data/yoloGtold1/train/49168.png +../../data/yoloGtold1/train/49169.png +../../data/yoloGtold1/train/49170.png +../../data/yoloGtold1/train/49171.png +../../data/yoloGtold1/train/49172.png +../../data/yoloGtold1/train/49173.png +../../data/yoloGtold1/train/49174.png +../../data/yoloGtold1/train/49175.png +../../data/yoloGtold1/train/49176.png +../../data/yoloGtold1/train/49177.png +../../data/yoloGtold1/train/49178.png +../../data/yoloGtold1/train/49179.png +../../data/yoloGtold1/train/49180.png +../../data/yoloGtold1/train/49181.png +../../data/yoloGtold1/train/49182.png +../../data/yoloGtold1/train/49183.png +../../data/yoloGtold1/train/49184.png +../../data/yoloGtold1/train/49185.png +../../data/yoloGtold1/train/49186.png +../../data/yoloGtold1/train/49187.png +../../data/yoloGtold1/train/49188.png +../../data/yoloGtold1/train/49189.png +../../data/yoloGtold1/train/49190.png +../../data/yoloGtold1/train/49191.png +../../data/yoloGtold1/train/49192.png +../../data/yoloGtold1/train/49193.png +../../data/yoloGtold1/train/49194.png +../../data/yoloGtold1/train/49195.png +../../data/yoloGtold1/train/49196.png +../../data/yoloGtold1/train/49197.png +../../data/yoloGtold1/train/49198.png +../../data/yoloGtold1/train/49199.png +../../data/yoloGtold1/train/49200.png +../../data/yoloGtold1/train/49201.png +../../data/yoloGtold1/train/49202.png +../../data/yoloGtold1/train/49203.png +../../data/yoloGtold1/train/49204.png +../../data/yoloGtold1/train/49205.png +../../data/yoloGtold1/train/49206.png +../../data/yoloGtold1/train/49207.png +../../data/yoloGtold1/train/49208.png +../../data/yoloGtold1/train/49209.png +../../data/yoloGtold1/train/49210.png +../../data/yoloGtold1/train/49211.png +../../data/yoloGtold1/train/49212.png +../../data/yoloGtold1/train/49213.png +../../data/yoloGtold1/train/49214.png +../../data/yoloGtold1/train/49215.png +../../data/yoloGtold1/train/49216.png +../../data/yoloGtold1/train/49217.png +../../data/yoloGtold1/train/49218.png +../../data/yoloGtold1/train/49219.png +../../data/yoloGtold1/train/49220.png +../../data/yoloGtold1/train/49221.png +../../data/yoloGtold1/train/49222.png +../../data/yoloGtold1/train/49223.png +../../data/yoloGtold1/train/49224.png +../../data/yoloGtold1/train/49225.png +../../data/yoloGtold1/train/49226.png +../../data/yoloGtold1/train/49227.png +../../data/yoloGtold1/train/49228.png +../../data/yoloGtold1/train/49229.png +../../data/yoloGtold1/train/49230.png +../../data/yoloGtold1/train/49231.png +../../data/yoloGtold1/train/49232.png +../../data/yoloGtold1/train/49233.png +../../data/yoloGtold1/train/49234.png +../../data/yoloGtold1/train/49235.png +../../data/yoloGtold1/train/49236.png +../../data/yoloGtold1/train/49237.png +../../data/yoloGtold1/train/49238.png +../../data/yoloGtold1/train/49239.png +../../data/yoloGtold1/train/49240.png +../../data/yoloGtold1/train/49241.png +../../data/yoloGtold1/train/49242.png +../../data/yoloGtold1/train/49243.png +../../data/yoloGtold1/train/49244.png +../../data/yoloGtold1/train/49245.png +../../data/yoloGtold1/train/49246.png +../../data/yoloGtold1/train/49247.png +../../data/yoloGtold1/train/49248.png +../../data/yoloGtold1/train/49249.png +../../data/yoloGtold1/train/49250.png +../../data/yoloGtold1/train/49251.png +../../data/yoloGtold1/train/49252.png +../../data/yoloGtold1/train/49253.png +../../data/yoloGtold1/train/49254.png +../../data/yoloGtold1/train/49255.png +../../data/yoloGtold1/train/49256.png +../../data/yoloGtold1/train/49257.png +../../data/yoloGtold1/train/49258.png +../../data/yoloGtold1/train/49259.png +../../data/yoloGtold1/train/49260.png +../../data/yoloGtold1/train/49261.png +../../data/yoloGtold1/train/49262.png +../../data/yoloGtold1/train/49263.png +../../data/yoloGtold1/train/49264.png +../../data/yoloGtold1/train/49265.png +../../data/yoloGtold1/train/49266.png +../../data/yoloGtold1/train/49267.png +../../data/yoloGtold1/train/49268.png +../../data/yoloGtold1/train/49269.png +../../data/yoloGtold1/train/49270.png +../../data/yoloGtold1/train/49271.png +../../data/yoloGtold1/train/49272.png +../../data/yoloGtold1/train/49273.png +../../data/yoloGtold1/train/49274.png +../../data/yoloGtold1/train/49275.png +../../data/yoloGtold1/train/49276.png +../../data/yoloGtold1/train/49277.png +../../data/yoloGtold1/train/49278.png +../../data/yoloGtold1/train/49279.png +../../data/yoloGtold1/train/49280.png +../../data/yoloGtold1/train/49281.png +../../data/yoloGtold1/train/49282.png +../../data/yoloGtold1/train/49283.png +../../data/yoloGtold1/train/49284.png +../../data/yoloGtold1/train/49285.png +../../data/yoloGtold1/train/49286.png +../../data/yoloGtold1/train/49287.png +../../data/yoloGtold1/train/49288.png +../../data/yoloGtold1/train/49289.png +../../data/yoloGtold1/train/49290.png +../../data/yoloGtold1/train/49291.png +../../data/yoloGtold1/train/49292.png +../../data/yoloGtold1/train/49293.png +../../data/yoloGtold1/train/49294.png +../../data/yoloGtold1/train/49295.png +../../data/yoloGtold1/train/49296.png +../../data/yoloGtold1/train/49297.png +../../data/yoloGtold1/train/49298.png +../../data/yoloGtold1/train/49299.png +../../data/yoloGtold1/train/49300.png +../../data/yoloGtold1/train/49301.png +../../data/yoloGtold1/train/49302.png +../../data/yoloGtold1/train/49303.png +../../data/yoloGtold1/train/49304.png +../../data/yoloGtold1/train/49305.png +../../data/yoloGtold1/train/49306.png +../../data/yoloGtold1/train/49307.png +../../data/yoloGtold1/train/49308.png +../../data/yoloGtold1/train/49309.png +../../data/yoloGtold1/train/49310.png +../../data/yoloGtold1/train/49311.png +../../data/yoloGtold1/train/49312.png +../../data/yoloGtold1/train/49313.png +../../data/yoloGtold1/train/49314.png +../../data/yoloGtold1/train/49315.png +../../data/yoloGtold1/train/49316.png +../../data/yoloGtold1/train/49317.png +../../data/yoloGtold1/train/49318.png +../../data/yoloGtold1/train/49319.png +../../data/yoloGtold1/train/49320.png +../../data/yoloGtold1/train/49321.png +../../data/yoloGtold1/train/49322.png +../../data/yoloGtold1/train/49323.png +../../data/yoloGtold1/train/49324.png +../../data/yoloGtold1/train/49325.png +../../data/yoloGtold1/train/49326.png +../../data/yoloGtold1/train/49327.png +../../data/yoloGtold1/train/49328.png +../../data/yoloGtold1/train/49329.png +../../data/yoloGtold1/train/49330.png +../../data/yoloGtold1/train/49331.png +../../data/yoloGtold1/train/49332.png +../../data/yoloGtold1/train/49333.png +../../data/yoloGtold1/train/49334.png +../../data/yoloGtold1/train/49335.png +../../data/yoloGtold1/train/49336.png +../../data/yoloGtold1/train/49337.png +../../data/yoloGtold1/train/49338.png +../../data/yoloGtold1/train/49339.png +../../data/yoloGtold1/train/49340.png +../../data/yoloGtold1/train/49341.png +../../data/yoloGtold1/train/49342.png +../../data/yoloGtold1/train/49343.png +../../data/yoloGtold1/train/49344.png +../../data/yoloGtold1/train/49345.png +../../data/yoloGtold1/train/49346.png +../../data/yoloGtold1/train/49347.png +../../data/yoloGtold1/train/49348.png +../../data/yoloGtold1/train/49349.png +../../data/yoloGtold1/train/49350.png +../../data/yoloGtold1/train/49351.png +../../data/yoloGtold1/train/49352.png +../../data/yoloGtold1/train/49353.png +../../data/yoloGtold1/train/49354.png +../../data/yoloGtold1/train/49355.png +../../data/yoloGtold1/train/49356.png +../../data/yoloGtold1/train/49357.png +../../data/yoloGtold1/train/49358.png +../../data/yoloGtold1/train/49359.png +../../data/yoloGtold1/train/49360.png +../../data/yoloGtold1/train/49361.png +../../data/yoloGtold1/train/49362.png +../../data/yoloGtold1/train/49363.png +../../data/yoloGtold1/train/49364.png +../../data/yoloGtold1/train/49365.png +../../data/yoloGtold1/train/49366.png +../../data/yoloGtold1/train/49367.png +../../data/yoloGtold1/train/49368.png +../../data/yoloGtold1/train/49369.png +../../data/yoloGtold1/train/49370.png +../../data/yoloGtold1/train/49371.png +../../data/yoloGtold1/train/49372.png +../../data/yoloGtold1/train/49373.png +../../data/yoloGtold1/train/49374.png +../../data/yoloGtold1/train/49375.png +../../data/yoloGtold1/train/49376.png +../../data/yoloGtold1/train/49377.png +../../data/yoloGtold1/train/49378.png +../../data/yoloGtold1/train/49379.png +../../data/yoloGtold1/train/49380.png +../../data/yoloGtold1/train/49381.png +../../data/yoloGtold1/train/49382.png +../../data/yoloGtold1/train/49383.png +../../data/yoloGtold1/train/49384.png +../../data/yoloGtold1/train/49385.png +../../data/yoloGtold1/train/49386.png +../../data/yoloGtold1/train/49387.png +../../data/yoloGtold1/train/49388.png +../../data/yoloGtold1/train/49389.png +../../data/yoloGtold1/train/49390.png +../../data/yoloGtold1/train/49391.png +../../data/yoloGtold1/train/49392.png +../../data/yoloGtold1/train/49393.png +../../data/yoloGtold1/train/49394.png +../../data/yoloGtold1/train/49395.png +../../data/yoloGtold1/train/49396.png +../../data/yoloGtold1/train/49397.png +../../data/yoloGtold1/train/49398.png +../../data/yoloGtold1/train/49399.png +../../data/yoloGtold1/train/49400.png +../../data/yoloGtold1/train/49401.png +../../data/yoloGtold1/train/49402.png +../../data/yoloGtold1/train/49403.png +../../data/yoloGtold1/train/49404.png +../../data/yoloGtold1/train/49405.png +../../data/yoloGtold1/train/49406.png +../../data/yoloGtold1/train/49407.png +../../data/yoloGtold1/train/49408.png +../../data/yoloGtold1/train/49409.png +../../data/yoloGtold1/train/49410.png +../../data/yoloGtold1/train/49411.png +../../data/yoloGtold1/train/49412.png +../../data/yoloGtold1/train/49413.png +../../data/yoloGtold1/train/49414.png +../../data/yoloGtold1/train/49415.png +../../data/yoloGtold1/train/49416.png +../../data/yoloGtold1/train/49417.png +../../data/yoloGtold1/train/49418.png +../../data/yoloGtold1/train/49419.png +../../data/yoloGtold1/train/49420.png +../../data/yoloGtold1/train/49421.png +../../data/yoloGtold1/train/49422.png +../../data/yoloGtold1/train/49423.png +../../data/yoloGtold1/train/49424.png +../../data/yoloGtold1/train/49425.png +../../data/yoloGtold1/train/49426.png +../../data/yoloGtold1/train/49427.png +../../data/yoloGtold1/train/49428.png +../../data/yoloGtold1/train/49429.png +../../data/yoloGtold1/train/49430.png +../../data/yoloGtold1/train/49431.png +../../data/yoloGtold1/train/49432.png +../../data/yoloGtold1/train/49433.png +../../data/yoloGtold1/train/49434.png +../../data/yoloGtold1/train/49435.png +../../data/yoloGtold1/train/49436.png +../../data/yoloGtold1/train/49437.png +../../data/yoloGtold1/train/49438.png +../../data/yoloGtold1/train/49439.png +../../data/yoloGtold1/train/49440.png +../../data/yoloGtold1/train/49441.png +../../data/yoloGtold1/train/49442.png +../../data/yoloGtold1/train/49443.png +../../data/yoloGtold1/train/49444.png +../../data/yoloGtold1/train/49445.png +../../data/yoloGtold1/train/49446.png +../../data/yoloGtold1/train/49447.png +../../data/yoloGtold1/train/49448.png +../../data/yoloGtold1/train/49449.png +../../data/yoloGtold1/train/49450.png +../../data/yoloGtold1/train/49451.png +../../data/yoloGtold1/train/49452.png +../../data/yoloGtold1/train/49453.png +../../data/yoloGtold1/train/49454.png +../../data/yoloGtold1/train/49455.png +../../data/yoloGtold1/train/49456.png +../../data/yoloGtold1/train/49457.png +../../data/yoloGtold1/train/49458.png +../../data/yoloGtold1/train/49459.png +../../data/yoloGtold1/train/49460.png +../../data/yoloGtold1/train/49461.png +../../data/yoloGtold1/train/49462.png +../../data/yoloGtold1/train/49463.png +../../data/yoloGtold1/train/49464.png +../../data/yoloGtold1/train/49465.png +../../data/yoloGtold1/train/49466.png +../../data/yoloGtold1/train/49467.png +../../data/yoloGtold1/train/49468.png +../../data/yoloGtold1/train/49469.png +../../data/yoloGtold1/train/49470.png +../../data/yoloGtold1/train/49471.png +../../data/yoloGtold1/train/49472.png +../../data/yoloGtold1/train/49473.png +../../data/yoloGtold1/train/49474.png +../../data/yoloGtold1/train/49475.png +../../data/yoloGtold1/train/49476.png +../../data/yoloGtold1/train/49477.png +../../data/yoloGtold1/train/49478.png +../../data/yoloGtold1/train/49479.png +../../data/yoloGtold1/train/49480.png +../../data/yoloGtold1/train/49481.png +../../data/yoloGtold1/train/49482.png +../../data/yoloGtold1/train/49483.png +../../data/yoloGtold1/train/49484.png +../../data/yoloGtold1/train/49485.png +../../data/yoloGtold1/train/49486.png +../../data/yoloGtold1/train/49487.png +../../data/yoloGtold1/train/49488.png +../../data/yoloGtold1/train/49489.png +../../data/yoloGtold1/train/49490.png +../../data/yoloGtold1/train/49491.png +../../data/yoloGtold1/train/49492.png +../../data/yoloGtold1/train/49493.png +../../data/yoloGtold1/train/49494.png +../../data/yoloGtold1/train/49495.png +../../data/yoloGtold1/train/49496.png +../../data/yoloGtold1/train/49497.png +../../data/yoloGtold1/train/49498.png +../../data/yoloGtold1/train/49499.png +../../data/yoloGtold1/train/49500.png +../../data/yoloGtold1/train/49501.png +../../data/yoloGtold1/train/49502.png +../../data/yoloGtold1/train/49503.png +../../data/yoloGtold1/train/49504.png +../../data/yoloGtold1/train/49505.png +../../data/yoloGtold1/train/49506.png +../../data/yoloGtold1/train/49507.png +../../data/yoloGtold1/train/49508.png +../../data/yoloGtold1/train/49509.png +../../data/yoloGtold1/train/49510.png +../../data/yoloGtold1/train/49511.png +../../data/yoloGtold1/train/49512.png +../../data/yoloGtold1/train/49513.png +../../data/yoloGtold1/train/49514.png +../../data/yoloGtold1/train/49515.png +../../data/yoloGtold1/train/49516.png +../../data/yoloGtold1/train/49517.png +../../data/yoloGtold1/train/49518.png +../../data/yoloGtold1/train/49519.png +../../data/yoloGtold1/train/49520.png +../../data/yoloGtold1/train/49521.png +../../data/yoloGtold1/train/49522.png +../../data/yoloGtold1/train/49523.png +../../data/yoloGtold1/train/49524.png +../../data/yoloGtold1/train/49525.png +../../data/yoloGtold1/train/49526.png +../../data/yoloGtold1/train/49527.png +../../data/yoloGtold1/train/49528.png +../../data/yoloGtold1/train/49529.png +../../data/yoloGtold1/train/49530.png +../../data/yoloGtold1/train/49531.png +../../data/yoloGtold1/train/49532.png +../../data/yoloGtold1/train/49533.png +../../data/yoloGtold1/train/49534.png +../../data/yoloGtold1/train/49535.png +../../data/yoloGtold1/train/49536.png +../../data/yoloGtold1/train/49537.png +../../data/yoloGtold1/train/49538.png +../../data/yoloGtold1/train/49539.png +../../data/yoloGtold1/train/49540.png +../../data/yoloGtold1/train/49541.png +../../data/yoloGtold1/train/49542.png +../../data/yoloGtold1/train/49543.png +../../data/yoloGtold1/train/49544.png +../../data/yoloGtold1/train/49545.png +../../data/yoloGtold1/train/49546.png +../../data/yoloGtold1/train/49547.png +../../data/yoloGtold1/train/49548.png +../../data/yoloGtold1/train/49549.png +../../data/yoloGtold1/train/49550.png +../../data/yoloGtold1/train/49551.png +../../data/yoloGtold1/train/49552.png +../../data/yoloGtold1/train/49553.png +../../data/yoloGtold1/train/49554.png +../../data/yoloGtold1/train/49555.png +../../data/yoloGtold1/train/49556.png +../../data/yoloGtold1/train/49557.png +../../data/yoloGtold1/train/49558.png +../../data/yoloGtold1/train/49559.png +../../data/yoloGtold1/train/49560.png +../../data/yoloGtold1/train/49561.png +../../data/yoloGtold1/train/49562.png +../../data/yoloGtold1/train/49563.png +../../data/yoloGtold1/train/49564.png +../../data/yoloGtold1/train/49565.png +../../data/yoloGtold1/train/49566.png +../../data/yoloGtold1/train/49567.png +../../data/yoloGtold1/train/49568.png +../../data/yoloGtold1/train/49569.png +../../data/yoloGtold1/train/49570.png +../../data/yoloGtold1/train/49571.png +../../data/yoloGtold1/train/49572.png +../../data/yoloGtold1/train/49573.png +../../data/yoloGtold1/train/49574.png +../../data/yoloGtold1/train/49575.png +../../data/yoloGtold1/train/49576.png +../../data/yoloGtold1/train/49577.png +../../data/yoloGtold1/train/49578.png +../../data/yoloGtold1/train/49579.png +../../data/yoloGtold1/train/49580.png +../../data/yoloGtold1/train/49581.png +../../data/yoloGtold1/train/49582.png +../../data/yoloGtold1/train/49583.png +../../data/yoloGtold1/train/49584.png +../../data/yoloGtold1/train/49585.png +../../data/yoloGtold1/train/49586.png +../../data/yoloGtold1/train/49587.png +../../data/yoloGtold1/train/49588.png +../../data/yoloGtold1/train/49589.png +../../data/yoloGtold1/train/49590.png +../../data/yoloGtold1/train/49591.png +../../data/yoloGtold1/train/49592.png +../../data/yoloGtold1/train/49593.png +../../data/yoloGtold1/train/49594.png +../../data/yoloGtold1/train/49595.png +../../data/yoloGtold1/train/49596.png +../../data/yoloGtold1/train/49597.png +../../data/yoloGtold1/train/49598.png +../../data/yoloGtold1/train/49599.png +../../data/yoloGtold1/train/49600.png +../../data/yoloGtold1/train/49601.png +../../data/yoloGtold1/train/49602.png +../../data/yoloGtold1/train/49603.png +../../data/yoloGtold1/train/49604.png +../../data/yoloGtold1/train/49605.png +../../data/yoloGtold1/train/49606.png +../../data/yoloGtold1/train/49607.png +../../data/yoloGtold1/train/49608.png +../../data/yoloGtold1/train/49609.png +../../data/yoloGtold1/train/49610.png +../../data/yoloGtold1/train/49611.png +../../data/yoloGtold1/train/49612.png +../../data/yoloGtold1/train/49613.png +../../data/yoloGtold1/train/49614.png +../../data/yoloGtold1/train/49615.png +../../data/yoloGtold1/train/49616.png +../../data/yoloGtold1/train/49617.png +../../data/yoloGtold1/train/49618.png +../../data/yoloGtold1/train/49619.png +../../data/yoloGtold1/train/49620.png +../../data/yoloGtold1/train/49621.png +../../data/yoloGtold1/train/49622.png +../../data/yoloGtold1/train/49623.png +../../data/yoloGtold1/train/49624.png +../../data/yoloGtold1/train/49625.png +../../data/yoloGtold1/train/49626.png +../../data/yoloGtold1/train/49627.png +../../data/yoloGtold1/train/49628.png +../../data/yoloGtold1/train/49629.png +../../data/yoloGtold1/train/49630.png +../../data/yoloGtold1/train/49631.png +../../data/yoloGtold1/train/49632.png +../../data/yoloGtold1/train/49633.png +../../data/yoloGtold1/train/49634.png +../../data/yoloGtold1/train/49635.png +../../data/yoloGtold1/train/49636.png +../../data/yoloGtold1/train/49637.png +../../data/yoloGtold1/train/49638.png +../../data/yoloGtold1/train/49639.png +../../data/yoloGtold1/train/49640.png +../../data/yoloGtold1/train/49641.png +../../data/yoloGtold1/train/49642.png +../../data/yoloGtold1/train/49643.png +../../data/yoloGtold1/train/49644.png +../../data/yoloGtold1/train/49645.png +../../data/yoloGtold1/train/49646.png +../../data/yoloGtold1/train/49647.png +../../data/yoloGtold1/train/49648.png +../../data/yoloGtold1/train/49649.png +../../data/yoloGtold1/train/49650.png +../../data/yoloGtold1/train/49651.png +../../data/yoloGtold1/train/49652.png +../../data/yoloGtold1/train/49653.png +../../data/yoloGtold1/train/49654.png +../../data/yoloGtold1/train/49655.png +../../data/yoloGtold1/train/49656.png +../../data/yoloGtold1/train/49657.png +../../data/yoloGtold1/train/49658.png +../../data/yoloGtold1/train/49659.png +../../data/yoloGtold1/train/49660.png +../../data/yoloGtold1/train/49661.png +../../data/yoloGtold1/train/49662.png +../../data/yoloGtold1/train/49663.png +../../data/yoloGtold1/train/49664.png +../../data/yoloGtold1/train/49665.png +../../data/yoloGtold1/train/49666.png +../../data/yoloGtold1/train/49667.png +../../data/yoloGtold1/train/49668.png +../../data/yoloGtold1/train/49669.png +../../data/yoloGtold1/train/49670.png +../../data/yoloGtold1/train/49671.png +../../data/yoloGtold1/train/49672.png +../../data/yoloGtold1/train/49673.png +../../data/yoloGtold1/train/49674.png +../../data/yoloGtold1/train/49675.png +../../data/yoloGtold1/train/49676.png +../../data/yoloGtold1/train/49677.png +../../data/yoloGtold1/train/49678.png +../../data/yoloGtold1/train/49679.png +../../data/yoloGtold1/train/49680.png +../../data/yoloGtold1/train/49681.png +../../data/yoloGtold1/train/49682.png +../../data/yoloGtold1/train/49683.png +../../data/yoloGtold1/train/49684.png +../../data/yoloGtold1/train/49685.png +../../data/yoloGtold1/train/49686.png +../../data/yoloGtold1/train/49687.png +../../data/yoloGtold1/train/49688.png +../../data/yoloGtold1/train/49689.png +../../data/yoloGtold1/train/49690.png +../../data/yoloGtold1/train/49691.png +../../data/yoloGtold1/train/49692.png +../../data/yoloGtold1/train/49693.png +../../data/yoloGtold1/train/49694.png +../../data/yoloGtold1/train/49695.png +../../data/yoloGtold1/train/49696.png +../../data/yoloGtold1/train/49697.png +../../data/yoloGtold1/train/49698.png +../../data/yoloGtold1/train/49699.png +../../data/yoloGtold1/train/49700.png +../../data/yoloGtold1/train/49701.png +../../data/yoloGtold1/train/49702.png +../../data/yoloGtold1/train/49703.png +../../data/yoloGtold1/train/49704.png +../../data/yoloGtold1/train/49705.png +../../data/yoloGtold1/train/49706.png +../../data/yoloGtold1/train/49707.png +../../data/yoloGtold1/train/49708.png +../../data/yoloGtold1/train/49709.png +../../data/yoloGtold1/train/49710.png +../../data/yoloGtold1/train/49711.png +../../data/yoloGtold1/train/49712.png +../../data/yoloGtold1/train/49713.png +../../data/yoloGtold1/train/49714.png +../../data/yoloGtold1/train/49715.png +../../data/yoloGtold1/train/49716.png +../../data/yoloGtold1/train/49717.png +../../data/yoloGtold1/train/49718.png +../../data/yoloGtold1/train/49719.png +../../data/yoloGtold1/train/49720.png +../../data/yoloGtold1/train/49721.png +../../data/yoloGtold1/train/49722.png +../../data/yoloGtold1/train/49723.png +../../data/yoloGtold1/train/49724.png +../../data/yoloGtold1/train/49725.png +../../data/yoloGtold1/train/49726.png +../../data/yoloGtold1/train/49727.png +../../data/yoloGtold1/train/49728.png +../../data/yoloGtold1/train/49729.png +../../data/yoloGtold1/train/49730.png +../../data/yoloGtold1/train/49731.png +../../data/yoloGtold1/train/49732.png +../../data/yoloGtold1/train/49733.png +../../data/yoloGtold1/train/49734.png +../../data/yoloGtold1/train/49735.png +../../data/yoloGtold1/train/49736.png +../../data/yoloGtold1/train/49737.png +../../data/yoloGtold1/train/49738.png +../../data/yoloGtold1/train/49739.png +../../data/yoloGtold1/train/49740.png +../../data/yoloGtold1/train/49741.png +../../data/yoloGtold1/train/49742.png +../../data/yoloGtold1/train/49743.png +../../data/yoloGtold1/train/49744.png +../../data/yoloGtold1/train/49745.png +../../data/yoloGtold1/train/49746.png +../../data/yoloGtold1/train/49747.png +../../data/yoloGtold1/train/49748.png +../../data/yoloGtold1/train/49749.png +../../data/yoloGtold1/train/49750.png +../../data/yoloGtold1/train/49751.png +../../data/yoloGtold1/train/49752.png +../../data/yoloGtold1/train/49753.png +../../data/yoloGtold1/train/49754.png +../../data/yoloGtold1/train/49755.png +../../data/yoloGtold1/train/49756.png +../../data/yoloGtold1/train/49757.png +../../data/yoloGtold1/train/49758.png +../../data/yoloGtold1/train/49759.png +../../data/yoloGtold1/train/49760.png +../../data/yoloGtold1/train/49761.png +../../data/yoloGtold1/train/49762.png +../../data/yoloGtold1/train/49763.png +../../data/yoloGtold1/train/49764.png +../../data/yoloGtold1/train/49765.png +../../data/yoloGtold1/train/49766.png +../../data/yoloGtold1/train/49767.png +../../data/yoloGtold1/train/49768.png +../../data/yoloGtold1/train/49769.png +../../data/yoloGtold1/train/49770.png +../../data/yoloGtold1/train/49771.png +../../data/yoloGtold1/train/49772.png +../../data/yoloGtold1/train/49773.png +../../data/yoloGtold1/train/49774.png +../../data/yoloGtold1/train/49775.png +../../data/yoloGtold1/train/49776.png +../../data/yoloGtold1/train/49777.png +../../data/yoloGtold1/train/49778.png +../../data/yoloGtold1/train/49779.png +../../data/yoloGtold1/train/49780.png +../../data/yoloGtold1/train/49781.png +../../data/yoloGtold1/train/49782.png +../../data/yoloGtold1/train/49783.png +../../data/yoloGtold1/train/49784.png +../../data/yoloGtold1/train/49785.png +../../data/yoloGtold1/train/49786.png +../../data/yoloGtold1/train/49787.png +../../data/yoloGtold1/train/49788.png +../../data/yoloGtold1/train/49789.png +../../data/yoloGtold1/train/49790.png +../../data/yoloGtold1/train/49791.png +../../data/yoloGtold1/train/49792.png +../../data/yoloGtold1/train/49793.png +../../data/yoloGtold1/train/49794.png +../../data/yoloGtold1/train/49795.png +../../data/yoloGtold1/train/49796.png +../../data/yoloGtold1/train/49797.png +../../data/yoloGtold1/train/49798.png +../../data/yoloGtold1/train/49799.png +../../data/yoloGtold1/train/49800.png +../../data/yoloGtold1/train/49801.png +../../data/yoloGtold1/train/49802.png +../../data/yoloGtold1/train/49803.png +../../data/yoloGtold1/train/49804.png +../../data/yoloGtold1/train/49805.png +../../data/yoloGtold1/train/49806.png +../../data/yoloGtold1/train/49807.png +../../data/yoloGtold1/train/49808.png +../../data/yoloGtold1/train/49809.png +../../data/yoloGtold1/train/49810.png +../../data/yoloGtold1/train/49811.png +../../data/yoloGtold1/train/49812.png +../../data/yoloGtold1/train/49813.png +../../data/yoloGtold1/train/49814.png +../../data/yoloGtold1/train/49815.png +../../data/yoloGtold1/train/49816.png +../../data/yoloGtold1/train/49817.png +../../data/yoloGtold1/train/49818.png +../../data/yoloGtold1/train/49819.png +../../data/yoloGtold1/train/49820.png +../../data/yoloGtold1/train/49821.png +../../data/yoloGtold1/train/49822.png +../../data/yoloGtold1/train/49823.png +../../data/yoloGtold1/train/49824.png +../../data/yoloGtold1/train/49825.png +../../data/yoloGtold1/train/49826.png +../../data/yoloGtold1/train/49827.png +../../data/yoloGtold1/train/49828.png +../../data/yoloGtold1/train/49829.png +../../data/yoloGtold1/train/49830.png +../../data/yoloGtold1/train/49831.png +../../data/yoloGtold1/train/49832.png +../../data/yoloGtold1/train/49833.png +../../data/yoloGtold1/train/49834.png +../../data/yoloGtold1/train/49835.png +../../data/yoloGtold1/train/49836.png +../../data/yoloGtold1/train/49837.png +../../data/yoloGtold1/train/49838.png +../../data/yoloGtold1/train/49839.png +../../data/yoloGtold1/train/49840.png +../../data/yoloGtold1/train/49841.png +../../data/yoloGtold1/train/49842.png +../../data/yoloGtold1/train/49843.png +../../data/yoloGtold1/train/49844.png +../../data/yoloGtold1/train/49845.png +../../data/yoloGtold1/train/49846.png +../../data/yoloGtold1/train/49847.png +../../data/yoloGtold1/train/49848.png +../../data/yoloGtold1/train/49849.png +../../data/yoloGtold1/train/49850.png +../../data/yoloGtold1/train/49851.png +../../data/yoloGtold1/train/49852.png +../../data/yoloGtold1/train/49853.png +../../data/yoloGtold1/train/49854.png +../../data/yoloGtold1/train/49855.png +../../data/yoloGtold1/train/49856.png +../../data/yoloGtold1/train/49857.png +../../data/yoloGtold1/train/49858.png +../../data/yoloGtold1/train/49859.png +../../data/yoloGtold1/train/49860.png +../../data/yoloGtold1/train/49861.png +../../data/yoloGtold1/train/49862.png +../../data/yoloGtold1/train/49863.png +../../data/yoloGtold1/train/49864.png +../../data/yoloGtold1/train/49865.png +../../data/yoloGtold1/train/49866.png +../../data/yoloGtold1/train/49867.png +../../data/yoloGtold1/train/49868.png +../../data/yoloGtold1/train/49869.png +../../data/yoloGtold1/train/49870.png +../../data/yoloGtold1/train/49871.png +../../data/yoloGtold1/train/49872.png +../../data/yoloGtold1/train/49873.png +../../data/yoloGtold1/train/49874.png +../../data/yoloGtold1/train/49875.png +../../data/yoloGtold1/train/49876.png +../../data/yoloGtold1/train/49877.png +../../data/yoloGtold1/train/49878.png +../../data/yoloGtold1/train/49879.png +../../data/yoloGtold1/train/49880.png +../../data/yoloGtold1/train/49881.png +../../data/yoloGtold1/train/49882.png +../../data/yoloGtold1/train/49883.png +../../data/yoloGtold1/train/49884.png +../../data/yoloGtold1/train/49885.png +../../data/yoloGtold1/train/49886.png +../../data/yoloGtold1/train/49887.png +../../data/yoloGtold1/train/49888.png +../../data/yoloGtold1/train/49889.png +../../data/yoloGtold1/train/49890.png +../../data/yoloGtold1/train/49891.png +../../data/yoloGtold1/train/49892.png +../../data/yoloGtold1/train/49893.png +../../data/yoloGtold1/train/49894.png +../../data/yoloGtold1/train/49895.png +../../data/yoloGtold1/train/49896.png +../../data/yoloGtold1/train/49897.png +../../data/yoloGtold1/train/49898.png +../../data/yoloGtold1/train/49899.png +../../data/yoloGtold1/train/49900.png +../../data/yoloGtold1/train/49901.png +../../data/yoloGtold1/train/49902.png +../../data/yoloGtold1/train/49903.png +../../data/yoloGtold1/train/49904.png +../../data/yoloGtold1/train/49905.png +../../data/yoloGtold1/train/49906.png +../../data/yoloGtold1/train/49907.png +../../data/yoloGtold1/train/49908.png +../../data/yoloGtold1/train/49909.png +../../data/yoloGtold1/train/49910.png +../../data/yoloGtold1/train/49911.png +../../data/yoloGtold1/train/49912.png +../../data/yoloGtold1/train/49913.png +../../data/yoloGtold1/train/49914.png +../../data/yoloGtold1/train/49915.png +../../data/yoloGtold1/train/49916.png +../../data/yoloGtold1/train/49917.png +../../data/yoloGtold1/train/49918.png +../../data/yoloGtold1/train/49919.png +../../data/yoloGtold1/train/49920.png +../../data/yoloGtold1/train/49921.png +../../data/yoloGtold1/train/49922.png +../../data/yoloGtold1/train/49923.png +../../data/yoloGtold1/train/49924.png +../../data/yoloGtold1/train/49925.png +../../data/yoloGtold1/train/49926.png +../../data/yoloGtold1/train/49927.png +../../data/yoloGtold1/train/49928.png +../../data/yoloGtold1/train/49929.png +../../data/yoloGtold1/train/49930.png +../../data/yoloGtold1/train/49931.png +../../data/yoloGtold1/train/49932.png +../../data/yoloGtold1/train/49933.png +../../data/yoloGtold1/train/49934.png +../../data/yoloGtold1/train/49935.png +../../data/yoloGtold1/train/49936.png +../../data/yoloGtold1/train/49937.png +../../data/yoloGtold1/train/49938.png +../../data/yoloGtold1/train/49939.png +../../data/yoloGtold1/train/49940.png +../../data/yoloGtold1/train/49941.png +../../data/yoloGtold1/train/49942.png +../../data/yoloGtold1/train/49943.png +../../data/yoloGtold1/train/49944.png +../../data/yoloGtold1/train/49945.png +../../data/yoloGtold1/train/49946.png +../../data/yoloGtold1/train/49947.png +../../data/yoloGtold1/train/49948.png +../../data/yoloGtold1/train/49949.png +../../data/yoloGtold1/train/49950.png +../../data/yoloGtold1/train/49951.png +../../data/yoloGtold1/train/49952.png +../../data/yoloGtold1/train/49953.png +../../data/yoloGtold1/train/49954.png +../../data/yoloGtold1/train/49955.png +../../data/yoloGtold1/train/49956.png +../../data/yoloGtold1/train/49957.png +../../data/yoloGtold1/train/49958.png +../../data/yoloGtold1/train/49959.png +../../data/yoloGtold1/train/49960.png +../../data/yoloGtold1/train/49961.png +../../data/yoloGtold1/train/49962.png +../../data/yoloGtold1/train/49963.png +../../data/yoloGtold1/train/49964.png +../../data/yoloGtold1/train/49965.png +../../data/yoloGtold1/train/49966.png +../../data/yoloGtold1/train/49967.png +../../data/yoloGtold1/train/49968.png +../../data/yoloGtold1/train/49969.png +../../data/yoloGtold1/train/49970.png +../../data/yoloGtold1/train/49971.png +../../data/yoloGtold1/train/49972.png +../../data/yoloGtold1/train/49973.png +../../data/yoloGtold1/train/49974.png +../../data/yoloGtold1/train/49975.png +../../data/yoloGtold1/train/49976.png +../../data/yoloGtold1/train/49977.png +../../data/yoloGtold1/train/49978.png +../../data/yoloGtold1/train/49979.png +../../data/yoloGtold1/train/49980.png +../../data/yoloGtold1/train/49981.png +../../data/yoloGtold1/train/49982.png +../../data/yoloGtold1/train/49983.png +../../data/yoloGtold1/train/49984.png +../../data/yoloGtold1/train/49985.png +../../data/yoloGtold1/train/49986.png +../../data/yoloGtold1/train/49987.png +../../data/yoloGtold1/train/49988.png +../../data/yoloGtold1/train/49989.png +../../data/yoloGtold1/train/49990.png +../../data/yoloGtold1/train/49991.png +../../data/yoloGtold1/train/49992.png +../../data/yoloGtold1/train/49993.png +../../data/yoloGtold1/train/49994.png +../../data/yoloGtold1/train/49995.png +../../data/yoloGtold1/train/49996.png +../../data/yoloGtold1/train/49997.png +../../data/yoloGtold1/train/49998.png +../../data/yoloGtold1/train/49999.png +../../data/yoloGtold1/train/50000.png +../../data/yoloGtold1/train/50001.png +../../data/yoloGtold1/train/50002.png +../../data/yoloGtold1/train/50003.png +../../data/yoloGtold1/train/50004.png +../../data/yoloGtold1/train/50005.png +../../data/yoloGtold1/train/50006.png +../../data/yoloGtold1/train/50007.png +../../data/yoloGtold1/train/50008.png +../../data/yoloGtold1/train/50009.png +../../data/yoloGtold1/train/50010.png +../../data/yoloGtold1/train/50011.png +../../data/yoloGtold1/train/50012.png +../../data/yoloGtold1/train/50013.png +../../data/yoloGtold1/train/50014.png +../../data/yoloGtold1/train/50015.png +../../data/yoloGtold1/train/50016.png +../../data/yoloGtold1/train/50017.png +../../data/yoloGtold1/train/50018.png +../../data/yoloGtold1/train/50019.png +../../data/yoloGtold1/train/50020.png +../../data/yoloGtold1/train/50021.png +../../data/yoloGtold1/train/50022.png +../../data/yoloGtold1/train/50023.png +../../data/yoloGtold1/train/50024.png +../../data/yoloGtold1/train/50025.png +../../data/yoloGtold1/train/50026.png +../../data/yoloGtold1/train/50027.png +../../data/yoloGtold1/train/50028.png +../../data/yoloGtold1/train/50029.png +../../data/yoloGtold1/train/50030.png +../../data/yoloGtold1/train/50031.png +../../data/yoloGtold1/train/50032.png +../../data/yoloGtold1/train/50033.png +../../data/yoloGtold1/train/50034.png +../../data/yoloGtold1/train/50035.png +../../data/yoloGtold1/train/50036.png +../../data/yoloGtold1/train/50037.png +../../data/yoloGtold1/train/50038.png +../../data/yoloGtold1/train/50039.png +../../data/yoloGtold1/train/50040.png +../../data/yoloGtold1/train/50041.png +../../data/yoloGtold1/train/50042.png +../../data/yoloGtold1/train/50043.png +../../data/yoloGtold1/train/50044.png +../../data/yoloGtold1/train/50045.png +../../data/yoloGtold1/train/50046.png +../../data/yoloGtold1/train/50047.png +../../data/yoloGtold1/train/50048.png +../../data/yoloGtold1/train/50049.png +../../data/yoloGtold1/train/50050.png +../../data/yoloGtold1/train/50051.png +../../data/yoloGtold1/train/50052.png +../../data/yoloGtold1/train/50053.png +../../data/yoloGtold1/train/50054.png +../../data/yoloGtold1/train/50055.png +../../data/yoloGtold1/train/50056.png +../../data/yoloGtold1/train/50057.png +../../data/yoloGtold1/train/50058.png +../../data/yoloGtold1/train/50059.png +../../data/yoloGtold1/train/50060.png +../../data/yoloGtold1/train/50061.png +../../data/yoloGtold1/train/50062.png +../../data/yoloGtold1/train/50063.png +../../data/yoloGtold1/train/50064.png +../../data/yoloGtold1/train/50065.png +../../data/yoloGtold1/train/50066.png +../../data/yoloGtold1/train/50067.png +../../data/yoloGtold1/train/50068.png +../../data/yoloGtold1/train/50069.png +../../data/yoloGtold1/train/50070.png +../../data/yoloGtold1/train/50071.png +../../data/yoloGtold1/train/50072.png +../../data/yoloGtold1/train/50073.png +../../data/yoloGtold1/train/50074.png +../../data/yoloGtold1/train/50075.png +../../data/yoloGtold1/train/50076.png +../../data/yoloGtold1/train/50077.png +../../data/yoloGtold1/train/50078.png +../../data/yoloGtold1/train/50079.png +../../data/yoloGtold1/train/50080.png +../../data/yoloGtold1/train/50081.png +../../data/yoloGtold1/train/50082.png +../../data/yoloGtold1/train/50083.png +../../data/yoloGtold1/train/50084.png +../../data/yoloGtold1/train/50085.png +../../data/yoloGtold1/train/50086.png +../../data/yoloGtold1/train/50087.png +../../data/yoloGtold1/train/50088.png +../../data/yoloGtold1/train/50089.png +../../data/yoloGtold1/train/50090.png +../../data/yoloGtold1/train/50091.png +../../data/yoloGtold1/train/50092.png +../../data/yoloGtold1/train/50093.png +../../data/yoloGtold1/train/50094.png +../../data/yoloGtold1/train/50095.png +../../data/yoloGtold1/train/50096.png +../../data/yoloGtold1/train/50097.png +../../data/yoloGtold1/train/50098.png +../../data/yoloGtold1/train/50099.png +../../data/yoloGtold1/train/50100.png +../../data/yoloGtold1/train/50101.png +../../data/yoloGtold1/train/50102.png +../../data/yoloGtold1/train/50103.png +../../data/yoloGtold1/train/50104.png +../../data/yoloGtold1/train/50105.png +../../data/yoloGtold1/train/50106.png +../../data/yoloGtold1/train/50107.png +../../data/yoloGtold1/train/50108.png +../../data/yoloGtold1/train/50109.png +../../data/yoloGtold1/train/50110.png +../../data/yoloGtold1/train/50111.png +../../data/yoloGtold1/train/50112.png +../../data/yoloGtold1/train/50113.png +../../data/yoloGtold1/train/50114.png +../../data/yoloGtold1/train/50115.png +../../data/yoloGtold1/train/50116.png +../../data/yoloGtold1/train/50117.png +../../data/yoloGtold1/train/50118.png +../../data/yoloGtold1/train/50119.png +../../data/yoloGtold1/train/50120.png +../../data/yoloGtold1/train/50121.png +../../data/yoloGtold1/train/50122.png +../../data/yoloGtold1/train/50123.png +../../data/yoloGtold1/train/50124.png +../../data/yoloGtold1/train/50125.png +../../data/yoloGtold1/train/50126.png +../../data/yoloGtold1/train/50127.png +../../data/yoloGtold1/train/50128.png +../../data/yoloGtold1/train/50129.png +../../data/yoloGtold1/train/50130.png +../../data/yoloGtold1/train/50131.png +../../data/yoloGtold1/train/50132.png +../../data/yoloGtold1/train/50133.png +../../data/yoloGtold1/train/50134.png +../../data/yoloGtold1/train/50135.png +../../data/yoloGtold1/train/50136.png +../../data/yoloGtold1/train/50137.png +../../data/yoloGtold1/train/50138.png +../../data/yoloGtold1/train/50139.png +../../data/yoloGtold1/train/50140.png +../../data/yoloGtold1/train/50141.png +../../data/yoloGtold1/train/50142.png +../../data/yoloGtold1/train/50143.png +../../data/yoloGtold1/train/50144.png +../../data/yoloGtold1/train/50145.png +../../data/yoloGtold1/train/50146.png +../../data/yoloGtold1/train/50147.png +../../data/yoloGtold1/train/50148.png +../../data/yoloGtold1/train/50149.png +../../data/yoloGtold1/train/50150.png +../../data/yoloGtold1/train/50151.png +../../data/yoloGtold1/train/50152.png +../../data/yoloGtold1/train/50153.png +../../data/yoloGtold1/train/50154.png +../../data/yoloGtold1/train/50155.png +../../data/yoloGtold1/train/50156.png +../../data/yoloGtold1/train/50157.png +../../data/yoloGtold1/train/50158.png +../../data/yoloGtold1/train/50159.png +../../data/yoloGtold1/train/50160.png +../../data/yoloGtold1/train/50161.png +../../data/yoloGtold1/train/50162.png +../../data/yoloGtold1/train/50163.png +../../data/yoloGtold1/train/50164.png +../../data/yoloGtold1/train/50165.png +../../data/yoloGtold1/train/50166.png +../../data/yoloGtold1/train/50167.png +../../data/yoloGtold1/train/50168.png +../../data/yoloGtold1/train/50169.png +../../data/yoloGtold1/train/50170.png +../../data/yoloGtold1/train/50171.png +../../data/yoloGtold1/train/50172.png +../../data/yoloGtold1/train/50173.png +../../data/yoloGtold1/train/50174.png +../../data/yoloGtold1/train/50175.png +../../data/yoloGtold1/train/50176.png +../../data/yoloGtold1/train/50177.png +../../data/yoloGtold1/train/50178.png +../../data/yoloGtold1/train/50179.png +../../data/yoloGtold1/train/50180.png +../../data/yoloGtold1/train/50181.png +../../data/yoloGtold1/train/50182.png +../../data/yoloGtold1/train/50183.png +../../data/yoloGtold1/train/50184.png +../../data/yoloGtold1/train/50185.png +../../data/yoloGtold1/train/50186.png +../../data/yoloGtold1/train/50187.png +../../data/yoloGtold1/train/50188.png +../../data/yoloGtold1/train/50189.png +../../data/yoloGtold1/train/50190.png +../../data/yoloGtold1/train/50191.png +../../data/yoloGtold1/train/50192.png +../../data/yoloGtold1/train/50193.png +../../data/yoloGtold1/train/50194.png +../../data/yoloGtold1/train/50195.png +../../data/yoloGtold1/train/50196.png +../../data/yoloGtold1/train/50197.png +../../data/yoloGtold1/train/50198.png +../../data/yoloGtold1/train/50199.png +../../data/yoloGtold1/train/50200.png +../../data/yoloGtold1/train/50201.png +../../data/yoloGtold1/train/50202.png +../../data/yoloGtold1/train/50203.png +../../data/yoloGtold1/train/50204.png +../../data/yoloGtold1/train/50205.png +../../data/yoloGtold1/train/50206.png +../../data/yoloGtold1/train/50207.png +../../data/yoloGtold1/train/50208.png +../../data/yoloGtold1/train/50209.png +../../data/yoloGtold1/train/50210.png +../../data/yoloGtold1/train/50211.png +../../data/yoloGtold1/train/50212.png +../../data/yoloGtold1/train/50213.png +../../data/yoloGtold1/train/50214.png +../../data/yoloGtold1/train/50215.png +../../data/yoloGtold1/train/50216.png +../../data/yoloGtold1/train/50217.png +../../data/yoloGtold1/train/50218.png +../../data/yoloGtold1/train/50219.png +../../data/yoloGtold1/train/50220.png +../../data/yoloGtold1/train/50221.png +../../data/yoloGtold1/train/50222.png +../../data/yoloGtold1/train/50223.png +../../data/yoloGtold1/train/50224.png +../../data/yoloGtold1/train/50225.png +../../data/yoloGtold1/train/50226.png +../../data/yoloGtold1/train/50227.png +../../data/yoloGtold1/train/50228.png +../../data/yoloGtold1/train/50229.png +../../data/yoloGtold1/train/50230.png +../../data/yoloGtold1/train/50231.png +../../data/yoloGtold1/train/50232.png +../../data/yoloGtold1/train/50233.png +../../data/yoloGtold1/train/50234.png +../../data/yoloGtold1/train/50235.png +../../data/yoloGtold1/train/50236.png +../../data/yoloGtold1/train/50237.png +../../data/yoloGtold1/train/50238.png +../../data/yoloGtold1/train/50239.png +../../data/yoloGtold1/train/50240.png +../../data/yoloGtold1/train/50241.png +../../data/yoloGtold1/train/50242.png +../../data/yoloGtold1/train/50243.png +../../data/yoloGtold1/train/50244.png +../../data/yoloGtold1/train/50245.png +../../data/yoloGtold1/train/50246.png +../../data/yoloGtold1/train/50247.png +../../data/yoloGtold1/train/50248.png +../../data/yoloGtold1/train/50249.png +../../data/yoloGtold1/train/50250.png +../../data/yoloGtold1/train/50251.png +../../data/yoloGtold1/train/50252.png +../../data/yoloGtold1/train/50253.png +../../data/yoloGtold1/train/50254.png +../../data/yoloGtold1/train/50255.png +../../data/yoloGtold1/train/50256.png +../../data/yoloGtold1/train/50257.png +../../data/yoloGtold1/train/50258.png +../../data/yoloGtold1/train/50259.png +../../data/yoloGtold1/train/50260.png +../../data/yoloGtold1/train/50261.png +../../data/yoloGtold1/train/50262.png +../../data/yoloGtold1/train/50263.png +../../data/yoloGtold1/train/50264.png +../../data/yoloGtold1/train/50265.png +../../data/yoloGtold1/train/50266.png +../../data/yoloGtold1/train/50267.png +../../data/yoloGtold1/train/50268.png +../../data/yoloGtold1/train/50269.png +../../data/yoloGtold1/train/50270.png +../../data/yoloGtold1/train/50271.png +../../data/yoloGtold1/train/50272.png +../../data/yoloGtold1/train/50273.png +../../data/yoloGtold1/train/50274.png +../../data/yoloGtold1/train/50275.png +../../data/yoloGtold1/train/50276.png +../../data/yoloGtold1/train/50277.png +../../data/yoloGtold1/train/50278.png +../../data/yoloGtold1/train/50279.png +../../data/yoloGtold1/train/50280.png +../../data/yoloGtold1/train/50281.png +../../data/yoloGtold1/train/50282.png +../../data/yoloGtold1/train/50283.png +../../data/yoloGtold1/train/50284.png +../../data/yoloGtold1/train/50285.png +../../data/yoloGtold1/train/50286.png +../../data/yoloGtold1/train/50287.png +../../data/yoloGtold1/train/50288.png +../../data/yoloGtold1/train/50289.png +../../data/yoloGtold1/train/50290.png +../../data/yoloGtold1/train/50291.png +../../data/yoloGtold1/train/50292.png +../../data/yoloGtold1/train/50293.png +../../data/yoloGtold1/train/50294.png +../../data/yoloGtold1/train/50295.png +../../data/yoloGtold1/train/50296.png +../../data/yoloGtold1/train/50297.png +../../data/yoloGtold1/train/50298.png +../../data/yoloGtold1/train/50299.png +../../data/yoloGtold1/train/50300.png +../../data/yoloGtold1/train/50301.png +../../data/yoloGtold1/train/50302.png +../../data/yoloGtold1/train/50303.png +../../data/yoloGtold1/train/50304.png +../../data/yoloGtold1/train/50305.png +../../data/yoloGtold1/train/50306.png +../../data/yoloGtold1/train/50307.png +../../data/yoloGtold1/train/50308.png +../../data/yoloGtold1/train/50309.png +../../data/yoloGtold1/train/50310.png +../../data/yoloGtold1/train/50311.png +../../data/yoloGtold1/train/50312.png +../../data/yoloGtold1/train/50313.png +../../data/yoloGtold1/train/50314.png +../../data/yoloGtold1/train/50315.png +../../data/yoloGtold1/train/50316.png +../../data/yoloGtold1/train/50317.png +../../data/yoloGtold1/train/50318.png +../../data/yoloGtold1/train/50319.png +../../data/yoloGtold1/train/50320.png +../../data/yoloGtold1/train/50321.png +../../data/yoloGtold1/train/50322.png +../../data/yoloGtold1/train/50323.png +../../data/yoloGtold1/train/50324.png +../../data/yoloGtold1/train/50325.png +../../data/yoloGtold1/train/50326.png +../../data/yoloGtold1/train/50327.png +../../data/yoloGtold1/train/50328.png +../../data/yoloGtold1/train/50329.png +../../data/yoloGtold1/train/50330.png +../../data/yoloGtold1/train/50331.png +../../data/yoloGtold1/train/50332.png +../../data/yoloGtold1/train/50333.png +../../data/yoloGtold1/train/50334.png +../../data/yoloGtold1/train/50335.png +../../data/yoloGtold1/train/50336.png +../../data/yoloGtold1/train/50337.png +../../data/yoloGtold1/train/50338.png +../../data/yoloGtold1/train/50339.png +../../data/yoloGtold1/train/50340.png +../../data/yoloGtold1/train/50341.png +../../data/yoloGtold1/train/50342.png +../../data/yoloGtold1/train/50343.png +../../data/yoloGtold1/train/50344.png +../../data/yoloGtold1/train/50345.png +../../data/yoloGtold1/train/50346.png +../../data/yoloGtold1/train/50347.png +../../data/yoloGtold1/train/50348.png +../../data/yoloGtold1/train/50349.png +../../data/yoloGtold1/train/50350.png +../../data/yoloGtold1/train/50351.png +../../data/yoloGtold1/train/50352.png +../../data/yoloGtold1/train/50353.png +../../data/yoloGtold1/train/50354.png +../../data/yoloGtold1/train/50355.png +../../data/yoloGtold1/train/50356.png +../../data/yoloGtold1/train/50357.png +../../data/yoloGtold1/train/50358.png +../../data/yoloGtold1/train/50359.png +../../data/yoloGtold1/train/50360.png +../../data/yoloGtold1/train/50361.png +../../data/yoloGtold1/train/50362.png +../../data/yoloGtold1/train/50363.png +../../data/yoloGtold1/train/50364.png +../../data/yoloGtold1/train/50365.png +../../data/yoloGtold1/train/50366.png +../../data/yoloGtold1/train/50367.png +../../data/yoloGtold1/train/50368.png +../../data/yoloGtold1/train/50369.png +../../data/yoloGtold1/train/50370.png +../../data/yoloGtold1/train/50371.png +../../data/yoloGtold1/train/50372.png +../../data/yoloGtold1/train/50373.png +../../data/yoloGtold1/train/50374.png +../../data/yoloGtold1/train/50375.png +../../data/yoloGtold1/train/50376.png +../../data/yoloGtold1/train/50377.png +../../data/yoloGtold1/train/50378.png +../../data/yoloGtold1/train/50379.png +../../data/yoloGtold1/train/50380.png +../../data/yoloGtold1/train/50381.png +../../data/yoloGtold1/train/50382.png +../../data/yoloGtold1/train/50383.png +../../data/yoloGtold1/train/50384.png +../../data/yoloGtold1/train/50385.png +../../data/yoloGtold1/train/50386.png +../../data/yoloGtold1/train/50387.png +../../data/yoloGtold1/train/50388.png +../../data/yoloGtold1/train/50389.png +../../data/yoloGtold1/train/50390.png +../../data/yoloGtold1/train/50391.png +../../data/yoloGtold1/train/50392.png +../../data/yoloGtold1/train/50393.png +../../data/yoloGtold1/train/50394.png +../../data/yoloGtold1/train/50395.png +../../data/yoloGtold1/train/50396.png +../../data/yoloGtold1/train/50397.png +../../data/yoloGtold1/train/50398.png +../../data/yoloGtold1/train/50399.png +../../data/yoloGtold1/train/50400.png +../../data/yoloGtold1/train/50401.png +../../data/yoloGtold1/train/50402.png +../../data/yoloGtold1/train/50403.png +../../data/yoloGtold1/train/50404.png +../../data/yoloGtold1/train/50405.png +../../data/yoloGtold1/train/50406.png +../../data/yoloGtold1/train/50407.png +../../data/yoloGtold1/train/50408.png +../../data/yoloGtold1/train/50409.png +../../data/yoloGtold1/train/50410.png +../../data/yoloGtold1/train/50411.png +../../data/yoloGtold1/train/50412.png +../../data/yoloGtold1/train/50413.png +../../data/yoloGtold1/train/50414.png +../../data/yoloGtold1/train/50415.png +../../data/yoloGtold1/train/50416.png +../../data/yoloGtold1/train/50417.png +../../data/yoloGtold1/train/50418.png +../../data/yoloGtold1/train/50419.png +../../data/yoloGtold1/train/50420.png +../../data/yoloGtold1/train/50421.png +../../data/yoloGtold1/train/50422.png +../../data/yoloGtold1/train/50423.png +../../data/yoloGtold1/train/50424.png +../../data/yoloGtold1/train/50425.png +../../data/yoloGtold1/train/50426.png +../../data/yoloGtold1/train/50427.png +../../data/yoloGtold1/train/50428.png +../../data/yoloGtold1/train/50429.png +../../data/yoloGtold1/train/50430.png +../../data/yoloGtold1/train/50431.png +../../data/yoloGtold1/train/50432.png +../../data/yoloGtold1/train/50433.png +../../data/yoloGtold1/train/50434.png +../../data/yoloGtold1/train/50435.png +../../data/yoloGtold1/train/50436.png +../../data/yoloGtold1/train/50437.png +../../data/yoloGtold1/train/50438.png +../../data/yoloGtold1/train/50439.png +../../data/yoloGtold1/train/50440.png +../../data/yoloGtold1/train/50441.png +../../data/yoloGtold1/train/50442.png +../../data/yoloGtold1/train/50443.png +../../data/yoloGtold1/train/50444.png +../../data/yoloGtold1/train/50445.png +../../data/yoloGtold1/train/50446.png +../../data/yoloGtold1/train/50447.png +../../data/yoloGtold1/train/50448.png +../../data/yoloGtold1/train/50449.png +../../data/yoloGtold1/train/50450.png +../../data/yoloGtold1/train/50451.png +../../data/yoloGtold1/train/50452.png +../../data/yoloGtold1/train/50453.png +../../data/yoloGtold1/train/50454.png +../../data/yoloGtold1/train/50455.png +../../data/yoloGtold1/train/50456.png +../../data/yoloGtold1/train/50457.png +../../data/yoloGtold1/train/50458.png +../../data/yoloGtold1/train/50459.png +../../data/yoloGtold1/train/50460.png +../../data/yoloGtold1/train/50461.png +../../data/yoloGtold1/train/50462.png +../../data/yoloGtold1/train/50463.png +../../data/yoloGtold1/train/50464.png +../../data/yoloGtold1/train/50465.png +../../data/yoloGtold1/train/50466.png +../../data/yoloGtold1/train/50467.png +../../data/yoloGtold1/train/50468.png +../../data/yoloGtold1/train/50469.png +../../data/yoloGtold1/train/50470.png +../../data/yoloGtold1/train/50471.png +../../data/yoloGtold1/train/50472.png +../../data/yoloGtold1/train/50473.png +../../data/yoloGtold1/train/50474.png +../../data/yoloGtold1/train/50475.png +../../data/yoloGtold1/train/50476.png +../../data/yoloGtold1/train/50477.png +../../data/yoloGtold1/train/50478.png +../../data/yoloGtold1/train/50479.png +../../data/yoloGtold1/train/50480.png +../../data/yoloGtold1/train/50481.png +../../data/yoloGtold1/train/50482.png +../../data/yoloGtold1/train/50483.png +../../data/yoloGtold1/train/50484.png +../../data/yoloGtold1/train/50485.png +../../data/yoloGtold1/train/50486.png +../../data/yoloGtold1/train/50487.png +../../data/yoloGtold1/train/50488.png +../../data/yoloGtold1/train/50489.png +../../data/yoloGtold1/train/50490.png +../../data/yoloGtold1/train/50491.png +../../data/yoloGtold1/train/50492.png +../../data/yoloGtold1/train/50493.png +../../data/yoloGtold1/train/50494.png +../../data/yoloGtold1/train/50495.png +../../data/yoloGtold1/train/50496.png +../../data/yoloGtold1/train/50497.png +../../data/yoloGtold1/train/50498.png +../../data/yoloGtold1/train/50499.png +../../data/yoloGtold1/train/50500.png +../../data/yoloGtold1/train/50501.png +../../data/yoloGtold1/train/50502.png +../../data/yoloGtold1/train/50503.png +../../data/yoloGtold1/train/50504.png +../../data/yoloGtold1/train/50505.png +../../data/yoloGtold1/train/50506.png +../../data/yoloGtold1/train/50507.png +../../data/yoloGtold1/train/50508.png +../../data/yoloGtold1/train/50509.png +../../data/yoloGtold1/train/50510.png +../../data/yoloGtold1/train/50511.png +../../data/yoloGtold1/train/50512.png +../../data/yoloGtold1/train/50513.png +../../data/yoloGtold1/train/50514.png +../../data/yoloGtold1/train/50515.png +../../data/yoloGtold1/train/50516.png +../../data/yoloGtold1/train/50517.png +../../data/yoloGtold1/train/50518.png +../../data/yoloGtold1/train/50519.png +../../data/yoloGtold1/train/50520.png +../../data/yoloGtold1/train/50521.png +../../data/yoloGtold1/train/50522.png +../../data/yoloGtold1/train/50523.png +../../data/yoloGtold1/train/50524.png +../../data/yoloGtold1/train/50525.png +../../data/yoloGtold1/train/50526.png +../../data/yoloGtold1/train/50527.png +../../data/yoloGtold1/train/50528.png +../../data/yoloGtold1/train/50529.png +../../data/yoloGtold1/train/50530.png +../../data/yoloGtold1/train/50531.png +../../data/yoloGtold1/train/50532.png +../../data/yoloGtold1/train/50533.png +../../data/yoloGtold1/train/50534.png +../../data/yoloGtold1/train/50535.png +../../data/yoloGtold1/train/50536.png +../../data/yoloGtold1/train/50537.png +../../data/yoloGtold1/train/50538.png +../../data/yoloGtold1/train/50539.png +../../data/yoloGtold1/train/50540.png +../../data/yoloGtold1/train/50541.png +../../data/yoloGtold1/train/50542.png +../../data/yoloGtold1/train/50543.png +../../data/yoloGtold1/train/50544.png +../../data/yoloGtold1/train/50545.png +../../data/yoloGtold1/train/50546.png +../../data/yoloGtold1/train/50547.png +../../data/yoloGtold1/train/50548.png +../../data/yoloGtold1/train/50549.png +../../data/yoloGtold1/train/50550.png +../../data/yoloGtold1/train/50551.png +../../data/yoloGtold1/train/50552.png +../../data/yoloGtold1/train/50553.png +../../data/yoloGtold1/train/50554.png +../../data/yoloGtold1/train/50555.png +../../data/yoloGtold1/train/50556.png +../../data/yoloGtold1/train/50557.png +../../data/yoloGtold1/train/50558.png +../../data/yoloGtold1/train/50559.png +../../data/yoloGtold1/train/50560.png +../../data/yoloGtold1/train/50561.png +../../data/yoloGtold1/train/50562.png +../../data/yoloGtold1/train/50563.png +../../data/yoloGtold1/train/50564.png +../../data/yoloGtold1/train/50565.png +../../data/yoloGtold1/train/50566.png +../../data/yoloGtold1/train/50567.png +../../data/yoloGtold1/train/50568.png +../../data/yoloGtold1/train/50569.png +../../data/yoloGtold1/train/50570.png +../../data/yoloGtold1/train/50571.png +../../data/yoloGtold1/train/50572.png +../../data/yoloGtold1/train/50573.png +../../data/yoloGtold1/train/50574.png +../../data/yoloGtold1/train/50575.png +../../data/yoloGtold1/train/50576.png +../../data/yoloGtold1/train/50577.png +../../data/yoloGtold1/train/50578.png +../../data/yoloGtold1/train/50579.png +../../data/yoloGtold1/train/50580.png +../../data/yoloGtold1/train/50581.png +../../data/yoloGtold1/train/50582.png +../../data/yoloGtold1/train/50583.png +../../data/yoloGtold1/train/50584.png +../../data/yoloGtold1/train/50585.png +../../data/yoloGtold1/train/50586.png +../../data/yoloGtold1/train/50587.png +../../data/yoloGtold1/train/50588.png +../../data/yoloGtold1/train/50589.png +../../data/yoloGtold1/train/50590.png +../../data/yoloGtold1/train/50591.png +../../data/yoloGtold1/train/50592.png +../../data/yoloGtold1/train/50593.png +../../data/yoloGtold1/train/50594.png +../../data/yoloGtold1/train/50595.png +../../data/yoloGtold1/train/50596.png +../../data/yoloGtold1/train/50597.png +../../data/yoloGtold1/train/50598.png +../../data/yoloGtold1/train/50599.png +../../data/yoloGtold1/train/50600.png +../../data/yoloGtold1/train/50601.png +../../data/yoloGtold1/train/50602.png +../../data/yoloGtold1/train/50603.png +../../data/yoloGtold1/train/50604.png +../../data/yoloGtold1/train/50605.png +../../data/yoloGtold1/train/50606.png +../../data/yoloGtold1/train/50607.png +../../data/yoloGtold1/train/50608.png +../../data/yoloGtold1/train/50609.png +../../data/yoloGtold1/train/50610.png +../../data/yoloGtold1/train/50611.png +../../data/yoloGtold1/train/50612.png +../../data/yoloGtold1/train/50613.png +../../data/yoloGtold1/train/50614.png +../../data/yoloGtold1/train/50615.png +../../data/yoloGtold1/train/50616.png +../../data/yoloGtold1/train/50617.png +../../data/yoloGtold1/train/50618.png +../../data/yoloGtold1/train/50619.png +../../data/yoloGtold1/train/50620.png +../../data/yoloGtold1/train/50621.png +../../data/yoloGtold1/train/50622.png +../../data/yoloGtold1/train/50623.png +../../data/yoloGtold1/train/50624.png +../../data/yoloGtold1/train/50625.png +../../data/yoloGtold1/train/50626.png +../../data/yoloGtold1/train/50627.png +../../data/yoloGtold1/train/50628.png +../../data/yoloGtold1/train/50629.png +../../data/yoloGtold1/train/50630.png +../../data/yoloGtold1/train/50631.png +../../data/yoloGtold1/train/50632.png +../../data/yoloGtold1/train/50633.png +../../data/yoloGtold1/train/50634.png +../../data/yoloGtold1/train/50635.png +../../data/yoloGtold1/train/50636.png +../../data/yoloGtold1/train/50637.png +../../data/yoloGtold1/train/50638.png +../../data/yoloGtold1/train/50639.png +../../data/yoloGtold1/train/50640.png +../../data/yoloGtold1/train/50641.png +../../data/yoloGtold1/train/50642.png +../../data/yoloGtold1/train/50643.png +../../data/yoloGtold1/train/50644.png +../../data/yoloGtold1/train/50645.png +../../data/yoloGtold1/train/50646.png +../../data/yoloGtold1/train/50647.png +../../data/yoloGtold1/train/50648.png +../../data/yoloGtold1/train/50649.png +../../data/yoloGtold1/train/50650.png +../../data/yoloGtold1/train/50651.png +../../data/yoloGtold1/train/50652.png +../../data/yoloGtold1/train/50653.png +../../data/yoloGtold1/train/50654.png +../../data/yoloGtold1/train/50655.png +../../data/yoloGtold1/train/50656.png +../../data/yoloGtold1/train/50657.png +../../data/yoloGtold1/train/50658.png +../../data/yoloGtold1/train/50659.png +../../data/yoloGtold1/train/50660.png +../../data/yoloGtold1/train/50661.png +../../data/yoloGtold1/train/50662.png +../../data/yoloGtold1/train/50663.png +../../data/yoloGtold1/train/50664.png +../../data/yoloGtold1/train/50665.png +../../data/yoloGtold1/train/50666.png +../../data/yoloGtold1/train/50667.png +../../data/yoloGtold1/train/50668.png +../../data/yoloGtold1/train/50669.png +../../data/yoloGtold1/train/50670.png +../../data/yoloGtold1/train/50671.png +../../data/yoloGtold1/train/50672.png +../../data/yoloGtold1/train/50673.png +../../data/yoloGtold1/train/50674.png +../../data/yoloGtold1/train/50675.png +../../data/yoloGtold1/train/50676.png +../../data/yoloGtold1/train/50677.png +../../data/yoloGtold1/train/50678.png +../../data/yoloGtold1/train/50679.png +../../data/yoloGtold1/train/50680.png +../../data/yoloGtold1/train/50681.png +../../data/yoloGtold1/train/50682.png +../../data/yoloGtold1/train/50683.png +../../data/yoloGtold1/train/50684.png +../../data/yoloGtold1/train/50685.png +../../data/yoloGtold1/train/50686.png +../../data/yoloGtold1/train/50687.png +../../data/yoloGtold1/train/50688.png +../../data/yoloGtold1/train/50689.png +../../data/yoloGtold1/train/50690.png +../../data/yoloGtold1/train/50691.png +../../data/yoloGtold1/train/50692.png +../../data/yoloGtold1/train/50693.png +../../data/yoloGtold1/train/50694.png +../../data/yoloGtold1/train/50695.png +../../data/yoloGtold1/train/50696.png +../../data/yoloGtold1/train/50697.png +../../data/yoloGtold1/train/50698.png +../../data/yoloGtold1/train/50699.png +../../data/yoloGtold1/train/50700.png +../../data/yoloGtold1/train/50701.png +../../data/yoloGtold1/train/50702.png +../../data/yoloGtold1/train/50703.png +../../data/yoloGtold1/train/50704.png +../../data/yoloGtold1/train/50705.png +../../data/yoloGtold1/train/50706.png +../../data/yoloGtold1/train/50707.png +../../data/yoloGtold1/train/50708.png +../../data/yoloGtold1/train/50709.png +../../data/yoloGtold1/train/50710.png +../../data/yoloGtold1/train/50711.png +../../data/yoloGtold1/train/50712.png +../../data/yoloGtold1/train/50713.png +../../data/yoloGtold1/train/50714.png +../../data/yoloGtold1/train/50715.png +../../data/yoloGtold1/train/50716.png +../../data/yoloGtold1/train/50717.png +../../data/yoloGtold1/train/50718.png +../../data/yoloGtold1/train/50719.png +../../data/yoloGtold1/train/50720.png +../../data/yoloGtold1/train/50721.png +../../data/yoloGtold1/train/50722.png +../../data/yoloGtold1/train/50723.png +../../data/yoloGtold1/train/50724.png +../../data/yoloGtold1/train/50725.png +../../data/yoloGtold1/train/50726.png +../../data/yoloGtold1/train/50727.png +../../data/yoloGtold1/train/50728.png +../../data/yoloGtold1/train/50729.png +../../data/yoloGtold1/train/50730.png +../../data/yoloGtold1/train/50731.png +../../data/yoloGtold1/train/50732.png +../../data/yoloGtold1/train/50733.png +../../data/yoloGtold1/train/50734.png +../../data/yoloGtold1/train/50735.png +../../data/yoloGtold1/train/50736.png +../../data/yoloGtold1/train/50737.png +../../data/yoloGtold1/train/50738.png +../../data/yoloGtold1/train/50739.png +../../data/yoloGtold1/train/50740.png +../../data/yoloGtold1/train/50741.png +../../data/yoloGtold1/train/50742.png +../../data/yoloGtold1/train/50743.png +../../data/yoloGtold1/train/50744.png +../../data/yoloGtold1/train/50745.png +../../data/yoloGtold1/train/50746.png +../../data/yoloGtold1/train/50747.png +../../data/yoloGtold1/train/50748.png +../../data/yoloGtold1/train/50749.png +../../data/yoloGtold1/train/50750.png +../../data/yoloGtold1/train/50751.png +../../data/yoloGtold1/train/50752.png +../../data/yoloGtold1/train/50753.png +../../data/yoloGtold1/train/50754.png +../../data/yoloGtold1/train/50755.png +../../data/yoloGtold1/train/50756.png +../../data/yoloGtold1/train/50757.png +../../data/yoloGtold1/train/50758.png +../../data/yoloGtold1/train/50759.png +../../data/yoloGtold1/train/50760.png +../../data/yoloGtold1/train/50761.png +../../data/yoloGtold1/train/50762.png +../../data/yoloGtold1/train/50763.png +../../data/yoloGtold1/train/50764.png +../../data/yoloGtold1/train/50765.png +../../data/yoloGtold1/train/50766.png +../../data/yoloGtold1/train/50767.png +../../data/yoloGtold1/train/50768.png +../../data/yoloGtold1/train/50769.png +../../data/yoloGtold1/train/50770.png +../../data/yoloGtold1/train/50771.png +../../data/yoloGtold1/train/50772.png +../../data/yoloGtold1/train/50773.png +../../data/yoloGtold1/train/50774.png +../../data/yoloGtold1/train/50775.png +../../data/yoloGtold1/train/50776.png +../../data/yoloGtold1/train/50777.png +../../data/yoloGtold1/train/50778.png +../../data/yoloGtold1/train/50779.png +../../data/yoloGtold1/train/50780.png +../../data/yoloGtold1/train/50781.png +../../data/yoloGtold1/train/50782.png +../../data/yoloGtold1/train/50783.png +../../data/yoloGtold1/train/50784.png +../../data/yoloGtold1/train/50785.png +../../data/yoloGtold1/train/50786.png +../../data/yoloGtold1/train/50787.png +../../data/yoloGtold1/train/50788.png +../../data/yoloGtold1/train/50789.png +../../data/yoloGtold1/train/50790.png +../../data/yoloGtold1/train/50791.png +../../data/yoloGtold1/train/50792.png +../../data/yoloGtold1/train/50793.png +../../data/yoloGtold1/train/50794.png +../../data/yoloGtold1/train/50795.png +../../data/yoloGtold1/train/50796.png +../../data/yoloGtold1/train/50797.png +../../data/yoloGtold1/train/50798.png +../../data/yoloGtold1/train/50799.png +../../data/yoloGtold1/train/50800.png +../../data/yoloGtold1/train/50801.png +../../data/yoloGtold1/train/50802.png +../../data/yoloGtold1/train/50803.png +../../data/yoloGtold1/train/50804.png +../../data/yoloGtold1/train/50805.png +../../data/yoloGtold1/train/50806.png +../../data/yoloGtold1/train/50807.png +../../data/yoloGtold1/train/50808.png +../../data/yoloGtold1/train/50809.png +../../data/yoloGtold1/train/50810.png +../../data/yoloGtold1/train/50811.png +../../data/yoloGtold1/train/50812.png +../../data/yoloGtold1/train/50813.png +../../data/yoloGtold1/train/50814.png +../../data/yoloGtold1/train/50815.png +../../data/yoloGtold1/train/50816.png +../../data/yoloGtold1/train/50817.png +../../data/yoloGtold1/train/50818.png +../../data/yoloGtold1/train/50819.png +../../data/yoloGtold1/train/50820.png +../../data/yoloGtold1/train/50821.png +../../data/yoloGtold1/train/50822.png +../../data/yoloGtold1/train/50823.png +../../data/yoloGtold1/train/50824.png +../../data/yoloGtold1/train/50825.png +../../data/yoloGtold1/train/50826.png +../../data/yoloGtold1/train/50827.png +../../data/yoloGtold1/train/50828.png +../../data/yoloGtold1/train/50829.png +../../data/yoloGtold1/train/50830.png +../../data/yoloGtold1/train/50831.png +../../data/yoloGtold1/train/50832.png +../../data/yoloGtold1/train/50833.png +../../data/yoloGtold1/train/50834.png +../../data/yoloGtold1/train/50835.png +../../data/yoloGtold1/train/50836.png +../../data/yoloGtold1/train/50837.png +../../data/yoloGtold1/train/50838.png +../../data/yoloGtold1/train/50839.png +../../data/yoloGtold1/train/50840.png +../../data/yoloGtold1/train/50841.png +../../data/yoloGtold1/train/50842.png +../../data/yoloGtold1/train/50843.png +../../data/yoloGtold1/train/50844.png +../../data/yoloGtold1/train/50845.png +../../data/yoloGtold1/train/50846.png +../../data/yoloGtold1/train/50847.png +../../data/yoloGtold1/train/50848.png +../../data/yoloGtold1/train/50849.png +../../data/yoloGtold1/train/50850.png +../../data/yoloGtold1/train/50851.png +../../data/yoloGtold1/train/50852.png +../../data/yoloGtold1/train/50853.png +../../data/yoloGtold1/train/50854.png +../../data/yoloGtold1/train/50855.png +../../data/yoloGtold1/train/50856.png +../../data/yoloGtold1/train/50857.png +../../data/yoloGtold1/train/50858.png +../../data/yoloGtold1/train/50859.png +../../data/yoloGtold1/train/50860.png +../../data/yoloGtold1/train/50861.png +../../data/yoloGtold1/train/50862.png +../../data/yoloGtold1/train/50863.png +../../data/yoloGtold1/train/50864.png +../../data/yoloGtold1/train/50865.png +../../data/yoloGtold1/train/50866.png +../../data/yoloGtold1/train/50867.png +../../data/yoloGtold1/train/50868.png +../../data/yoloGtold1/train/50869.png +../../data/yoloGtold1/train/50870.png +../../data/yoloGtold1/train/50871.png +../../data/yoloGtold1/train/50872.png +../../data/yoloGtold1/train/50873.png +../../data/yoloGtold1/train/50874.png +../../data/yoloGtold1/train/50875.png +../../data/yoloGtold1/train/50876.png +../../data/yoloGtold1/train/50877.png +../../data/yoloGtold1/train/50878.png +../../data/yoloGtold1/train/50879.png +../../data/yoloGtold1/train/50880.png +../../data/yoloGtold1/train/50881.png +../../data/yoloGtold1/train/50882.png +../../data/yoloGtold1/train/50883.png +../../data/yoloGtold1/train/50884.png +../../data/yoloGtold1/train/50885.png +../../data/yoloGtold1/train/50886.png +../../data/yoloGtold1/train/50887.png +../../data/yoloGtold1/train/50888.png +../../data/yoloGtold1/train/50889.png +../../data/yoloGtold1/train/50890.png +../../data/yoloGtold1/train/50891.png +../../data/yoloGtold1/train/50892.png +../../data/yoloGtold1/train/50893.png +../../data/yoloGtold1/train/50894.png +../../data/yoloGtold1/train/50895.png +../../data/yoloGtold1/train/50896.png +../../data/yoloGtold1/train/50897.png +../../data/yoloGtold1/train/50898.png +../../data/yoloGtold1/train/50899.png +../../data/yoloGtold1/train/50900.png +../../data/yoloGtold1/train/50901.png +../../data/yoloGtold1/train/50902.png +../../data/yoloGtold1/train/50903.png +../../data/yoloGtold1/train/50904.png +../../data/yoloGtold1/train/50905.png +../../data/yoloGtold1/train/50906.png +../../data/yoloGtold1/train/50907.png +../../data/yoloGtold1/train/50908.png +../../data/yoloGtold1/train/50909.png +../../data/yoloGtold1/train/50910.png +../../data/yoloGtold1/train/50911.png +../../data/yoloGtold1/train/50912.png +../../data/yoloGtold1/train/50913.png +../../data/yoloGtold1/train/50914.png +../../data/yoloGtold1/train/50915.png +../../data/yoloGtold1/train/50916.png +../../data/yoloGtold1/train/50917.png +../../data/yoloGtold1/train/50918.png +../../data/yoloGtold1/train/50919.png +../../data/yoloGtold1/train/50920.png +../../data/yoloGtold1/train/50921.png +../../data/yoloGtold1/train/50922.png +../../data/yoloGtold1/train/50923.png +../../data/yoloGtold1/train/50924.png +../../data/yoloGtold1/train/50925.png +../../data/yoloGtold1/train/50926.png +../../data/yoloGtold1/train/50927.png +../../data/yoloGtold1/train/50928.png +../../data/yoloGtold1/train/50929.png +../../data/yoloGtold1/train/50930.png +../../data/yoloGtold1/train/50931.png +../../data/yoloGtold1/train/50932.png +../../data/yoloGtold1/train/50933.png +../../data/yoloGtold1/train/50934.png +../../data/yoloGtold1/train/50935.png +../../data/yoloGtold1/train/50936.png +../../data/yoloGtold1/train/50937.png +../../data/yoloGtold1/train/50938.png +../../data/yoloGtold1/train/50939.png +../../data/yoloGtold1/train/50940.png +../../data/yoloGtold1/train/50941.png +../../data/yoloGtold1/train/50942.png +../../data/yoloGtold1/train/50943.png +../../data/yoloGtold1/train/50944.png +../../data/yoloGtold1/train/50945.png +../../data/yoloGtold1/train/50946.png +../../data/yoloGtold1/train/50947.png +../../data/yoloGtold1/train/50948.png +../../data/yoloGtold1/train/50949.png +../../data/yoloGtold1/train/50950.png +../../data/yoloGtold1/train/50951.png +../../data/yoloGtold1/train/50952.png +../../data/yoloGtold1/train/50953.png +../../data/yoloGtold1/train/50954.png +../../data/yoloGtold1/train/50955.png +../../data/yoloGtold1/train/50956.png +../../data/yoloGtold1/train/50957.png +../../data/yoloGtold1/train/50958.png +../../data/yoloGtold1/train/50959.png +../../data/yoloGtold1/train/50960.png +../../data/yoloGtold1/train/50961.png +../../data/yoloGtold1/train/50962.png +../../data/yoloGtold1/train/50963.png +../../data/yoloGtold1/train/50964.png +../../data/yoloGtold1/train/50965.png +../../data/yoloGtold1/train/50966.png +../../data/yoloGtold1/train/50967.png +../../data/yoloGtold1/train/50968.png +../../data/yoloGtold1/train/50969.png +../../data/yoloGtold1/train/50970.png +../../data/yoloGtold1/train/50971.png +../../data/yoloGtold1/train/50972.png +../../data/yoloGtold1/train/50973.png +../../data/yoloGtold1/train/50974.png +../../data/yoloGtold1/train/50975.png +../../data/yoloGtold1/train/50976.png +../../data/yoloGtold1/train/50977.png +../../data/yoloGtold1/train/50978.png +../../data/yoloGtold1/train/50979.png +../../data/yoloGtold1/train/50980.png +../../data/yoloGtold1/train/50981.png +../../data/yoloGtold1/train/50982.png +../../data/yoloGtold1/train/50983.png +../../data/yoloGtold1/train/50984.png +../../data/yoloGtold1/train/50985.png +../../data/yoloGtold1/train/50986.png +../../data/yoloGtold1/train/50987.png +../../data/yoloGtold1/train/50988.png +../../data/yoloGtold1/train/50989.png +../../data/yoloGtold1/train/50990.png +../../data/yoloGtold1/train/50991.png +../../data/yoloGtold1/train/50992.png +../../data/yoloGtold1/train/50993.png +../../data/yoloGtold1/train/50994.png +../../data/yoloGtold1/train/50995.png +../../data/yoloGtold1/train/50996.png +../../data/yoloGtold1/train/50997.png +../../data/yoloGtold1/train/50998.png +../../data/yoloGtold1/train/50999.png +../../data/yoloGtold1/train/51000.png +../../data/yoloGtold1/train/51001.png +../../data/yoloGtold1/train/51002.png +../../data/yoloGtold1/train/51003.png +../../data/yoloGtold1/train/51004.png +../../data/yoloGtold1/train/51005.png +../../data/yoloGtold1/train/51006.png +../../data/yoloGtold1/train/51007.png +../../data/yoloGtold1/train/51008.png +../../data/yoloGtold1/train/51009.png +../../data/yoloGtold1/train/51010.png +../../data/yoloGtold1/train/51011.png +../../data/yoloGtold1/train/51012.png +../../data/yoloGtold1/train/51013.png +../../data/yoloGtold1/train/51014.png +../../data/yoloGtold1/train/51015.png +../../data/yoloGtold1/train/51016.png +../../data/yoloGtold1/train/51017.png +../../data/yoloGtold1/train/51018.png +../../data/yoloGtold1/train/51019.png +../../data/yoloGtold1/train/51020.png +../../data/yoloGtold1/train/51021.png +../../data/yoloGtold1/train/51022.png +../../data/yoloGtold1/train/51023.png +../../data/yoloGtold1/train/51024.png +../../data/yoloGtold1/train/51025.png +../../data/yoloGtold1/train/51026.png +../../data/yoloGtold1/train/51027.png +../../data/yoloGtold1/train/51028.png +../../data/yoloGtold1/train/51029.png +../../data/yoloGtold1/train/51030.png +../../data/yoloGtold1/train/51031.png +../../data/yoloGtold1/train/51032.png +../../data/yoloGtold1/train/51033.png +../../data/yoloGtold1/train/51034.png +../../data/yoloGtold1/train/51035.png +../../data/yoloGtold1/train/51036.png +../../data/yoloGtold1/train/51037.png +../../data/yoloGtold1/train/51038.png +../../data/yoloGtold1/train/51039.png +../../data/yoloGtold1/train/51040.png +../../data/yoloGtold1/train/51041.png +../../data/yoloGtold1/train/51042.png +../../data/yoloGtold1/train/51043.png +../../data/yoloGtold1/train/51044.png +../../data/yoloGtold1/train/51045.png +../../data/yoloGtold1/train/51046.png +../../data/yoloGtold1/train/51047.png +../../data/yoloGtold1/train/51048.png +../../data/yoloGtold1/train/51049.png +../../data/yoloGtold1/train/51050.png +../../data/yoloGtold1/train/51051.png +../../data/yoloGtold1/train/51052.png +../../data/yoloGtold1/train/51053.png +../../data/yoloGtold1/train/51054.png +../../data/yoloGtold1/train/51055.png +../../data/yoloGtold1/train/51056.png +../../data/yoloGtold1/train/51057.png +../../data/yoloGtold1/train/51058.png +../../data/yoloGtold1/train/51059.png +../../data/yoloGtold1/train/51060.png +../../data/yoloGtold1/train/51061.png +../../data/yoloGtold1/train/51062.png +../../data/yoloGtold1/train/51063.png +../../data/yoloGtold1/train/51064.png +../../data/yoloGtold1/train/51065.png +../../data/yoloGtold1/train/51066.png +../../data/yoloGtold1/train/51067.png +../../data/yoloGtold1/train/51068.png +../../data/yoloGtold1/train/51069.png +../../data/yoloGtold1/train/51070.png +../../data/yoloGtold1/train/51071.png +../../data/yoloGtold1/train/51072.png +../../data/yoloGtold1/train/51073.png +../../data/yoloGtold1/train/51074.png +../../data/yoloGtold1/train/51075.png +../../data/yoloGtold1/train/51076.png +../../data/yoloGtold1/train/51077.png +../../data/yoloGtold1/train/51078.png +../../data/yoloGtold1/train/51079.png +../../data/yoloGtold1/train/51080.png +../../data/yoloGtold1/train/51081.png +../../data/yoloGtold1/train/51082.png +../../data/yoloGtold1/train/51083.png +../../data/yoloGtold1/train/51084.png +../../data/yoloGtold1/train/51085.png +../../data/yoloGtold1/train/51086.png +../../data/yoloGtold1/train/51087.png +../../data/yoloGtold1/train/51088.png +../../data/yoloGtold1/train/51089.png +../../data/yoloGtold1/train/51090.png +../../data/yoloGtold1/train/51091.png +../../data/yoloGtold1/train/51092.png +../../data/yoloGtold1/train/51093.png +../../data/yoloGtold1/train/51094.png +../../data/yoloGtold1/train/51095.png +../../data/yoloGtold1/train/51096.png +../../data/yoloGtold1/train/51097.png +../../data/yoloGtold1/train/51098.png +../../data/yoloGtold1/train/51099.png +../../data/yoloGtold1/train/51100.png +../../data/yoloGtold1/train/51101.png +../../data/yoloGtold1/train/51102.png +../../data/yoloGtold1/train/51103.png +../../data/yoloGtold1/train/51104.png +../../data/yoloGtold1/train/51105.png +../../data/yoloGtold1/train/51106.png +../../data/yoloGtold1/train/51107.png +../../data/yoloGtold1/train/51108.png +../../data/yoloGtold1/train/51109.png +../../data/yoloGtold1/train/51110.png +../../data/yoloGtold1/train/51111.png +../../data/yoloGtold1/train/51112.png +../../data/yoloGtold1/train/51113.png +../../data/yoloGtold1/train/51114.png +../../data/yoloGtold1/train/51115.png +../../data/yoloGtold1/train/51116.png +../../data/yoloGtold1/train/51117.png +../../data/yoloGtold1/train/51118.png +../../data/yoloGtold1/train/51119.png +../../data/yoloGtold1/train/51120.png +../../data/yoloGtold1/train/51121.png +../../data/yoloGtold1/train/51122.png +../../data/yoloGtold1/train/51123.png +../../data/yoloGtold1/train/51124.png +../../data/yoloGtold1/train/51125.png +../../data/yoloGtold1/train/51126.png +../../data/yoloGtold1/train/51127.png +../../data/yoloGtold1/train/51128.png +../../data/yoloGtold1/train/51129.png +../../data/yoloGtold1/train/51130.png +../../data/yoloGtold1/train/51131.png +../../data/yoloGtold1/train/51132.png +../../data/yoloGtold1/train/51133.png +../../data/yoloGtold1/train/51134.png +../../data/yoloGtold1/train/51135.png +../../data/yoloGtold1/train/51136.png +../../data/yoloGtold1/train/51137.png +../../data/yoloGtold1/train/51138.png +../../data/yoloGtold1/train/51139.png +../../data/yoloGtold1/train/51140.png +../../data/yoloGtold1/train/51141.png +../../data/yoloGtold1/train/51142.png +../../data/yoloGtold1/train/51143.png +../../data/yoloGtold1/train/51144.png +../../data/yoloGtold1/train/51145.png +../../data/yoloGtold1/train/51146.png +../../data/yoloGtold1/train/51147.png +../../data/yoloGtold1/train/51148.png +../../data/yoloGtold1/train/51149.png +../../data/yoloGtold1/train/51150.png +../../data/yoloGtold1/train/51151.png +../../data/yoloGtold1/train/51152.png +../../data/yoloGtold1/train/51153.png +../../data/yoloGtold1/train/51154.png +../../data/yoloGtold1/train/51155.png +../../data/yoloGtold1/train/51156.png +../../data/yoloGtold1/train/51157.png +../../data/yoloGtold1/train/51158.png +../../data/yoloGtold1/train/51159.png +../../data/yoloGtold1/train/51160.png +../../data/yoloGtold1/train/51161.png +../../data/yoloGtold1/train/51162.png +../../data/yoloGtold1/train/51163.png +../../data/yoloGtold1/train/51164.png +../../data/yoloGtold1/train/51165.png +../../data/yoloGtold1/train/51166.png +../../data/yoloGtold1/train/51167.png +../../data/yoloGtold1/train/51168.png +../../data/yoloGtold1/train/51169.png +../../data/yoloGtold1/train/51170.png +../../data/yoloGtold1/train/51171.png +../../data/yoloGtold1/train/51172.png +../../data/yoloGtold1/train/51173.png +../../data/yoloGtold1/train/51174.png +../../data/yoloGtold1/train/51175.png +../../data/yoloGtold1/train/51176.png +../../data/yoloGtold1/train/51177.png +../../data/yoloGtold1/train/51178.png +../../data/yoloGtold1/train/51179.png +../../data/yoloGtold1/train/51180.png +../../data/yoloGtold1/train/51181.png +../../data/yoloGtold1/train/51182.png +../../data/yoloGtold1/train/51183.png +../../data/yoloGtold1/train/51184.png +../../data/yoloGtold1/train/51185.png +../../data/yoloGtold1/train/51186.png +../../data/yoloGtold1/train/51187.png +../../data/yoloGtold1/train/51188.png +../../data/yoloGtold1/train/51189.png +../../data/yoloGtold1/train/51190.png +../../data/yoloGtold1/train/51191.png +../../data/yoloGtold1/train/51192.png +../../data/yoloGtold1/train/51193.png +../../data/yoloGtold1/train/51194.png +../../data/yoloGtold1/train/51195.png +../../data/yoloGtold1/train/51196.png +../../data/yoloGtold1/train/51197.png +../../data/yoloGtold1/train/51198.png +../../data/yoloGtold1/train/51199.png +../../data/yoloGtold1/train/51200.png +../../data/yoloGtold1/train/51201.png +../../data/yoloGtold1/train/51202.png +../../data/yoloGtold1/train/51203.png +../../data/yoloGtold1/train/51204.png +../../data/yoloGtold1/train/51205.png +../../data/yoloGtold1/train/51206.png +../../data/yoloGtold1/train/51207.png +../../data/yoloGtold1/train/51208.png +../../data/yoloGtold1/train/51209.png +../../data/yoloGtold1/train/51210.png +../../data/yoloGtold1/train/51211.png +../../data/yoloGtold1/train/51212.png +../../data/yoloGtold1/train/51213.png +../../data/yoloGtold1/train/51214.png +../../data/yoloGtold1/train/51215.png +../../data/yoloGtold1/train/51216.png +../../data/yoloGtold1/train/51217.png +../../data/yoloGtold1/train/51218.png +../../data/yoloGtold1/train/51219.png +../../data/yoloGtold1/train/51220.png +../../data/yoloGtold1/train/51221.png +../../data/yoloGtold1/train/51222.png +../../data/yoloGtold1/train/51223.png +../../data/yoloGtold1/train/51224.png +../../data/yoloGtold1/train/51225.png +../../data/yoloGtold1/train/51226.png +../../data/yoloGtold1/train/51227.png +../../data/yoloGtold1/train/51228.png +../../data/yoloGtold1/train/51229.png +../../data/yoloGtold1/train/51230.png +../../data/yoloGtold1/train/51231.png +../../data/yoloGtold1/train/51232.png +../../data/yoloGtold1/train/51233.png +../../data/yoloGtold1/train/51234.png +../../data/yoloGtold1/train/51235.png +../../data/yoloGtold1/train/51236.png +../../data/yoloGtold1/train/51237.png +../../data/yoloGtold1/train/51238.png +../../data/yoloGtold1/train/51239.png +../../data/yoloGtold1/train/51240.png +../../data/yoloGtold1/train/51241.png +../../data/yoloGtold1/train/51242.png +../../data/yoloGtold1/train/51243.png +../../data/yoloGtold1/train/51244.png +../../data/yoloGtold1/train/51245.png +../../data/yoloGtold1/train/51246.png +../../data/yoloGtold1/train/51247.png +../../data/yoloGtold1/train/51248.png +../../data/yoloGtold1/train/51249.png +../../data/yoloGtold1/train/51250.png +../../data/yoloGtold1/train/51251.png +../../data/yoloGtold1/train/51252.png +../../data/yoloGtold1/train/51253.png +../../data/yoloGtold1/train/51254.png +../../data/yoloGtold1/train/51255.png +../../data/yoloGtold1/train/51256.png +../../data/yoloGtold1/train/51257.png +../../data/yoloGtold1/train/51258.png +../../data/yoloGtold1/train/51259.png +../../data/yoloGtold1/train/51260.png +../../data/yoloGtold1/train/51261.png +../../data/yoloGtold1/train/51262.png +../../data/yoloGtold1/train/51263.png +../../data/yoloGtold1/train/51264.png +../../data/yoloGtold1/train/51265.png +../../data/yoloGtold1/train/51266.png +../../data/yoloGtold1/train/51267.png +../../data/yoloGtold1/train/51268.png +../../data/yoloGtold1/train/51269.png +../../data/yoloGtold1/train/51270.png +../../data/yoloGtold1/train/51271.png +../../data/yoloGtold1/train/51272.png +../../data/yoloGtold1/train/51273.png +../../data/yoloGtold1/train/51274.png +../../data/yoloGtold1/train/51275.png +../../data/yoloGtold1/train/51276.png +../../data/yoloGtold1/train/51277.png +../../data/yoloGtold1/train/51278.png +../../data/yoloGtold1/train/51279.png +../../data/yoloGtold1/train/51280.png +../../data/yoloGtold1/train/51281.png +../../data/yoloGtold1/train/51282.png +../../data/yoloGtold1/train/51283.png +../../data/yoloGtold1/train/51284.png +../../data/yoloGtold1/train/51285.png +../../data/yoloGtold1/train/51286.png +../../data/yoloGtold1/train/51287.png +../../data/yoloGtold1/train/51288.png +../../data/yoloGtold1/train/51289.png +../../data/yoloGtold1/train/51290.png +../../data/yoloGtold1/train/51291.png +../../data/yoloGtold1/train/51292.png +../../data/yoloGtold1/train/51293.png +../../data/yoloGtold1/train/51294.png +../../data/yoloGtold1/train/51295.png +../../data/yoloGtold1/train/51296.png +../../data/yoloGtold1/train/51297.png +../../data/yoloGtold1/train/51298.png +../../data/yoloGtold1/train/51299.png +../../data/yoloGtold1/train/51300.png +../../data/yoloGtold1/train/51301.png +../../data/yoloGtold1/train/51302.png +../../data/yoloGtold1/train/51303.png +../../data/yoloGtold1/train/51304.png +../../data/yoloGtold1/train/51305.png +../../data/yoloGtold1/train/51306.png +../../data/yoloGtold1/train/51307.png +../../data/yoloGtold1/train/51308.png +../../data/yoloGtold1/train/51309.png +../../data/yoloGtold1/train/51310.png +../../data/yoloGtold1/train/51311.png +../../data/yoloGtold1/train/51312.png +../../data/yoloGtold1/train/51313.png +../../data/yoloGtold1/train/51314.png +../../data/yoloGtold1/train/51315.png +../../data/yoloGtold1/train/51316.png +../../data/yoloGtold1/train/51317.png +../../data/yoloGtold1/train/51318.png +../../data/yoloGtold1/train/51319.png +../../data/yoloGtold1/train/51320.png +../../data/yoloGtold1/train/51321.png +../../data/yoloGtold1/train/51322.png +../../data/yoloGtold1/train/51323.png +../../data/yoloGtold1/train/51324.png +../../data/yoloGtold1/train/51325.png +../../data/yoloGtold1/train/51326.png +../../data/yoloGtold1/train/51327.png +../../data/yoloGtold1/train/51328.png +../../data/yoloGtold1/train/51329.png +../../data/yoloGtold1/train/51330.png +../../data/yoloGtold1/train/51331.png +../../data/yoloGtold1/train/51332.png +../../data/yoloGtold1/train/51333.png +../../data/yoloGtold1/train/51334.png +../../data/yoloGtold1/train/51335.png +../../data/yoloGtold1/train/51336.png +../../data/yoloGtold1/train/51337.png +../../data/yoloGtold1/train/51338.png +../../data/yoloGtold1/train/51339.png +../../data/yoloGtold1/train/51340.png +../../data/yoloGtold1/train/51341.png +../../data/yoloGtold1/train/51342.png +../../data/yoloGtold1/train/51343.png +../../data/yoloGtold1/train/51344.png +../../data/yoloGtold1/train/51345.png +../../data/yoloGtold1/train/51346.png +../../data/yoloGtold1/train/51347.png +../../data/yoloGtold1/train/51348.png +../../data/yoloGtold1/train/51349.png +../../data/yoloGtold1/train/51350.png +../../data/yoloGtold1/train/51351.png +../../data/yoloGtold1/train/51352.png +../../data/yoloGtold1/train/51353.png +../../data/yoloGtold1/train/51354.png +../../data/yoloGtold1/train/51355.png +../../data/yoloGtold1/train/51356.png +../../data/yoloGtold1/train/51357.png +../../data/yoloGtold1/train/51358.png +../../data/yoloGtold1/train/51359.png +../../data/yoloGtold1/train/51360.png +../../data/yoloGtold1/train/51361.png +../../data/yoloGtold1/train/51362.png +../../data/yoloGtold1/train/51363.png +../../data/yoloGtold1/train/51364.png +../../data/yoloGtold1/train/51365.png +../../data/yoloGtold1/train/51366.png +../../data/yoloGtold1/train/51367.png +../../data/yoloGtold1/train/51368.png +../../data/yoloGtold1/train/51369.png +../../data/yoloGtold1/train/51370.png +../../data/yoloGtold1/train/51371.png +../../data/yoloGtold1/train/51372.png +../../data/yoloGtold1/train/51373.png +../../data/yoloGtold1/train/51374.png +../../data/yoloGtold1/train/51375.png +../../data/yoloGtold1/train/51376.png +../../data/yoloGtold1/train/51377.png +../../data/yoloGtold1/train/51378.png +../../data/yoloGtold1/train/51379.png +../../data/yoloGtold1/train/51380.png +../../data/yoloGtold1/train/51381.png +../../data/yoloGtold1/train/51382.png +../../data/yoloGtold1/train/51383.png +../../data/yoloGtold1/train/51384.png +../../data/yoloGtold1/train/51385.png +../../data/yoloGtold1/train/51386.png +../../data/yoloGtold1/train/51387.png +../../data/yoloGtold1/train/51388.png +../../data/yoloGtold1/train/51389.png +../../data/yoloGtold1/train/51390.png +../../data/yoloGtold1/train/51391.png +../../data/yoloGtold1/train/51392.png +../../data/yoloGtold1/train/51393.png +../../data/yoloGtold1/train/51394.png +../../data/yoloGtold1/train/51395.png +../../data/yoloGtold1/train/51396.png +../../data/yoloGtold1/train/51397.png +../../data/yoloGtold1/train/51398.png +../../data/yoloGtold1/train/51399.png +../../data/yoloGtold1/train/51400.png +../../data/yoloGtold1/train/51401.png +../../data/yoloGtold1/train/51402.png +../../data/yoloGtold1/train/51403.png +../../data/yoloGtold1/train/51404.png +../../data/yoloGtold1/train/51405.png +../../data/yoloGtold1/train/51406.png +../../data/yoloGtold1/train/51407.png +../../data/yoloGtold1/train/51408.png +../../data/yoloGtold1/train/51409.png +../../data/yoloGtold1/train/51410.png +../../data/yoloGtold1/train/51411.png +../../data/yoloGtold1/train/51412.png +../../data/yoloGtold1/train/51413.png +../../data/yoloGtold1/train/51414.png +../../data/yoloGtold1/train/51415.png +../../data/yoloGtold1/train/51416.png +../../data/yoloGtold1/train/51417.png +../../data/yoloGtold1/train/51418.png +../../data/yoloGtold1/train/51419.png +../../data/yoloGtold1/train/51420.png +../../data/yoloGtold1/train/51421.png +../../data/yoloGtold1/train/51422.png +../../data/yoloGtold1/train/51423.png +../../data/yoloGtold1/train/51424.png +../../data/yoloGtold1/train/51425.png +../../data/yoloGtold1/train/51426.png +../../data/yoloGtold1/train/51427.png +../../data/yoloGtold1/train/51428.png +../../data/yoloGtold1/train/51429.png +../../data/yoloGtold1/train/51430.png +../../data/yoloGtold1/train/51431.png +../../data/yoloGtold1/train/51432.png +../../data/yoloGtold1/train/51433.png +../../data/yoloGtold1/train/51434.png +../../data/yoloGtold1/train/51435.png +../../data/yoloGtold1/train/51436.png +../../data/yoloGtold1/train/51437.png +../../data/yoloGtold1/train/51438.png +../../data/yoloGtold1/train/51439.png +../../data/yoloGtold1/train/51440.png +../../data/yoloGtold1/train/51441.png +../../data/yoloGtold1/train/51442.png +../../data/yoloGtold1/train/51443.png +../../data/yoloGtold1/train/51444.png +../../data/yoloGtold1/train/51445.png +../../data/yoloGtold1/train/51446.png +../../data/yoloGtold1/train/51447.png +../../data/yoloGtold1/train/51448.png +../../data/yoloGtold1/train/51449.png +../../data/yoloGtold1/train/51450.png +../../data/yoloGtold1/train/51451.png +../../data/yoloGtold1/train/51452.png +../../data/yoloGtold1/train/51453.png +../../data/yoloGtold1/train/51454.png +../../data/yoloGtold1/train/51455.png +../../data/yoloGtold1/train/51456.png +../../data/yoloGtold1/train/51457.png +../../data/yoloGtold1/train/51458.png +../../data/yoloGtold1/train/51459.png +../../data/yoloGtold1/train/51460.png +../../data/yoloGtold1/train/51461.png +../../data/yoloGtold1/train/51462.png +../../data/yoloGtold1/train/51463.png +../../data/yoloGtold1/train/51464.png +../../data/yoloGtold1/train/51465.png +../../data/yoloGtold1/train/51466.png +../../data/yoloGtold1/train/51467.png +../../data/yoloGtold1/train/51468.png +../../data/yoloGtold1/train/51469.png +../../data/yoloGtold1/train/51470.png +../../data/yoloGtold1/train/51471.png +../../data/yoloGtold1/train/51472.png +../../data/yoloGtold1/train/51473.png +../../data/yoloGtold1/train/51474.png +../../data/yoloGtold1/train/51475.png +../../data/yoloGtold1/train/51476.png +../../data/yoloGtold1/train/51477.png +../../data/yoloGtold1/train/51478.png +../../data/yoloGtold1/train/51479.png +../../data/yoloGtold1/train/51480.png +../../data/yoloGtold1/train/51481.png +../../data/yoloGtold1/train/51482.png +../../data/yoloGtold1/train/51483.png +../../data/yoloGtold1/train/51484.png +../../data/yoloGtold1/train/51485.png +../../data/yoloGtold1/train/51486.png +../../data/yoloGtold1/train/51487.png +../../data/yoloGtold1/train/51488.png +../../data/yoloGtold1/train/51489.png +../../data/yoloGtold1/train/51490.png +../../data/yoloGtold1/train/51491.png +../../data/yoloGtold1/train/51492.png +../../data/yoloGtold1/train/51493.png +../../data/yoloGtold1/train/51494.png +../../data/yoloGtold1/train/51495.png +../../data/yoloGtold1/train/51496.png +../../data/yoloGtold1/train/51497.png +../../data/yoloGtold1/train/51498.png +../../data/yoloGtold1/train/51499.png +../../data/yoloGtold1/train/51500.png +../../data/yoloGtold1/train/51501.png +../../data/yoloGtold1/train/51502.png +../../data/yoloGtold1/train/51503.png +../../data/yoloGtold1/train/51504.png +../../data/yoloGtold1/train/51505.png +../../data/yoloGtold1/train/51506.png +../../data/yoloGtold1/train/51507.png +../../data/yoloGtold1/train/51508.png +../../data/yoloGtold1/train/51509.png +../../data/yoloGtold1/train/51510.png +../../data/yoloGtold1/train/51511.png +../../data/yoloGtold1/train/51512.png +../../data/yoloGtold1/train/51513.png +../../data/yoloGtold1/train/51514.png +../../data/yoloGtold1/train/51515.png +../../data/yoloGtold1/train/51516.png +../../data/yoloGtold1/train/51517.png +../../data/yoloGtold1/train/51518.png +../../data/yoloGtold1/train/51519.png +../../data/yoloGtold1/train/51520.png +../../data/yoloGtold1/train/51521.png +../../data/yoloGtold1/train/51522.png +../../data/yoloGtold1/train/51523.png +../../data/yoloGtold1/train/51524.png +../../data/yoloGtold1/train/51525.png +../../data/yoloGtold1/train/51526.png +../../data/yoloGtold1/train/51527.png +../../data/yoloGtold1/train/51528.png +../../data/yoloGtold1/train/51529.png +../../data/yoloGtold1/train/51530.png +../../data/yoloGtold1/train/51531.png +../../data/yoloGtold1/train/51532.png +../../data/yoloGtold1/train/51533.png +../../data/yoloGtold1/train/51534.png +../../data/yoloGtold1/train/51535.png +../../data/yoloGtold1/train/51536.png +../../data/yoloGtold1/train/51537.png +../../data/yoloGtold1/train/51538.png +../../data/yoloGtold1/train/51539.png +../../data/yoloGtold1/train/51540.png +../../data/yoloGtold1/train/51541.png +../../data/yoloGtold1/train/51542.png +../../data/yoloGtold1/train/51543.png +../../data/yoloGtold1/train/51544.png +../../data/yoloGtold1/train/51545.png +../../data/yoloGtold1/train/51546.png +../../data/yoloGtold1/train/51547.png +../../data/yoloGtold1/train/51548.png +../../data/yoloGtold1/train/51549.png +../../data/yoloGtold1/train/51550.png +../../data/yoloGtold1/train/51551.png +../../data/yoloGtold1/train/51552.png +../../data/yoloGtold1/train/51553.png +../../data/yoloGtold1/train/51554.png +../../data/yoloGtold1/train/51555.png +../../data/yoloGtold1/train/51556.png +../../data/yoloGtold1/train/51557.png +../../data/yoloGtold1/train/51558.png +../../data/yoloGtold1/train/51559.png +../../data/yoloGtold1/train/51560.png +../../data/yoloGtold1/train/51561.png +../../data/yoloGtold1/train/51562.png +../../data/yoloGtold1/train/51563.png +../../data/yoloGtold1/train/51564.png +../../data/yoloGtold1/train/51565.png +../../data/yoloGtold1/train/51566.png +../../data/yoloGtold1/train/51567.png +../../data/yoloGtold1/train/51568.png +../../data/yoloGtold1/train/51569.png +../../data/yoloGtold1/train/51570.png +../../data/yoloGtold1/train/51571.png +../../data/yoloGtold1/train/51572.png +../../data/yoloGtold1/train/51573.png +../../data/yoloGtold1/train/51574.png +../../data/yoloGtold1/train/51575.png +../../data/yoloGtold1/train/51576.png +../../data/yoloGtold1/train/51577.png +../../data/yoloGtold1/train/51578.png +../../data/yoloGtold1/train/51579.png +../../data/yoloGtold1/train/51580.png +../../data/yoloGtold1/train/51581.png +../../data/yoloGtold1/train/51582.png +../../data/yoloGtold1/train/51583.png +../../data/yoloGtold1/train/51584.png +../../data/yoloGtold1/train/51585.png +../../data/yoloGtold1/train/51586.png +../../data/yoloGtold1/train/51587.png +../../data/yoloGtold1/train/51588.png +../../data/yoloGtold1/train/51589.png +../../data/yoloGtold1/train/51590.png +../../data/yoloGtold1/train/51591.png +../../data/yoloGtold1/train/51592.png +../../data/yoloGtold1/train/51593.png +../../data/yoloGtold1/train/51594.png +../../data/yoloGtold1/train/51595.png +../../data/yoloGtold1/train/51596.png +../../data/yoloGtold1/train/51597.png +../../data/yoloGtold1/train/51598.png +../../data/yoloGtold1/train/51599.png +../../data/yoloGtold1/train/51600.png +../../data/yoloGtold1/train/51601.png +../../data/yoloGtold1/train/51602.png +../../data/yoloGtold1/train/51603.png +../../data/yoloGtold1/train/51604.png +../../data/yoloGtold1/train/51605.png +../../data/yoloGtold1/train/51606.png +../../data/yoloGtold1/train/51607.png +../../data/yoloGtold1/train/51608.png +../../data/yoloGtold1/train/51609.png +../../data/yoloGtold1/train/51610.png +../../data/yoloGtold1/train/51611.png +../../data/yoloGtold1/train/51612.png +../../data/yoloGtold1/train/51613.png +../../data/yoloGtold1/train/51614.png +../../data/yoloGtold1/train/51615.png +../../data/yoloGtold1/train/51616.png +../../data/yoloGtold1/train/51617.png +../../data/yoloGtold1/train/51618.png +../../data/yoloGtold1/train/51619.png +../../data/yoloGtold1/train/51620.png +../../data/yoloGtold1/train/51621.png +../../data/yoloGtold1/train/51622.png +../../data/yoloGtold1/train/51623.png +../../data/yoloGtold1/train/51624.png +../../data/yoloGtold1/train/51625.png +../../data/yoloGtold1/train/51626.png +../../data/yoloGtold1/train/51627.png +../../data/yoloGtold1/train/51628.png +../../data/yoloGtold1/train/51629.png +../../data/yoloGtold1/train/51630.png +../../data/yoloGtold1/train/51631.png +../../data/yoloGtold1/train/51632.png +../../data/yoloGtold1/train/51633.png +../../data/yoloGtold1/train/51634.png +../../data/yoloGtold1/train/51635.png +../../data/yoloGtold1/train/51636.png +../../data/yoloGtold1/train/51637.png +../../data/yoloGtold1/train/51638.png +../../data/yoloGtold1/train/51639.png +../../data/yoloGtold1/train/51640.png +../../data/yoloGtold1/train/51641.png +../../data/yoloGtold1/train/51642.png +../../data/yoloGtold1/train/51643.png +../../data/yoloGtold1/train/51644.png +../../data/yoloGtold1/train/51645.png +../../data/yoloGtold1/train/51646.png +../../data/yoloGtold1/train/51647.png +../../data/yoloGtold1/train/51648.png +../../data/yoloGtold1/train/51649.png +../../data/yoloGtold1/train/51650.png +../../data/yoloGtold1/train/51651.png +../../data/yoloGtold1/train/51652.png +../../data/yoloGtold1/train/51653.png +../../data/yoloGtold1/train/51654.png +../../data/yoloGtold1/train/51655.png +../../data/yoloGtold1/train/51656.png +../../data/yoloGtold1/train/51657.png +../../data/yoloGtold1/train/51658.png +../../data/yoloGtold1/train/51659.png +../../data/yoloGtold1/train/51660.png +../../data/yoloGtold1/train/51661.png +../../data/yoloGtold1/train/51662.png +../../data/yoloGtold1/train/51663.png +../../data/yoloGtold1/train/51664.png +../../data/yoloGtold1/train/51665.png +../../data/yoloGtold1/train/51666.png +../../data/yoloGtold1/train/51667.png +../../data/yoloGtold1/train/51668.png +../../data/yoloGtold1/train/51669.png +../../data/yoloGtold1/train/51670.png +../../data/yoloGtold1/train/51671.png +../../data/yoloGtold1/train/51672.png +../../data/yoloGtold1/train/51673.png +../../data/yoloGtold1/train/51674.png +../../data/yoloGtold1/train/51675.png +../../data/yoloGtold1/train/51676.png +../../data/yoloGtold1/train/51677.png +../../data/yoloGtold1/train/51678.png +../../data/yoloGtold1/train/51679.png +../../data/yoloGtold1/train/51680.png +../../data/yoloGtold1/train/51681.png +../../data/yoloGtold1/train/51682.png +../../data/yoloGtold1/train/51683.png +../../data/yoloGtold1/train/51684.png +../../data/yoloGtold1/train/51685.png +../../data/yoloGtold1/train/51686.png +../../data/yoloGtold1/train/51687.png +../../data/yoloGtold1/train/51688.png +../../data/yoloGtold1/train/51689.png +../../data/yoloGtold1/train/51690.png +../../data/yoloGtold1/train/51691.png +../../data/yoloGtold1/train/51692.png +../../data/yoloGtold1/train/51693.png +../../data/yoloGtold1/train/51694.png +../../data/yoloGtold1/train/51695.png +../../data/yoloGtold1/train/51696.png +../../data/yoloGtold1/train/51697.png +../../data/yoloGtold1/train/51698.png +../../data/yoloGtold1/train/51699.png +../../data/yoloGtold1/train/51700.png +../../data/yoloGtold1/train/51701.png +../../data/yoloGtold1/train/51702.png +../../data/yoloGtold1/train/51703.png +../../data/yoloGtold1/train/51704.png +../../data/yoloGtold1/train/51705.png +../../data/yoloGtold1/train/51706.png +../../data/yoloGtold1/train/51707.png +../../data/yoloGtold1/train/51708.png +../../data/yoloGtold1/train/51709.png +../../data/yoloGtold1/train/51710.png +../../data/yoloGtold1/train/51711.png +../../data/yoloGtold1/train/51712.png +../../data/yoloGtold1/train/51713.png +../../data/yoloGtold1/train/51714.png +../../data/yoloGtold1/train/51715.png +../../data/yoloGtold1/train/51716.png +../../data/yoloGtold1/train/51717.png +../../data/yoloGtold1/train/51718.png +../../data/yoloGtold1/train/51719.png +../../data/yoloGtold1/train/51720.png +../../data/yoloGtold1/train/51721.png +../../data/yoloGtold1/train/51722.png +../../data/yoloGtold1/train/51723.png +../../data/yoloGtold1/train/51724.png +../../data/yoloGtold1/train/51725.png +../../data/yoloGtold1/train/51726.png +../../data/yoloGtold1/train/51727.png +../../data/yoloGtold1/train/51728.png +../../data/yoloGtold1/train/51729.png +../../data/yoloGtold1/train/51730.png +../../data/yoloGtold1/train/51731.png +../../data/yoloGtold1/train/51732.png +../../data/yoloGtold1/train/51733.png +../../data/yoloGtold1/train/51734.png +../../data/yoloGtold1/train/51735.png +../../data/yoloGtold1/train/51736.png +../../data/yoloGtold1/train/51737.png +../../data/yoloGtold1/train/51738.png +../../data/yoloGtold1/train/51739.png +../../data/yoloGtold1/train/51740.png +../../data/yoloGtold1/train/51741.png +../../data/yoloGtold1/train/51742.png +../../data/yoloGtold1/train/51743.png +../../data/yoloGtold1/train/51744.png +../../data/yoloGtold1/train/51745.png +../../data/yoloGtold1/train/51746.png +../../data/yoloGtold1/train/51747.png +../../data/yoloGtold1/train/51748.png +../../data/yoloGtold1/train/51749.png +../../data/yoloGtold1/train/51750.png +../../data/yoloGtold1/train/51751.png +../../data/yoloGtold1/train/51752.png +../../data/yoloGtold1/train/51753.png +../../data/yoloGtold1/train/51754.png +../../data/yoloGtold1/train/51755.png +../../data/yoloGtold1/train/51756.png +../../data/yoloGtold1/train/51757.png +../../data/yoloGtold1/train/51758.png +../../data/yoloGtold1/train/51759.png +../../data/yoloGtold1/train/51760.png +../../data/yoloGtold1/train/51761.png +../../data/yoloGtold1/train/51762.png +../../data/yoloGtold1/train/51763.png +../../data/yoloGtold1/train/51764.png +../../data/yoloGtold1/train/51765.png +../../data/yoloGtold1/train/51766.png +../../data/yoloGtold1/train/51767.png +../../data/yoloGtold1/train/51768.png +../../data/yoloGtold1/train/51769.png +../../data/yoloGtold1/train/51770.png +../../data/yoloGtold1/train/51771.png +../../data/yoloGtold1/train/51772.png +../../data/yoloGtold1/train/51773.png +../../data/yoloGtold1/train/51774.png +../../data/yoloGtold1/train/51775.png +../../data/yoloGtold1/train/51776.png +../../data/yoloGtold1/train/51777.png +../../data/yoloGtold1/train/51778.png +../../data/yoloGtold1/train/51779.png +../../data/yoloGtold1/train/51780.png +../../data/yoloGtold1/train/51781.png +../../data/yoloGtold1/train/51782.png +../../data/yoloGtold1/train/51783.png +../../data/yoloGtold1/train/51784.png +../../data/yoloGtold1/train/51785.png +../../data/yoloGtold1/train/51786.png +../../data/yoloGtold1/train/51787.png +../../data/yoloGtold1/train/51788.png +../../data/yoloGtold1/train/51789.png +../../data/yoloGtold1/train/51790.png +../../data/yoloGtold1/train/51791.png +../../data/yoloGtold1/train/51792.png +../../data/yoloGtold1/train/51793.png +../../data/yoloGtold1/train/51794.png +../../data/yoloGtold1/train/51795.png +../../data/yoloGtold1/train/51796.png +../../data/yoloGtold1/train/51797.png +../../data/yoloGtold1/train/51798.png +../../data/yoloGtold1/train/51799.png +../../data/yoloGtold1/train/51800.png +../../data/yoloGtold1/train/51801.png +../../data/yoloGtold1/train/51802.png +../../data/yoloGtold1/train/51803.png +../../data/yoloGtold1/train/51804.png +../../data/yoloGtold1/train/51805.png +../../data/yoloGtold1/train/51806.png +../../data/yoloGtold1/train/51807.png +../../data/yoloGtold1/train/51808.png +../../data/yoloGtold1/train/51809.png +../../data/yoloGtold1/train/51810.png +../../data/yoloGtold1/train/51811.png +../../data/yoloGtold1/train/51812.png +../../data/yoloGtold1/train/51813.png +../../data/yoloGtold1/train/51814.png +../../data/yoloGtold1/train/51815.png +../../data/yoloGtold1/train/51816.png +../../data/yoloGtold1/train/51817.png +../../data/yoloGtold1/train/51818.png +../../data/yoloGtold1/train/51819.png +../../data/yoloGtold1/train/51820.png +../../data/yoloGtold1/train/51821.png +../../data/yoloGtold1/train/51822.png +../../data/yoloGtold1/train/51823.png +../../data/yoloGtold1/train/51824.png +../../data/yoloGtold1/train/51825.png +../../data/yoloGtold1/train/51826.png +../../data/yoloGtold1/train/51827.png +../../data/yoloGtold1/train/51828.png +../../data/yoloGtold1/train/51829.png +../../data/yoloGtold1/train/51830.png +../../data/yoloGtold1/train/51831.png +../../data/yoloGtold1/train/51832.png +../../data/yoloGtold1/train/51833.png +../../data/yoloGtold1/train/51834.png +../../data/yoloGtold1/train/51835.png +../../data/yoloGtold1/train/51836.png +../../data/yoloGtold1/train/51837.png +../../data/yoloGtold1/train/51838.png +../../data/yoloGtold1/train/51839.png +../../data/yoloGtold1/train/51840.png +../../data/yoloGtold1/train/51841.png +../../data/yoloGtold1/train/51842.png +../../data/yoloGtold1/train/51843.png +../../data/yoloGtold1/train/51844.png +../../data/yoloGtold1/train/51845.png +../../data/yoloGtold1/train/51846.png +../../data/yoloGtold1/train/51847.png +../../data/yoloGtold1/train/51848.png +../../data/yoloGtold1/train/51849.png +../../data/yoloGtold1/train/51850.png +../../data/yoloGtold1/train/51851.png +../../data/yoloGtold1/train/51852.png +../../data/yoloGtold1/train/51853.png +../../data/yoloGtold1/train/51854.png +../../data/yoloGtold1/train/51855.png +../../data/yoloGtold1/train/51856.png +../../data/yoloGtold1/train/51857.png +../../data/yoloGtold1/train/51858.png +../../data/yoloGtold1/train/51859.png +../../data/yoloGtold1/train/51860.png +../../data/yoloGtold1/train/51861.png +../../data/yoloGtold1/train/51862.png +../../data/yoloGtold1/train/51863.png +../../data/yoloGtold1/train/51864.png +../../data/yoloGtold1/train/51865.png +../../data/yoloGtold1/train/51866.png +../../data/yoloGtold1/train/51867.png +../../data/yoloGtold1/train/51868.png +../../data/yoloGtold1/train/51869.png +../../data/yoloGtold1/train/51870.png +../../data/yoloGtold1/train/51871.png +../../data/yoloGtold1/train/51872.png +../../data/yoloGtold1/train/51873.png +../../data/yoloGtold1/train/51874.png +../../data/yoloGtold1/train/51875.png +../../data/yoloGtold1/train/51876.png +../../data/yoloGtold1/train/51877.png +../../data/yoloGtold1/train/51878.png +../../data/yoloGtold1/train/51879.png +../../data/yoloGtold1/train/51880.png +../../data/yoloGtold1/train/51881.png +../../data/yoloGtold1/train/51882.png +../../data/yoloGtold1/train/51883.png +../../data/yoloGtold1/train/51884.png +../../data/yoloGtold1/train/51885.png +../../data/yoloGtold1/train/51886.png +../../data/yoloGtold1/train/51887.png +../../data/yoloGtold1/train/51888.png +../../data/yoloGtold1/train/51889.png +../../data/yoloGtold1/train/51890.png +../../data/yoloGtold1/train/51891.png +../../data/yoloGtold1/train/51892.png +../../data/yoloGtold1/train/51893.png +../../data/yoloGtold1/train/51894.png +../../data/yoloGtold1/train/51895.png +../../data/yoloGtold1/train/51896.png +../../data/yoloGtold1/train/51897.png +../../data/yoloGtold1/train/51898.png +../../data/yoloGtold1/train/51899.png +../../data/yoloGtold1/train/51900.png +../../data/yoloGtold1/train/51901.png +../../data/yoloGtold1/train/51902.png +../../data/yoloGtold1/train/51903.png +../../data/yoloGtold1/train/51904.png +../../data/yoloGtold1/train/51905.png +../../data/yoloGtold1/train/51906.png +../../data/yoloGtold1/train/51907.png +../../data/yoloGtold1/train/51908.png +../../data/yoloGtold1/train/51909.png +../../data/yoloGtold1/train/51910.png +../../data/yoloGtold1/train/51911.png +../../data/yoloGtold1/train/51912.png +../../data/yoloGtold1/train/51913.png +../../data/yoloGtold1/train/51914.png +../../data/yoloGtold1/train/51915.png +../../data/yoloGtold1/train/51916.png +../../data/yoloGtold1/train/51917.png +../../data/yoloGtold1/train/51918.png +../../data/yoloGtold1/train/51919.png +../../data/yoloGtold1/train/51920.png +../../data/yoloGtold1/train/51921.png +../../data/yoloGtold1/train/51922.png +../../data/yoloGtold1/train/51923.png +../../data/yoloGtold1/train/51924.png +../../data/yoloGtold1/train/51925.png +../../data/yoloGtold1/train/51926.png +../../data/yoloGtold1/train/51927.png +../../data/yoloGtold1/train/51928.png +../../data/yoloGtold1/train/51929.png +../../data/yoloGtold1/train/51930.png +../../data/yoloGtold1/train/51931.png +../../data/yoloGtold1/train/51932.png +../../data/yoloGtold1/train/51933.png +../../data/yoloGtold1/train/51934.png +../../data/yoloGtold1/train/51935.png +../../data/yoloGtold1/train/51936.png +../../data/yoloGtold1/train/51937.png +../../data/yoloGtold1/train/51938.png +../../data/yoloGtold1/train/51939.png +../../data/yoloGtold1/train/51940.png +../../data/yoloGtold1/train/51941.png +../../data/yoloGtold1/train/51942.png +../../data/yoloGtold1/train/51943.png +../../data/yoloGtold1/train/51944.png +../../data/yoloGtold1/train/51945.png +../../data/yoloGtold1/train/51946.png +../../data/yoloGtold1/train/51947.png +../../data/yoloGtold1/train/51948.png +../../data/yoloGtold1/train/51949.png +../../data/yoloGtold1/train/51950.png +../../data/yoloGtold1/train/51951.png +../../data/yoloGtold1/train/51952.png +../../data/yoloGtold1/train/51953.png +../../data/yoloGtold1/train/51954.png +../../data/yoloGtold1/train/51955.png +../../data/yoloGtold1/train/51956.png +../../data/yoloGtold1/train/51957.png +../../data/yoloGtold1/train/51958.png +../../data/yoloGtold1/train/51959.png +../../data/yoloGtold1/train/51960.png +../../data/yoloGtold1/train/51961.png +../../data/yoloGtold1/train/51962.png +../../data/yoloGtold1/train/51963.png +../../data/yoloGtold1/train/51964.png +../../data/yoloGtold1/train/51965.png +../../data/yoloGtold1/train/51966.png +../../data/yoloGtold1/train/51967.png +../../data/yoloGtold1/train/51968.png +../../data/yoloGtold1/train/51969.png +../../data/yoloGtold1/train/51970.png +../../data/yoloGtold1/train/51971.png +../../data/yoloGtold1/train/51972.png +../../data/yoloGtold1/train/51973.png +../../data/yoloGtold1/train/51974.png +../../data/yoloGtold1/train/51975.png +../../data/yoloGtold1/train/51976.png +../../data/yoloGtold1/train/51977.png +../../data/yoloGtold1/train/51978.png +../../data/yoloGtold1/train/51979.png +../../data/yoloGtold1/train/51980.png +../../data/yoloGtold1/train/51981.png +../../data/yoloGtold1/train/51982.png +../../data/yoloGtold1/train/51983.png +../../data/yoloGtold1/train/51984.png +../../data/yoloGtold1/train/51985.png +../../data/yoloGtold1/train/51986.png +../../data/yoloGtold1/train/51987.png +../../data/yoloGtold1/train/51988.png +../../data/yoloGtold1/train/51989.png +../../data/yoloGtold1/train/51990.png +../../data/yoloGtold1/train/51991.png +../../data/yoloGtold1/train/51992.png +../../data/yoloGtold1/train/51993.png +../../data/yoloGtold1/train/51994.png +../../data/yoloGtold1/train/51995.png +../../data/yoloGtold1/train/51996.png +../../data/yoloGtold1/train/51997.png +../../data/yoloGtold1/train/51998.png +../../data/yoloGtold1/train/51999.png +../../data/yoloGtold1/train/52000.png +../../data/yoloGtold1/train/52001.png +../../data/yoloGtold1/train/52002.png +../../data/yoloGtold1/train/52003.png +../../data/yoloGtold1/train/52004.png +../../data/yoloGtold1/train/52005.png +../../data/yoloGtold1/train/52006.png +../../data/yoloGtold1/train/52007.png +../../data/yoloGtold1/train/52008.png +../../data/yoloGtold1/train/52009.png +../../data/yoloGtold1/train/52010.png +../../data/yoloGtold1/train/52011.png +../../data/yoloGtold1/train/52012.png +../../data/yoloGtold1/train/52013.png +../../data/yoloGtold1/train/52014.png +../../data/yoloGtold1/train/52015.png +../../data/yoloGtold1/train/52016.png +../../data/yoloGtold1/train/52017.png +../../data/yoloGtold1/train/52018.png +../../data/yoloGtold1/train/52019.png +../../data/yoloGtold1/train/52020.png +../../data/yoloGtold1/train/52021.png +../../data/yoloGtold1/train/52022.png +../../data/yoloGtold1/train/52023.png +../../data/yoloGtold1/train/52024.png +../../data/yoloGtold1/train/52025.png +../../data/yoloGtold1/train/52026.png +../../data/yoloGtold1/train/52027.png +../../data/yoloGtold1/train/52028.png +../../data/yoloGtold1/train/52029.png +../../data/yoloGtold1/train/52030.png +../../data/yoloGtold1/train/52031.png +../../data/yoloGtold1/train/52032.png +../../data/yoloGtold1/train/52033.png +../../data/yoloGtold1/train/52034.png +../../data/yoloGtold1/train/52035.png +../../data/yoloGtold1/train/52036.png +../../data/yoloGtold1/train/52037.png +../../data/yoloGtold1/train/52038.png +../../data/yoloGtold1/train/52039.png +../../data/yoloGtold1/train/52040.png +../../data/yoloGtold1/train/52041.png +../../data/yoloGtold1/train/52042.png +../../data/yoloGtold1/train/52043.png +../../data/yoloGtold1/train/52044.png +../../data/yoloGtold1/train/52045.png +../../data/yoloGtold1/train/52046.png +../../data/yoloGtold1/train/52047.png +../../data/yoloGtold1/train/52048.png +../../data/yoloGtold1/train/52049.png +../../data/yoloGtold1/train/52050.png +../../data/yoloGtold1/train/52051.png +../../data/yoloGtold1/train/52052.png +../../data/yoloGtold1/train/52053.png +../../data/yoloGtold1/train/52054.png +../../data/yoloGtold1/train/52055.png +../../data/yoloGtold1/train/52056.png +../../data/yoloGtold1/train/52057.png +../../data/yoloGtold1/train/52058.png +../../data/yoloGtold1/train/52059.png +../../data/yoloGtold1/train/52060.png +../../data/yoloGtold1/train/52061.png +../../data/yoloGtold1/train/52062.png +../../data/yoloGtold1/train/52063.png +../../data/yoloGtold1/train/52064.png +../../data/yoloGtold1/train/52065.png +../../data/yoloGtold1/train/52066.png +../../data/yoloGtold1/train/52067.png +../../data/yoloGtold1/train/52068.png +../../data/yoloGtold1/train/52069.png +../../data/yoloGtold1/train/52070.png +../../data/yoloGtold1/train/52071.png +../../data/yoloGtold1/train/52072.png +../../data/yoloGtold1/train/52073.png +../../data/yoloGtold1/train/52074.png +../../data/yoloGtold1/train/52075.png +../../data/yoloGtold1/train/52076.png +../../data/yoloGtold1/train/52077.png +../../data/yoloGtold1/train/52078.png +../../data/yoloGtold1/train/52079.png +../../data/yoloGtold1/train/52080.png +../../data/yoloGtold1/train/52081.png +../../data/yoloGtold1/train/52082.png +../../data/yoloGtold1/train/52083.png +../../data/yoloGtold1/train/52084.png +../../data/yoloGtold1/train/52085.png +../../data/yoloGtold1/train/52086.png +../../data/yoloGtold1/train/52087.png +../../data/yoloGtold1/train/52088.png +../../data/yoloGtold1/train/52089.png +../../data/yoloGtold1/train/52090.png +../../data/yoloGtold1/train/52091.png +../../data/yoloGtold1/train/52092.png +../../data/yoloGtold1/train/52093.png +../../data/yoloGtold1/train/52094.png +../../data/yoloGtold1/train/52095.png +../../data/yoloGtold1/train/52096.png +../../data/yoloGtold1/train/52097.png +../../data/yoloGtold1/train/52098.png +../../data/yoloGtold1/train/52099.png +../../data/yoloGtold1/train/52100.png +../../data/yoloGtold1/train/52101.png +../../data/yoloGtold1/train/52102.png +../../data/yoloGtold1/train/52103.png +../../data/yoloGtold1/train/52104.png +../../data/yoloGtold1/train/52105.png +../../data/yoloGtold1/train/52106.png +../../data/yoloGtold1/train/52107.png +../../data/yoloGtold1/train/52108.png +../../data/yoloGtold1/train/52109.png +../../data/yoloGtold1/train/52110.png +../../data/yoloGtold1/train/52111.png +../../data/yoloGtold1/train/52112.png +../../data/yoloGtold1/train/52113.png +../../data/yoloGtold1/train/52114.png +../../data/yoloGtold1/train/52115.png +../../data/yoloGtold1/train/52116.png +../../data/yoloGtold1/train/52117.png +../../data/yoloGtold1/train/52118.png +../../data/yoloGtold1/train/52119.png +../../data/yoloGtold1/train/52120.png +../../data/yoloGtold1/train/52121.png +../../data/yoloGtold1/train/52122.png +../../data/yoloGtold1/train/52123.png +../../data/yoloGtold1/train/52124.png +../../data/yoloGtold1/train/52125.png +../../data/yoloGtold1/train/52126.png +../../data/yoloGtold1/train/52127.png +../../data/yoloGtold1/train/52128.png +../../data/yoloGtold1/train/52129.png +../../data/yoloGtold1/train/52130.png +../../data/yoloGtold1/train/52131.png +../../data/yoloGtold1/train/52132.png +../../data/yoloGtold1/train/52133.png +../../data/yoloGtold1/train/52134.png +../../data/yoloGtold1/train/52135.png +../../data/yoloGtold1/train/52136.png +../../data/yoloGtold1/train/52137.png +../../data/yoloGtold1/train/52138.png +../../data/yoloGtold1/train/52139.png +../../data/yoloGtold1/train/52140.png +../../data/yoloGtold1/train/52141.png +../../data/yoloGtold1/train/52142.png +../../data/yoloGtold1/train/52143.png +../../data/yoloGtold1/train/52144.png +../../data/yoloGtold1/train/52145.png +../../data/yoloGtold1/train/52146.png +../../data/yoloGtold1/train/52147.png +../../data/yoloGtold1/train/52148.png +../../data/yoloGtold1/train/52149.png +../../data/yoloGtold1/train/52150.png +../../data/yoloGtold1/train/52151.png +../../data/yoloGtold1/train/52152.png +../../data/yoloGtold1/train/52153.png +../../data/yoloGtold1/train/52154.png +../../data/yoloGtold1/train/52155.png +../../data/yoloGtold1/train/52156.png +../../data/yoloGtold1/train/52157.png +../../data/yoloGtold1/train/52158.png +../../data/yoloGtold1/train/52159.png +../../data/yoloGtold1/train/52160.png +../../data/yoloGtold1/train/52161.png +../../data/yoloGtold1/train/52162.png +../../data/yoloGtold1/train/52163.png +../../data/yoloGtold1/train/52164.png +../../data/yoloGtold1/train/52165.png +../../data/yoloGtold1/train/52166.png +../../data/yoloGtold1/train/52167.png +../../data/yoloGtold1/train/52168.png +../../data/yoloGtold1/train/52169.png +../../data/yoloGtold1/train/52170.png +../../data/yoloGtold1/train/52171.png +../../data/yoloGtold1/train/52172.png +../../data/yoloGtold1/train/52173.png +../../data/yoloGtold1/train/52174.png +../../data/yoloGtold1/train/52175.png +../../data/yoloGtold1/train/52176.png +../../data/yoloGtold1/train/52177.png +../../data/yoloGtold1/train/52178.png +../../data/yoloGtold1/train/52179.png +../../data/yoloGtold1/train/52180.png +../../data/yoloGtold1/train/52181.png +../../data/yoloGtold1/train/52182.png +../../data/yoloGtold1/train/52183.png +../../data/yoloGtold1/train/52184.png +../../data/yoloGtold1/train/52185.png +../../data/yoloGtold1/train/52186.png +../../data/yoloGtold1/train/52187.png +../../data/yoloGtold1/train/52188.png +../../data/yoloGtold1/train/52189.png +../../data/yoloGtold1/train/52190.png +../../data/yoloGtold1/train/52191.png +../../data/yoloGtold1/train/52192.png +../../data/yoloGtold1/train/52193.png +../../data/yoloGtold1/train/52194.png +../../data/yoloGtold1/train/52195.png +../../data/yoloGtold1/train/52196.png +../../data/yoloGtold1/train/52197.png +../../data/yoloGtold1/train/52198.png +../../data/yoloGtold1/train/52199.png +../../data/yoloGtold1/train/52200.png +../../data/yoloGtold1/train/52201.png +../../data/yoloGtold1/train/52202.png +../../data/yoloGtold1/train/52203.png +../../data/yoloGtold1/train/52204.png +../../data/yoloGtold1/train/52205.png +../../data/yoloGtold1/train/52206.png +../../data/yoloGtold1/train/52207.png +../../data/yoloGtold1/train/52208.png +../../data/yoloGtold1/train/52209.png +../../data/yoloGtold1/train/52210.png +../../data/yoloGtold1/train/52211.png +../../data/yoloGtold1/train/52212.png +../../data/yoloGtold1/train/52213.png +../../data/yoloGtold1/train/52214.png +../../data/yoloGtold1/train/52215.png +../../data/yoloGtold1/train/52216.png +../../data/yoloGtold1/train/52217.png +../../data/yoloGtold1/train/52218.png +../../data/yoloGtold1/train/52219.png +../../data/yoloGtold1/train/52220.png +../../data/yoloGtold1/train/52221.png +../../data/yoloGtold1/train/52222.png +../../data/yoloGtold1/train/52223.png +../../data/yoloGtold1/train/52224.png +../../data/yoloGtold1/train/52225.png +../../data/yoloGtold1/train/52226.png +../../data/yoloGtold1/train/52227.png +../../data/yoloGtold1/train/52228.png +../../data/yoloGtold1/train/52229.png +../../data/yoloGtold1/train/52230.png +../../data/yoloGtold1/train/52231.png +../../data/yoloGtold1/train/52232.png +../../data/yoloGtold1/train/52233.png +../../data/yoloGtold1/train/52234.png +../../data/yoloGtold1/train/52235.png +../../data/yoloGtold1/train/52236.png +../../data/yoloGtold1/train/52237.png +../../data/yoloGtold1/train/52238.png +../../data/yoloGtold1/train/52239.png +../../data/yoloGtold1/train/52240.png +../../data/yoloGtold1/train/52241.png +../../data/yoloGtold1/train/52242.png +../../data/yoloGtold1/train/52243.png +../../data/yoloGtold1/train/52244.png +../../data/yoloGtold1/train/52245.png +../../data/yoloGtold1/train/52246.png +../../data/yoloGtold1/train/52247.png +../../data/yoloGtold1/train/52248.png +../../data/yoloGtold1/train/52249.png +../../data/yoloGtold1/train/52250.png +../../data/yoloGtold1/train/52251.png +../../data/yoloGtold1/train/52252.png +../../data/yoloGtold1/train/52253.png +../../data/yoloGtold1/train/52254.png +../../data/yoloGtold1/train/52255.png +../../data/yoloGtold1/train/52256.png +../../data/yoloGtold1/train/52257.png +../../data/yoloGtold1/train/52258.png +../../data/yoloGtold1/train/52259.png +../../data/yoloGtold1/train/52260.png +../../data/yoloGtold1/train/52261.png +../../data/yoloGtold1/train/52262.png +../../data/yoloGtold1/train/52263.png +../../data/yoloGtold1/train/52264.png +../../data/yoloGtold1/train/52265.png +../../data/yoloGtold1/train/52266.png +../../data/yoloGtold1/train/52267.png +../../data/yoloGtold1/train/52268.png +../../data/yoloGtold1/train/52269.png +../../data/yoloGtold1/train/52270.png +../../data/yoloGtold1/train/52271.png +../../data/yoloGtold1/train/52272.png +../../data/yoloGtold1/train/52273.png +../../data/yoloGtold1/train/52274.png +../../data/yoloGtold1/train/52275.png +../../data/yoloGtold1/train/52276.png +../../data/yoloGtold1/train/52277.png +../../data/yoloGtold1/train/52278.png +../../data/yoloGtold1/train/52279.png +../../data/yoloGtold1/train/52280.png +../../data/yoloGtold1/train/52281.png +../../data/yoloGtold1/train/52282.png +../../data/yoloGtold1/train/52283.png +../../data/yoloGtold1/train/52284.png +../../data/yoloGtold1/train/52285.png +../../data/yoloGtold1/train/52286.png +../../data/yoloGtold1/train/52287.png +../../data/yoloGtold1/train/52288.png +../../data/yoloGtold1/train/52289.png +../../data/yoloGtold1/train/52290.png +../../data/yoloGtold1/train/52291.png +../../data/yoloGtold1/train/52292.png +../../data/yoloGtold1/train/52293.png +../../data/yoloGtold1/train/52294.png +../../data/yoloGtold1/train/52295.png +../../data/yoloGtold1/train/52296.png +../../data/yoloGtold1/train/52297.png +../../data/yoloGtold1/train/52298.png +../../data/yoloGtold1/train/52299.png +../../data/yoloGtold1/train/52300.png +../../data/yoloGtold1/train/52301.png +../../data/yoloGtold1/train/52302.png +../../data/yoloGtold1/train/52303.png +../../data/yoloGtold1/train/52304.png +../../data/yoloGtold1/train/52305.png +../../data/yoloGtold1/train/52306.png +../../data/yoloGtold1/train/52307.png +../../data/yoloGtold1/train/52308.png +../../data/yoloGtold1/train/52309.png +../../data/yoloGtold1/train/52310.png +../../data/yoloGtold1/train/52311.png +../../data/yoloGtold1/train/52312.png +../../data/yoloGtold1/train/52313.png +../../data/yoloGtold1/train/52314.png +../../data/yoloGtold1/train/52315.png +../../data/yoloGtold1/train/52316.png +../../data/yoloGtold1/train/52317.png +../../data/yoloGtold1/train/52318.png +../../data/yoloGtold1/train/52319.png +../../data/yoloGtold1/train/52320.png +../../data/yoloGtold1/train/52321.png +../../data/yoloGtold1/train/52322.png +../../data/yoloGtold1/train/52323.png +../../data/yoloGtold1/train/52324.png +../../data/yoloGtold1/train/52325.png +../../data/yoloGtold1/train/52326.png +../../data/yoloGtold1/train/52327.png +../../data/yoloGtold1/train/52328.png +../../data/yoloGtold1/train/52329.png +../../data/yoloGtold1/train/52330.png +../../data/yoloGtold1/train/52331.png +../../data/yoloGtold1/train/52332.png +../../data/yoloGtold1/train/52333.png +../../data/yoloGtold1/train/52334.png +../../data/yoloGtold1/train/52335.png +../../data/yoloGtold1/train/52336.png +../../data/yoloGtold1/train/52337.png +../../data/yoloGtold1/train/52338.png +../../data/yoloGtold1/train/52339.png +../../data/yoloGtold1/train/52340.png +../../data/yoloGtold1/train/52341.png +../../data/yoloGtold1/train/52342.png +../../data/yoloGtold1/train/52343.png +../../data/yoloGtold1/train/52344.png +../../data/yoloGtold1/train/52345.png +../../data/yoloGtold1/train/52346.png +../../data/yoloGtold1/train/52347.png +../../data/yoloGtold1/train/52348.png +../../data/yoloGtold1/train/52349.png +../../data/yoloGtold1/train/52350.png +../../data/yoloGtold1/train/52351.png +../../data/yoloGtold1/train/52352.png +../../data/yoloGtold1/train/52353.png +../../data/yoloGtold1/train/52354.png +../../data/yoloGtold1/train/52355.png +../../data/yoloGtold1/train/52356.png +../../data/yoloGtold1/train/52357.png +../../data/yoloGtold1/train/52358.png +../../data/yoloGtold1/train/52359.png +../../data/yoloGtold1/train/52360.png +../../data/yoloGtold1/train/52361.png +../../data/yoloGtold1/train/52362.png +../../data/yoloGtold1/train/52363.png +../../data/yoloGtold1/train/52364.png +../../data/yoloGtold1/train/52365.png +../../data/yoloGtold1/train/52366.png +../../data/yoloGtold1/train/52367.png +../../data/yoloGtold1/train/52368.png +../../data/yoloGtold1/train/52369.png +../../data/yoloGtold1/train/52370.png +../../data/yoloGtold1/train/52371.png +../../data/yoloGtold1/train/52372.png +../../data/yoloGtold1/train/52373.png +../../data/yoloGtold1/train/52374.png +../../data/yoloGtold1/train/52375.png +../../data/yoloGtold1/train/52376.png +../../data/yoloGtold1/train/52377.png +../../data/yoloGtold1/train/52378.png +../../data/yoloGtold1/train/52379.png +../../data/yoloGtold1/train/52380.png +../../data/yoloGtold1/train/52381.png +../../data/yoloGtold1/train/52382.png +../../data/yoloGtold1/train/52383.png +../../data/yoloGtold1/train/52384.png +../../data/yoloGtold1/train/52385.png +../../data/yoloGtold1/train/52386.png +../../data/yoloGtold1/train/52387.png +../../data/yoloGtold1/train/52388.png +../../data/yoloGtold1/train/52389.png +../../data/yoloGtold1/train/52390.png +../../data/yoloGtold1/train/52391.png +../../data/yoloGtold1/train/52392.png +../../data/yoloGtold1/train/52393.png +../../data/yoloGtold1/train/52394.png +../../data/yoloGtold1/train/52395.png +../../data/yoloGtold1/train/52396.png +../../data/yoloGtold1/train/52397.png +../../data/yoloGtold1/train/52398.png +../../data/yoloGtold1/train/52399.png +../../data/yoloGtold1/train/52400.png +../../data/yoloGtold1/train/52401.png +../../data/yoloGtold1/train/52402.png +../../data/yoloGtold1/train/52403.png +../../data/yoloGtold1/train/52404.png +../../data/yoloGtold1/train/52405.png +../../data/yoloGtold1/train/52406.png +../../data/yoloGtold1/train/52407.png +../../data/yoloGtold1/train/52408.png +../../data/yoloGtold1/train/52409.png +../../data/yoloGtold1/train/52410.png +../../data/yoloGtold1/train/52411.png +../../data/yoloGtold1/train/52412.png +../../data/yoloGtold1/train/52413.png +../../data/yoloGtold1/train/52414.png +../../data/yoloGtold1/train/52415.png +../../data/yoloGtold1/train/52416.png +../../data/yoloGtold1/train/52417.png +../../data/yoloGtold1/train/52418.png +../../data/yoloGtold1/train/52419.png +../../data/yoloGtold1/train/52420.png +../../data/yoloGtold1/train/52421.png +../../data/yoloGtold1/train/52422.png +../../data/yoloGtold1/train/52423.png +../../data/yoloGtold1/train/52424.png +../../data/yoloGtold1/train/52425.png +../../data/yoloGtold1/train/52426.png +../../data/yoloGtold1/train/52427.png +../../data/yoloGtold1/train/52428.png +../../data/yoloGtold1/train/52429.png +../../data/yoloGtold1/train/52430.png +../../data/yoloGtold1/train/52431.png +../../data/yoloGtold1/train/52432.png +../../data/yoloGtold1/train/52433.png +../../data/yoloGtold1/train/52434.png +../../data/yoloGtold1/train/52435.png +../../data/yoloGtold1/train/52436.png +../../data/yoloGtold1/train/52437.png +../../data/yoloGtold1/train/52438.png +../../data/yoloGtold1/train/52439.png +../../data/yoloGtold1/train/52440.png +../../data/yoloGtold1/train/52441.png +../../data/yoloGtold1/train/52442.png +../../data/yoloGtold1/train/52443.png +../../data/yoloGtold1/train/52444.png +../../data/yoloGtold1/train/52445.png +../../data/yoloGtold1/train/52446.png +../../data/yoloGtold1/train/52447.png +../../data/yoloGtold1/train/52448.png +../../data/yoloGtold1/train/52449.png +../../data/yoloGtold1/train/52450.png +../../data/yoloGtold1/train/52451.png +../../data/yoloGtold1/train/52452.png +../../data/yoloGtold1/train/52453.png +../../data/yoloGtold1/train/52454.png +../../data/yoloGtold1/train/52455.png +../../data/yoloGtold1/train/52456.png +../../data/yoloGtold1/train/52457.png +../../data/yoloGtold1/train/52458.png +../../data/yoloGtold1/train/52459.png +../../data/yoloGtold1/train/52460.png +../../data/yoloGtold1/train/52461.png +../../data/yoloGtold1/train/52462.png +../../data/yoloGtold1/train/52463.png +../../data/yoloGtold1/train/52464.png +../../data/yoloGtold1/train/52465.png +../../data/yoloGtold1/train/52466.png +../../data/yoloGtold1/train/52467.png +../../data/yoloGtold1/train/52468.png +../../data/yoloGtold1/train/52469.png +../../data/yoloGtold1/train/52470.png +../../data/yoloGtold1/train/52471.png +../../data/yoloGtold1/train/52472.png +../../data/yoloGtold1/train/52473.png +../../data/yoloGtold1/train/52474.png +../../data/yoloGtold1/train/52475.png +../../data/yoloGtold1/train/52476.png +../../data/yoloGtold1/train/52477.png +../../data/yoloGtold1/train/52478.png +../../data/yoloGtold1/train/52479.png +../../data/yoloGtold1/train/52480.png +../../data/yoloGtold1/train/52481.png +../../data/yoloGtold1/train/52482.png +../../data/yoloGtold1/train/52483.png +../../data/yoloGtold1/train/52484.png +../../data/yoloGtold1/train/52485.png +../../data/yoloGtold1/train/52486.png +../../data/yoloGtold1/train/52487.png +../../data/yoloGtold1/train/52488.png +../../data/yoloGtold1/train/52489.png +../../data/yoloGtold1/train/52490.png +../../data/yoloGtold1/train/52491.png +../../data/yoloGtold1/train/52492.png +../../data/yoloGtold1/train/52493.png +../../data/yoloGtold1/train/52494.png +../../data/yoloGtold1/train/52495.png +../../data/yoloGtold1/train/52496.png +../../data/yoloGtold1/train/52497.png +../../data/yoloGtold1/train/52498.png +../../data/yoloGtold1/train/52499.png +../../data/yoloGtold1/train/52500.png +../../data/yoloGtold1/train/52501.png +../../data/yoloGtold1/train/52502.png +../../data/yoloGtold1/train/52503.png +../../data/yoloGtold1/train/52504.png +../../data/yoloGtold1/train/52505.png +../../data/yoloGtold1/train/52506.png +../../data/yoloGtold1/train/52507.png +../../data/yoloGtold1/train/52508.png +../../data/yoloGtold1/train/52509.png +../../data/yoloGtold1/train/52510.png +../../data/yoloGtold1/train/52511.png +../../data/yoloGtold1/train/52512.png +../../data/yoloGtold1/train/52513.png +../../data/yoloGtold1/train/52514.png +../../data/yoloGtold1/train/52515.png +../../data/yoloGtold1/train/52516.png +../../data/yoloGtold1/train/52517.png +../../data/yoloGtold1/train/52518.png +../../data/yoloGtold1/train/52519.png +../../data/yoloGtold1/train/52520.png +../../data/yoloGtold1/train/52521.png +../../data/yoloGtold1/train/52522.png +../../data/yoloGtold1/train/52523.png +../../data/yoloGtold1/train/52524.png +../../data/yoloGtold1/train/52525.png +../../data/yoloGtold1/train/52526.png +../../data/yoloGtold1/train/52527.png +../../data/yoloGtold1/train/52528.png +../../data/yoloGtold1/train/52529.png +../../data/yoloGtold1/train/52530.png +../../data/yoloGtold1/train/52531.png +../../data/yoloGtold1/train/52532.png +../../data/yoloGtold1/train/52533.png +../../data/yoloGtold1/train/52534.png +../../data/yoloGtold1/train/52535.png +../../data/yoloGtold1/train/52536.png +../../data/yoloGtold1/train/52537.png +../../data/yoloGtold1/train/52538.png +../../data/yoloGtold1/train/52539.png +../../data/yoloGtold1/train/52540.png +../../data/yoloGtold1/train/52541.png +../../data/yoloGtold1/train/52542.png +../../data/yoloGtold1/train/52543.png +../../data/yoloGtold1/train/52544.png +../../data/yoloGtold1/train/52545.png +../../data/yoloGtold1/train/52546.png +../../data/yoloGtold1/train/52547.png +../../data/yoloGtold1/train/52548.png +../../data/yoloGtold1/train/52549.png +../../data/yoloGtold1/train/52550.png +../../data/yoloGtold1/train/52551.png +../../data/yoloGtold1/train/52552.png +../../data/yoloGtold1/train/52553.png +../../data/yoloGtold1/train/52554.png +../../data/yoloGtold1/train/52555.png +../../data/yoloGtold1/train/52556.png +../../data/yoloGtold1/train/52557.png +../../data/yoloGtold1/train/52558.png +../../data/yoloGtold1/train/52559.png +../../data/yoloGtold1/train/52560.png +../../data/yoloGtold1/train/52561.png +../../data/yoloGtold1/train/52562.png +../../data/yoloGtold1/train/52563.png +../../data/yoloGtold1/train/52564.png +../../data/yoloGtold1/train/52565.png +../../data/yoloGtold1/train/52566.png +../../data/yoloGtold1/train/52567.png +../../data/yoloGtold1/train/52568.png +../../data/yoloGtold1/train/52569.png +../../data/yoloGtold1/train/52570.png +../../data/yoloGtold1/train/52571.png +../../data/yoloGtold1/train/52572.png +../../data/yoloGtold1/train/52573.png +../../data/yoloGtold1/train/52574.png +../../data/yoloGtold1/train/52575.png +../../data/yoloGtold1/train/52576.png +../../data/yoloGtold1/train/52577.png +../../data/yoloGtold1/train/52578.png +../../data/yoloGtold1/train/52579.png +../../data/yoloGtold1/train/52580.png +../../data/yoloGtold1/train/52581.png +../../data/yoloGtold1/train/52582.png +../../data/yoloGtold1/train/52583.png +../../data/yoloGtold1/train/52584.png +../../data/yoloGtold1/train/52585.png +../../data/yoloGtold1/train/52586.png +../../data/yoloGtold1/train/52587.png +../../data/yoloGtold1/train/52588.png +../../data/yoloGtold1/train/52589.png +../../data/yoloGtold1/train/52590.png +../../data/yoloGtold1/train/52591.png +../../data/yoloGtold1/train/52592.png +../../data/yoloGtold1/train/52593.png +../../data/yoloGtold1/train/52594.png +../../data/yoloGtold1/train/52595.png +../../data/yoloGtold1/train/52596.png +../../data/yoloGtold1/train/52597.png +../../data/yoloGtold1/train/52598.png +../../data/yoloGtold1/train/52599.png +../../data/yoloGtold1/train/52600.png +../../data/yoloGtold1/train/52601.png +../../data/yoloGtold1/train/52602.png +../../data/yoloGtold1/train/52603.png +../../data/yoloGtold1/train/52604.png +../../data/yoloGtold1/train/52605.png +../../data/yoloGtold1/train/52606.png +../../data/yoloGtold1/train/52607.png +../../data/yoloGtold1/train/52608.png +../../data/yoloGtold1/train/52609.png +../../data/yoloGtold1/train/52610.png +../../data/yoloGtold1/train/52611.png +../../data/yoloGtold1/train/52612.png +../../data/yoloGtold1/train/52613.png +../../data/yoloGtold1/train/52614.png +../../data/yoloGtold1/train/52615.png +../../data/yoloGtold1/train/52616.png +../../data/yoloGtold1/train/52617.png +../../data/yoloGtold1/train/52618.png +../../data/yoloGtold1/train/52619.png +../../data/yoloGtold1/train/52620.png +../../data/yoloGtold1/train/52621.png +../../data/yoloGtold1/train/52622.png +../../data/yoloGtold1/train/52623.png +../../data/yoloGtold1/train/52624.png +../../data/yoloGtold1/train/52625.png +../../data/yoloGtold1/train/52626.png +../../data/yoloGtold1/train/52627.png +../../data/yoloGtold1/train/52628.png +../../data/yoloGtold1/train/52629.png +../../data/yoloGtold1/train/52630.png +../../data/yoloGtold1/train/52631.png +../../data/yoloGtold1/train/52632.png +../../data/yoloGtold1/train/52633.png +../../data/yoloGtold1/train/52634.png +../../data/yoloGtold1/train/52635.png +../../data/yoloGtold1/train/52636.png +../../data/yoloGtold1/train/52637.png +../../data/yoloGtold1/train/52638.png +../../data/yoloGtold1/train/52639.png +../../data/yoloGtold1/train/52640.png +../../data/yoloGtold1/train/52641.png +../../data/yoloGtold1/train/52642.png +../../data/yoloGtold1/train/52643.png +../../data/yoloGtold1/train/52644.png +../../data/yoloGtold1/train/52645.png +../../data/yoloGtold1/train/52646.png +../../data/yoloGtold1/train/52647.png +../../data/yoloGtold1/train/52648.png +../../data/yoloGtold1/train/52649.png +../../data/yoloGtold1/train/52650.png +../../data/yoloGtold1/train/52651.png +../../data/yoloGtold1/train/52652.png +../../data/yoloGtold1/train/52653.png +../../data/yoloGtold1/train/52654.png +../../data/yoloGtold1/train/52655.png +../../data/yoloGtold1/train/52656.png +../../data/yoloGtold1/train/52657.png +../../data/yoloGtold1/train/52658.png +../../data/yoloGtold1/train/52659.png +../../data/yoloGtold1/train/52660.png +../../data/yoloGtold1/train/52661.png +../../data/yoloGtold1/train/52662.png +../../data/yoloGtold1/train/52663.png +../../data/yoloGtold1/train/52664.png +../../data/yoloGtold1/train/52665.png +../../data/yoloGtold1/train/52666.png +../../data/yoloGtold1/train/52667.png +../../data/yoloGtold1/train/52668.png +../../data/yoloGtold1/train/52669.png +../../data/yoloGtold1/train/52670.png +../../data/yoloGtold1/train/52671.png +../../data/yoloGtold1/train/52672.png +../../data/yoloGtold1/train/52673.png +../../data/yoloGtold1/train/52674.png +../../data/yoloGtold1/train/52675.png +../../data/yoloGtold1/train/52676.png +../../data/yoloGtold1/train/52677.png +../../data/yoloGtold1/train/52678.png +../../data/yoloGtold1/train/52679.png +../../data/yoloGtold1/train/52680.png +../../data/yoloGtold1/train/52681.png +../../data/yoloGtold1/train/52682.png +../../data/yoloGtold1/train/52683.png +../../data/yoloGtold1/train/52684.png +../../data/yoloGtold1/train/52685.png +../../data/yoloGtold1/train/52686.png +../../data/yoloGtold1/train/52687.png +../../data/yoloGtold1/train/52688.png +../../data/yoloGtold1/train/52689.png +../../data/yoloGtold1/train/52690.png +../../data/yoloGtold1/train/52691.png +../../data/yoloGtold1/train/52692.png +../../data/yoloGtold1/train/52693.png +../../data/yoloGtold1/train/52694.png +../../data/yoloGtold1/train/52695.png +../../data/yoloGtold1/train/52696.png +../../data/yoloGtold1/train/52697.png +../../data/yoloGtold1/train/52698.png +../../data/yoloGtold1/train/52699.png +../../data/yoloGtold1/train/52700.png +../../data/yoloGtold1/train/52701.png +../../data/yoloGtold1/train/52702.png +../../data/yoloGtold1/train/52703.png +../../data/yoloGtold1/train/52704.png +../../data/yoloGtold1/train/52705.png +../../data/yoloGtold1/train/52706.png +../../data/yoloGtold1/train/52707.png +../../data/yoloGtold1/train/52708.png +../../data/yoloGtold1/train/52709.png +../../data/yoloGtold1/train/52710.png +../../data/yoloGtold1/train/52711.png +../../data/yoloGtold1/train/52712.png +../../data/yoloGtold1/train/52713.png +../../data/yoloGtold1/train/52714.png +../../data/yoloGtold1/train/52715.png +../../data/yoloGtold1/train/52716.png +../../data/yoloGtold1/train/52717.png +../../data/yoloGtold1/train/52718.png +../../data/yoloGtold1/train/52719.png +../../data/yoloGtold1/train/52720.png +../../data/yoloGtold1/train/52721.png +../../data/yoloGtold1/train/52722.png +../../data/yoloGtold1/train/52723.png +../../data/yoloGtold1/train/52724.png +../../data/yoloGtold1/train/52725.png +../../data/yoloGtold1/train/52726.png +../../data/yoloGtold1/train/52727.png +../../data/yoloGtold1/train/52728.png +../../data/yoloGtold1/train/52729.png +../../data/yoloGtold1/train/52730.png +../../data/yoloGtold1/train/52731.png +../../data/yoloGtold1/train/52732.png +../../data/yoloGtold1/train/52733.png +../../data/yoloGtold1/train/52734.png +../../data/yoloGtold1/train/52735.png +../../data/yoloGtold1/train/52736.png +../../data/yoloGtold1/train/52737.png +../../data/yoloGtold1/train/52738.png +../../data/yoloGtold1/train/52739.png +../../data/yoloGtold1/train/52740.png +../../data/yoloGtold1/train/52741.png +../../data/yoloGtold1/train/52742.png +../../data/yoloGtold1/train/52743.png +../../data/yoloGtold1/train/52744.png +../../data/yoloGtold1/train/52745.png +../../data/yoloGtold1/train/52746.png +../../data/yoloGtold1/train/52747.png +../../data/yoloGtold1/train/52748.png +../../data/yoloGtold1/train/52749.png +../../data/yoloGtold1/train/52750.png +../../data/yoloGtold1/train/52751.png +../../data/yoloGtold1/train/52752.png +../../data/yoloGtold1/train/52753.png +../../data/yoloGtold1/train/52754.png +../../data/yoloGtold1/train/52755.png +../../data/yoloGtold1/train/52756.png +../../data/yoloGtold1/train/52757.png +../../data/yoloGtold1/train/52758.png +../../data/yoloGtold1/train/52759.png +../../data/yoloGtold1/train/52760.png +../../data/yoloGtold1/train/52761.png +../../data/yoloGtold1/train/52762.png +../../data/yoloGtold1/train/52763.png +../../data/yoloGtold1/train/52764.png +../../data/yoloGtold1/train/52765.png +../../data/yoloGtold1/train/52766.png +../../data/yoloGtold1/train/52767.png +../../data/yoloGtold1/train/52768.png +../../data/yoloGtold1/train/52769.png +../../data/yoloGtold1/train/52770.png +../../data/yoloGtold1/train/52771.png +../../data/yoloGtold1/train/52772.png +../../data/yoloGtold1/train/52773.png +../../data/yoloGtold1/train/52774.png +../../data/yoloGtold1/train/52775.png +../../data/yoloGtold1/train/52776.png +../../data/yoloGtold1/train/52777.png +../../data/yoloGtold1/train/52778.png +../../data/yoloGtold1/train/52779.png +../../data/yoloGtold1/train/52780.png +../../data/yoloGtold1/train/52781.png +../../data/yoloGtold1/train/52782.png +../../data/yoloGtold1/train/52783.png +../../data/yoloGtold1/train/52784.png +../../data/yoloGtold1/train/52785.png +../../data/yoloGtold1/train/52786.png +../../data/yoloGtold1/train/52787.png +../../data/yoloGtold1/train/52788.png +../../data/yoloGtold1/train/52789.png +../../data/yoloGtold1/train/52790.png +../../data/yoloGtold1/train/52791.png +../../data/yoloGtold1/train/52792.png +../../data/yoloGtold1/train/52793.png +../../data/yoloGtold1/train/52794.png +../../data/yoloGtold1/train/52795.png +../../data/yoloGtold1/train/52796.png +../../data/yoloGtold1/train/52797.png +../../data/yoloGtold1/train/52798.png +../../data/yoloGtold1/train/52799.png +../../data/yoloGtold1/train/52800.png +../../data/yoloGtold1/train/52801.png +../../data/yoloGtold1/train/52802.png +../../data/yoloGtold1/train/52803.png +../../data/yoloGtold1/train/52804.png +../../data/yoloGtold1/train/52805.png +../../data/yoloGtold1/train/52806.png +../../data/yoloGtold1/train/52807.png +../../data/yoloGtold1/train/52808.png +../../data/yoloGtold1/train/52809.png +../../data/yoloGtold1/train/52810.png +../../data/yoloGtold1/train/52811.png +../../data/yoloGtold1/train/52812.png +../../data/yoloGtold1/train/52813.png +../../data/yoloGtold1/train/52814.png +../../data/yoloGtold1/train/52815.png +../../data/yoloGtold1/train/52816.png +../../data/yoloGtold1/train/52817.png +../../data/yoloGtold1/train/52818.png +../../data/yoloGtold1/train/52819.png +../../data/yoloGtold1/train/52820.png +../../data/yoloGtold1/train/52821.png +../../data/yoloGtold1/train/52822.png +../../data/yoloGtold1/train/52823.png +../../data/yoloGtold1/train/52824.png +../../data/yoloGtold1/train/52825.png +../../data/yoloGtold1/train/52826.png +../../data/yoloGtold1/train/52827.png +../../data/yoloGtold1/train/52828.png +../../data/yoloGtold1/train/52829.png +../../data/yoloGtold1/train/52830.png +../../data/yoloGtold1/train/52831.png +../../data/yoloGtold1/train/52832.png +../../data/yoloGtold1/train/52833.png +../../data/yoloGtold1/train/52834.png +../../data/yoloGtold1/train/52835.png +../../data/yoloGtold1/train/52836.png +../../data/yoloGtold1/train/52837.png +../../data/yoloGtold1/train/52838.png +../../data/yoloGtold1/train/52839.png +../../data/yoloGtold1/train/52840.png +../../data/yoloGtold1/train/52841.png +../../data/yoloGtold1/train/52842.png +../../data/yoloGtold1/train/52843.png +../../data/yoloGtold1/train/52844.png +../../data/yoloGtold1/train/52845.png +../../data/yoloGtold1/train/52846.png +../../data/yoloGtold1/train/52847.png +../../data/yoloGtold1/train/52848.png +../../data/yoloGtold1/train/52849.png +../../data/yoloGtold1/train/52850.png +../../data/yoloGtold1/train/52851.png +../../data/yoloGtold1/train/52852.png +../../data/yoloGtold1/train/52853.png +../../data/yoloGtold1/train/52854.png +../../data/yoloGtold1/train/52855.png +../../data/yoloGtold1/train/52856.png +../../data/yoloGtold1/train/52857.png +../../data/yoloGtold1/train/52858.png +../../data/yoloGtold1/train/52859.png +../../data/yoloGtold1/train/52860.png +../../data/yoloGtold1/train/52861.png +../../data/yoloGtold1/train/52862.png +../../data/yoloGtold1/train/52863.png +../../data/yoloGtold1/train/52864.png +../../data/yoloGtold1/train/52865.png +../../data/yoloGtold1/train/52866.png +../../data/yoloGtold1/train/52867.png +../../data/yoloGtold1/train/52868.png +../../data/yoloGtold1/train/52869.png +../../data/yoloGtold1/train/52870.png +../../data/yoloGtold1/train/52871.png +../../data/yoloGtold1/train/52872.png +../../data/yoloGtold1/train/52873.png +../../data/yoloGtold1/train/52874.png +../../data/yoloGtold1/train/52875.png +../../data/yoloGtold1/train/52876.png +../../data/yoloGtold1/train/52877.png +../../data/yoloGtold1/train/52878.png +../../data/yoloGtold1/train/52879.png +../../data/yoloGtold1/train/52880.png +../../data/yoloGtold1/train/52881.png +../../data/yoloGtold1/train/52882.png +../../data/yoloGtold1/train/52883.png +../../data/yoloGtold1/train/52884.png +../../data/yoloGtold1/train/52885.png +../../data/yoloGtold1/train/52886.png +../../data/yoloGtold1/train/52887.png +../../data/yoloGtold1/train/52888.png +../../data/yoloGtold1/train/52889.png +../../data/yoloGtold1/train/52890.png +../../data/yoloGtold1/train/52891.png +../../data/yoloGtold1/train/52892.png +../../data/yoloGtold1/train/52893.png +../../data/yoloGtold1/train/52894.png +../../data/yoloGtold1/train/52895.png +../../data/yoloGtold1/train/52896.png +../../data/yoloGtold1/train/52897.png +../../data/yoloGtold1/train/52898.png +../../data/yoloGtold1/train/52899.png +../../data/yoloGtold1/train/52900.png +../../data/yoloGtold1/train/52901.png +../../data/yoloGtold1/train/52902.png +../../data/yoloGtold1/train/52903.png +../../data/yoloGtold1/train/52904.png +../../data/yoloGtold1/train/52905.png +../../data/yoloGtold1/train/52906.png +../../data/yoloGtold1/train/52907.png +../../data/yoloGtold1/train/52908.png +../../data/yoloGtold1/train/52909.png +../../data/yoloGtold1/train/52910.png +../../data/yoloGtold1/train/52911.png +../../data/yoloGtold1/train/52912.png +../../data/yoloGtold1/train/52913.png +../../data/yoloGtold1/train/52914.png +../../data/yoloGtold1/train/52915.png +../../data/yoloGtold1/train/52916.png +../../data/yoloGtold1/train/52917.png +../../data/yoloGtold1/train/52918.png +../../data/yoloGtold1/train/52919.png +../../data/yoloGtold1/train/52920.png +../../data/yoloGtold1/train/52921.png +../../data/yoloGtold1/train/52922.png +../../data/yoloGtold1/train/52923.png +../../data/yoloGtold1/train/52924.png +../../data/yoloGtold1/train/52925.png +../../data/yoloGtold1/train/52926.png +../../data/yoloGtold1/train/52927.png +../../data/yoloGtold1/train/52928.png +../../data/yoloGtold1/train/52929.png +../../data/yoloGtold1/train/52930.png +../../data/yoloGtold1/train/52931.png +../../data/yoloGtold1/train/52932.png +../../data/yoloGtold1/train/52933.png +../../data/yoloGtold1/train/52934.png +../../data/yoloGtold1/train/52935.png +../../data/yoloGtold1/train/52936.png +../../data/yoloGtold1/train/52937.png +../../data/yoloGtold1/train/52938.png +../../data/yoloGtold1/train/52939.png +../../data/yoloGtold1/train/52940.png +../../data/yoloGtold1/train/52941.png +../../data/yoloGtold1/train/52942.png +../../data/yoloGtold1/train/52943.png +../../data/yoloGtold1/train/52944.png +../../data/yoloGtold1/train/52945.png +../../data/yoloGtold1/train/52946.png +../../data/yoloGtold1/train/52947.png +../../data/yoloGtold1/train/52948.png +../../data/yoloGtold1/train/52949.png +../../data/yoloGtold1/train/52950.png +../../data/yoloGtold1/train/52951.png +../../data/yoloGtold1/train/52952.png +../../data/yoloGtold1/train/52953.png +../../data/yoloGtold1/train/52954.png +../../data/yoloGtold1/train/52955.png +../../data/yoloGtold1/train/52956.png +../../data/yoloGtold1/train/52957.png +../../data/yoloGtold1/train/52958.png +../../data/yoloGtold1/train/52959.png +../../data/yoloGtold1/train/52960.png +../../data/yoloGtold1/train/52961.png +../../data/yoloGtold1/train/52962.png +../../data/yoloGtold1/train/52963.png +../../data/yoloGtold1/train/52964.png +../../data/yoloGtold1/train/52965.png +../../data/yoloGtold1/train/52966.png +../../data/yoloGtold1/train/52967.png +../../data/yoloGtold1/train/52968.png +../../data/yoloGtold1/train/52969.png +../../data/yoloGtold1/train/52970.png +../../data/yoloGtold1/train/52971.png +../../data/yoloGtold1/train/52972.png +../../data/yoloGtold1/train/52973.png +../../data/yoloGtold1/train/52974.png +../../data/yoloGtold1/train/52975.png +../../data/yoloGtold1/train/52976.png +../../data/yoloGtold1/train/52977.png +../../data/yoloGtold1/train/52978.png +../../data/yoloGtold1/train/52979.png +../../data/yoloGtold1/train/52980.png +../../data/yoloGtold1/train/52981.png +../../data/yoloGtold1/train/52982.png +../../data/yoloGtold1/train/52983.png +../../data/yoloGtold1/train/52984.png +../../data/yoloGtold1/train/52985.png +../../data/yoloGtold1/train/52986.png +../../data/yoloGtold1/train/52987.png +../../data/yoloGtold1/train/52988.png +../../data/yoloGtold1/train/52989.png +../../data/yoloGtold1/train/52990.png +../../data/yoloGtold1/train/52991.png +../../data/yoloGtold1/train/52992.png +../../data/yoloGtold1/train/52993.png +../../data/yoloGtold1/train/52994.png +../../data/yoloGtold1/train/52995.png +../../data/yoloGtold1/train/52996.png +../../data/yoloGtold1/train/52997.png +../../data/yoloGtold1/train/52998.png +../../data/yoloGtold1/train/52999.png +../../data/yoloGtold1/train/53000.png +../../data/yoloGtold1/train/53001.png +../../data/yoloGtold1/train/53002.png +../../data/yoloGtold1/train/53003.png +../../data/yoloGtold1/train/53004.png +../../data/yoloGtold1/train/53005.png +../../data/yoloGtold1/train/53006.png +../../data/yoloGtold1/train/53007.png +../../data/yoloGtold1/train/53008.png +../../data/yoloGtold1/train/53009.png +../../data/yoloGtold1/train/53010.png +../../data/yoloGtold1/train/53011.png +../../data/yoloGtold1/train/53012.png +../../data/yoloGtold1/train/53013.png +../../data/yoloGtold1/train/53014.png +../../data/yoloGtold1/train/53015.png +../../data/yoloGtold1/train/53016.png +../../data/yoloGtold1/train/53017.png +../../data/yoloGtold1/train/53018.png +../../data/yoloGtold1/train/53019.png +../../data/yoloGtold1/train/53020.png +../../data/yoloGtold1/train/53021.png +../../data/yoloGtold1/train/53022.png +../../data/yoloGtold1/train/53023.png +../../data/yoloGtold1/train/53024.png +../../data/yoloGtold1/train/53025.png +../../data/yoloGtold1/train/53026.png +../../data/yoloGtold1/train/53027.png +../../data/yoloGtold1/train/53028.png +../../data/yoloGtold1/train/53029.png +../../data/yoloGtold1/train/53030.png +../../data/yoloGtold1/train/53031.png +../../data/yoloGtold1/train/53032.png +../../data/yoloGtold1/train/53033.png +../../data/yoloGtold1/train/53034.png +../../data/yoloGtold1/train/53035.png +../../data/yoloGtold1/train/53036.png +../../data/yoloGtold1/train/53037.png +../../data/yoloGtold1/train/53038.png +../../data/yoloGtold1/train/53039.png +../../data/yoloGtold1/train/53040.png +../../data/yoloGtold1/train/53041.png +../../data/yoloGtold1/train/53042.png +../../data/yoloGtold1/train/53043.png +../../data/yoloGtold1/train/53044.png +../../data/yoloGtold1/train/53045.png +../../data/yoloGtold1/train/53046.png +../../data/yoloGtold1/train/53047.png +../../data/yoloGtold1/train/53048.png +../../data/yoloGtold1/train/53049.png +../../data/yoloGtold1/train/53050.png +../../data/yoloGtold1/train/53051.png +../../data/yoloGtold1/train/53052.png +../../data/yoloGtold1/train/53053.png +../../data/yoloGtold1/train/53054.png +../../data/yoloGtold1/train/53055.png +../../data/yoloGtold1/train/53056.png +../../data/yoloGtold1/train/53057.png +../../data/yoloGtold1/train/53058.png +../../data/yoloGtold1/train/53059.png +../../data/yoloGtold1/train/53060.png +../../data/yoloGtold1/train/53061.png +../../data/yoloGtold1/train/53062.png +../../data/yoloGtold1/train/53063.png +../../data/yoloGtold1/train/53064.png +../../data/yoloGtold1/train/53065.png +../../data/yoloGtold1/train/53066.png +../../data/yoloGtold1/train/53067.png +../../data/yoloGtold1/train/53068.png +../../data/yoloGtold1/train/53069.png +../../data/yoloGtold1/train/53070.png +../../data/yoloGtold1/train/53071.png +../../data/yoloGtold1/train/53072.png +../../data/yoloGtold1/train/53073.png +../../data/yoloGtold1/train/53074.png +../../data/yoloGtold1/train/53075.png +../../data/yoloGtold1/train/53076.png +../../data/yoloGtold1/train/53077.png +../../data/yoloGtold1/train/53078.png +../../data/yoloGtold1/train/53079.png +../../data/yoloGtold1/train/53080.png +../../data/yoloGtold1/train/53081.png +../../data/yoloGtold1/train/53082.png +../../data/yoloGtold1/train/53083.png +../../data/yoloGtold1/train/53084.png +../../data/yoloGtold1/train/53085.png +../../data/yoloGtold1/train/53086.png +../../data/yoloGtold1/train/53087.png +../../data/yoloGtold1/train/53088.png +../../data/yoloGtold1/train/53089.png +../../data/yoloGtold1/train/53090.png +../../data/yoloGtold1/train/53091.png +../../data/yoloGtold1/train/53092.png +../../data/yoloGtold1/train/53093.png +../../data/yoloGtold1/train/53094.png +../../data/yoloGtold1/train/53095.png +../../data/yoloGtold1/train/53096.png +../../data/yoloGtold1/train/53097.png +../../data/yoloGtold1/train/53098.png +../../data/yoloGtold1/train/53099.png +../../data/yoloGtold1/train/53100.png +../../data/yoloGtold1/train/53101.png +../../data/yoloGtold1/train/53102.png +../../data/yoloGtold1/train/53103.png +../../data/yoloGtold1/train/53104.png +../../data/yoloGtold1/train/53105.png +../../data/yoloGtold1/train/53106.png +../../data/yoloGtold1/train/53107.png +../../data/yoloGtold1/train/53108.png +../../data/yoloGtold1/train/53109.png +../../data/yoloGtold1/train/53110.png +../../data/yoloGtold1/train/53111.png +../../data/yoloGtold1/train/53112.png +../../data/yoloGtold1/train/53113.png +../../data/yoloGtold1/train/53114.png +../../data/yoloGtold1/train/53115.png +../../data/yoloGtold1/train/53116.png +../../data/yoloGtold1/train/53117.png +../../data/yoloGtold1/train/53118.png +../../data/yoloGtold1/train/53119.png +../../data/yoloGtold1/train/53120.png +../../data/yoloGtold1/train/53121.png +../../data/yoloGtold1/train/53122.png +../../data/yoloGtold1/train/53123.png +../../data/yoloGtold1/train/53124.png +../../data/yoloGtold1/train/53125.png +../../data/yoloGtold1/train/53126.png +../../data/yoloGtold1/train/53127.png +../../data/yoloGtold1/train/53128.png +../../data/yoloGtold1/train/53129.png +../../data/yoloGtold1/train/53130.png +../../data/yoloGtold1/train/53131.png +../../data/yoloGtold1/train/53132.png +../../data/yoloGtold1/train/53133.png +../../data/yoloGtold1/train/53134.png +../../data/yoloGtold1/train/53135.png +../../data/yoloGtold1/train/53136.png +../../data/yoloGtold1/train/53137.png +../../data/yoloGtold1/train/53138.png +../../data/yoloGtold1/train/53139.png +../../data/yoloGtold1/train/53140.png +../../data/yoloGtold1/train/53141.png +../../data/yoloGtold1/train/53142.png +../../data/yoloGtold1/train/53143.png +../../data/yoloGtold1/train/53144.png +../../data/yoloGtold1/train/53145.png +../../data/yoloGtold1/train/53146.png +../../data/yoloGtold1/train/53147.png +../../data/yoloGtold1/train/53148.png +../../data/yoloGtold1/train/53149.png +../../data/yoloGtold1/train/53150.png +../../data/yoloGtold1/train/53151.png +../../data/yoloGtold1/train/53152.png +../../data/yoloGtold1/train/53153.png +../../data/yoloGtold1/train/53154.png +../../data/yoloGtold1/train/53155.png +../../data/yoloGtold1/train/53156.png +../../data/yoloGtold1/train/53157.png +../../data/yoloGtold1/train/53158.png +../../data/yoloGtold1/train/53159.png +../../data/yoloGtold1/train/53160.png +../../data/yoloGtold1/train/53161.png +../../data/yoloGtold1/train/53162.png +../../data/yoloGtold1/train/53163.png +../../data/yoloGtold1/train/53164.png +../../data/yoloGtold1/train/53165.png +../../data/yoloGtold1/train/53166.png +../../data/yoloGtold1/train/53167.png +../../data/yoloGtold1/train/53168.png +../../data/yoloGtold1/train/53169.png +../../data/yoloGtold1/train/53170.png +../../data/yoloGtold1/train/53171.png +../../data/yoloGtold1/train/53172.png +../../data/yoloGtold1/train/53173.png +../../data/yoloGtold1/train/53174.png +../../data/yoloGtold1/train/53175.png +../../data/yoloGtold1/train/53176.png +../../data/yoloGtold1/train/53177.png +../../data/yoloGtold1/train/53178.png +../../data/yoloGtold1/train/53179.png +../../data/yoloGtold1/train/53180.png +../../data/yoloGtold1/train/53181.png +../../data/yoloGtold1/train/53182.png +../../data/yoloGtold1/train/53183.png +../../data/yoloGtold1/train/53184.png +../../data/yoloGtold1/train/53185.png +../../data/yoloGtold1/train/53186.png +../../data/yoloGtold1/train/53187.png +../../data/yoloGtold1/train/53188.png +../../data/yoloGtold1/train/53189.png +../../data/yoloGtold1/train/53190.png +../../data/yoloGtold1/train/53191.png +../../data/yoloGtold1/train/53192.png +../../data/yoloGtold1/train/53193.png +../../data/yoloGtold1/train/53194.png +../../data/yoloGtold1/train/53195.png +../../data/yoloGtold1/train/53196.png +../../data/yoloGtold1/train/53197.png +../../data/yoloGtold1/train/53198.png +../../data/yoloGtold1/train/53199.png +../../data/yoloGtold1/train/53200.png +../../data/yoloGtold1/train/53201.png +../../data/yoloGtold1/train/53202.png +../../data/yoloGtold1/train/53203.png +../../data/yoloGtold1/train/53204.png +../../data/yoloGtold1/train/53205.png +../../data/yoloGtold1/train/53206.png +../../data/yoloGtold1/train/53207.png +../../data/yoloGtold1/train/53208.png +../../data/yoloGtold1/train/53209.png +../../data/yoloGtold1/train/53210.png +../../data/yoloGtold1/train/53211.png +../../data/yoloGtold1/train/53212.png +../../data/yoloGtold1/train/53213.png +../../data/yoloGtold1/train/53214.png +../../data/yoloGtold1/train/53215.png +../../data/yoloGtold1/train/53216.png +../../data/yoloGtold1/train/53217.png +../../data/yoloGtold1/train/53218.png +../../data/yoloGtold1/train/53219.png +../../data/yoloGtold1/train/53220.png +../../data/yoloGtold1/train/53221.png +../../data/yoloGtold1/train/53222.png +../../data/yoloGtold1/train/53223.png +../../data/yoloGtold1/train/53224.png +../../data/yoloGtold1/train/53225.png +../../data/yoloGtold1/train/53226.png +../../data/yoloGtold1/train/53227.png +../../data/yoloGtold1/train/53228.png +../../data/yoloGtold1/train/53229.png +../../data/yoloGtold1/train/53230.png +../../data/yoloGtold1/train/53231.png +../../data/yoloGtold1/train/53232.png +../../data/yoloGtold1/train/53233.png +../../data/yoloGtold1/train/53234.png +../../data/yoloGtold1/train/53235.png +../../data/yoloGtold1/train/53236.png +../../data/yoloGtold1/train/53237.png +../../data/yoloGtold1/train/53238.png +../../data/yoloGtold1/train/53239.png +../../data/yoloGtold1/train/53240.png +../../data/yoloGtold1/train/53241.png +../../data/yoloGtold1/train/53242.png +../../data/yoloGtold1/train/53243.png +../../data/yoloGtold1/train/53244.png +../../data/yoloGtold1/train/53245.png +../../data/yoloGtold1/train/53246.png +../../data/yoloGtold1/train/53247.png +../../data/yoloGtold1/train/53248.png +../../data/yoloGtold1/train/53249.png +../../data/yoloGtold1/train/53250.png +../../data/yoloGtold1/train/53251.png +../../data/yoloGtold1/train/53252.png +../../data/yoloGtold1/train/53253.png +../../data/yoloGtold1/train/53254.png +../../data/yoloGtold1/train/53255.png +../../data/yoloGtold1/train/53256.png +../../data/yoloGtold1/train/53257.png +../../data/yoloGtold1/train/53258.png +../../data/yoloGtold1/train/53259.png +../../data/yoloGtold1/train/53260.png +../../data/yoloGtold1/train/53261.png +../../data/yoloGtold1/train/53262.png +../../data/yoloGtold1/train/53263.png +../../data/yoloGtold1/train/53264.png +../../data/yoloGtold1/train/53265.png +../../data/yoloGtold1/train/53266.png +../../data/yoloGtold1/train/53267.png +../../data/yoloGtold1/train/53268.png +../../data/yoloGtold1/train/53269.png +../../data/yoloGtold1/train/53270.png +../../data/yoloGtold1/train/53271.png +../../data/yoloGtold1/train/53272.png +../../data/yoloGtold1/train/53273.png +../../data/yoloGtold1/train/53274.png +../../data/yoloGtold1/train/53275.png +../../data/yoloGtold1/train/53276.png +../../data/yoloGtold1/train/53277.png +../../data/yoloGtold1/train/53278.png +../../data/yoloGtold1/train/53279.png +../../data/yoloGtold1/train/53280.png +../../data/yoloGtold1/train/53281.png +../../data/yoloGtold1/train/53282.png +../../data/yoloGtold1/train/53283.png +../../data/yoloGtold1/train/53284.png +../../data/yoloGtold1/train/53285.png +../../data/yoloGtold1/train/53286.png +../../data/yoloGtold1/train/53287.png +../../data/yoloGtold1/train/53288.png +../../data/yoloGtold1/train/53289.png +../../data/yoloGtold1/train/53290.png +../../data/yoloGtold1/train/53291.png +../../data/yoloGtold1/train/53292.png +../../data/yoloGtold1/train/53293.png +../../data/yoloGtold1/train/53294.png +../../data/yoloGtold1/train/53295.png +../../data/yoloGtold1/train/53296.png +../../data/yoloGtold1/train/53297.png +../../data/yoloGtold1/train/53298.png +../../data/yoloGtold1/train/53299.png +../../data/yoloGtold1/train/53300.png +../../data/yoloGtold1/train/53301.png +../../data/yoloGtold1/train/53302.png +../../data/yoloGtold1/train/53303.png +../../data/yoloGtold1/train/53304.png +../../data/yoloGtold1/train/53305.png +../../data/yoloGtold1/train/53306.png +../../data/yoloGtold1/train/53307.png +../../data/yoloGtold1/train/53308.png +../../data/yoloGtold1/train/53309.png +../../data/yoloGtold1/train/53310.png +../../data/yoloGtold1/train/53311.png +../../data/yoloGtold1/train/53312.png +../../data/yoloGtold1/train/53313.png +../../data/yoloGtold1/train/53314.png +../../data/yoloGtold1/train/53315.png +../../data/yoloGtold1/train/53316.png +../../data/yoloGtold1/train/53317.png +../../data/yoloGtold1/train/53318.png +../../data/yoloGtold1/train/53319.png +../../data/yoloGtold1/train/53320.png +../../data/yoloGtold1/train/53321.png +../../data/yoloGtold1/train/53322.png +../../data/yoloGtold1/train/53323.png +../../data/yoloGtold1/train/53324.png +../../data/yoloGtold1/train/53325.png +../../data/yoloGtold1/train/53326.png +../../data/yoloGtold1/train/53327.png +../../data/yoloGtold1/train/53328.png +../../data/yoloGtold1/train/53329.png +../../data/yoloGtold1/train/53330.png +../../data/yoloGtold1/train/53331.png +../../data/yoloGtold1/train/53332.png +../../data/yoloGtold1/train/53333.png +../../data/yoloGtold1/train/53334.png +../../data/yoloGtold1/train/53335.png +../../data/yoloGtold1/train/53336.png +../../data/yoloGtold1/train/53337.png +../../data/yoloGtold1/train/53338.png +../../data/yoloGtold1/train/53339.png +../../data/yoloGtold1/train/53340.png +../../data/yoloGtold1/train/53341.png +../../data/yoloGtold1/train/53342.png +../../data/yoloGtold1/train/53343.png +../../data/yoloGtold1/train/53344.png +../../data/yoloGtold1/train/53345.png +../../data/yoloGtold1/train/53346.png +../../data/yoloGtold1/train/53347.png +../../data/yoloGtold1/train/53348.png +../../data/yoloGtold1/train/53349.png +../../data/yoloGtold1/train/53350.png +../../data/yoloGtold1/train/53351.png +../../data/yoloGtold1/train/53352.png +../../data/yoloGtold1/train/53353.png +../../data/yoloGtold1/train/53354.png +../../data/yoloGtold1/train/53355.png +../../data/yoloGtold1/train/53356.png +../../data/yoloGtold1/train/53357.png +../../data/yoloGtold1/train/53358.png +../../data/yoloGtold1/train/53359.png +../../data/yoloGtold1/train/53360.png +../../data/yoloGtold1/train/53361.png +../../data/yoloGtold1/train/53362.png +../../data/yoloGtold1/train/53363.png +../../data/yoloGtold1/train/53364.png +../../data/yoloGtold1/train/53365.png +../../data/yoloGtold1/train/53366.png +../../data/yoloGtold1/train/53367.png +../../data/yoloGtold1/train/53368.png +../../data/yoloGtold1/train/53369.png +../../data/yoloGtold1/train/53370.png +../../data/yoloGtold1/train/53371.png +../../data/yoloGtold1/train/53372.png +../../data/yoloGtold1/train/53373.png +../../data/yoloGtold1/train/53374.png +../../data/yoloGtold1/train/53375.png +../../data/yoloGtold1/train/53376.png +../../data/yoloGtold1/train/53377.png +../../data/yoloGtold1/train/53378.png +../../data/yoloGtold1/train/53379.png +../../data/yoloGtold1/train/53380.png +../../data/yoloGtold1/train/53381.png +../../data/yoloGtold1/train/53382.png +../../data/yoloGtold1/train/53383.png +../../data/yoloGtold1/train/53384.png +../../data/yoloGtold1/train/53385.png +../../data/yoloGtold1/train/53386.png +../../data/yoloGtold1/train/53387.png +../../data/yoloGtold1/train/53388.png +../../data/yoloGtold1/train/53389.png +../../data/yoloGtold1/train/53390.png +../../data/yoloGtold1/train/53391.png +../../data/yoloGtold1/train/53392.png +../../data/yoloGtold1/train/53393.png +../../data/yoloGtold1/train/53394.png +../../data/yoloGtold1/train/53395.png +../../data/yoloGtold1/train/53396.png +../../data/yoloGtold1/train/53397.png +../../data/yoloGtold1/train/53398.png +../../data/yoloGtold1/train/53399.png +../../data/yoloGtold1/train/53400.png +../../data/yoloGtold1/train/53401.png +../../data/yoloGtold1/train/53402.png +../../data/yoloGtold1/train/53403.png +../../data/yoloGtold1/train/53404.png +../../data/yoloGtold1/train/53405.png +../../data/yoloGtold1/train/53406.png +../../data/yoloGtold1/train/53407.png +../../data/yoloGtold1/train/53408.png +../../data/yoloGtold1/train/53409.png +../../data/yoloGtold1/train/53410.png +../../data/yoloGtold1/train/53411.png +../../data/yoloGtold1/train/53412.png +../../data/yoloGtold1/train/53413.png +../../data/yoloGtold1/train/53414.png +../../data/yoloGtold1/train/53415.png +../../data/yoloGtold1/train/53416.png +../../data/yoloGtold1/train/53417.png +../../data/yoloGtold1/train/53418.png +../../data/yoloGtold1/train/53419.png +../../data/yoloGtold1/train/53420.png +../../data/yoloGtold1/train/53421.png +../../data/yoloGtold1/train/53422.png +../../data/yoloGtold1/train/53423.png +../../data/yoloGtold1/train/53424.png +../../data/yoloGtold1/train/53425.png +../../data/yoloGtold1/train/53426.png +../../data/yoloGtold1/train/53427.png +../../data/yoloGtold1/train/53428.png +../../data/yoloGtold1/train/53429.png +../../data/yoloGtold1/train/53430.png +../../data/yoloGtold1/train/53431.png +../../data/yoloGtold1/train/53432.png +../../data/yoloGtold1/train/53433.png +../../data/yoloGtold1/train/53434.png +../../data/yoloGtold1/train/53435.png +../../data/yoloGtold1/train/53436.png +../../data/yoloGtold1/train/53437.png +../../data/yoloGtold1/train/53438.png +../../data/yoloGtold1/train/53439.png +../../data/yoloGtold1/train/53440.png +../../data/yoloGtold1/train/53441.png +../../data/yoloGtold1/train/53442.png +../../data/yoloGtold1/train/53443.png +../../data/yoloGtold1/train/53444.png +../../data/yoloGtold1/train/53445.png +../../data/yoloGtold1/train/53446.png +../../data/yoloGtold1/train/53447.png +../../data/yoloGtold1/train/53448.png +../../data/yoloGtold1/train/53449.png +../../data/yoloGtold1/train/53450.png +../../data/yoloGtold1/train/53451.png +../../data/yoloGtold1/train/53452.png +../../data/yoloGtold1/train/53453.png +../../data/yoloGtold1/train/53454.png +../../data/yoloGtold1/train/53455.png +../../data/yoloGtold1/train/53456.png +../../data/yoloGtold1/train/53457.png +../../data/yoloGtold1/train/53458.png +../../data/yoloGtold1/train/53459.png +../../data/yoloGtold1/train/53460.png +../../data/yoloGtold1/train/53461.png +../../data/yoloGtold1/train/53462.png +../../data/yoloGtold1/train/53463.png +../../data/yoloGtold1/train/53464.png +../../data/yoloGtold1/train/53465.png +../../data/yoloGtold1/train/53466.png +../../data/yoloGtold1/train/53467.png +../../data/yoloGtold1/train/53468.png +../../data/yoloGtold1/train/53469.png +../../data/yoloGtold1/train/53470.png +../../data/yoloGtold1/train/53471.png +../../data/yoloGtold1/train/53472.png +../../data/yoloGtold1/train/53473.png +../../data/yoloGtold1/train/53474.png +../../data/yoloGtold1/train/53475.png +../../data/yoloGtold1/train/53476.png +../../data/yoloGtold1/train/53477.png +../../data/yoloGtold1/train/53478.png +../../data/yoloGtold1/train/53479.png +../../data/yoloGtold1/train/53480.png +../../data/yoloGtold1/train/53481.png +../../data/yoloGtold1/train/53482.png +../../data/yoloGtold1/train/53483.png +../../data/yoloGtold1/train/53484.png +../../data/yoloGtold1/train/53485.png +../../data/yoloGtold1/train/53486.png +../../data/yoloGtold1/train/53487.png +../../data/yoloGtold1/train/53488.png +../../data/yoloGtold1/train/53489.png +../../data/yoloGtold1/train/53490.png +../../data/yoloGtold1/train/53491.png +../../data/yoloGtold1/train/53492.png +../../data/yoloGtold1/train/53493.png +../../data/yoloGtold1/train/53494.png +../../data/yoloGtold1/train/53495.png +../../data/yoloGtold1/train/53496.png +../../data/yoloGtold1/train/53497.png +../../data/yoloGtold1/train/53498.png +../../data/yoloGtold1/train/53499.png +../../data/yoloGtold1/train/53500.png +../../data/yoloGtold1/train/53501.png +../../data/yoloGtold1/train/53502.png +../../data/yoloGtold1/train/53503.png +../../data/yoloGtold1/train/53504.png +../../data/yoloGtold1/train/53505.png +../../data/yoloGtold1/train/53506.png +../../data/yoloGtold1/train/53507.png +../../data/yoloGtold1/train/53508.png +../../data/yoloGtold1/train/53509.png +../../data/yoloGtold1/train/53510.png +../../data/yoloGtold1/train/53511.png +../../data/yoloGtold1/train/53512.png +../../data/yoloGtold1/train/53513.png +../../data/yoloGtold1/train/53514.png +../../data/yoloGtold1/train/53515.png +../../data/yoloGtold1/train/53516.png +../../data/yoloGtold1/train/53517.png +../../data/yoloGtold1/train/53518.png +../../data/yoloGtold1/train/53519.png +../../data/yoloGtold1/train/53520.png +../../data/yoloGtold1/train/53521.png +../../data/yoloGtold1/train/53522.png +../../data/yoloGtold1/train/53523.png +../../data/yoloGtold1/train/53524.png +../../data/yoloGtold1/train/53525.png +../../data/yoloGtold1/train/53526.png +../../data/yoloGtold1/train/53527.png +../../data/yoloGtold1/train/53528.png +../../data/yoloGtold1/train/53529.png +../../data/yoloGtold1/train/53530.png +../../data/yoloGtold1/train/53531.png +../../data/yoloGtold1/train/53532.png +../../data/yoloGtold1/train/53533.png +../../data/yoloGtold1/train/53534.png +../../data/yoloGtold1/train/53535.png +../../data/yoloGtold1/train/53536.png +../../data/yoloGtold1/train/53537.png +../../data/yoloGtold1/train/53538.png +../../data/yoloGtold1/train/53539.png +../../data/yoloGtold1/train/53540.png +../../data/yoloGtold1/train/53541.png +../../data/yoloGtold1/train/53542.png +../../data/yoloGtold1/train/53543.png +../../data/yoloGtold1/train/53544.png +../../data/yoloGtold1/train/53545.png +../../data/yoloGtold1/train/53546.png +../../data/yoloGtold1/train/53547.png +../../data/yoloGtold1/train/53548.png +../../data/yoloGtold1/train/53549.png +../../data/yoloGtold1/train/53550.png +../../data/yoloGtold1/train/53551.png +../../data/yoloGtold1/train/53552.png +../../data/yoloGtold1/train/53553.png +../../data/yoloGtold1/train/53554.png +../../data/yoloGtold1/train/53555.png +../../data/yoloGtold1/train/53556.png +../../data/yoloGtold1/train/53557.png +../../data/yoloGtold1/train/53558.png +../../data/yoloGtold1/train/53559.png +../../data/yoloGtold1/train/53560.png +../../data/yoloGtold1/train/53561.png +../../data/yoloGtold1/train/53562.png +../../data/yoloGtold1/train/53563.png +../../data/yoloGtold1/train/53564.png +../../data/yoloGtold1/train/53565.png +../../data/yoloGtold1/train/53566.png +../../data/yoloGtold1/train/53567.png +../../data/yoloGtold1/train/53568.png +../../data/yoloGtold1/train/53569.png +../../data/yoloGtold1/train/53570.png +../../data/yoloGtold1/train/53571.png +../../data/yoloGtold1/train/53572.png +../../data/yoloGtold1/train/53573.png +../../data/yoloGtold1/train/53574.png +../../data/yoloGtold1/train/53575.png +../../data/yoloGtold1/train/53576.png +../../data/yoloGtold1/train/53577.png +../../data/yoloGtold1/train/53578.png +../../data/yoloGtold1/train/53579.png +../../data/yoloGtold1/train/53580.png +../../data/yoloGtold1/train/53581.png +../../data/yoloGtold1/train/53582.png +../../data/yoloGtold1/train/53583.png +../../data/yoloGtold1/train/53584.png +../../data/yoloGtold1/train/53585.png +../../data/yoloGtold1/train/53586.png +../../data/yoloGtold1/train/53587.png +../../data/yoloGtold1/train/53588.png +../../data/yoloGtold1/train/53589.png +../../data/yoloGtold1/train/53590.png +../../data/yoloGtold1/train/53591.png +../../data/yoloGtold1/train/53592.png +../../data/yoloGtold1/train/53593.png +../../data/yoloGtold1/train/53594.png +../../data/yoloGtold1/train/53595.png +../../data/yoloGtold1/train/53596.png +../../data/yoloGtold1/train/53597.png +../../data/yoloGtold1/train/53598.png +../../data/yoloGtold1/train/53599.png +../../data/yoloGtold1/train/53600.png +../../data/yoloGtold1/train/53601.png +../../data/yoloGtold1/train/53602.png +../../data/yoloGtold1/train/53603.png +../../data/yoloGtold1/train/53604.png +../../data/yoloGtold1/train/53605.png +../../data/yoloGtold1/train/53606.png +../../data/yoloGtold1/train/53607.png +../../data/yoloGtold1/train/53608.png +../../data/yoloGtold1/train/53609.png +../../data/yoloGtold1/train/53610.png +../../data/yoloGtold1/train/53611.png +../../data/yoloGtold1/train/53612.png +../../data/yoloGtold1/train/53613.png +../../data/yoloGtold1/train/53614.png +../../data/yoloGtold1/train/53615.png +../../data/yoloGtold1/train/53616.png +../../data/yoloGtold1/train/53617.png +../../data/yoloGtold1/train/53618.png +../../data/yoloGtold1/train/53619.png +../../data/yoloGtold1/train/53620.png +../../data/yoloGtold1/train/53621.png +../../data/yoloGtold1/train/53622.png +../../data/yoloGtold1/train/53623.png +../../data/yoloGtold1/train/53624.png +../../data/yoloGtold1/train/53625.png +../../data/yoloGtold1/train/53626.png +../../data/yoloGtold1/train/53627.png +../../data/yoloGtold1/train/53628.png +../../data/yoloGtold1/train/53629.png +../../data/yoloGtold1/train/53630.png +../../data/yoloGtold1/train/53631.png +../../data/yoloGtold1/train/53632.png +../../data/yoloGtold1/train/53633.png +../../data/yoloGtold1/train/53634.png +../../data/yoloGtold1/train/53635.png +../../data/yoloGtold1/train/53636.png +../../data/yoloGtold1/train/53637.png +../../data/yoloGtold1/train/53638.png +../../data/yoloGtold1/train/53639.png +../../data/yoloGtold1/train/53640.png +../../data/yoloGtold1/train/53641.png +../../data/yoloGtold1/train/53642.png +../../data/yoloGtold1/train/53643.png +../../data/yoloGtold1/train/53644.png +../../data/yoloGtold1/train/53645.png +../../data/yoloGtold1/train/53646.png +../../data/yoloGtold1/train/53647.png +../../data/yoloGtold1/train/53648.png +../../data/yoloGtold1/train/53649.png +../../data/yoloGtold1/train/53650.png +../../data/yoloGtold1/train/53651.png +../../data/yoloGtold1/train/53652.png +../../data/yoloGtold1/train/53653.png +../../data/yoloGtold1/train/53654.png +../../data/yoloGtold1/train/53655.png +../../data/yoloGtold1/train/53656.png +../../data/yoloGtold1/train/53657.png +../../data/yoloGtold1/train/53658.png +../../data/yoloGtold1/train/53659.png +../../data/yoloGtold1/train/53660.png +../../data/yoloGtold1/train/53661.png +../../data/yoloGtold1/train/53662.png +../../data/yoloGtold1/train/53663.png +../../data/yoloGtold1/train/53664.png +../../data/yoloGtold1/train/53665.png +../../data/yoloGtold1/train/53666.png +../../data/yoloGtold1/train/53667.png +../../data/yoloGtold1/train/53668.png +../../data/yoloGtold1/train/53669.png +../../data/yoloGtold1/train/53670.png +../../data/yoloGtold1/train/53671.png +../../data/yoloGtold1/train/53672.png +../../data/yoloGtold1/train/53673.png +../../data/yoloGtold1/train/53674.png +../../data/yoloGtold1/train/53675.png +../../data/yoloGtold1/train/53676.png +../../data/yoloGtold1/train/53677.png +../../data/yoloGtold1/train/53678.png +../../data/yoloGtold1/train/53679.png +../../data/yoloGtold1/train/53680.png +../../data/yoloGtold1/train/53681.png +../../data/yoloGtold1/train/53682.png +../../data/yoloGtold1/train/53683.png +../../data/yoloGtold1/train/53684.png +../../data/yoloGtold1/train/53685.png +../../data/yoloGtold1/train/53686.png +../../data/yoloGtold1/train/53687.png +../../data/yoloGtold1/train/53688.png +../../data/yoloGtold1/train/53689.png +../../data/yoloGtold1/train/53690.png +../../data/yoloGtold1/train/53691.png +../../data/yoloGtold1/train/53692.png +../../data/yoloGtold1/train/53693.png +../../data/yoloGtold1/train/53694.png +../../data/yoloGtold1/train/53695.png +../../data/yoloGtold1/train/53696.png +../../data/yoloGtold1/train/53697.png +../../data/yoloGtold1/train/53698.png +../../data/yoloGtold1/train/53699.png +../../data/yoloGtold1/train/53700.png +../../data/yoloGtold1/train/53701.png +../../data/yoloGtold1/train/53702.png +../../data/yoloGtold1/train/53703.png +../../data/yoloGtold1/train/53704.png +../../data/yoloGtold1/train/53705.png +../../data/yoloGtold1/train/53706.png +../../data/yoloGtold1/train/53707.png +../../data/yoloGtold1/train/53708.png +../../data/yoloGtold1/train/53709.png +../../data/yoloGtold1/train/53710.png +../../data/yoloGtold1/train/53711.png +../../data/yoloGtold1/train/53712.png +../../data/yoloGtold1/train/53713.png +../../data/yoloGtold1/train/53714.png +../../data/yoloGtold1/train/53715.png +../../data/yoloGtold1/train/53716.png +../../data/yoloGtold1/train/53717.png +../../data/yoloGtold1/train/53718.png +../../data/yoloGtold1/train/53719.png +../../data/yoloGtold1/train/53720.png +../../data/yoloGtold1/train/53721.png +../../data/yoloGtold1/train/53722.png +../../data/yoloGtold1/train/53723.png +../../data/yoloGtold1/train/53724.png +../../data/yoloGtold1/train/53725.png +../../data/yoloGtold1/train/53726.png +../../data/yoloGtold1/train/53727.png +../../data/yoloGtold1/train/53728.png +../../data/yoloGtold1/train/53729.png +../../data/yoloGtold1/train/53730.png +../../data/yoloGtold1/train/53731.png +../../data/yoloGtold1/train/53732.png +../../data/yoloGtold1/train/53733.png +../../data/yoloGtold1/train/53734.png +../../data/yoloGtold1/train/53735.png +../../data/yoloGtold1/train/53736.png +../../data/yoloGtold1/train/53737.png +../../data/yoloGtold1/train/53738.png +../../data/yoloGtold1/train/53739.png +../../data/yoloGtold1/train/53740.png +../../data/yoloGtold1/train/53741.png +../../data/yoloGtold1/train/53742.png +../../data/yoloGtold1/train/53743.png +../../data/yoloGtold1/train/53744.png +../../data/yoloGtold1/train/53745.png +../../data/yoloGtold1/train/53746.png +../../data/yoloGtold1/train/53747.png +../../data/yoloGtold1/train/53748.png +../../data/yoloGtold1/train/53749.png +../../data/yoloGtold1/train/53750.png +../../data/yoloGtold1/train/53751.png +../../data/yoloGtold1/train/53752.png +../../data/yoloGtold1/train/53753.png +../../data/yoloGtold1/train/53754.png +../../data/yoloGtold1/train/53755.png +../../data/yoloGtold1/train/53756.png +../../data/yoloGtold1/train/53757.png +../../data/yoloGtold1/train/53758.png +../../data/yoloGtold1/train/53759.png +../../data/yoloGtold1/train/53760.png +../../data/yoloGtold1/train/53761.png +../../data/yoloGtold1/train/53762.png +../../data/yoloGtold1/train/53763.png +../../data/yoloGtold1/train/53764.png +../../data/yoloGtold1/train/53765.png +../../data/yoloGtold1/train/53766.png +../../data/yoloGtold1/train/53767.png +../../data/yoloGtold1/train/53768.png +../../data/yoloGtold1/train/53769.png +../../data/yoloGtold1/train/53770.png +../../data/yoloGtold1/train/53771.png +../../data/yoloGtold1/train/53772.png +../../data/yoloGtold1/train/53773.png +../../data/yoloGtold1/train/53774.png +../../data/yoloGtold1/train/53775.png +../../data/yoloGtold1/train/53776.png +../../data/yoloGtold1/train/53777.png +../../data/yoloGtold1/train/53778.png +../../data/yoloGtold1/train/53779.png +../../data/yoloGtold1/train/53780.png +../../data/yoloGtold1/train/53781.png +../../data/yoloGtold1/train/53782.png +../../data/yoloGtold1/train/53783.png +../../data/yoloGtold1/train/53784.png +../../data/yoloGtold1/train/53785.png +../../data/yoloGtold1/train/53786.png +../../data/yoloGtold1/train/53787.png +../../data/yoloGtold1/train/53788.png +../../data/yoloGtold1/train/53789.png +../../data/yoloGtold1/train/53790.png +../../data/yoloGtold1/train/53791.png +../../data/yoloGtold1/train/53792.png +../../data/yoloGtold1/train/53793.png +../../data/yoloGtold1/train/53794.png +../../data/yoloGtold1/train/53795.png +../../data/yoloGtold1/train/53796.png +../../data/yoloGtold1/train/53797.png +../../data/yoloGtold1/train/53798.png +../../data/yoloGtold1/train/53799.png +../../data/yoloGtold1/train/53800.png +../../data/yoloGtold1/train/53801.png +../../data/yoloGtold1/train/53802.png +../../data/yoloGtold1/train/53803.png +../../data/yoloGtold1/train/53804.png +../../data/yoloGtold1/train/53805.png +../../data/yoloGtold1/train/53806.png +../../data/yoloGtold1/train/53807.png +../../data/yoloGtold1/train/53808.png +../../data/yoloGtold1/train/53809.png +../../data/yoloGtold1/train/53810.png +../../data/yoloGtold1/train/53811.png +../../data/yoloGtold1/train/53812.png +../../data/yoloGtold1/train/53813.png +../../data/yoloGtold1/train/53814.png +../../data/yoloGtold1/train/53815.png +../../data/yoloGtold1/train/53816.png +../../data/yoloGtold1/train/53817.png +../../data/yoloGtold1/train/53818.png +../../data/yoloGtold1/train/53819.png +../../data/yoloGtold1/train/53820.png +../../data/yoloGtold1/train/53821.png +../../data/yoloGtold1/train/53822.png +../../data/yoloGtold1/train/53823.png +../../data/yoloGtold1/train/53824.png +../../data/yoloGtold1/train/53825.png +../../data/yoloGtold1/train/53826.png +../../data/yoloGtold1/train/53827.png +../../data/yoloGtold1/train/53828.png +../../data/yoloGtold1/train/53829.png +../../data/yoloGtold1/train/53830.png +../../data/yoloGtold1/train/53831.png +../../data/yoloGtold1/train/53832.png +../../data/yoloGtold1/train/53833.png +../../data/yoloGtold1/train/53834.png +../../data/yoloGtold1/train/53835.png +../../data/yoloGtold1/train/53836.png +../../data/yoloGtold1/train/53837.png +../../data/yoloGtold1/train/53838.png +../../data/yoloGtold1/train/53839.png +../../data/yoloGtold1/train/53840.png +../../data/yoloGtold1/train/53841.png +../../data/yoloGtold1/train/53842.png +../../data/yoloGtold1/train/53843.png +../../data/yoloGtold1/train/53844.png +../../data/yoloGtold1/train/53845.png +../../data/yoloGtold1/train/53846.png +../../data/yoloGtold1/train/53847.png +../../data/yoloGtold1/train/53848.png +../../data/yoloGtold1/train/53849.png +../../data/yoloGtold1/train/53850.png +../../data/yoloGtold1/train/53851.png +../../data/yoloGtold1/train/53852.png +../../data/yoloGtold1/train/53853.png +../../data/yoloGtold1/train/53854.png +../../data/yoloGtold1/train/53855.png +../../data/yoloGtold1/train/53856.png +../../data/yoloGtold1/train/53857.png +../../data/yoloGtold1/train/53858.png +../../data/yoloGtold1/train/53859.png +../../data/yoloGtold1/train/53860.png +../../data/yoloGtold1/train/53861.png +../../data/yoloGtold1/train/53862.png +../../data/yoloGtold1/train/53863.png +../../data/yoloGtold1/train/53864.png +../../data/yoloGtold1/train/53865.png +../../data/yoloGtold1/train/53866.png +../../data/yoloGtold1/train/53867.png +../../data/yoloGtold1/train/53868.png +../../data/yoloGtold1/train/53869.png +../../data/yoloGtold1/train/53870.png +../../data/yoloGtold1/train/53871.png +../../data/yoloGtold1/train/53872.png +../../data/yoloGtold1/train/53873.png +../../data/yoloGtold1/train/53874.png +../../data/yoloGtold1/train/53875.png +../../data/yoloGtold1/train/53876.png +../../data/yoloGtold1/train/53877.png +../../data/yoloGtold1/train/53878.png +../../data/yoloGtold1/train/53879.png +../../data/yoloGtold1/train/53880.png +../../data/yoloGtold1/train/53881.png +../../data/yoloGtold1/train/53882.png +../../data/yoloGtold1/train/53883.png +../../data/yoloGtold1/train/53884.png +../../data/yoloGtold1/train/53885.png +../../data/yoloGtold1/train/53886.png +../../data/yoloGtold1/train/53887.png +../../data/yoloGtold1/train/53888.png +../../data/yoloGtold1/train/53889.png +../../data/yoloGtold1/train/53890.png +../../data/yoloGtold1/train/53891.png +../../data/yoloGtold1/train/53892.png +../../data/yoloGtold1/train/53893.png +../../data/yoloGtold1/train/53894.png +../../data/yoloGtold1/train/53895.png +../../data/yoloGtold1/train/53896.png +../../data/yoloGtold1/train/53897.png +../../data/yoloGtold1/train/53898.png +../../data/yoloGtold1/train/53899.png +../../data/yoloGtold1/train/53900.png +../../data/yoloGtold1/train/53901.png +../../data/yoloGtold1/train/53902.png +../../data/yoloGtold1/train/53903.png +../../data/yoloGtold1/train/53904.png +../../data/yoloGtold1/train/53905.png +../../data/yoloGtold1/train/53906.png +../../data/yoloGtold1/train/53907.png +../../data/yoloGtold1/train/53908.png +../../data/yoloGtold1/train/53909.png +../../data/yoloGtold1/train/53910.png +../../data/yoloGtold1/train/53911.png +../../data/yoloGtold1/train/53912.png +../../data/yoloGtold1/train/53913.png +../../data/yoloGtold1/train/53914.png +../../data/yoloGtold1/train/53915.png +../../data/yoloGtold1/train/53916.png +../../data/yoloGtold1/train/53917.png +../../data/yoloGtold1/train/53918.png +../../data/yoloGtold1/train/53919.png +../../data/yoloGtold1/train/53920.png +../../data/yoloGtold1/train/53921.png +../../data/yoloGtold1/train/53922.png +../../data/yoloGtold1/train/53923.png +../../data/yoloGtold1/train/53924.png +../../data/yoloGtold1/train/53925.png +../../data/yoloGtold1/train/53926.png +../../data/yoloGtold1/train/53927.png +../../data/yoloGtold1/train/53928.png +../../data/yoloGtold1/train/53929.png +../../data/yoloGtold1/train/53930.png +../../data/yoloGtold1/train/53931.png +../../data/yoloGtold1/train/53932.png +../../data/yoloGtold1/train/53933.png +../../data/yoloGtold1/train/53934.png +../../data/yoloGtold1/train/53935.png +../../data/yoloGtold1/train/53936.png +../../data/yoloGtold1/train/53937.png +../../data/yoloGtold1/train/53938.png +../../data/yoloGtold1/train/53939.png +../../data/yoloGtold1/train/53940.png +../../data/yoloGtold1/train/53941.png +../../data/yoloGtold1/train/53942.png +../../data/yoloGtold1/train/53943.png +../../data/yoloGtold1/train/53944.png +../../data/yoloGtold1/train/53945.png +../../data/yoloGtold1/train/53946.png +../../data/yoloGtold1/train/53947.png +../../data/yoloGtold1/train/53948.png +../../data/yoloGtold1/train/53949.png +../../data/yoloGtold1/train/53950.png +../../data/yoloGtold1/train/53951.png +../../data/yoloGtold1/train/53952.png +../../data/yoloGtold1/train/53953.png +../../data/yoloGtold1/train/53954.png +../../data/yoloGtold1/train/53955.png +../../data/yoloGtold1/train/53956.png +../../data/yoloGtold1/train/53957.png +../../data/yoloGtold1/train/53958.png +../../data/yoloGtold1/train/53959.png +../../data/yoloGtold1/train/53960.png +../../data/yoloGtold1/train/53961.png +../../data/yoloGtold1/train/53962.png +../../data/yoloGtold1/train/53963.png +../../data/yoloGtold1/train/53964.png +../../data/yoloGtold1/train/53965.png +../../data/yoloGtold1/train/53966.png +../../data/yoloGtold1/train/53967.png +../../data/yoloGtold1/train/53968.png +../../data/yoloGtold1/train/53969.png +../../data/yoloGtold1/train/53970.png +../../data/yoloGtold1/train/53971.png +../../data/yoloGtold1/train/53972.png +../../data/yoloGtold1/train/53973.png +../../data/yoloGtold1/train/53974.png +../../data/yoloGtold1/train/53975.png +../../data/yoloGtold1/train/53976.png +../../data/yoloGtold1/train/53977.png +../../data/yoloGtold1/train/53978.png +../../data/yoloGtold1/train/53979.png +../../data/yoloGtold1/train/53980.png +../../data/yoloGtold1/train/53981.png +../../data/yoloGtold1/train/53982.png +../../data/yoloGtold1/train/53983.png +../../data/yoloGtold1/train/53984.png +../../data/yoloGtold1/train/53985.png +../../data/yoloGtold1/train/53986.png +../../data/yoloGtold1/train/53987.png +../../data/yoloGtold1/train/53988.png +../../data/yoloGtold1/train/53989.png +../../data/yoloGtold1/train/53990.png +../../data/yoloGtold1/train/53991.png +../../data/yoloGtold1/train/53992.png +../../data/yoloGtold1/train/53993.png +../../data/yoloGtold1/train/53994.png +../../data/yoloGtold1/train/53995.png +../../data/yoloGtold1/train/53996.png +../../data/yoloGtold1/train/53997.png +../../data/yoloGtold1/train/53998.png +../../data/yoloGtold1/train/53999.png +../../data/yoloGtold1/train/54000.png +../../data/yoloGtold1/train/54001.png +../../data/yoloGtold1/train/54002.png +../../data/yoloGtold1/train/54003.png +../../data/yoloGtold1/train/54004.png +../../data/yoloGtold1/train/54005.png +../../data/yoloGtold1/train/54006.png +../../data/yoloGtold1/train/54007.png +../../data/yoloGtold1/train/54008.png +../../data/yoloGtold1/train/54009.png +../../data/yoloGtold1/train/54010.png +../../data/yoloGtold1/train/54011.png +../../data/yoloGtold1/train/54012.png +../../data/yoloGtold1/train/54013.png +../../data/yoloGtold1/train/54014.png +../../data/yoloGtold1/train/54015.png +../../data/yoloGtold1/train/54016.png +../../data/yoloGtold1/train/54017.png +../../data/yoloGtold1/train/54018.png +../../data/yoloGtold1/train/54019.png +../../data/yoloGtold1/train/54020.png +../../data/yoloGtold1/train/54021.png +../../data/yoloGtold1/train/54022.png +../../data/yoloGtold1/train/54023.png +../../data/yoloGtold1/train/54024.png +../../data/yoloGtold1/train/54025.png +../../data/yoloGtold1/train/54026.png +../../data/yoloGtold1/train/54027.png +../../data/yoloGtold1/train/54028.png +../../data/yoloGtold1/train/54029.png +../../data/yoloGtold1/train/54030.png +../../data/yoloGtold1/train/54031.png +../../data/yoloGtold1/train/54032.png +../../data/yoloGtold1/train/54033.png +../../data/yoloGtold1/train/54034.png +../../data/yoloGtold1/train/54035.png +../../data/yoloGtold1/train/54036.png +../../data/yoloGtold1/train/54037.png +../../data/yoloGtold1/train/54038.png +../../data/yoloGtold1/train/54039.png +../../data/yoloGtold1/train/54040.png +../../data/yoloGtold1/train/54041.png +../../data/yoloGtold1/train/54042.png +../../data/yoloGtold1/train/54043.png +../../data/yoloGtold1/train/54044.png +../../data/yoloGtold1/train/54045.png +../../data/yoloGtold1/train/54046.png +../../data/yoloGtold1/train/54047.png +../../data/yoloGtold1/train/54048.png +../../data/yoloGtold1/train/54049.png +../../data/yoloGtold1/train/54050.png +../../data/yoloGtold1/train/54051.png +../../data/yoloGtold1/train/54052.png +../../data/yoloGtold1/train/54053.png +../../data/yoloGtold1/train/54054.png +../../data/yoloGtold1/train/54055.png +../../data/yoloGtold1/train/54056.png +../../data/yoloGtold1/train/54057.png +../../data/yoloGtold1/train/54058.png +../../data/yoloGtold1/train/54059.png +../../data/yoloGtold1/train/54060.png +../../data/yoloGtold1/train/54061.png +../../data/yoloGtold1/train/54062.png +../../data/yoloGtold1/train/54063.png +../../data/yoloGtold1/train/54064.png +../../data/yoloGtold1/train/54065.png +../../data/yoloGtold1/train/54066.png +../../data/yoloGtold1/train/54067.png +../../data/yoloGtold1/train/54068.png +../../data/yoloGtold1/train/54069.png +../../data/yoloGtold1/train/54070.png +../../data/yoloGtold1/train/54071.png +../../data/yoloGtold1/train/54072.png +../../data/yoloGtold1/train/54073.png +../../data/yoloGtold1/train/54074.png +../../data/yoloGtold1/train/54075.png +../../data/yoloGtold1/train/54076.png +../../data/yoloGtold1/train/54077.png +../../data/yoloGtold1/train/54078.png +../../data/yoloGtold1/train/54079.png +../../data/yoloGtold1/train/54080.png +../../data/yoloGtold1/train/54081.png +../../data/yoloGtold1/train/54082.png +../../data/yoloGtold1/train/54083.png +../../data/yoloGtold1/train/54084.png +../../data/yoloGtold1/train/54085.png +../../data/yoloGtold1/train/54086.png +../../data/yoloGtold1/train/54087.png +../../data/yoloGtold1/train/54088.png +../../data/yoloGtold1/train/54089.png +../../data/yoloGtold1/train/54090.png +../../data/yoloGtold1/train/54091.png +../../data/yoloGtold1/train/54092.png +../../data/yoloGtold1/train/54093.png +../../data/yoloGtold1/train/54094.png +../../data/yoloGtold1/train/54095.png +../../data/yoloGtold1/train/54096.png +../../data/yoloGtold1/train/54097.png +../../data/yoloGtold1/train/54098.png +../../data/yoloGtold1/train/54099.png +../../data/yoloGtold1/train/54100.png +../../data/yoloGtold1/train/54101.png +../../data/yoloGtold1/train/54102.png +../../data/yoloGtold1/train/54103.png +../../data/yoloGtold1/train/54104.png +../../data/yoloGtold1/train/54105.png +../../data/yoloGtold1/train/54106.png +../../data/yoloGtold1/train/54107.png +../../data/yoloGtold1/train/54108.png +../../data/yoloGtold1/train/54109.png +../../data/yoloGtold1/train/54110.png +../../data/yoloGtold1/train/54111.png +../../data/yoloGtold1/train/54112.png +../../data/yoloGtold1/train/54113.png +../../data/yoloGtold1/train/54114.png +../../data/yoloGtold1/train/54115.png +../../data/yoloGtold1/train/54116.png +../../data/yoloGtold1/train/54117.png +../../data/yoloGtold1/train/54118.png +../../data/yoloGtold1/train/54119.png +../../data/yoloGtold1/train/54120.png +../../data/yoloGtold1/train/54121.png +../../data/yoloGtold1/train/54122.png +../../data/yoloGtold1/train/54123.png +../../data/yoloGtold1/train/54124.png +../../data/yoloGtold1/train/54125.png +../../data/yoloGtold1/train/54126.png +../../data/yoloGtold1/train/54127.png +../../data/yoloGtold1/train/54128.png +../../data/yoloGtold1/train/54129.png +../../data/yoloGtold1/train/54130.png +../../data/yoloGtold1/train/54131.png +../../data/yoloGtold1/train/54132.png +../../data/yoloGtold1/train/54133.png +../../data/yoloGtold1/train/54134.png +../../data/yoloGtold1/train/54135.png +../../data/yoloGtold1/train/54136.png +../../data/yoloGtold1/train/54137.png +../../data/yoloGtold1/train/54138.png +../../data/yoloGtold1/train/54139.png +../../data/yoloGtold1/train/54140.png +../../data/yoloGtold1/train/54141.png +../../data/yoloGtold1/train/54142.png +../../data/yoloGtold1/train/54143.png +../../data/yoloGtold1/train/54144.png +../../data/yoloGtold1/train/54145.png +../../data/yoloGtold1/train/54146.png +../../data/yoloGtold1/train/54147.png +../../data/yoloGtold1/train/54148.png +../../data/yoloGtold1/train/54149.png +../../data/yoloGtold1/train/54150.png +../../data/yoloGtold1/train/54151.png +../../data/yoloGtold1/train/54152.png +../../data/yoloGtold1/train/54153.png +../../data/yoloGtold1/train/54154.png +../../data/yoloGtold1/train/54155.png +../../data/yoloGtold1/train/54156.png +../../data/yoloGtold1/train/54157.png +../../data/yoloGtold1/train/54158.png +../../data/yoloGtold1/train/54159.png +../../data/yoloGtold1/train/54160.png +../../data/yoloGtold1/train/54161.png +../../data/yoloGtold1/train/54162.png +../../data/yoloGtold1/train/54163.png +../../data/yoloGtold1/train/54164.png +../../data/yoloGtold1/train/54165.png +../../data/yoloGtold1/train/54166.png +../../data/yoloGtold1/train/54167.png +../../data/yoloGtold1/train/54168.png +../../data/yoloGtold1/train/54169.png +../../data/yoloGtold1/train/54170.png +../../data/yoloGtold1/train/54171.png +../../data/yoloGtold1/train/54172.png +../../data/yoloGtold1/train/54173.png +../../data/yoloGtold1/train/54174.png +../../data/yoloGtold1/train/54175.png +../../data/yoloGtold1/train/54176.png +../../data/yoloGtold1/train/54177.png +../../data/yoloGtold1/train/54178.png +../../data/yoloGtold1/train/54179.png +../../data/yoloGtold1/train/54180.png +../../data/yoloGtold1/train/54181.png +../../data/yoloGtold1/train/54182.png +../../data/yoloGtold1/train/54183.png +../../data/yoloGtold1/train/54184.png +../../data/yoloGtold1/train/54185.png +../../data/yoloGtold1/train/54186.png +../../data/yoloGtold1/train/54187.png +../../data/yoloGtold1/train/54188.png +../../data/yoloGtold1/train/54189.png +../../data/yoloGtold1/train/54190.png +../../data/yoloGtold1/train/54191.png +../../data/yoloGtold1/train/54192.png +../../data/yoloGtold1/train/54193.png +../../data/yoloGtold1/train/54194.png +../../data/yoloGtold1/train/54195.png +../../data/yoloGtold1/train/54196.png +../../data/yoloGtold1/train/54197.png +../../data/yoloGtold1/train/54198.png +../../data/yoloGtold1/train/54199.png +../../data/yoloGtold1/train/54200.png +../../data/yoloGtold1/train/54201.png +../../data/yoloGtold1/train/54202.png +../../data/yoloGtold1/train/54203.png +../../data/yoloGtold1/train/54204.png +../../data/yoloGtold1/train/54205.png +../../data/yoloGtold1/train/54206.png +../../data/yoloGtold1/train/54207.png +../../data/yoloGtold1/train/54208.png +../../data/yoloGtold1/train/54209.png +../../data/yoloGtold1/train/54210.png +../../data/yoloGtold1/train/54211.png +../../data/yoloGtold1/train/54212.png +../../data/yoloGtold1/train/54213.png +../../data/yoloGtold1/train/54214.png +../../data/yoloGtold1/train/54215.png +../../data/yoloGtold1/train/54216.png +../../data/yoloGtold1/train/54217.png +../../data/yoloGtold1/train/54218.png +../../data/yoloGtold1/train/54219.png +../../data/yoloGtold1/train/54220.png +../../data/yoloGtold1/train/54221.png +../../data/yoloGtold1/train/54222.png +../../data/yoloGtold1/train/54223.png +../../data/yoloGtold1/train/54224.png +../../data/yoloGtold1/train/54225.png +../../data/yoloGtold1/train/54226.png +../../data/yoloGtold1/train/54227.png +../../data/yoloGtold1/train/54228.png +../../data/yoloGtold1/train/54229.png +../../data/yoloGtold1/train/54230.png +../../data/yoloGtold1/train/54231.png +../../data/yoloGtold1/train/54232.png +../../data/yoloGtold1/train/54233.png +../../data/yoloGtold1/train/54234.png +../../data/yoloGtold1/train/54235.png +../../data/yoloGtold1/train/54236.png +../../data/yoloGtold1/train/54237.png +../../data/yoloGtold1/train/54238.png +../../data/yoloGtold1/train/54239.png +../../data/yoloGtold1/train/54240.png +../../data/yoloGtold1/train/54241.png +../../data/yoloGtold1/train/54242.png +../../data/yoloGtold1/train/54243.png +../../data/yoloGtold1/train/54244.png +../../data/yoloGtold1/train/54245.png +../../data/yoloGtold1/train/54246.png +../../data/yoloGtold1/train/54247.png +../../data/yoloGtold1/train/54248.png +../../data/yoloGtold1/train/54249.png +../../data/yoloGtold1/train/54250.png +../../data/yoloGtold1/train/54251.png +../../data/yoloGtold1/train/54252.png +../../data/yoloGtold1/train/54253.png +../../data/yoloGtold1/train/54254.png +../../data/yoloGtold1/train/54255.png +../../data/yoloGtold1/train/54256.png +../../data/yoloGtold1/train/54257.png +../../data/yoloGtold1/train/54258.png +../../data/yoloGtold1/train/54259.png +../../data/yoloGtold1/train/54260.png +../../data/yoloGtold1/train/54261.png +../../data/yoloGtold1/train/54262.png +../../data/yoloGtold1/train/54263.png +../../data/yoloGtold1/train/54264.png +../../data/yoloGtold1/train/54265.png +../../data/yoloGtold1/train/54266.png +../../data/yoloGtold1/train/54267.png +../../data/yoloGtold1/train/54268.png +../../data/yoloGtold1/train/54269.png +../../data/yoloGtold1/train/54270.png +../../data/yoloGtold1/train/54271.png +../../data/yoloGtold1/train/54272.png +../../data/yoloGtold1/train/54273.png +../../data/yoloGtold1/train/54274.png +../../data/yoloGtold1/train/54275.png +../../data/yoloGtold1/train/54276.png +../../data/yoloGtold1/train/54277.png +../../data/yoloGtold1/train/54278.png +../../data/yoloGtold1/train/54279.png +../../data/yoloGtold1/train/54280.png +../../data/yoloGtold1/train/54281.png +../../data/yoloGtold1/train/54282.png +../../data/yoloGtold1/train/54283.png +../../data/yoloGtold1/train/54284.png +../../data/yoloGtold1/train/54285.png +../../data/yoloGtold1/train/54286.png +../../data/yoloGtold1/train/54287.png +../../data/yoloGtold1/train/54288.png +../../data/yoloGtold1/train/54289.png +../../data/yoloGtold1/train/54290.png +../../data/yoloGtold1/train/54291.png +../../data/yoloGtold1/train/54292.png +../../data/yoloGtold1/train/54293.png +../../data/yoloGtold1/train/54294.png +../../data/yoloGtold1/train/54295.png +../../data/yoloGtold1/train/54296.png +../../data/yoloGtold1/train/54297.png +../../data/yoloGtold1/train/54298.png +../../data/yoloGtold1/train/54299.png +../../data/yoloGtold1/train/54300.png +../../data/yoloGtold1/train/54301.png +../../data/yoloGtold1/train/54302.png +../../data/yoloGtold1/train/54303.png +../../data/yoloGtold1/train/54304.png +../../data/yoloGtold1/train/54305.png +../../data/yoloGtold1/train/54306.png +../../data/yoloGtold1/train/54307.png +../../data/yoloGtold1/train/54308.png +../../data/yoloGtold1/train/54309.png +../../data/yoloGtold1/train/54310.png +../../data/yoloGtold1/train/54311.png +../../data/yoloGtold1/train/54312.png +../../data/yoloGtold1/train/54313.png +../../data/yoloGtold1/train/54314.png +../../data/yoloGtold1/train/54315.png +../../data/yoloGtold1/train/54316.png +../../data/yoloGtold1/train/54317.png +../../data/yoloGtold1/train/54318.png +../../data/yoloGtold1/train/54319.png +../../data/yoloGtold1/train/54320.png +../../data/yoloGtold1/train/54321.png +../../data/yoloGtold1/train/54322.png +../../data/yoloGtold1/train/54323.png +../../data/yoloGtold1/train/54324.png +../../data/yoloGtold1/train/54325.png +../../data/yoloGtold1/train/54326.png +../../data/yoloGtold1/train/54327.png +../../data/yoloGtold1/train/54328.png +../../data/yoloGtold1/train/54329.png +../../data/yoloGtold1/train/54330.png +../../data/yoloGtold1/train/54331.png +../../data/yoloGtold1/train/54332.png +../../data/yoloGtold1/train/54333.png +../../data/yoloGtold1/train/54334.png +../../data/yoloGtold1/train/54335.png +../../data/yoloGtold1/train/54336.png +../../data/yoloGtold1/train/54337.png +../../data/yoloGtold1/train/54338.png +../../data/yoloGtold1/train/54339.png +../../data/yoloGtold1/train/54340.png +../../data/yoloGtold1/train/54341.png +../../data/yoloGtold1/train/54342.png +../../data/yoloGtold1/train/54343.png +../../data/yoloGtold1/train/54344.png +../../data/yoloGtold1/train/54345.png +../../data/yoloGtold1/train/54346.png +../../data/yoloGtold1/train/54347.png +../../data/yoloGtold1/train/54348.png +../../data/yoloGtold1/train/54349.png +../../data/yoloGtold1/train/54350.png +../../data/yoloGtold1/train/54351.png +../../data/yoloGtold1/train/54352.png +../../data/yoloGtold1/train/54353.png +../../data/yoloGtold1/train/54354.png +../../data/yoloGtold1/train/54355.png +../../data/yoloGtold1/train/54356.png +../../data/yoloGtold1/train/54357.png +../../data/yoloGtold1/train/54358.png +../../data/yoloGtold1/train/54359.png +../../data/yoloGtold1/train/54360.png +../../data/yoloGtold1/train/54361.png +../../data/yoloGtold1/train/54362.png +../../data/yoloGtold1/train/54363.png +../../data/yoloGtold1/train/54364.png +../../data/yoloGtold1/train/54365.png +../../data/yoloGtold1/train/54366.png +../../data/yoloGtold1/train/54367.png +../../data/yoloGtold1/train/54368.png +../../data/yoloGtold1/train/54369.png +../../data/yoloGtold1/train/54370.png +../../data/yoloGtold1/train/54371.png +../../data/yoloGtold1/train/54372.png +../../data/yoloGtold1/train/54373.png +../../data/yoloGtold1/train/54374.png +../../data/yoloGtold1/train/54375.png +../../data/yoloGtold1/train/54376.png +../../data/yoloGtold1/train/54377.png +../../data/yoloGtold1/train/54378.png +../../data/yoloGtold1/train/54379.png +../../data/yoloGtold1/train/54380.png +../../data/yoloGtold1/train/54381.png +../../data/yoloGtold1/train/54382.png +../../data/yoloGtold1/train/54383.png +../../data/yoloGtold1/train/54384.png +../../data/yoloGtold1/train/54385.png +../../data/yoloGtold1/train/54386.png +../../data/yoloGtold1/train/54387.png +../../data/yoloGtold1/train/54388.png +../../data/yoloGtold1/train/54389.png +../../data/yoloGtold1/train/54390.png +../../data/yoloGtold1/train/54391.png +../../data/yoloGtold1/train/54392.png +../../data/yoloGtold1/train/54393.png +../../data/yoloGtold1/train/54394.png +../../data/yoloGtold1/train/54395.png +../../data/yoloGtold1/train/54396.png +../../data/yoloGtold1/train/54397.png +../../data/yoloGtold1/train/54398.png +../../data/yoloGtold1/train/54399.png +../../data/yoloGtold1/train/54400.png +../../data/yoloGtold1/train/54401.png +../../data/yoloGtold1/train/54402.png +../../data/yoloGtold1/train/54403.png +../../data/yoloGtold1/train/54404.png +../../data/yoloGtold1/train/54405.png +../../data/yoloGtold1/train/54406.png +../../data/yoloGtold1/train/54407.png +../../data/yoloGtold1/train/54408.png +../../data/yoloGtold1/train/54409.png +../../data/yoloGtold1/train/54410.png +../../data/yoloGtold1/train/54411.png +../../data/yoloGtold1/train/54412.png +../../data/yoloGtold1/train/54413.png +../../data/yoloGtold1/train/54414.png +../../data/yoloGtold1/train/54415.png +../../data/yoloGtold1/train/54416.png +../../data/yoloGtold1/train/54417.png +../../data/yoloGtold1/train/54418.png +../../data/yoloGtold1/train/54419.png +../../data/yoloGtold1/train/54420.png +../../data/yoloGtold1/train/54421.png +../../data/yoloGtold1/train/54422.png +../../data/yoloGtold1/train/54423.png +../../data/yoloGtold1/train/54424.png +../../data/yoloGtold1/train/54425.png +../../data/yoloGtold1/train/54426.png +../../data/yoloGtold1/train/54427.png +../../data/yoloGtold1/train/54428.png +../../data/yoloGtold1/train/54429.png +../../data/yoloGtold1/train/54430.png +../../data/yoloGtold1/train/54431.png +../../data/yoloGtold1/train/54432.png +../../data/yoloGtold1/train/54433.png +../../data/yoloGtold1/train/54434.png +../../data/yoloGtold1/train/54435.png +../../data/yoloGtold1/train/54436.png +../../data/yoloGtold1/train/54437.png +../../data/yoloGtold1/train/54438.png +../../data/yoloGtold1/train/54439.png +../../data/yoloGtold1/train/54440.png +../../data/yoloGtold1/train/54441.png +../../data/yoloGtold1/train/54442.png +../../data/yoloGtold1/train/54443.png +../../data/yoloGtold1/train/54444.png +../../data/yoloGtold1/train/54445.png +../../data/yoloGtold1/train/54446.png +../../data/yoloGtold1/train/54447.png +../../data/yoloGtold1/train/54448.png +../../data/yoloGtold1/train/54449.png +../../data/yoloGtold1/train/54450.png +../../data/yoloGtold1/train/54451.png +../../data/yoloGtold1/train/54452.png +../../data/yoloGtold1/train/54453.png +../../data/yoloGtold1/train/54454.png +../../data/yoloGtold1/train/54455.png +../../data/yoloGtold1/train/54456.png +../../data/yoloGtold1/train/54457.png +../../data/yoloGtold1/train/54458.png +../../data/yoloGtold1/train/54459.png +../../data/yoloGtold1/train/54460.png +../../data/yoloGtold1/train/54461.png +../../data/yoloGtold1/train/54462.png +../../data/yoloGtold1/train/54463.png +../../data/yoloGtold1/train/54464.png +../../data/yoloGtold1/train/54465.png +../../data/yoloGtold1/train/54466.png +../../data/yoloGtold1/train/54467.png +../../data/yoloGtold1/train/54468.png +../../data/yoloGtold1/train/54469.png +../../data/yoloGtold1/train/54470.png +../../data/yoloGtold1/train/54471.png +../../data/yoloGtold1/train/54472.png +../../data/yoloGtold1/train/54473.png +../../data/yoloGtold1/train/54474.png +../../data/yoloGtold1/train/54475.png +../../data/yoloGtold1/train/54476.png +../../data/yoloGtold1/train/54477.png +../../data/yoloGtold1/train/54478.png +../../data/yoloGtold1/train/54479.png +../../data/yoloGtold1/train/54480.png +../../data/yoloGtold1/train/54481.png +../../data/yoloGtold1/train/54482.png +../../data/yoloGtold1/train/54483.png +../../data/yoloGtold1/train/54484.png +../../data/yoloGtold1/train/54485.png +../../data/yoloGtold1/train/54486.png +../../data/yoloGtold1/train/54487.png +../../data/yoloGtold1/train/54488.png +../../data/yoloGtold1/train/54489.png +../../data/yoloGtold1/train/54490.png +../../data/yoloGtold1/train/54491.png +../../data/yoloGtold1/train/54492.png +../../data/yoloGtold1/train/54493.png +../../data/yoloGtold1/train/54494.png +../../data/yoloGtold1/train/54495.png +../../data/yoloGtold1/train/54496.png +../../data/yoloGtold1/train/54497.png +../../data/yoloGtold1/train/54498.png +../../data/yoloGtold1/train/54499.png +../../data/yoloGtold1/train/54500.png +../../data/yoloGtold1/train/54501.png +../../data/yoloGtold1/train/54502.png +../../data/yoloGtold1/train/54503.png +../../data/yoloGtold1/train/54504.png +../../data/yoloGtold1/train/54505.png +../../data/yoloGtold1/train/54506.png +../../data/yoloGtold1/train/54507.png +../../data/yoloGtold1/train/54508.png +../../data/yoloGtold1/train/54509.png +../../data/yoloGtold1/train/54510.png +../../data/yoloGtold1/train/54511.png +../../data/yoloGtold1/train/54512.png +../../data/yoloGtold1/train/54513.png +../../data/yoloGtold1/train/54514.png +../../data/yoloGtold1/train/54515.png +../../data/yoloGtold1/train/54516.png +../../data/yoloGtold1/train/54517.png +../../data/yoloGtold1/train/54518.png +../../data/yoloGtold1/train/54519.png +../../data/yoloGtold1/train/54520.png +../../data/yoloGtold1/train/54521.png +../../data/yoloGtold1/train/54522.png +../../data/yoloGtold1/train/54523.png +../../data/yoloGtold1/train/54524.png +../../data/yoloGtold1/train/54525.png +../../data/yoloGtold1/train/54526.png +../../data/yoloGtold1/train/54527.png +../../data/yoloGtold1/train/54528.png +../../data/yoloGtold1/train/54529.png +../../data/yoloGtold1/train/54530.png +../../data/yoloGtold1/train/54531.png +../../data/yoloGtold1/train/54532.png +../../data/yoloGtold1/train/54533.png +../../data/yoloGtold1/train/54534.png +../../data/yoloGtold1/train/54535.png +../../data/yoloGtold1/train/54536.png +../../data/yoloGtold1/train/54537.png +../../data/yoloGtold1/train/54538.png +../../data/yoloGtold1/train/54539.png +../../data/yoloGtold1/train/54540.png +../../data/yoloGtold1/train/54541.png +../../data/yoloGtold1/train/54542.png +../../data/yoloGtold1/train/54543.png +../../data/yoloGtold1/train/54544.png +../../data/yoloGtold1/train/54545.png +../../data/yoloGtold1/train/54546.png +../../data/yoloGtold1/train/54547.png +../../data/yoloGtold1/train/54548.png +../../data/yoloGtold1/train/54549.png +../../data/yoloGtold1/train/54550.png +../../data/yoloGtold1/train/54551.png +../../data/yoloGtold1/train/54552.png +../../data/yoloGtold1/train/54553.png +../../data/yoloGtold1/train/54554.png +../../data/yoloGtold1/train/54555.png +../../data/yoloGtold1/train/54556.png +../../data/yoloGtold1/train/54557.png +../../data/yoloGtold1/train/54558.png +../../data/yoloGtold1/train/54559.png +../../data/yoloGtold1/train/54560.png +../../data/yoloGtold1/train/54561.png +../../data/yoloGtold1/train/54562.png +../../data/yoloGtold1/train/54563.png +../../data/yoloGtold1/train/54564.png +../../data/yoloGtold1/train/54565.png +../../data/yoloGtold1/train/54566.png +../../data/yoloGtold1/train/54567.png +../../data/yoloGtold1/train/54568.png +../../data/yoloGtold1/train/54569.png +../../data/yoloGtold1/train/54570.png +../../data/yoloGtold1/train/54571.png +../../data/yoloGtold1/train/54572.png +../../data/yoloGtold1/train/54573.png +../../data/yoloGtold1/train/54574.png +../../data/yoloGtold1/train/54575.png +../../data/yoloGtold1/train/54576.png +../../data/yoloGtold1/train/54577.png +../../data/yoloGtold1/train/54578.png +../../data/yoloGtold1/train/54579.png +../../data/yoloGtold1/train/54580.png +../../data/yoloGtold1/train/54581.png +../../data/yoloGtold1/train/54582.png +../../data/yoloGtold1/train/54583.png +../../data/yoloGtold1/train/54584.png +../../data/yoloGtold1/train/54585.png +../../data/yoloGtold1/train/54586.png +../../data/yoloGtold1/train/54587.png +../../data/yoloGtold1/train/54588.png +../../data/yoloGtold1/train/54589.png +../../data/yoloGtold1/train/54590.png +../../data/yoloGtold1/train/54591.png +../../data/yoloGtold1/train/54592.png +../../data/yoloGtold1/train/54593.png +../../data/yoloGtold1/train/54594.png +../../data/yoloGtold1/train/54595.png +../../data/yoloGtold1/train/54596.png +../../data/yoloGtold1/train/54597.png +../../data/yoloGtold1/train/54598.png +../../data/yoloGtold1/train/54599.png +../../data/yoloGtold1/train/54600.png +../../data/yoloGtold1/train/54601.png +../../data/yoloGtold1/train/54602.png +../../data/yoloGtold1/train/54603.png +../../data/yoloGtold1/train/54604.png +../../data/yoloGtold1/train/54605.png +../../data/yoloGtold1/train/54606.png +../../data/yoloGtold1/train/54607.png +../../data/yoloGtold1/train/54608.png +../../data/yoloGtold1/train/54609.png +../../data/yoloGtold1/train/54610.png +../../data/yoloGtold1/train/54611.png +../../data/yoloGtold1/train/54612.png +../../data/yoloGtold1/train/54613.png +../../data/yoloGtold1/train/54614.png +../../data/yoloGtold1/train/54615.png +../../data/yoloGtold1/train/54616.png +../../data/yoloGtold1/train/54617.png +../../data/yoloGtold1/train/54618.png +../../data/yoloGtold1/train/54619.png +../../data/yoloGtold1/train/54620.png +../../data/yoloGtold1/train/54621.png +../../data/yoloGtold1/train/54622.png +../../data/yoloGtold1/train/54623.png +../../data/yoloGtold1/train/54624.png +../../data/yoloGtold1/train/54625.png +../../data/yoloGtold1/train/54626.png +../../data/yoloGtold1/train/54627.png +../../data/yoloGtold1/train/54628.png +../../data/yoloGtold1/train/54629.png +../../data/yoloGtold1/train/54630.png +../../data/yoloGtold1/train/54631.png +../../data/yoloGtold1/train/54632.png +../../data/yoloGtold1/train/54633.png +../../data/yoloGtold1/train/54634.png +../../data/yoloGtold1/train/54635.png +../../data/yoloGtold1/train/54636.png +../../data/yoloGtold1/train/54637.png +../../data/yoloGtold1/train/54638.png +../../data/yoloGtold1/train/54639.png +../../data/yoloGtold1/train/54640.png +../../data/yoloGtold1/train/54641.png +../../data/yoloGtold1/train/54642.png +../../data/yoloGtold1/train/54643.png +../../data/yoloGtold1/train/54644.png +../../data/yoloGtold1/train/54645.png +../../data/yoloGtold1/train/54646.png +../../data/yoloGtold1/train/54647.png +../../data/yoloGtold1/train/54648.png +../../data/yoloGtold1/train/54649.png +../../data/yoloGtold1/train/54650.png +../../data/yoloGtold1/train/54651.png +../../data/yoloGtold1/train/54652.png +../../data/yoloGtold1/train/54653.png +../../data/yoloGtold1/train/54654.png +../../data/yoloGtold1/train/54655.png +../../data/yoloGtold1/train/54656.png +../../data/yoloGtold1/train/54657.png +../../data/yoloGtold1/train/54658.png +../../data/yoloGtold1/train/54659.png +../../data/yoloGtold1/train/54660.png +../../data/yoloGtold1/train/54661.png +../../data/yoloGtold1/train/54662.png +../../data/yoloGtold1/train/54663.png +../../data/yoloGtold1/train/54664.png +../../data/yoloGtold1/train/54665.png +../../data/yoloGtold1/train/54666.png +../../data/yoloGtold1/train/54667.png +../../data/yoloGtold1/train/54668.png +../../data/yoloGtold1/train/54669.png +../../data/yoloGtold1/train/54670.png +../../data/yoloGtold1/train/54671.png +../../data/yoloGtold1/train/54672.png +../../data/yoloGtold1/train/54673.png +../../data/yoloGtold1/train/54674.png +../../data/yoloGtold1/train/54675.png +../../data/yoloGtold1/train/54676.png +../../data/yoloGtold1/train/54677.png +../../data/yoloGtold1/train/54678.png +../../data/yoloGtold1/train/54679.png +../../data/yoloGtold1/train/54680.png +../../data/yoloGtold1/train/54681.png +../../data/yoloGtold1/train/54682.png +../../data/yoloGtold1/train/54683.png +../../data/yoloGtold1/train/54684.png +../../data/yoloGtold1/train/54685.png +../../data/yoloGtold1/train/54686.png +../../data/yoloGtold1/train/54687.png +../../data/yoloGtold1/train/54688.png +../../data/yoloGtold1/train/54689.png +../../data/yoloGtold1/train/54690.png +../../data/yoloGtold1/train/54691.png +../../data/yoloGtold1/train/54692.png +../../data/yoloGtold1/train/54693.png +../../data/yoloGtold1/train/54694.png +../../data/yoloGtold1/train/54695.png +../../data/yoloGtold1/train/54696.png +../../data/yoloGtold1/train/54697.png +../../data/yoloGtold1/train/54698.png +../../data/yoloGtold1/train/54699.png +../../data/yoloGtold1/train/54700.png +../../data/yoloGtold1/train/54701.png +../../data/yoloGtold1/train/54702.png +../../data/yoloGtold1/train/54703.png +../../data/yoloGtold1/train/54704.png +../../data/yoloGtold1/train/54705.png +../../data/yoloGtold1/train/54706.png +../../data/yoloGtold1/train/54707.png +../../data/yoloGtold1/train/54708.png +../../data/yoloGtold1/train/54709.png +../../data/yoloGtold1/train/54710.png +../../data/yoloGtold1/train/54711.png +../../data/yoloGtold1/train/54712.png +../../data/yoloGtold1/train/54713.png +../../data/yoloGtold1/train/54714.png +../../data/yoloGtold1/train/54715.png +../../data/yoloGtold1/train/54716.png +../../data/yoloGtold1/train/54717.png +../../data/yoloGtold1/train/54718.png +../../data/yoloGtold1/train/54719.png +../../data/yoloGtold1/train/54720.png +../../data/yoloGtold1/train/54721.png +../../data/yoloGtold1/train/54722.png +../../data/yoloGtold1/train/54723.png +../../data/yoloGtold1/train/54724.png +../../data/yoloGtold1/train/54725.png +../../data/yoloGtold1/train/54726.png +../../data/yoloGtold1/train/54727.png +../../data/yoloGtold1/train/54728.png +../../data/yoloGtold1/train/54729.png +../../data/yoloGtold1/train/54730.png +../../data/yoloGtold1/train/54731.png +../../data/yoloGtold1/train/54732.png +../../data/yoloGtold1/train/54733.png +../../data/yoloGtold1/train/54734.png +../../data/yoloGtold1/train/54735.png +../../data/yoloGtold1/train/54736.png +../../data/yoloGtold1/train/54737.png +../../data/yoloGtold1/train/54738.png +../../data/yoloGtold1/train/54739.png +../../data/yoloGtold1/train/54740.png +../../data/yoloGtold1/train/54741.png +../../data/yoloGtold1/train/54742.png +../../data/yoloGtold1/train/54743.png +../../data/yoloGtold1/train/54744.png +../../data/yoloGtold1/train/54745.png +../../data/yoloGtold1/train/54746.png +../../data/yoloGtold1/train/54747.png +../../data/yoloGtold1/train/54748.png +../../data/yoloGtold1/train/54749.png +../../data/yoloGtold1/train/54750.png +../../data/yoloGtold1/train/54751.png +../../data/yoloGtold1/train/54752.png +../../data/yoloGtold1/train/54753.png +../../data/yoloGtold1/train/54754.png +../../data/yoloGtold1/train/54755.png +../../data/yoloGtold1/train/54756.png +../../data/yoloGtold1/train/54757.png +../../data/yoloGtold1/train/54758.png +../../data/yoloGtold1/train/54759.png +../../data/yoloGtold1/train/54760.png +../../data/yoloGtold1/train/54761.png +../../data/yoloGtold1/train/54762.png +../../data/yoloGtold1/train/54763.png +../../data/yoloGtold1/train/54764.png +../../data/yoloGtold1/train/54765.png +../../data/yoloGtold1/train/54766.png +../../data/yoloGtold1/train/54767.png +../../data/yoloGtold1/train/54768.png +../../data/yoloGtold1/train/54769.png +../../data/yoloGtold1/train/54770.png +../../data/yoloGtold1/train/54771.png +../../data/yoloGtold1/train/54772.png +../../data/yoloGtold1/train/54773.png +../../data/yoloGtold1/train/54774.png +../../data/yoloGtold1/train/54775.png +../../data/yoloGtold1/train/54776.png +../../data/yoloGtold1/train/54777.png +../../data/yoloGtold1/train/54778.png +../../data/yoloGtold1/train/54779.png +../../data/yoloGtold1/train/54780.png +../../data/yoloGtold1/train/54781.png +../../data/yoloGtold1/train/54782.png +../../data/yoloGtold1/train/54783.png +../../data/yoloGtold1/train/54784.png +../../data/yoloGtold1/train/54785.png +../../data/yoloGtold1/train/54786.png +../../data/yoloGtold1/train/54787.png +../../data/yoloGtold1/train/54788.png +../../data/yoloGtold1/train/54789.png +../../data/yoloGtold1/train/54790.png +../../data/yoloGtold1/train/54791.png +../../data/yoloGtold1/train/54792.png +../../data/yoloGtold1/train/54793.png +../../data/yoloGtold1/train/54794.png +../../data/yoloGtold1/train/54795.png +../../data/yoloGtold1/train/54796.png +../../data/yoloGtold1/train/54797.png +../../data/yoloGtold1/train/54798.png +../../data/yoloGtold1/train/54799.png +../../data/yoloGtold1/train/54800.png +../../data/yoloGtold1/train/54801.png +../../data/yoloGtold1/train/54802.png +../../data/yoloGtold1/train/54803.png +../../data/yoloGtold1/train/54804.png +../../data/yoloGtold1/train/54805.png +../../data/yoloGtold1/train/54806.png +../../data/yoloGtold1/train/54807.png +../../data/yoloGtold1/train/54808.png +../../data/yoloGtold1/train/54809.png +../../data/yoloGtold1/train/54810.png +../../data/yoloGtold1/train/54811.png +../../data/yoloGtold1/train/54812.png +../../data/yoloGtold1/train/54813.png +../../data/yoloGtold1/train/54814.png +../../data/yoloGtold1/train/54815.png +../../data/yoloGtold1/train/54816.png +../../data/yoloGtold1/train/54817.png +../../data/yoloGtold1/train/54818.png +../../data/yoloGtold1/train/54819.png +../../data/yoloGtold1/train/54820.png +../../data/yoloGtold1/train/54821.png +../../data/yoloGtold1/train/54822.png +../../data/yoloGtold1/train/54823.png +../../data/yoloGtold1/train/54824.png +../../data/yoloGtold1/train/54825.png +../../data/yoloGtold1/train/54826.png +../../data/yoloGtold1/train/54827.png +../../data/yoloGtold1/train/54828.png +../../data/yoloGtold1/train/54829.png +../../data/yoloGtold1/train/54830.png +../../data/yoloGtold1/train/54831.png +../../data/yoloGtold1/train/54832.png +../../data/yoloGtold1/train/54833.png +../../data/yoloGtold1/train/54834.png +../../data/yoloGtold1/train/54835.png +../../data/yoloGtold1/train/54836.png +../../data/yoloGtold1/train/54837.png +../../data/yoloGtold1/train/54838.png +../../data/yoloGtold1/train/54839.png +../../data/yoloGtold1/train/54840.png +../../data/yoloGtold1/train/54841.png +../../data/yoloGtold1/train/54842.png +../../data/yoloGtold1/train/54843.png +../../data/yoloGtold1/train/54844.png +../../data/yoloGtold1/train/54845.png +../../data/yoloGtold1/train/54846.png +../../data/yoloGtold1/train/54847.png +../../data/yoloGtold1/train/54848.png +../../data/yoloGtold1/train/54849.png +../../data/yoloGtold1/train/54850.png +../../data/yoloGtold1/train/54851.png +../../data/yoloGtold1/train/54852.png +../../data/yoloGtold1/train/54853.png +../../data/yoloGtold1/train/54854.png +../../data/yoloGtold1/train/54855.png +../../data/yoloGtold1/train/54856.png +../../data/yoloGtold1/train/54857.png +../../data/yoloGtold1/train/54858.png +../../data/yoloGtold1/train/54859.png +../../data/yoloGtold1/train/54860.png +../../data/yoloGtold1/train/54861.png +../../data/yoloGtold1/train/54862.png +../../data/yoloGtold1/train/54863.png +../../data/yoloGtold1/train/54864.png +../../data/yoloGtold1/train/54865.png +../../data/yoloGtold1/train/54866.png +../../data/yoloGtold1/train/54867.png +../../data/yoloGtold1/train/54868.png +../../data/yoloGtold1/train/54869.png +../../data/yoloGtold1/train/54870.png +../../data/yoloGtold1/train/54871.png +../../data/yoloGtold1/train/54872.png +../../data/yoloGtold1/train/54873.png +../../data/yoloGtold1/train/54874.png +../../data/yoloGtold1/train/54875.png +../../data/yoloGtold1/train/54876.png +../../data/yoloGtold1/train/54877.png +../../data/yoloGtold1/train/54878.png +../../data/yoloGtold1/train/54879.png +../../data/yoloGtold1/train/54880.png +../../data/yoloGtold1/train/54881.png +../../data/yoloGtold1/train/54882.png +../../data/yoloGtold1/train/54883.png +../../data/yoloGtold1/train/54884.png +../../data/yoloGtold1/train/54885.png +../../data/yoloGtold1/train/54886.png +../../data/yoloGtold1/train/54887.png +../../data/yoloGtold1/train/54888.png +../../data/yoloGtold1/train/54889.png +../../data/yoloGtold1/train/54890.png +../../data/yoloGtold1/train/54891.png +../../data/yoloGtold1/train/54892.png +../../data/yoloGtold1/train/54893.png +../../data/yoloGtold1/train/54894.png +../../data/yoloGtold1/train/54895.png +../../data/yoloGtold1/train/54896.png +../../data/yoloGtold1/train/54897.png +../../data/yoloGtold1/train/54898.png +../../data/yoloGtold1/train/54899.png +../../data/yoloGtold1/train/54900.png +../../data/yoloGtold1/train/54901.png +../../data/yoloGtold1/train/54902.png +../../data/yoloGtold1/train/54903.png +../../data/yoloGtold1/train/54904.png +../../data/yoloGtold1/train/54905.png +../../data/yoloGtold1/train/54906.png +../../data/yoloGtold1/train/54907.png +../../data/yoloGtold1/train/54908.png +../../data/yoloGtold1/train/54909.png +../../data/yoloGtold1/train/54910.png +../../data/yoloGtold1/train/54911.png +../../data/yoloGtold1/train/54912.png +../../data/yoloGtold1/train/54913.png +../../data/yoloGtold1/train/54914.png +../../data/yoloGtold1/train/54915.png +../../data/yoloGtold1/train/54916.png +../../data/yoloGtold1/train/54917.png +../../data/yoloGtold1/train/54918.png +../../data/yoloGtold1/train/54919.png +../../data/yoloGtold1/train/54920.png +../../data/yoloGtold1/train/54921.png +../../data/yoloGtold1/train/54922.png +../../data/yoloGtold1/train/54923.png +../../data/yoloGtold1/train/54924.png +../../data/yoloGtold1/train/54925.png +../../data/yoloGtold1/train/54926.png +../../data/yoloGtold1/train/54927.png +../../data/yoloGtold1/train/54928.png +../../data/yoloGtold1/train/54929.png +../../data/yoloGtold1/train/54930.png +../../data/yoloGtold1/train/54931.png +../../data/yoloGtold1/train/54932.png +../../data/yoloGtold1/train/54933.png +../../data/yoloGtold1/train/54934.png +../../data/yoloGtold1/train/54935.png +../../data/yoloGtold1/train/54936.png +../../data/yoloGtold1/train/54937.png +../../data/yoloGtold1/train/54938.png +../../data/yoloGtold1/train/54939.png +../../data/yoloGtold1/train/54940.png +../../data/yoloGtold1/train/54941.png +../../data/yoloGtold1/train/54942.png +../../data/yoloGtold1/train/54943.png +../../data/yoloGtold1/train/54944.png +../../data/yoloGtold1/train/54945.png +../../data/yoloGtold1/train/54946.png +../../data/yoloGtold1/train/54947.png +../../data/yoloGtold1/train/54948.png +../../data/yoloGtold1/train/54949.png +../../data/yoloGtold1/train/54950.png +../../data/yoloGtold1/train/54951.png +../../data/yoloGtold1/train/54952.png +../../data/yoloGtold1/train/54953.png +../../data/yoloGtold1/train/54954.png +../../data/yoloGtold1/train/54955.png +../../data/yoloGtold1/train/54956.png +../../data/yoloGtold1/train/54957.png +../../data/yoloGtold1/train/54958.png +../../data/yoloGtold1/train/54959.png +../../data/yoloGtold1/train/54960.png +../../data/yoloGtold1/train/54961.png +../../data/yoloGtold1/train/54962.png +../../data/yoloGtold1/train/54963.png +../../data/yoloGtold1/train/54964.png +../../data/yoloGtold1/train/54965.png +../../data/yoloGtold1/train/54966.png +../../data/yoloGtold1/train/54967.png +../../data/yoloGtold1/train/54968.png +../../data/yoloGtold1/train/54969.png +../../data/yoloGtold1/train/54970.png +../../data/yoloGtold1/train/54971.png +../../data/yoloGtold1/train/54972.png +../../data/yoloGtold1/train/54973.png +../../data/yoloGtold1/train/54974.png +../../data/yoloGtold1/train/54975.png +../../data/yoloGtold1/train/54976.png +../../data/yoloGtold1/train/54977.png +../../data/yoloGtold1/train/54978.png +../../data/yoloGtold1/train/54979.png +../../data/yoloGtold1/train/54980.png +../../data/yoloGtold1/train/54981.png +../../data/yoloGtold1/train/54982.png +../../data/yoloGtold1/train/54983.png +../../data/yoloGtold1/train/54984.png +../../data/yoloGtold1/train/54985.png +../../data/yoloGtold1/train/54986.png +../../data/yoloGtold1/train/54987.png +../../data/yoloGtold1/train/54988.png +../../data/yoloGtold1/train/54989.png +../../data/yoloGtold1/train/54990.png +../../data/yoloGtold1/train/54991.png +../../data/yoloGtold1/train/54992.png +../../data/yoloGtold1/train/54993.png +../../data/yoloGtold1/train/54994.png +../../data/yoloGtold1/train/54995.png +../../data/yoloGtold1/train/54996.png +../../data/yoloGtold1/train/54997.png +../../data/yoloGtold1/train/54998.png +../../data/yoloGtold1/train/54999.png +../../data/yoloGtold1/train/55000.png +../../data/yoloGtold1/train/55001.png +../../data/yoloGtold1/train/55002.png +../../data/yoloGtold1/train/55003.png +../../data/yoloGtold1/train/55004.png +../../data/yoloGtold1/train/55005.png +../../data/yoloGtold1/train/55006.png +../../data/yoloGtold1/train/55007.png +../../data/yoloGtold1/train/55008.png +../../data/yoloGtold1/train/55009.png +../../data/yoloGtold1/train/55010.png +../../data/yoloGtold1/train/55011.png +../../data/yoloGtold1/train/55012.png +../../data/yoloGtold1/train/55013.png +../../data/yoloGtold1/train/55014.png +../../data/yoloGtold1/train/55015.png +../../data/yoloGtold1/train/55016.png +../../data/yoloGtold1/train/55017.png +../../data/yoloGtold1/train/55018.png +../../data/yoloGtold1/train/55019.png +../../data/yoloGtold1/train/55020.png +../../data/yoloGtold1/train/55021.png +../../data/yoloGtold1/train/55022.png +../../data/yoloGtold1/train/55023.png +../../data/yoloGtold1/train/55024.png +../../data/yoloGtold1/train/55025.png +../../data/yoloGtold1/train/55026.png +../../data/yoloGtold1/train/55027.png +../../data/yoloGtold1/train/55028.png +../../data/yoloGtold1/train/55029.png +../../data/yoloGtold1/train/55030.png +../../data/yoloGtold1/train/55031.png +../../data/yoloGtold1/train/55032.png +../../data/yoloGtold1/train/55033.png +../../data/yoloGtold1/train/55034.png +../../data/yoloGtold1/train/55035.png +../../data/yoloGtold1/train/55036.png +../../data/yoloGtold1/train/55037.png +../../data/yoloGtold1/train/55038.png +../../data/yoloGtold1/train/55039.png +../../data/yoloGtold1/train/55040.png +../../data/yoloGtold1/train/55041.png +../../data/yoloGtold1/train/55042.png +../../data/yoloGtold1/train/55043.png +../../data/yoloGtold1/train/55044.png +../../data/yoloGtold1/train/55045.png +../../data/yoloGtold1/train/55046.png +../../data/yoloGtold1/train/55047.png +../../data/yoloGtold1/train/55048.png +../../data/yoloGtold1/train/55049.png +../../data/yoloGtold1/train/55050.png +../../data/yoloGtold1/train/55051.png +../../data/yoloGtold1/train/55052.png +../../data/yoloGtold1/train/55053.png +../../data/yoloGtold1/train/55054.png +../../data/yoloGtold1/train/55055.png +../../data/yoloGtold1/train/55056.png +../../data/yoloGtold1/train/55057.png +../../data/yoloGtold1/train/55058.png +../../data/yoloGtold1/train/55059.png +../../data/yoloGtold1/train/55060.png +../../data/yoloGtold1/train/55061.png +../../data/yoloGtold1/train/55062.png +../../data/yoloGtold1/train/55063.png +../../data/yoloGtold1/train/55064.png +../../data/yoloGtold1/train/55065.png +../../data/yoloGtold1/train/55066.png +../../data/yoloGtold1/train/55067.png +../../data/yoloGtold1/train/55068.png +../../data/yoloGtold1/train/55069.png +../../data/yoloGtold1/train/55070.png +../../data/yoloGtold1/train/55071.png +../../data/yoloGtold1/train/55072.png +../../data/yoloGtold1/train/55073.png +../../data/yoloGtold1/train/55074.png +../../data/yoloGtold1/train/55075.png +../../data/yoloGtold1/train/55076.png +../../data/yoloGtold1/train/55077.png +../../data/yoloGtold1/train/55078.png +../../data/yoloGtold1/train/55079.png +../../data/yoloGtold1/train/55080.png +../../data/yoloGtold1/train/55081.png +../../data/yoloGtold1/train/55082.png +../../data/yoloGtold1/train/55083.png +../../data/yoloGtold1/train/55084.png +../../data/yoloGtold1/train/55085.png +../../data/yoloGtold1/train/55086.png +../../data/yoloGtold1/train/55087.png +../../data/yoloGtold1/train/55088.png +../../data/yoloGtold1/train/55089.png +../../data/yoloGtold1/train/55090.png +../../data/yoloGtold1/train/55091.png +../../data/yoloGtold1/train/55092.png +../../data/yoloGtold1/train/55093.png +../../data/yoloGtold1/train/55094.png +../../data/yoloGtold1/train/55095.png +../../data/yoloGtold1/train/55096.png +../../data/yoloGtold1/train/55097.png +../../data/yoloGtold1/train/55098.png +../../data/yoloGtold1/train/55099.png +../../data/yoloGtold1/train/55100.png +../../data/yoloGtold1/train/55101.png +../../data/yoloGtold1/train/55102.png +../../data/yoloGtold1/train/55103.png +../../data/yoloGtold1/train/55104.png +../../data/yoloGtold1/train/55105.png +../../data/yoloGtold1/train/55106.png +../../data/yoloGtold1/train/55107.png +../../data/yoloGtold1/train/55108.png +../../data/yoloGtold1/train/55109.png +../../data/yoloGtold1/train/55110.png +../../data/yoloGtold1/train/55111.png +../../data/yoloGtold1/train/55112.png +../../data/yoloGtold1/train/55113.png +../../data/yoloGtold1/train/55114.png +../../data/yoloGtold1/train/55115.png +../../data/yoloGtold1/train/55116.png +../../data/yoloGtold1/train/55117.png +../../data/yoloGtold1/train/55118.png +../../data/yoloGtold1/train/55119.png +../../data/yoloGtold1/train/55120.png +../../data/yoloGtold1/train/55121.png +../../data/yoloGtold1/train/55122.png +../../data/yoloGtold1/train/55123.png +../../data/yoloGtold1/train/55124.png +../../data/yoloGtold1/train/55125.png +../../data/yoloGtold1/train/55126.png +../../data/yoloGtold1/train/55127.png +../../data/yoloGtold1/train/55128.png +../../data/yoloGtold1/train/55129.png +../../data/yoloGtold1/train/55130.png +../../data/yoloGtold1/train/55131.png +../../data/yoloGtold1/train/55132.png +../../data/yoloGtold1/train/55133.png +../../data/yoloGtold1/train/55134.png +../../data/yoloGtold1/train/55135.png +../../data/yoloGtold1/train/55136.png +../../data/yoloGtold1/train/55137.png +../../data/yoloGtold1/train/55138.png +../../data/yoloGtold1/train/55139.png +../../data/yoloGtold1/train/55140.png +../../data/yoloGtold1/train/55141.png +../../data/yoloGtold1/train/55142.png +../../data/yoloGtold1/train/55143.png +../../data/yoloGtold1/train/55144.png +../../data/yoloGtold1/train/55145.png +../../data/yoloGtold1/train/55146.png +../../data/yoloGtold1/train/55147.png +../../data/yoloGtold1/train/55148.png +../../data/yoloGtold1/train/55149.png +../../data/yoloGtold1/train/55150.png +../../data/yoloGtold1/train/55151.png +../../data/yoloGtold1/train/55152.png +../../data/yoloGtold1/train/55153.png +../../data/yoloGtold1/train/55154.png +../../data/yoloGtold1/train/55155.png +../../data/yoloGtold1/train/55156.png +../../data/yoloGtold1/train/55157.png +../../data/yoloGtold1/train/55158.png +../../data/yoloGtold1/train/55159.png +../../data/yoloGtold1/train/55160.png +../../data/yoloGtold1/train/55161.png +../../data/yoloGtold1/train/55162.png +../../data/yoloGtold1/train/55163.png +../../data/yoloGtold1/train/55164.png +../../data/yoloGtold1/train/55165.png +../../data/yoloGtold1/train/55166.png +../../data/yoloGtold1/train/55167.png +../../data/yoloGtold1/train/55168.png +../../data/yoloGtold1/train/55169.png +../../data/yoloGtold1/train/55170.png +../../data/yoloGtold1/train/55171.png +../../data/yoloGtold1/train/55172.png +../../data/yoloGtold1/train/55173.png +../../data/yoloGtold1/train/55174.png +../../data/yoloGtold1/train/55175.png +../../data/yoloGtold1/train/55176.png +../../data/yoloGtold1/train/55177.png +../../data/yoloGtold1/train/55178.png +../../data/yoloGtold1/train/55179.png +../../data/yoloGtold1/train/55180.png +../../data/yoloGtold1/train/55181.png +../../data/yoloGtold1/train/55182.png +../../data/yoloGtold1/train/55183.png +../../data/yoloGtold1/train/55184.png +../../data/yoloGtold1/train/55185.png +../../data/yoloGtold1/train/55186.png +../../data/yoloGtold1/train/55187.png +../../data/yoloGtold1/train/55188.png +../../data/yoloGtold1/train/55189.png +../../data/yoloGtold1/train/55190.png +../../data/yoloGtold1/train/55191.png +../../data/yoloGtold1/train/55192.png +../../data/yoloGtold1/train/55193.png +../../data/yoloGtold1/train/55194.png +../../data/yoloGtold1/train/55195.png +../../data/yoloGtold1/train/55196.png +../../data/yoloGtold1/train/55197.png +../../data/yoloGtold1/train/55198.png +../../data/yoloGtold1/train/55199.png +../../data/yoloGtold1/train/55200.png +../../data/yoloGtold1/train/55201.png +../../data/yoloGtold1/train/55202.png +../../data/yoloGtold1/train/55203.png +../../data/yoloGtold1/train/55204.png +../../data/yoloGtold1/train/55205.png +../../data/yoloGtold1/train/55206.png +../../data/yoloGtold1/train/55207.png +../../data/yoloGtold1/train/55208.png +../../data/yoloGtold1/train/55209.png +../../data/yoloGtold1/train/55210.png +../../data/yoloGtold1/train/55211.png +../../data/yoloGtold1/train/55212.png +../../data/yoloGtold1/train/55213.png +../../data/yoloGtold1/train/55214.png +../../data/yoloGtold1/train/55215.png +../../data/yoloGtold1/train/55216.png +../../data/yoloGtold1/train/55217.png +../../data/yoloGtold1/train/55218.png +../../data/yoloGtold1/train/55219.png +../../data/yoloGtold1/train/55220.png +../../data/yoloGtold1/train/55221.png +../../data/yoloGtold1/train/55222.png +../../data/yoloGtold1/train/55223.png +../../data/yoloGtold1/train/55224.png +../../data/yoloGtold1/train/55225.png +../../data/yoloGtold1/train/55226.png +../../data/yoloGtold1/train/55227.png +../../data/yoloGtold1/train/55228.png +../../data/yoloGtold1/train/55229.png +../../data/yoloGtold1/train/55230.png +../../data/yoloGtold1/train/55231.png +../../data/yoloGtold1/train/55232.png +../../data/yoloGtold1/train/55233.png +../../data/yoloGtold1/train/55234.png +../../data/yoloGtold1/train/55235.png +../../data/yoloGtold1/train/55236.png +../../data/yoloGtold1/train/55237.png +../../data/yoloGtold1/train/55238.png +../../data/yoloGtold1/train/55239.png +../../data/yoloGtold1/train/55240.png +../../data/yoloGtold1/train/55241.png +../../data/yoloGtold1/train/55242.png +../../data/yoloGtold1/train/55243.png +../../data/yoloGtold1/train/55244.png +../../data/yoloGtold1/train/55245.png +../../data/yoloGtold1/train/55246.png +../../data/yoloGtold1/train/55247.png +../../data/yoloGtold1/train/55248.png +../../data/yoloGtold1/train/55249.png +../../data/yoloGtold1/train/55250.png +../../data/yoloGtold1/train/55251.png +../../data/yoloGtold1/train/55252.png +../../data/yoloGtold1/train/55253.png +../../data/yoloGtold1/train/55254.png +../../data/yoloGtold1/train/55255.png +../../data/yoloGtold1/train/55256.png +../../data/yoloGtold1/train/55257.png +../../data/yoloGtold1/train/55258.png +../../data/yoloGtold1/train/55259.png +../../data/yoloGtold1/train/55260.png +../../data/yoloGtold1/train/55261.png +../../data/yoloGtold1/train/55262.png +../../data/yoloGtold1/train/55263.png +../../data/yoloGtold1/train/55264.png +../../data/yoloGtold1/train/55265.png +../../data/yoloGtold1/train/55266.png +../../data/yoloGtold1/train/55267.png +../../data/yoloGtold1/train/55268.png +../../data/yoloGtold1/train/55269.png +../../data/yoloGtold1/train/55270.png +../../data/yoloGtold1/train/55271.png +../../data/yoloGtold1/train/55272.png +../../data/yoloGtold1/train/55273.png +../../data/yoloGtold1/train/55274.png +../../data/yoloGtold1/train/55275.png +../../data/yoloGtold1/train/55276.png +../../data/yoloGtold1/train/55277.png +../../data/yoloGtold1/train/55278.png +../../data/yoloGtold1/train/55279.png +../../data/yoloGtold1/train/55280.png +../../data/yoloGtold1/train/55281.png +../../data/yoloGtold1/train/55282.png +../../data/yoloGtold1/train/55283.png +../../data/yoloGtold1/train/55284.png +../../data/yoloGtold1/train/55285.png +../../data/yoloGtold1/train/55286.png +../../data/yoloGtold1/train/55287.png +../../data/yoloGtold1/train/55288.png +../../data/yoloGtold1/train/55289.png +../../data/yoloGtold1/train/55290.png +../../data/yoloGtold1/train/55291.png +../../data/yoloGtold1/train/55292.png +../../data/yoloGtold1/train/55293.png +../../data/yoloGtold1/train/55294.png +../../data/yoloGtold1/train/55295.png +../../data/yoloGtold1/train/55296.png +../../data/yoloGtold1/train/55297.png +../../data/yoloGtold1/train/55298.png +../../data/yoloGtold1/train/55299.png +../../data/yoloGtold1/train/55300.png +../../data/yoloGtold1/train/55301.png +../../data/yoloGtold1/train/55302.png +../../data/yoloGtold1/train/55303.png +../../data/yoloGtold1/train/55304.png +../../data/yoloGtold1/train/55305.png +../../data/yoloGtold1/train/55306.png +../../data/yoloGtold1/train/55307.png +../../data/yoloGtold1/train/55308.png +../../data/yoloGtold1/train/55309.png +../../data/yoloGtold1/train/55310.png +../../data/yoloGtold1/train/55311.png +../../data/yoloGtold1/train/55312.png +../../data/yoloGtold1/train/55313.png +../../data/yoloGtold1/train/55314.png +../../data/yoloGtold1/train/55315.png +../../data/yoloGtold1/train/55316.png +../../data/yoloGtold1/train/55317.png +../../data/yoloGtold1/train/55318.png +../../data/yoloGtold1/train/55319.png +../../data/yoloGtold1/train/55320.png +../../data/yoloGtold1/train/55321.png +../../data/yoloGtold1/train/55322.png +../../data/yoloGtold1/train/55323.png +../../data/yoloGtold1/train/55324.png +../../data/yoloGtold1/train/55325.png +../../data/yoloGtold1/train/55326.png +../../data/yoloGtold1/train/55327.png +../../data/yoloGtold1/train/55328.png +../../data/yoloGtold1/train/55329.png +../../data/yoloGtold1/train/55330.png +../../data/yoloGtold1/train/55331.png +../../data/yoloGtold1/train/55332.png +../../data/yoloGtold1/train/55333.png +../../data/yoloGtold1/train/55334.png +../../data/yoloGtold1/train/55335.png +../../data/yoloGtold1/train/55336.png +../../data/yoloGtold1/train/55337.png +../../data/yoloGtold1/train/55338.png +../../data/yoloGtold1/train/55339.png +../../data/yoloGtold1/train/55340.png +../../data/yoloGtold1/train/55341.png +../../data/yoloGtold1/train/55342.png +../../data/yoloGtold1/train/55343.png +../../data/yoloGtold1/train/55344.png +../../data/yoloGtold1/train/55345.png +../../data/yoloGtold1/train/55346.png +../../data/yoloGtold1/train/55347.png +../../data/yoloGtold1/train/55348.png +../../data/yoloGtold1/train/55349.png +../../data/yoloGtold1/train/55350.png +../../data/yoloGtold1/train/55351.png +../../data/yoloGtold1/train/55352.png +../../data/yoloGtold1/train/55353.png +../../data/yoloGtold1/train/55354.png +../../data/yoloGtold1/train/55355.png +../../data/yoloGtold1/train/55356.png +../../data/yoloGtold1/train/55357.png +../../data/yoloGtold1/train/55358.png +../../data/yoloGtold1/train/55359.png +../../data/yoloGtold1/train/55360.png +../../data/yoloGtold1/train/55361.png +../../data/yoloGtold1/train/55362.png +../../data/yoloGtold1/train/55363.png +../../data/yoloGtold1/train/55364.png +../../data/yoloGtold1/train/55365.png +../../data/yoloGtold1/train/55366.png +../../data/yoloGtold1/train/55367.png +../../data/yoloGtold1/train/55368.png +../../data/yoloGtold1/train/55369.png +../../data/yoloGtold1/train/55370.png +../../data/yoloGtold1/train/55371.png +../../data/yoloGtold1/train/55372.png +../../data/yoloGtold1/train/55373.png +../../data/yoloGtold1/train/55374.png +../../data/yoloGtold1/train/55375.png +../../data/yoloGtold1/train/55376.png +../../data/yoloGtold1/train/55377.png +../../data/yoloGtold1/train/55378.png +../../data/yoloGtold1/train/55379.png +../../data/yoloGtold1/train/55380.png +../../data/yoloGtold1/train/55381.png +../../data/yoloGtold1/train/55382.png +../../data/yoloGtold1/train/55383.png +../../data/yoloGtold1/train/55384.png +../../data/yoloGtold1/train/55385.png +../../data/yoloGtold1/train/55386.png +../../data/yoloGtold1/train/55387.png +../../data/yoloGtold1/train/55388.png +../../data/yoloGtold1/train/55389.png +../../data/yoloGtold1/train/55390.png +../../data/yoloGtold1/train/55391.png +../../data/yoloGtold1/train/55392.png +../../data/yoloGtold1/train/55393.png +../../data/yoloGtold1/train/55394.png +../../data/yoloGtold1/train/55395.png +../../data/yoloGtold1/train/55396.png +../../data/yoloGtold1/train/55397.png +../../data/yoloGtold1/train/55398.png +../../data/yoloGtold1/train/55399.png +../../data/yoloGtold1/train/55400.png +../../data/yoloGtold1/train/55401.png +../../data/yoloGtold1/train/55402.png +../../data/yoloGtold1/train/55403.png +../../data/yoloGtold1/train/55404.png +../../data/yoloGtold1/train/55405.png +../../data/yoloGtold1/train/55406.png +../../data/yoloGtold1/train/55407.png +../../data/yoloGtold1/train/55408.png +../../data/yoloGtold1/train/55409.png +../../data/yoloGtold1/train/55410.png +../../data/yoloGtold1/train/55411.png +../../data/yoloGtold1/train/55412.png +../../data/yoloGtold1/train/55413.png +../../data/yoloGtold1/train/55414.png +../../data/yoloGtold1/train/55415.png +../../data/yoloGtold1/train/55416.png +../../data/yoloGtold1/train/55417.png +../../data/yoloGtold1/train/55418.png +../../data/yoloGtold1/train/55419.png +../../data/yoloGtold1/train/55420.png +../../data/yoloGtold1/train/55421.png +../../data/yoloGtold1/train/55422.png +../../data/yoloGtold1/train/55423.png +../../data/yoloGtold1/train/55424.png +../../data/yoloGtold1/train/55425.png +../../data/yoloGtold1/train/55426.png +../../data/yoloGtold1/train/55427.png +../../data/yoloGtold1/train/55428.png +../../data/yoloGtold1/train/55429.png +../../data/yoloGtold1/train/55430.png +../../data/yoloGtold1/train/55431.png +../../data/yoloGtold1/train/55432.png +../../data/yoloGtold1/train/55433.png +../../data/yoloGtold1/train/55434.png +../../data/yoloGtold1/train/55435.png +../../data/yoloGtold1/train/55436.png +../../data/yoloGtold1/train/55437.png +../../data/yoloGtold1/train/55438.png +../../data/yoloGtold1/train/55439.png +../../data/yoloGtold1/train/55440.png +../../data/yoloGtold1/train/55441.png +../../data/yoloGtold1/train/55442.png +../../data/yoloGtold1/train/55443.png +../../data/yoloGtold1/train/55444.png +../../data/yoloGtold1/train/55445.png +../../data/yoloGtold1/train/55446.png +../../data/yoloGtold1/train/55447.png +../../data/yoloGtold1/train/55448.png +../../data/yoloGtold1/train/55449.png +../../data/yoloGtold1/train/55450.png +../../data/yoloGtold1/train/55451.png +../../data/yoloGtold1/train/55452.png +../../data/yoloGtold1/train/55453.png +../../data/yoloGtold1/train/55454.png +../../data/yoloGtold1/train/55455.png +../../data/yoloGtold1/train/55456.png +../../data/yoloGtold1/train/55457.png +../../data/yoloGtold1/train/55458.png +../../data/yoloGtold1/train/55459.png +../../data/yoloGtold1/train/55460.png +../../data/yoloGtold1/train/55461.png +../../data/yoloGtold1/train/55462.png +../../data/yoloGtold1/train/55463.png +../../data/yoloGtold1/train/55464.png +../../data/yoloGtold1/train/55465.png +../../data/yoloGtold1/train/55466.png +../../data/yoloGtold1/train/55467.png +../../data/yoloGtold1/train/55468.png +../../data/yoloGtold1/train/55469.png +../../data/yoloGtold1/train/55470.png +../../data/yoloGtold1/train/55471.png +../../data/yoloGtold1/train/55472.png +../../data/yoloGtold1/train/55473.png +../../data/yoloGtold1/train/55474.png +../../data/yoloGtold1/train/55475.png +../../data/yoloGtold1/train/55476.png +../../data/yoloGtold1/train/55477.png +../../data/yoloGtold1/train/55478.png +../../data/yoloGtold1/train/55479.png +../../data/yoloGtold1/train/55480.png +../../data/yoloGtold1/train/55481.png +../../data/yoloGtold1/train/55482.png +../../data/yoloGtold1/train/55483.png +../../data/yoloGtold1/train/55484.png +../../data/yoloGtold1/train/55485.png +../../data/yoloGtold1/train/55486.png +../../data/yoloGtold1/train/55487.png +../../data/yoloGtold1/train/55488.png +../../data/yoloGtold1/train/55489.png +../../data/yoloGtold1/train/55490.png +../../data/yoloGtold1/train/55491.png +../../data/yoloGtold1/train/55492.png +../../data/yoloGtold1/train/55493.png +../../data/yoloGtold1/train/55494.png +../../data/yoloGtold1/train/55495.png +../../data/yoloGtold1/train/55496.png +../../data/yoloGtold1/train/55497.png +../../data/yoloGtold1/train/55498.png +../../data/yoloGtold1/train/55499.png +../../data/yoloGtold1/train/55500.png +../../data/yoloGtold1/train/55501.png +../../data/yoloGtold1/train/55502.png +../../data/yoloGtold1/train/55503.png +../../data/yoloGtold1/train/55504.png +../../data/yoloGtold1/train/55505.png +../../data/yoloGtold1/train/55506.png +../../data/yoloGtold1/train/55507.png +../../data/yoloGtold1/train/55508.png +../../data/yoloGtold1/train/55509.png +../../data/yoloGtold1/train/55510.png +../../data/yoloGtold1/train/55511.png +../../data/yoloGtold1/train/55512.png +../../data/yoloGtold1/train/55513.png +../../data/yoloGtold1/train/55514.png +../../data/yoloGtold1/train/55515.png +../../data/yoloGtold1/train/55516.png +../../data/yoloGtold1/train/55517.png +../../data/yoloGtold1/train/55518.png +../../data/yoloGtold1/train/55519.png +../../data/yoloGtold1/train/55520.png +../../data/yoloGtold1/train/55521.png +../../data/yoloGtold1/train/55522.png +../../data/yoloGtold1/train/55523.png +../../data/yoloGtold1/train/55524.png +../../data/yoloGtold1/train/55525.png +../../data/yoloGtold1/train/55526.png +../../data/yoloGtold1/train/55527.png +../../data/yoloGtold1/train/55528.png +../../data/yoloGtold1/train/55529.png +../../data/yoloGtold1/train/55530.png +../../data/yoloGtold1/train/55531.png +../../data/yoloGtold1/train/55532.png +../../data/yoloGtold1/train/55533.png +../../data/yoloGtold1/train/55534.png +../../data/yoloGtold1/train/55535.png +../../data/yoloGtold1/train/55536.png +../../data/yoloGtold1/train/55537.png +../../data/yoloGtold1/train/55538.png +../../data/yoloGtold1/train/55539.png +../../data/yoloGtold1/train/55540.png +../../data/yoloGtold1/train/55541.png +../../data/yoloGtold1/train/55542.png +../../data/yoloGtold1/train/55543.png +../../data/yoloGtold1/train/55544.png +../../data/yoloGtold1/train/55545.png +../../data/yoloGtold1/train/55546.png +../../data/yoloGtold1/train/55547.png +../../data/yoloGtold1/train/55548.png +../../data/yoloGtold1/train/55549.png +../../data/yoloGtold1/train/55550.png +../../data/yoloGtold1/train/55551.png +../../data/yoloGtold1/train/55552.png +../../data/yoloGtold1/train/55553.png +../../data/yoloGtold1/train/55554.png +../../data/yoloGtold1/train/55555.png +../../data/yoloGtold1/train/55556.png +../../data/yoloGtold1/train/55557.png +../../data/yoloGtold1/train/55558.png +../../data/yoloGtold1/train/55559.png +../../data/yoloGtold1/train/55560.png +../../data/yoloGtold1/train/55561.png +../../data/yoloGtold1/train/55562.png +../../data/yoloGtold1/train/55563.png +../../data/yoloGtold1/train/55564.png +../../data/yoloGtold1/train/55565.png +../../data/yoloGtold1/train/55566.png +../../data/yoloGtold1/train/55567.png +../../data/yoloGtold1/train/55568.png +../../data/yoloGtold1/train/55569.png +../../data/yoloGtold1/train/55570.png +../../data/yoloGtold1/train/55571.png +../../data/yoloGtold1/train/55572.png +../../data/yoloGtold1/train/55573.png +../../data/yoloGtold1/train/55574.png +../../data/yoloGtold1/train/55575.png +../../data/yoloGtold1/train/55576.png +../../data/yoloGtold1/train/55577.png +../../data/yoloGtold1/train/55578.png +../../data/yoloGtold1/train/55579.png +../../data/yoloGtold1/train/55580.png +../../data/yoloGtold1/train/55581.png +../../data/yoloGtold1/train/55582.png +../../data/yoloGtold1/train/55583.png +../../data/yoloGtold1/train/55584.png +../../data/yoloGtold1/train/55585.png +../../data/yoloGtold1/train/55586.png +../../data/yoloGtold1/train/55587.png +../../data/yoloGtold1/train/55588.png +../../data/yoloGtold1/train/55589.png +../../data/yoloGtold1/train/55590.png +../../data/yoloGtold1/train/55591.png +../../data/yoloGtold1/train/55592.png +../../data/yoloGtold1/train/55593.png +../../data/yoloGtold1/train/55594.png +../../data/yoloGtold1/train/55595.png +../../data/yoloGtold1/train/55596.png +../../data/yoloGtold1/train/55597.png +../../data/yoloGtold1/train/55598.png +../../data/yoloGtold1/train/55599.png +../../data/yoloGtold1/train/55600.png +../../data/yoloGtold1/train/55601.png +../../data/yoloGtold1/train/55602.png +../../data/yoloGtold1/train/55603.png +../../data/yoloGtold1/train/55604.png +../../data/yoloGtold1/train/55605.png +../../data/yoloGtold1/train/55606.png +../../data/yoloGtold1/train/55607.png +../../data/yoloGtold1/train/55608.png +../../data/yoloGtold1/train/55609.png +../../data/yoloGtold1/train/55610.png +../../data/yoloGtold1/train/55611.png +../../data/yoloGtold1/train/55612.png +../../data/yoloGtold1/train/55613.png +../../data/yoloGtold1/train/55614.png +../../data/yoloGtold1/train/55615.png +../../data/yoloGtold1/train/55616.png +../../data/yoloGtold1/train/55617.png +../../data/yoloGtold1/train/55618.png +../../data/yoloGtold1/train/55619.png +../../data/yoloGtold1/train/55620.png +../../data/yoloGtold1/train/55621.png +../../data/yoloGtold1/train/55622.png +../../data/yoloGtold1/train/55623.png +../../data/yoloGtold1/train/55624.png +../../data/yoloGtold1/train/55625.png +../../data/yoloGtold1/train/55626.png +../../data/yoloGtold1/train/55627.png +../../data/yoloGtold1/train/55628.png +../../data/yoloGtold1/train/55629.png +../../data/yoloGtold1/train/55630.png +../../data/yoloGtold1/train/55631.png +../../data/yoloGtold1/train/55632.png +../../data/yoloGtold1/train/55633.png +../../data/yoloGtold1/train/55634.png +../../data/yoloGtold1/train/55635.png +../../data/yoloGtold1/train/55636.png +../../data/yoloGtold1/train/55637.png +../../data/yoloGtold1/train/55638.png +../../data/yoloGtold1/train/55639.png +../../data/yoloGtold1/train/55640.png +../../data/yoloGtold1/train/55641.png +../../data/yoloGtold1/train/55642.png +../../data/yoloGtold1/train/55643.png +../../data/yoloGtold1/train/55644.png +../../data/yoloGtold1/train/55645.png +../../data/yoloGtold1/train/55646.png +../../data/yoloGtold1/train/55647.png +../../data/yoloGtold1/train/55648.png +../../data/yoloGtold1/train/55649.png +../../data/yoloGtold1/train/55650.png +../../data/yoloGtold1/train/55651.png +../../data/yoloGtold1/train/55652.png +../../data/yoloGtold1/train/55653.png +../../data/yoloGtold1/train/55654.png +../../data/yoloGtold1/train/55655.png +../../data/yoloGtold1/train/55656.png +../../data/yoloGtold1/train/55657.png +../../data/yoloGtold1/train/55658.png +../../data/yoloGtold1/train/55659.png +../../data/yoloGtold1/train/55660.png +../../data/yoloGtold1/train/55661.png +../../data/yoloGtold1/train/55662.png +../../data/yoloGtold1/train/55663.png +../../data/yoloGtold1/train/55664.png +../../data/yoloGtold1/train/55665.png +../../data/yoloGtold1/train/55666.png +../../data/yoloGtold1/train/55667.png +../../data/yoloGtold1/train/55668.png +../../data/yoloGtold1/train/55669.png +../../data/yoloGtold1/train/55670.png +../../data/yoloGtold1/train/55671.png +../../data/yoloGtold1/train/55672.png +../../data/yoloGtold1/train/55673.png +../../data/yoloGtold1/train/55674.png +../../data/yoloGtold1/train/55675.png +../../data/yoloGtold1/train/55676.png +../../data/yoloGtold1/train/55677.png +../../data/yoloGtold1/train/55678.png +../../data/yoloGtold1/train/55679.png +../../data/yoloGtold1/train/55680.png +../../data/yoloGtold1/train/55681.png +../../data/yoloGtold1/train/55682.png +../../data/yoloGtold1/train/55683.png +../../data/yoloGtold1/train/55684.png +../../data/yoloGtold1/train/55685.png +../../data/yoloGtold1/train/55686.png +../../data/yoloGtold1/train/55687.png +../../data/yoloGtold1/train/55688.png +../../data/yoloGtold1/train/55689.png +../../data/yoloGtold1/train/55690.png +../../data/yoloGtold1/train/55691.png +../../data/yoloGtold1/train/55692.png +../../data/yoloGtold1/train/55693.png +../../data/yoloGtold1/train/55694.png +../../data/yoloGtold1/train/55695.png +../../data/yoloGtold1/train/55696.png +../../data/yoloGtold1/train/55697.png +../../data/yoloGtold1/train/55698.png +../../data/yoloGtold1/train/55699.png +../../data/yoloGtold1/train/55700.png +../../data/yoloGtold1/train/55701.png +../../data/yoloGtold1/train/55702.png +../../data/yoloGtold1/train/55703.png +../../data/yoloGtold1/train/55704.png +../../data/yoloGtold1/train/55705.png +../../data/yoloGtold1/train/55706.png +../../data/yoloGtold1/train/55707.png +../../data/yoloGtold1/train/55708.png +../../data/yoloGtold1/train/55709.png +../../data/yoloGtold1/train/55710.png +../../data/yoloGtold1/train/55711.png +../../data/yoloGtold1/train/55712.png +../../data/yoloGtold1/train/55713.png +../../data/yoloGtold1/train/55714.png +../../data/yoloGtold1/train/55715.png +../../data/yoloGtold1/train/55716.png +../../data/yoloGtold1/train/55717.png +../../data/yoloGtold1/train/55718.png +../../data/yoloGtold1/train/55719.png +../../data/yoloGtold1/train/55720.png +../../data/yoloGtold1/train/55721.png +../../data/yoloGtold1/train/55722.png +../../data/yoloGtold1/train/55723.png +../../data/yoloGtold1/train/55724.png +../../data/yoloGtold1/train/55725.png +../../data/yoloGtold1/train/55726.png +../../data/yoloGtold1/train/55727.png +../../data/yoloGtold1/train/55728.png +../../data/yoloGtold1/train/55729.png +../../data/yoloGtold1/train/55730.png +../../data/yoloGtold1/train/55731.png +../../data/yoloGtold1/train/55732.png +../../data/yoloGtold1/train/55733.png +../../data/yoloGtold1/train/55734.png +../../data/yoloGtold1/train/55735.png +../../data/yoloGtold1/train/55736.png +../../data/yoloGtold1/train/55737.png +../../data/yoloGtold1/train/55738.png +../../data/yoloGtold1/train/55739.png +../../data/yoloGtold1/train/55740.png +../../data/yoloGtold1/train/55741.png +../../data/yoloGtold1/train/55742.png +../../data/yoloGtold1/train/55743.png +../../data/yoloGtold1/train/55744.png +../../data/yoloGtold1/train/55745.png +../../data/yoloGtold1/train/55746.png +../../data/yoloGtold1/train/55747.png +../../data/yoloGtold1/train/55748.png +../../data/yoloGtold1/train/55749.png +../../data/yoloGtold1/train/55750.png +../../data/yoloGtold1/train/55751.png +../../data/yoloGtold1/train/55752.png +../../data/yoloGtold1/train/55753.png +../../data/yoloGtold1/train/55754.png +../../data/yoloGtold1/train/55755.png +../../data/yoloGtold1/train/55756.png +../../data/yoloGtold1/train/55757.png +../../data/yoloGtold1/train/55758.png +../../data/yoloGtold1/train/55759.png +../../data/yoloGtold1/train/55760.png +../../data/yoloGtold1/train/55761.png +../../data/yoloGtold1/train/55762.png +../../data/yoloGtold1/train/55763.png +../../data/yoloGtold1/train/55764.png +../../data/yoloGtold1/train/55765.png +../../data/yoloGtold1/train/55766.png +../../data/yoloGtold1/train/55767.png +../../data/yoloGtold1/train/55768.png +../../data/yoloGtold1/train/55769.png +../../data/yoloGtold1/train/55770.png +../../data/yoloGtold1/train/55771.png +../../data/yoloGtold1/train/55772.png +../../data/yoloGtold1/train/55773.png +../../data/yoloGtold1/train/55774.png +../../data/yoloGtold1/train/55775.png +../../data/yoloGtold1/train/55776.png +../../data/yoloGtold1/train/55777.png +../../data/yoloGtold1/train/55778.png +../../data/yoloGtold1/train/55779.png +../../data/yoloGtold1/train/55780.png +../../data/yoloGtold1/train/55781.png +../../data/yoloGtold1/train/55782.png +../../data/yoloGtold1/train/55783.png +../../data/yoloGtold1/train/55784.png +../../data/yoloGtold1/train/55785.png +../../data/yoloGtold1/train/55786.png +../../data/yoloGtold1/train/55787.png +../../data/yoloGtold1/train/55788.png +../../data/yoloGtold1/train/55789.png +../../data/yoloGtold1/train/55790.png +../../data/yoloGtold1/train/55791.png +../../data/yoloGtold1/train/55792.png +../../data/yoloGtold1/train/55793.png +../../data/yoloGtold1/train/55794.png +../../data/yoloGtold1/train/55795.png +../../data/yoloGtold1/train/55796.png +../../data/yoloGtold1/train/55797.png +../../data/yoloGtold1/train/55798.png +../../data/yoloGtold1/train/55799.png +../../data/yoloGtold1/train/55800.png +../../data/yoloGtold1/train/55801.png +../../data/yoloGtold1/train/55802.png +../../data/yoloGtold1/train/55803.png +../../data/yoloGtold1/train/55804.png +../../data/yoloGtold1/train/55805.png +../../data/yoloGtold1/train/55806.png +../../data/yoloGtold1/train/55807.png +../../data/yoloGtold1/train/55808.png +../../data/yoloGtold1/train/55809.png +../../data/yoloGtold1/train/55810.png +../../data/yoloGtold1/train/55811.png +../../data/yoloGtold1/train/55812.png +../../data/yoloGtold1/train/55813.png +../../data/yoloGtold1/train/55814.png +../../data/yoloGtold1/train/55815.png +../../data/yoloGtold1/train/55816.png +../../data/yoloGtold1/train/55817.png +../../data/yoloGtold1/train/55818.png +../../data/yoloGtold1/train/55819.png +../../data/yoloGtold1/train/55820.png +../../data/yoloGtold1/train/55821.png +../../data/yoloGtold1/train/55822.png +../../data/yoloGtold1/train/55823.png +../../data/yoloGtold1/train/55824.png +../../data/yoloGtold1/train/55825.png +../../data/yoloGtold1/train/55826.png +../../data/yoloGtold1/train/55827.png +../../data/yoloGtold1/train/55828.png +../../data/yoloGtold1/train/55829.png +../../data/yoloGtold1/train/55830.png +../../data/yoloGtold1/train/55831.png +../../data/yoloGtold1/train/55832.png +../../data/yoloGtold1/train/55833.png +../../data/yoloGtold1/train/55834.png +../../data/yoloGtold1/train/55835.png +../../data/yoloGtold1/train/55836.png +../../data/yoloGtold1/train/55837.png +../../data/yoloGtold1/train/55838.png +../../data/yoloGtold1/train/55839.png +../../data/yoloGtold1/train/55840.png +../../data/yoloGtold1/train/55841.png +../../data/yoloGtold1/train/55842.png +../../data/yoloGtold1/train/55843.png +../../data/yoloGtold1/train/55844.png +../../data/yoloGtold1/train/55845.png +../../data/yoloGtold1/train/55846.png +../../data/yoloGtold1/train/55847.png +../../data/yoloGtold1/train/55848.png +../../data/yoloGtold1/train/55849.png +../../data/yoloGtold1/train/55850.png +../../data/yoloGtold1/train/55851.png +../../data/yoloGtold1/train/55852.png +../../data/yoloGtold1/train/55853.png +../../data/yoloGtold1/train/55854.png +../../data/yoloGtold1/train/55855.png +../../data/yoloGtold1/train/55856.png +../../data/yoloGtold1/train/55857.png +../../data/yoloGtold1/train/55858.png +../../data/yoloGtold1/train/55859.png +../../data/yoloGtold1/train/55860.png +../../data/yoloGtold1/train/55861.png +../../data/yoloGtold1/train/55862.png +../../data/yoloGtold1/train/55863.png +../../data/yoloGtold1/train/55864.png +../../data/yoloGtold1/train/55865.png +../../data/yoloGtold1/train/55866.png +../../data/yoloGtold1/train/55867.png +../../data/yoloGtold1/train/55868.png +../../data/yoloGtold1/train/55869.png +../../data/yoloGtold1/train/55870.png +../../data/yoloGtold1/train/55871.png +../../data/yoloGtold1/train/55872.png +../../data/yoloGtold1/train/55873.png +../../data/yoloGtold1/train/55874.png +../../data/yoloGtold1/train/55875.png +../../data/yoloGtold1/train/55876.png +../../data/yoloGtold1/train/55877.png +../../data/yoloGtold1/train/55878.png +../../data/yoloGtold1/train/55879.png +../../data/yoloGtold1/train/55880.png +../../data/yoloGtold1/train/55881.png +../../data/yoloGtold1/train/55882.png +../../data/yoloGtold1/train/55883.png +../../data/yoloGtold1/train/55884.png +../../data/yoloGtold1/train/55885.png +../../data/yoloGtold1/train/55886.png +../../data/yoloGtold1/train/55887.png +../../data/yoloGtold1/train/55888.png +../../data/yoloGtold1/train/55889.png +../../data/yoloGtold1/train/55890.png +../../data/yoloGtold1/train/55891.png +../../data/yoloGtold1/train/55892.png +../../data/yoloGtold1/train/55893.png +../../data/yoloGtold1/train/55894.png +../../data/yoloGtold1/train/55895.png +../../data/yoloGtold1/train/55896.png +../../data/yoloGtold1/train/55897.png +../../data/yoloGtold1/train/55898.png +../../data/yoloGtold1/train/55899.png +../../data/yoloGtold1/train/55900.png +../../data/yoloGtold1/train/55901.png +../../data/yoloGtold1/train/55902.png +../../data/yoloGtold1/train/55903.png +../../data/yoloGtold1/train/55904.png +../../data/yoloGtold1/train/55905.png +../../data/yoloGtold1/train/55906.png +../../data/yoloGtold1/train/55907.png +../../data/yoloGtold1/train/55908.png +../../data/yoloGtold1/train/55909.png +../../data/yoloGtold1/train/55910.png +../../data/yoloGtold1/train/55911.png +../../data/yoloGtold1/train/55912.png +../../data/yoloGtold1/train/55913.png +../../data/yoloGtold1/train/55914.png +../../data/yoloGtold1/train/55915.png +../../data/yoloGtold1/train/55916.png +../../data/yoloGtold1/train/55917.png +../../data/yoloGtold1/train/55918.png +../../data/yoloGtold1/train/55919.png +../../data/yoloGtold1/train/55920.png +../../data/yoloGtold1/train/55921.png +../../data/yoloGtold1/train/55922.png +../../data/yoloGtold1/train/55923.png +../../data/yoloGtold1/train/55924.png +../../data/yoloGtold1/train/55925.png +../../data/yoloGtold1/train/55926.png +../../data/yoloGtold1/train/55927.png +../../data/yoloGtold1/train/55928.png +../../data/yoloGtold1/train/55929.png +../../data/yoloGtold1/train/55930.png +../../data/yoloGtold1/train/55931.png +../../data/yoloGtold1/train/55932.png +../../data/yoloGtold1/train/55933.png +../../data/yoloGtold1/train/55934.png +../../data/yoloGtold1/train/55935.png +../../data/yoloGtold1/train/55936.png +../../data/yoloGtold1/train/55937.png +../../data/yoloGtold1/train/55938.png +../../data/yoloGtold1/train/55939.png +../../data/yoloGtold1/train/55940.png +../../data/yoloGtold1/train/55941.png +../../data/yoloGtold1/train/55942.png +../../data/yoloGtold1/train/55943.png +../../data/yoloGtold1/train/55944.png +../../data/yoloGtold1/train/55945.png +../../data/yoloGtold1/train/55946.png +../../data/yoloGtold1/train/55947.png +../../data/yoloGtold1/train/55948.png +../../data/yoloGtold1/train/55949.png +../../data/yoloGtold1/train/55950.png +../../data/yoloGtold1/train/55951.png +../../data/yoloGtold1/train/55952.png +../../data/yoloGtold1/train/55953.png +../../data/yoloGtold1/train/55954.png +../../data/yoloGtold1/train/55955.png +../../data/yoloGtold1/train/55956.png +../../data/yoloGtold1/train/55957.png +../../data/yoloGtold1/train/55958.png +../../data/yoloGtold1/train/55959.png +../../data/yoloGtold1/train/55960.png +../../data/yoloGtold1/train/55961.png +../../data/yoloGtold1/train/55962.png +../../data/yoloGtold1/train/55963.png +../../data/yoloGtold1/train/55964.png +../../data/yoloGtold1/train/55965.png +../../data/yoloGtold1/train/55966.png +../../data/yoloGtold1/train/55967.png +../../data/yoloGtold1/train/55968.png +../../data/yoloGtold1/train/55969.png +../../data/yoloGtold1/train/55970.png +../../data/yoloGtold1/train/55971.png +../../data/yoloGtold1/train/55972.png +../../data/yoloGtold1/train/55973.png +../../data/yoloGtold1/train/55974.png +../../data/yoloGtold1/train/55975.png +../../data/yoloGtold1/train/55976.png +../../data/yoloGtold1/train/55977.png +../../data/yoloGtold1/train/55978.png +../../data/yoloGtold1/train/55979.png +../../data/yoloGtold1/train/55980.png +../../data/yoloGtold1/train/55981.png +../../data/yoloGtold1/train/55982.png +../../data/yoloGtold1/train/55983.png +../../data/yoloGtold1/train/55984.png +../../data/yoloGtold1/train/55985.png +../../data/yoloGtold1/train/55986.png +../../data/yoloGtold1/train/55987.png +../../data/yoloGtold1/train/55988.png +../../data/yoloGtold1/train/55989.png +../../data/yoloGtold1/train/55990.png +../../data/yoloGtold1/train/55991.png +../../data/yoloGtold1/train/55992.png +../../data/yoloGtold1/train/55993.png +../../data/yoloGtold1/train/55994.png +../../data/yoloGtold1/train/55995.png +../../data/yoloGtold1/train/55996.png +../../data/yoloGtold1/train/55997.png +../../data/yoloGtold1/train/55998.png +../../data/yoloGtold1/train/55999.png +../../data/yoloGtold1/train/56000.png +../../data/yoloGtold1/train/56001.png +../../data/yoloGtold1/train/56002.png +../../data/yoloGtold1/train/56003.png +../../data/yoloGtold1/train/56004.png +../../data/yoloGtold1/train/56005.png +../../data/yoloGtold1/train/56006.png +../../data/yoloGtold1/train/56007.png +../../data/yoloGtold1/train/56008.png +../../data/yoloGtold1/train/56009.png +../../data/yoloGtold1/train/56010.png +../../data/yoloGtold1/train/56011.png +../../data/yoloGtold1/train/56012.png +../../data/yoloGtold1/train/56013.png +../../data/yoloGtold1/train/56014.png +../../data/yoloGtold1/train/56015.png +../../data/yoloGtold1/train/56016.png +../../data/yoloGtold1/train/56017.png +../../data/yoloGtold1/train/56018.png +../../data/yoloGtold1/train/56019.png +../../data/yoloGtold1/train/56020.png +../../data/yoloGtold1/train/56021.png +../../data/yoloGtold1/train/56022.png +../../data/yoloGtold1/train/56023.png +../../data/yoloGtold1/train/56024.png +../../data/yoloGtold1/train/56025.png +../../data/yoloGtold1/train/56026.png +../../data/yoloGtold1/train/56027.png +../../data/yoloGtold1/train/56028.png +../../data/yoloGtold1/train/56029.png +../../data/yoloGtold1/train/56030.png +../../data/yoloGtold1/train/56031.png +../../data/yoloGtold1/train/56032.png +../../data/yoloGtold1/train/56033.png +../../data/yoloGtold1/train/56034.png +../../data/yoloGtold1/train/56035.png +../../data/yoloGtold1/train/56036.png +../../data/yoloGtold1/train/56037.png +../../data/yoloGtold1/train/56038.png +../../data/yoloGtold1/train/56039.png +../../data/yoloGtold1/train/56040.png +../../data/yoloGtold1/train/56041.png +../../data/yoloGtold1/train/56042.png +../../data/yoloGtold1/train/56043.png +../../data/yoloGtold1/train/56044.png +../../data/yoloGtold1/train/56045.png +../../data/yoloGtold1/train/56046.png +../../data/yoloGtold1/train/56047.png +../../data/yoloGtold1/train/56048.png +../../data/yoloGtold1/train/56049.png +../../data/yoloGtold1/train/56050.png +../../data/yoloGtold1/train/56051.png +../../data/yoloGtold1/train/56052.png +../../data/yoloGtold1/train/56053.png +../../data/yoloGtold1/train/56054.png +../../data/yoloGtold1/train/56055.png +../../data/yoloGtold1/train/56056.png +../../data/yoloGtold1/train/56057.png +../../data/yoloGtold1/train/56058.png +../../data/yoloGtold1/train/56059.png +../../data/yoloGtold1/train/56060.png +../../data/yoloGtold1/train/56061.png +../../data/yoloGtold1/train/56062.png +../../data/yoloGtold1/train/56063.png +../../data/yoloGtold1/train/56064.png +../../data/yoloGtold1/train/56065.png +../../data/yoloGtold1/train/56066.png +../../data/yoloGtold1/train/56067.png +../../data/yoloGtold1/train/56068.png +../../data/yoloGtold1/train/56069.png +../../data/yoloGtold1/train/56070.png +../../data/yoloGtold1/train/56071.png +../../data/yoloGtold1/train/56072.png +../../data/yoloGtold1/train/56073.png +../../data/yoloGtold1/train/56074.png +../../data/yoloGtold1/train/56075.png +../../data/yoloGtold1/train/56076.png +../../data/yoloGtold1/train/56077.png +../../data/yoloGtold1/train/56078.png +../../data/yoloGtold1/train/56079.png +../../data/yoloGtold1/train/56080.png +../../data/yoloGtold1/train/56081.png +../../data/yoloGtold1/train/56082.png +../../data/yoloGtold1/train/56083.png +../../data/yoloGtold1/train/56084.png +../../data/yoloGtold1/train/56085.png +../../data/yoloGtold1/train/56086.png +../../data/yoloGtold1/train/56087.png +../../data/yoloGtold1/train/56088.png +../../data/yoloGtold1/train/56089.png +../../data/yoloGtold1/train/56090.png +../../data/yoloGtold1/train/56091.png +../../data/yoloGtold1/train/56092.png +../../data/yoloGtold1/train/56093.png +../../data/yoloGtold1/train/56094.png +../../data/yoloGtold1/train/56095.png +../../data/yoloGtold1/train/56096.png +../../data/yoloGtold1/train/56097.png +../../data/yoloGtold1/train/56098.png +../../data/yoloGtold1/train/56099.png +../../data/yoloGtold1/train/56100.png +../../data/yoloGtold1/train/56101.png +../../data/yoloGtold1/train/56102.png +../../data/yoloGtold1/train/56103.png +../../data/yoloGtold1/train/56104.png +../../data/yoloGtold1/train/56105.png +../../data/yoloGtold1/train/56106.png +../../data/yoloGtold1/train/56107.png +../../data/yoloGtold1/train/56108.png +../../data/yoloGtold1/train/56109.png +../../data/yoloGtold1/train/56110.png +../../data/yoloGtold1/train/56111.png +../../data/yoloGtold1/train/56112.png +../../data/yoloGtold1/train/56113.png +../../data/yoloGtold1/train/56114.png +../../data/yoloGtold1/train/56115.png +../../data/yoloGtold1/train/56116.png +../../data/yoloGtold1/train/56117.png +../../data/yoloGtold1/train/56118.png +../../data/yoloGtold1/train/56119.png +../../data/yoloGtold1/train/56120.png +../../data/yoloGtold1/train/56121.png +../../data/yoloGtold1/train/56122.png +../../data/yoloGtold1/train/56123.png +../../data/yoloGtold1/train/56124.png +../../data/yoloGtold1/train/56125.png +../../data/yoloGtold1/train/56126.png +../../data/yoloGtold1/train/56127.png +../../data/yoloGtold1/train/56128.png +../../data/yoloGtold1/train/56129.png +../../data/yoloGtold1/train/56130.png +../../data/yoloGtold1/train/56131.png +../../data/yoloGtold1/train/56132.png +../../data/yoloGtold1/train/56133.png +../../data/yoloGtold1/train/56134.png +../../data/yoloGtold1/train/56135.png +../../data/yoloGtold1/train/56136.png +../../data/yoloGtold1/train/56137.png +../../data/yoloGtold1/train/56138.png +../../data/yoloGtold1/train/56139.png +../../data/yoloGtold1/train/56140.png +../../data/yoloGtold1/train/56141.png +../../data/yoloGtold1/train/56142.png +../../data/yoloGtold1/train/56143.png +../../data/yoloGtold1/train/56144.png +../../data/yoloGtold1/train/56145.png +../../data/yoloGtold1/train/56146.png +../../data/yoloGtold1/train/56147.png +../../data/yoloGtold1/train/56148.png +../../data/yoloGtold1/train/56149.png +../../data/yoloGtold1/train/56150.png +../../data/yoloGtold1/train/56151.png +../../data/yoloGtold1/train/56152.png +../../data/yoloGtold1/train/56153.png +../../data/yoloGtold1/train/56154.png +../../data/yoloGtold1/train/56155.png +../../data/yoloGtold1/train/56156.png +../../data/yoloGtold1/train/56157.png +../../data/yoloGtold1/train/56158.png +../../data/yoloGtold1/train/56159.png +../../data/yoloGtold1/train/56160.png +../../data/yoloGtold1/train/56161.png +../../data/yoloGtold1/train/56162.png +../../data/yoloGtold1/train/56163.png +../../data/yoloGtold1/train/56164.png +../../data/yoloGtold1/train/56165.png +../../data/yoloGtold1/train/56166.png +../../data/yoloGtold1/train/56167.png +../../data/yoloGtold1/train/56168.png +../../data/yoloGtold1/train/56169.png +../../data/yoloGtold1/train/56170.png +../../data/yoloGtold1/train/56171.png +../../data/yoloGtold1/train/56172.png +../../data/yoloGtold1/train/56173.png +../../data/yoloGtold1/train/56174.png +../../data/yoloGtold1/train/56175.png +../../data/yoloGtold1/train/56176.png +../../data/yoloGtold1/train/56177.png +../../data/yoloGtold1/train/56178.png +../../data/yoloGtold1/train/56179.png +../../data/yoloGtold1/train/56180.png +../../data/yoloGtold1/train/56181.png +../../data/yoloGtold1/train/56182.png +../../data/yoloGtold1/train/56183.png +../../data/yoloGtold1/train/56184.png +../../data/yoloGtold1/train/56185.png +../../data/yoloGtold1/train/56186.png +../../data/yoloGtold1/train/56187.png +../../data/yoloGtold1/train/56188.png +../../data/yoloGtold1/train/56189.png +../../data/yoloGtold1/train/56190.png +../../data/yoloGtold1/train/56191.png +../../data/yoloGtold1/train/56192.png +../../data/yoloGtold1/train/56193.png +../../data/yoloGtold1/train/56194.png +../../data/yoloGtold1/train/56195.png +../../data/yoloGtold1/train/56196.png +../../data/yoloGtold1/train/56197.png +../../data/yoloGtold1/train/56198.png +../../data/yoloGtold1/train/56199.png +../../data/yoloGtold1/train/56200.png +../../data/yoloGtold1/train/56201.png +../../data/yoloGtold1/train/56202.png +../../data/yoloGtold1/train/56203.png +../../data/yoloGtold1/train/56204.png +../../data/yoloGtold1/train/56205.png +../../data/yoloGtold1/train/56206.png +../../data/yoloGtold1/train/56207.png +../../data/yoloGtold1/train/56208.png +../../data/yoloGtold1/train/56209.png +../../data/yoloGtold1/train/56210.png +../../data/yoloGtold1/train/56211.png +../../data/yoloGtold1/train/56212.png +../../data/yoloGtold1/train/56213.png +../../data/yoloGtold1/train/56214.png +../../data/yoloGtold1/train/56215.png +../../data/yoloGtold1/train/56216.png +../../data/yoloGtold1/train/56217.png +../../data/yoloGtold1/train/56218.png +../../data/yoloGtold1/train/56219.png +../../data/yoloGtold1/train/56220.png +../../data/yoloGtold1/train/56221.png +../../data/yoloGtold1/train/56222.png +../../data/yoloGtold1/train/56223.png +../../data/yoloGtold1/train/56224.png +../../data/yoloGtold1/train/56225.png +../../data/yoloGtold1/train/56226.png +../../data/yoloGtold1/train/56227.png +../../data/yoloGtold1/train/56228.png +../../data/yoloGtold1/train/56229.png +../../data/yoloGtold1/train/56230.png +../../data/yoloGtold1/train/56231.png +../../data/yoloGtold1/train/56232.png +../../data/yoloGtold1/train/56233.png +../../data/yoloGtold1/train/56234.png +../../data/yoloGtold1/train/56235.png +../../data/yoloGtold1/train/56236.png +../../data/yoloGtold1/train/56237.png +../../data/yoloGtold1/train/56238.png +../../data/yoloGtold1/train/56239.png +../../data/yoloGtold1/train/56240.png +../../data/yoloGtold1/train/56241.png +../../data/yoloGtold1/train/56242.png +../../data/yoloGtold1/train/56243.png +../../data/yoloGtold1/train/56244.png +../../data/yoloGtold1/train/56245.png +../../data/yoloGtold1/train/56246.png +../../data/yoloGtold1/train/56247.png +../../data/yoloGtold1/train/56248.png +../../data/yoloGtold1/train/56249.png +../../data/yoloGtold1/train/56250.png +../../data/yoloGtold1/train/56251.png +../../data/yoloGtold1/train/56252.png +../../data/yoloGtold1/train/56253.png +../../data/yoloGtold1/train/56254.png +../../data/yoloGtold1/train/56255.png +../../data/yoloGtold1/train/56256.png +../../data/yoloGtold1/train/56257.png +../../data/yoloGtold1/train/56258.png +../../data/yoloGtold1/train/56259.png +../../data/yoloGtold1/train/56260.png +../../data/yoloGtold1/train/56261.png +../../data/yoloGtold1/train/56262.png +../../data/yoloGtold1/train/56263.png +../../data/yoloGtold1/train/56264.png +../../data/yoloGtold1/train/56265.png +../../data/yoloGtold1/train/56266.png +../../data/yoloGtold1/train/56267.png +../../data/yoloGtold1/train/56268.png +../../data/yoloGtold1/train/56269.png +../../data/yoloGtold1/train/56270.png +../../data/yoloGtold1/train/56271.png +../../data/yoloGtold1/train/56272.png +../../data/yoloGtold1/train/56273.png +../../data/yoloGtold1/train/56274.png +../../data/yoloGtold1/train/56275.png +../../data/yoloGtold1/train/56276.png +../../data/yoloGtold1/train/56277.png +../../data/yoloGtold1/train/56278.png +../../data/yoloGtold1/train/56279.png +../../data/yoloGtold1/train/56280.png +../../data/yoloGtold1/train/56281.png +../../data/yoloGtold1/train/56282.png +../../data/yoloGtold1/train/56283.png +../../data/yoloGtold1/train/56284.png +../../data/yoloGtold1/train/56285.png +../../data/yoloGtold1/train/56286.png +../../data/yoloGtold1/train/56287.png +../../data/yoloGtold1/train/56288.png +../../data/yoloGtold1/train/56289.png +../../data/yoloGtold1/train/56290.png +../../data/yoloGtold1/train/56291.png +../../data/yoloGtold1/train/56292.png +../../data/yoloGtold1/train/56293.png +../../data/yoloGtold1/train/56294.png +../../data/yoloGtold1/train/56295.png +../../data/yoloGtold1/train/56296.png +../../data/yoloGtold1/train/56297.png +../../data/yoloGtold1/train/56298.png +../../data/yoloGtold1/train/56299.png +../../data/yoloGtold1/train/56300.png +../../data/yoloGtold1/train/56301.png +../../data/yoloGtold1/train/56302.png +../../data/yoloGtold1/train/56303.png +../../data/yoloGtold1/train/56304.png +../../data/yoloGtold1/train/56305.png +../../data/yoloGtold1/train/56306.png +../../data/yoloGtold1/train/56307.png +../../data/yoloGtold1/train/56308.png +../../data/yoloGtold1/train/56309.png +../../data/yoloGtold1/train/56310.png +../../data/yoloGtold1/train/56311.png +../../data/yoloGtold1/train/56312.png +../../data/yoloGtold1/train/56313.png +../../data/yoloGtold1/train/56314.png +../../data/yoloGtold1/train/56315.png +../../data/yoloGtold1/train/56316.png +../../data/yoloGtold1/train/56317.png +../../data/yoloGtold1/train/56318.png +../../data/yoloGtold1/train/56319.png +../../data/yoloGtold1/train/56320.png +../../data/yoloGtold1/train/56321.png +../../data/yoloGtold1/train/56322.png +../../data/yoloGtold1/train/56323.png +../../data/yoloGtold1/train/56324.png +../../data/yoloGtold1/train/56325.png +../../data/yoloGtold1/train/56326.png +../../data/yoloGtold1/train/56327.png +../../data/yoloGtold1/train/56328.png +../../data/yoloGtold1/train/56329.png +../../data/yoloGtold1/train/56330.png +../../data/yoloGtold1/train/56331.png +../../data/yoloGtold1/train/56332.png +../../data/yoloGtold1/train/56333.png +../../data/yoloGtold1/train/56334.png +../../data/yoloGtold1/train/56335.png +../../data/yoloGtold1/train/56336.png +../../data/yoloGtold1/train/56337.png +../../data/yoloGtold1/train/56338.png +../../data/yoloGtold1/train/56339.png +../../data/yoloGtold1/train/56340.png +../../data/yoloGtold1/train/56341.png +../../data/yoloGtold1/train/56342.png +../../data/yoloGtold1/train/56343.png +../../data/yoloGtold1/train/56344.png +../../data/yoloGtold1/train/56345.png +../../data/yoloGtold1/train/56346.png +../../data/yoloGtold1/train/56347.png +../../data/yoloGtold1/train/56348.png +../../data/yoloGtold1/train/56349.png +../../data/yoloGtold1/train/56350.png +../../data/yoloGtold1/train/56351.png +../../data/yoloGtold1/train/56352.png +../../data/yoloGtold1/train/56353.png +../../data/yoloGtold1/train/56354.png +../../data/yoloGtold1/train/56355.png +../../data/yoloGtold1/train/56356.png +../../data/yoloGtold1/train/56357.png +../../data/yoloGtold1/train/56358.png +../../data/yoloGtold1/train/56359.png +../../data/yoloGtold1/train/56360.png +../../data/yoloGtold1/train/56361.png +../../data/yoloGtold1/train/56362.png +../../data/yoloGtold1/train/56363.png +../../data/yoloGtold1/train/56364.png +../../data/yoloGtold1/train/56365.png +../../data/yoloGtold1/train/56366.png +../../data/yoloGtold1/train/56367.png +../../data/yoloGtold1/train/56368.png +../../data/yoloGtold1/train/56369.png +../../data/yoloGtold1/train/56370.png +../../data/yoloGtold1/train/56371.png +../../data/yoloGtold1/train/56372.png +../../data/yoloGtold1/train/56373.png +../../data/yoloGtold1/train/56374.png +../../data/yoloGtold1/train/56375.png +../../data/yoloGtold1/train/56376.png +../../data/yoloGtold1/train/56377.png +../../data/yoloGtold1/train/56378.png +../../data/yoloGtold1/train/56379.png +../../data/yoloGtold1/train/56380.png +../../data/yoloGtold1/train/56381.png +../../data/yoloGtold1/train/56382.png +../../data/yoloGtold1/train/56383.png +../../data/yoloGtold1/train/56384.png +../../data/yoloGtold1/train/56385.png +../../data/yoloGtold1/train/56386.png +../../data/yoloGtold1/train/56387.png +../../data/yoloGtold1/train/56388.png +../../data/yoloGtold1/train/56389.png +../../data/yoloGtold1/train/56390.png +../../data/yoloGtold1/train/56391.png +../../data/yoloGtold1/train/56392.png +../../data/yoloGtold1/train/56393.png +../../data/yoloGtold1/train/56394.png +../../data/yoloGtold1/train/56395.png +../../data/yoloGtold1/train/56396.png +../../data/yoloGtold1/train/56397.png +../../data/yoloGtold1/train/56398.png +../../data/yoloGtold1/train/56399.png +../../data/yoloGtold1/train/56400.png +../../data/yoloGtold1/train/56401.png +../../data/yoloGtold1/train/56402.png +../../data/yoloGtold1/train/56403.png +../../data/yoloGtold1/train/56404.png +../../data/yoloGtold1/train/56405.png +../../data/yoloGtold1/train/56406.png +../../data/yoloGtold1/train/56407.png +../../data/yoloGtold1/train/56408.png +../../data/yoloGtold1/train/56409.png +../../data/yoloGtold1/train/56410.png +../../data/yoloGtold1/train/56411.png +../../data/yoloGtold1/train/56412.png +../../data/yoloGtold1/train/56413.png +../../data/yoloGtold1/train/56414.png +../../data/yoloGtold1/train/56415.png +../../data/yoloGtold1/train/56416.png +../../data/yoloGtold1/train/56417.png +../../data/yoloGtold1/train/56418.png +../../data/yoloGtold1/train/56419.png +../../data/yoloGtold1/train/56420.png +../../data/yoloGtold1/train/56421.png +../../data/yoloGtold1/train/56422.png +../../data/yoloGtold1/train/56423.png +../../data/yoloGtold1/train/56424.png +../../data/yoloGtold1/train/56425.png +../../data/yoloGtold1/train/56426.png +../../data/yoloGtold1/train/56427.png +../../data/yoloGtold1/train/56428.png +../../data/yoloGtold1/train/56429.png +../../data/yoloGtold1/train/56430.png +../../data/yoloGtold1/train/56431.png +../../data/yoloGtold1/train/56432.png +../../data/yoloGtold1/train/56433.png +../../data/yoloGtold1/train/56434.png +../../data/yoloGtold1/train/56435.png +../../data/yoloGtold1/train/56436.png +../../data/yoloGtold1/train/56437.png +../../data/yoloGtold1/train/56438.png +../../data/yoloGtold1/train/56439.png +../../data/yoloGtold1/train/56440.png +../../data/yoloGtold1/train/56441.png +../../data/yoloGtold1/train/56442.png +../../data/yoloGtold1/train/56443.png +../../data/yoloGtold1/train/56444.png +../../data/yoloGtold1/train/56445.png +../../data/yoloGtold1/train/56446.png +../../data/yoloGtold1/train/56447.png +../../data/yoloGtold1/train/56448.png +../../data/yoloGtold1/train/56449.png +../../data/yoloGtold1/train/56450.png +../../data/yoloGtold1/train/56451.png +../../data/yoloGtold1/train/56452.png +../../data/yoloGtold1/train/56453.png +../../data/yoloGtold1/train/56454.png +../../data/yoloGtold1/train/56455.png +../../data/yoloGtold1/train/56456.png +../../data/yoloGtold1/train/56457.png +../../data/yoloGtold1/train/56458.png +../../data/yoloGtold1/train/56459.png +../../data/yoloGtold1/train/56460.png +../../data/yoloGtold1/train/56461.png +../../data/yoloGtold1/train/56462.png +../../data/yoloGtold1/train/56463.png +../../data/yoloGtold1/train/56464.png +../../data/yoloGtold1/train/56465.png +../../data/yoloGtold1/train/56466.png +../../data/yoloGtold1/train/56467.png +../../data/yoloGtold1/train/56468.png +../../data/yoloGtold1/train/56469.png +../../data/yoloGtold1/train/56470.png +../../data/yoloGtold1/train/56471.png +../../data/yoloGtold1/train/56472.png +../../data/yoloGtold1/train/56473.png +../../data/yoloGtold1/train/56474.png +../../data/yoloGtold1/train/56475.png +../../data/yoloGtold1/train/56476.png +../../data/yoloGtold1/train/56477.png +../../data/yoloGtold1/train/56478.png +../../data/yoloGtold1/train/56479.png +../../data/yoloGtold1/train/56480.png +../../data/yoloGtold1/train/56481.png +../../data/yoloGtold1/train/56482.png +../../data/yoloGtold1/train/56483.png +../../data/yoloGtold1/train/56484.png +../../data/yoloGtold1/train/56485.png +../../data/yoloGtold1/train/56486.png +../../data/yoloGtold1/train/56487.png +../../data/yoloGtold1/train/56488.png +../../data/yoloGtold1/train/56489.png +../../data/yoloGtold1/train/56490.png +../../data/yoloGtold1/train/56491.png +../../data/yoloGtold1/train/56492.png +../../data/yoloGtold1/train/56493.png +../../data/yoloGtold1/train/56494.png +../../data/yoloGtold1/train/56495.png +../../data/yoloGtold1/train/56496.png +../../data/yoloGtold1/train/56497.png +../../data/yoloGtold1/train/56498.png +../../data/yoloGtold1/train/56499.png +../../data/yoloGtold1/train/56500.png +../../data/yoloGtold1/train/56501.png +../../data/yoloGtold1/train/56502.png +../../data/yoloGtold1/train/56503.png +../../data/yoloGtold1/train/56504.png +../../data/yoloGtold1/train/56505.png +../../data/yoloGtold1/train/56506.png +../../data/yoloGtold1/train/56507.png +../../data/yoloGtold1/train/56508.png +../../data/yoloGtold1/train/56509.png +../../data/yoloGtold1/train/56510.png +../../data/yoloGtold1/train/56511.png +../../data/yoloGtold1/train/56512.png +../../data/yoloGtold1/train/56513.png +../../data/yoloGtold1/train/56514.png +../../data/yoloGtold1/train/56515.png +../../data/yoloGtold1/train/56516.png +../../data/yoloGtold1/train/56517.png +../../data/yoloGtold1/train/56518.png +../../data/yoloGtold1/train/56519.png +../../data/yoloGtold1/train/56520.png +../../data/yoloGtold1/train/56521.png +../../data/yoloGtold1/train/56522.png +../../data/yoloGtold1/train/56523.png +../../data/yoloGtold1/train/56524.png +../../data/yoloGtold1/train/56525.png +../../data/yoloGtold1/train/56526.png +../../data/yoloGtold1/train/56527.png +../../data/yoloGtold1/train/56528.png +../../data/yoloGtold1/train/56529.png +../../data/yoloGtold1/train/56530.png +../../data/yoloGtold1/train/56531.png +../../data/yoloGtold1/train/56532.png +../../data/yoloGtold1/train/56533.png +../../data/yoloGtold1/train/56534.png +../../data/yoloGtold1/train/56535.png +../../data/yoloGtold1/train/56536.png +../../data/yoloGtold1/train/56537.png +../../data/yoloGtold1/train/56538.png +../../data/yoloGtold1/train/56539.png +../../data/yoloGtold1/train/56540.png +../../data/yoloGtold1/train/56541.png +../../data/yoloGtold1/train/56542.png +../../data/yoloGtold1/train/56543.png +../../data/yoloGtold1/train/56544.png +../../data/yoloGtold1/train/56545.png +../../data/yoloGtold1/train/56546.png +../../data/yoloGtold1/train/56547.png +../../data/yoloGtold1/train/56548.png +../../data/yoloGtold1/train/56549.png +../../data/yoloGtold1/train/56550.png +../../data/yoloGtold1/train/56551.png +../../data/yoloGtold1/train/56552.png +../../data/yoloGtold1/train/56553.png +../../data/yoloGtold1/train/56554.png +../../data/yoloGtold1/train/56555.png +../../data/yoloGtold1/train/56556.png +../../data/yoloGtold1/train/56557.png +../../data/yoloGtold1/train/56558.png +../../data/yoloGtold1/train/56559.png +../../data/yoloGtold1/train/56560.png +../../data/yoloGtold1/train/56561.png +../../data/yoloGtold1/train/56562.png +../../data/yoloGtold1/train/56563.png +../../data/yoloGtold1/train/56564.png +../../data/yoloGtold1/train/56565.png +../../data/yoloGtold1/train/56566.png +../../data/yoloGtold1/train/56567.png +../../data/yoloGtold1/train/56568.png +../../data/yoloGtold1/train/56569.png +../../data/yoloGtold1/train/56570.png +../../data/yoloGtold1/train/56571.png +../../data/yoloGtold1/train/56572.png +../../data/yoloGtold1/train/56573.png +../../data/yoloGtold1/train/56574.png +../../data/yoloGtold1/train/56575.png +../../data/yoloGtold1/train/56576.png +../../data/yoloGtold1/train/56577.png +../../data/yoloGtold1/train/56578.png +../../data/yoloGtold1/train/56579.png +../../data/yoloGtold1/train/56580.png +../../data/yoloGtold1/train/56581.png +../../data/yoloGtold1/train/56582.png +../../data/yoloGtold1/train/56583.png +../../data/yoloGtold1/train/56584.png +../../data/yoloGtold1/train/56585.png +../../data/yoloGtold1/train/56586.png +../../data/yoloGtold1/train/56587.png +../../data/yoloGtold1/train/56588.png +../../data/yoloGtold1/train/56589.png +../../data/yoloGtold1/train/56590.png +../../data/yoloGtold1/train/56591.png +../../data/yoloGtold1/train/56592.png +../../data/yoloGtold1/train/56593.png +../../data/yoloGtold1/train/56594.png +../../data/yoloGtold1/train/56595.png +../../data/yoloGtold1/train/56596.png +../../data/yoloGtold1/train/56597.png +../../data/yoloGtold1/train/56598.png +../../data/yoloGtold1/train/56599.png +../../data/yoloGtold1/train/56600.png +../../data/yoloGtold1/train/56601.png +../../data/yoloGtold1/train/56602.png +../../data/yoloGtold1/train/56603.png +../../data/yoloGtold1/train/56604.png +../../data/yoloGtold1/train/56605.png +../../data/yoloGtold1/train/56606.png +../../data/yoloGtold1/train/56607.png +../../data/yoloGtold1/train/56608.png +../../data/yoloGtold1/train/56609.png +../../data/yoloGtold1/train/56610.png +../../data/yoloGtold1/train/56611.png +../../data/yoloGtold1/train/56612.png +../../data/yoloGtold1/train/56613.png +../../data/yoloGtold1/train/56614.png +../../data/yoloGtold1/train/56615.png +../../data/yoloGtold1/train/56616.png +../../data/yoloGtold1/train/56617.png +../../data/yoloGtold1/train/56618.png +../../data/yoloGtold1/train/56619.png +../../data/yoloGtold1/train/56620.png +../../data/yoloGtold1/train/56621.png +../../data/yoloGtold1/train/56622.png +../../data/yoloGtold1/train/56623.png +../../data/yoloGtold1/train/56624.png +../../data/yoloGtold1/train/56625.png +../../data/yoloGtold1/train/56626.png +../../data/yoloGtold1/train/56627.png +../../data/yoloGtold1/train/56628.png +../../data/yoloGtold1/train/56629.png +../../data/yoloGtold1/train/56630.png +../../data/yoloGtold1/train/56631.png +../../data/yoloGtold1/train/56632.png +../../data/yoloGtold1/train/56633.png +../../data/yoloGtold1/train/56634.png +../../data/yoloGtold1/train/56635.png +../../data/yoloGtold1/train/56636.png +../../data/yoloGtold1/train/56637.png +../../data/yoloGtold1/train/56638.png +../../data/yoloGtold1/train/56639.png +../../data/yoloGtold1/train/56640.png +../../data/yoloGtold1/train/56641.png +../../data/yoloGtold1/train/56642.png +../../data/yoloGtold1/train/56643.png +../../data/yoloGtold1/train/56644.png +../../data/yoloGtold1/train/56645.png +../../data/yoloGtold1/train/56646.png +../../data/yoloGtold1/train/56647.png +../../data/yoloGtold1/train/56648.png +../../data/yoloGtold1/train/56649.png +../../data/yoloGtold1/train/56650.png +../../data/yoloGtold1/train/56651.png +../../data/yoloGtold1/train/56652.png +../../data/yoloGtold1/train/56653.png +../../data/yoloGtold1/train/56654.png +../../data/yoloGtold1/train/56655.png +../../data/yoloGtold1/train/56656.png +../../data/yoloGtold1/train/56657.png +../../data/yoloGtold1/train/56658.png +../../data/yoloGtold1/train/56659.png +../../data/yoloGtold1/train/56660.png +../../data/yoloGtold1/train/56661.png +../../data/yoloGtold1/train/56662.png +../../data/yoloGtold1/train/56663.png +../../data/yoloGtold1/train/56664.png +../../data/yoloGtold1/train/56665.png +../../data/yoloGtold1/train/56666.png +../../data/yoloGtold1/train/56667.png +../../data/yoloGtold1/train/56668.png +../../data/yoloGtold1/train/56669.png +../../data/yoloGtold1/train/56670.png +../../data/yoloGtold1/train/56671.png +../../data/yoloGtold1/train/56672.png +../../data/yoloGtold1/train/56673.png +../../data/yoloGtold1/train/56674.png +../../data/yoloGtold1/train/56675.png +../../data/yoloGtold1/train/56676.png +../../data/yoloGtold1/train/56677.png +../../data/yoloGtold1/train/56678.png +../../data/yoloGtold1/train/56679.png +../../data/yoloGtold1/train/56680.png +../../data/yoloGtold1/train/56681.png +../../data/yoloGtold1/train/56682.png +../../data/yoloGtold1/train/56683.png +../../data/yoloGtold1/train/56684.png +../../data/yoloGtold1/train/56685.png +../../data/yoloGtold1/train/56686.png +../../data/yoloGtold1/train/56687.png +../../data/yoloGtold1/train/56688.png +../../data/yoloGtold1/train/56689.png +../../data/yoloGtold1/train/56690.png +../../data/yoloGtold1/train/56691.png +../../data/yoloGtold1/train/56692.png +../../data/yoloGtold1/train/56693.png +../../data/yoloGtold1/train/56694.png +../../data/yoloGtold1/train/56695.png +../../data/yoloGtold1/train/56696.png +../../data/yoloGtold1/train/56697.png +../../data/yoloGtold1/train/56698.png +../../data/yoloGtold1/train/56699.png +../../data/yoloGtold1/train/56700.png +../../data/yoloGtold1/train/56701.png +../../data/yoloGtold1/train/56702.png +../../data/yoloGtold1/train/56703.png +../../data/yoloGtold1/train/56704.png +../../data/yoloGtold1/train/56705.png +../../data/yoloGtold1/train/56706.png +../../data/yoloGtold1/train/56707.png +../../data/yoloGtold1/train/56708.png +../../data/yoloGtold1/train/56709.png +../../data/yoloGtold1/train/56710.png +../../data/yoloGtold1/train/56711.png +../../data/yoloGtold1/train/56712.png +../../data/yoloGtold1/train/56713.png +../../data/yoloGtold1/train/56714.png +../../data/yoloGtold1/train/56715.png +../../data/yoloGtold1/train/56716.png +../../data/yoloGtold1/train/56717.png +../../data/yoloGtold1/train/56718.png +../../data/yoloGtold1/train/56719.png +../../data/yoloGtold1/train/56720.png +../../data/yoloGtold1/train/56721.png +../../data/yoloGtold1/train/56722.png +../../data/yoloGtold1/train/56723.png +../../data/yoloGtold1/train/56724.png +../../data/yoloGtold1/train/56725.png +../../data/yoloGtold1/train/56726.png +../../data/yoloGtold1/train/56727.png +../../data/yoloGtold1/train/56728.png +../../data/yoloGtold1/train/56729.png +../../data/yoloGtold1/train/56730.png +../../data/yoloGtold1/train/56731.png +../../data/yoloGtold1/train/56732.png +../../data/yoloGtold1/train/56733.png +../../data/yoloGtold1/train/56734.png +../../data/yoloGtold1/train/56735.png +../../data/yoloGtold1/train/56736.png +../../data/yoloGtold1/train/56737.png +../../data/yoloGtold1/train/56738.png +../../data/yoloGtold1/train/56739.png +../../data/yoloGtold1/train/56740.png +../../data/yoloGtold1/train/56741.png +../../data/yoloGtold1/train/56742.png +../../data/yoloGtold1/train/56743.png +../../data/yoloGtold1/train/56744.png +../../data/yoloGtold1/train/56745.png +../../data/yoloGtold1/train/56746.png +../../data/yoloGtold1/train/56747.png +../../data/yoloGtold1/train/56748.png +../../data/yoloGtold1/train/56749.png +../../data/yoloGtold1/train/56750.png +../../data/yoloGtold1/train/56751.png +../../data/yoloGtold1/train/56752.png +../../data/yoloGtold1/train/56753.png +../../data/yoloGtold1/train/56754.png +../../data/yoloGtold1/train/56755.png +../../data/yoloGtold1/train/56756.png +../../data/yoloGtold1/train/56757.png +../../data/yoloGtold1/train/56758.png +../../data/yoloGtold1/train/56759.png +../../data/yoloGtold1/train/56760.png +../../data/yoloGtold1/train/56761.png +../../data/yoloGtold1/train/56762.png +../../data/yoloGtold1/train/56763.png +../../data/yoloGtold1/train/56764.png +../../data/yoloGtold1/train/56765.png +../../data/yoloGtold1/train/56766.png +../../data/yoloGtold1/train/56767.png +../../data/yoloGtold1/train/56768.png +../../data/yoloGtold1/train/56769.png +../../data/yoloGtold1/train/56770.png +../../data/yoloGtold1/train/56771.png +../../data/yoloGtold1/train/56772.png +../../data/yoloGtold1/train/56773.png +../../data/yoloGtold1/train/56774.png +../../data/yoloGtold1/train/56775.png +../../data/yoloGtold1/train/56776.png +../../data/yoloGtold1/train/56777.png +../../data/yoloGtold1/train/56778.png +../../data/yoloGtold1/train/56779.png +../../data/yoloGtold1/train/56780.png +../../data/yoloGtold1/train/56781.png +../../data/yoloGtold1/train/56782.png +../../data/yoloGtold1/train/56783.png +../../data/yoloGtold1/train/56784.png +../../data/yoloGtold1/train/56785.png +../../data/yoloGtold1/train/56786.png +../../data/yoloGtold1/train/56787.png +../../data/yoloGtold1/train/56788.png +../../data/yoloGtold1/train/56789.png +../../data/yoloGtold1/train/56790.png +../../data/yoloGtold1/train/56791.png +../../data/yoloGtold1/train/56792.png +../../data/yoloGtold1/train/56793.png +../../data/yoloGtold1/train/56794.png +../../data/yoloGtold1/train/56795.png +../../data/yoloGtold1/train/56796.png +../../data/yoloGtold1/train/56797.png +../../data/yoloGtold1/train/56798.png +../../data/yoloGtold1/train/56799.png +../../data/yoloGtold1/train/56800.png +../../data/yoloGtold1/train/56801.png +../../data/yoloGtold1/train/56802.png +../../data/yoloGtold1/train/56803.png +../../data/yoloGtold1/train/56804.png +../../data/yoloGtold1/train/56805.png +../../data/yoloGtold1/train/56806.png +../../data/yoloGtold1/train/56807.png +../../data/yoloGtold1/train/56808.png +../../data/yoloGtold1/train/56809.png +../../data/yoloGtold1/train/56810.png +../../data/yoloGtold1/train/56811.png +../../data/yoloGtold1/train/56812.png +../../data/yoloGtold1/train/56813.png +../../data/yoloGtold1/train/56814.png +../../data/yoloGtold1/train/56815.png +../../data/yoloGtold1/train/56816.png +../../data/yoloGtold1/train/56817.png +../../data/yoloGtold1/train/56818.png +../../data/yoloGtold1/train/56819.png +../../data/yoloGtold1/train/56820.png +../../data/yoloGtold1/train/56821.png +../../data/yoloGtold1/train/56822.png +../../data/yoloGtold1/train/56823.png +../../data/yoloGtold1/train/56824.png +../../data/yoloGtold1/train/56825.png +../../data/yoloGtold1/train/56826.png +../../data/yoloGtold1/train/56827.png +../../data/yoloGtold1/train/56828.png +../../data/yoloGtold1/train/56829.png +../../data/yoloGtold1/train/56830.png +../../data/yoloGtold1/train/56831.png +../../data/yoloGtold1/train/56832.png +../../data/yoloGtold1/train/56833.png +../../data/yoloGtold1/train/56834.png +../../data/yoloGtold1/train/56835.png +../../data/yoloGtold1/train/56836.png +../../data/yoloGtold1/train/56837.png +../../data/yoloGtold1/train/56838.png +../../data/yoloGtold1/train/56839.png +../../data/yoloGtold1/train/56840.png +../../data/yoloGtold1/train/56841.png +../../data/yoloGtold1/train/56842.png +../../data/yoloGtold1/train/56843.png +../../data/yoloGtold1/train/56844.png +../../data/yoloGtold1/train/56845.png +../../data/yoloGtold1/train/56846.png +../../data/yoloGtold1/train/56847.png +../../data/yoloGtold1/train/56848.png +../../data/yoloGtold1/train/56849.png +../../data/yoloGtold1/train/56850.png +../../data/yoloGtold1/train/56851.png +../../data/yoloGtold1/train/56852.png +../../data/yoloGtold1/train/56853.png +../../data/yoloGtold1/train/56854.png +../../data/yoloGtold1/train/56855.png +../../data/yoloGtold1/train/56856.png +../../data/yoloGtold1/train/56857.png +../../data/yoloGtold1/train/56858.png +../../data/yoloGtold1/train/56859.png +../../data/yoloGtold1/train/56860.png +../../data/yoloGtold1/train/56861.png +../../data/yoloGtold1/train/56862.png +../../data/yoloGtold1/train/56863.png +../../data/yoloGtold1/train/56864.png +../../data/yoloGtold1/train/56865.png +../../data/yoloGtold1/train/56866.png +../../data/yoloGtold1/train/56867.png +../../data/yoloGtold1/train/56868.png +../../data/yoloGtold1/train/56869.png +../../data/yoloGtold1/train/56870.png +../../data/yoloGtold1/train/56871.png +../../data/yoloGtold1/train/56872.png +../../data/yoloGtold1/train/56873.png +../../data/yoloGtold1/train/56874.png +../../data/yoloGtold1/train/56875.png +../../data/yoloGtold1/train/56876.png +../../data/yoloGtold1/train/56877.png +../../data/yoloGtold1/train/56878.png +../../data/yoloGtold1/train/56879.png +../../data/yoloGtold1/train/56880.png +../../data/yoloGtold1/train/56881.png +../../data/yoloGtold1/train/56882.png +../../data/yoloGtold1/train/56883.png +../../data/yoloGtold1/train/56884.png +../../data/yoloGtold1/train/56885.png +../../data/yoloGtold1/train/56886.png +../../data/yoloGtold1/train/56887.png +../../data/yoloGtold1/train/56888.png +../../data/yoloGtold1/train/56889.png +../../data/yoloGtold1/train/56890.png +../../data/yoloGtold1/train/56891.png +../../data/yoloGtold1/train/56892.png +../../data/yoloGtold1/train/56893.png +../../data/yoloGtold1/train/56894.png +../../data/yoloGtold1/train/56895.png +../../data/yoloGtold1/train/56896.png +../../data/yoloGtold1/train/56897.png +../../data/yoloGtold1/train/56898.png +../../data/yoloGtold1/train/56899.png +../../data/yoloGtold1/train/56900.png +../../data/yoloGtold1/train/56901.png +../../data/yoloGtold1/train/56902.png +../../data/yoloGtold1/train/56903.png +../../data/yoloGtold1/train/56904.png +../../data/yoloGtold1/train/56905.png +../../data/yoloGtold1/train/56906.png +../../data/yoloGtold1/train/56907.png +../../data/yoloGtold1/train/56908.png +../../data/yoloGtold1/train/56909.png +../../data/yoloGtold1/train/56910.png +../../data/yoloGtold1/train/56911.png +../../data/yoloGtold1/train/56912.png +../../data/yoloGtold1/train/56913.png +../../data/yoloGtold1/train/56914.png +../../data/yoloGtold1/train/56915.png +../../data/yoloGtold1/train/56916.png +../../data/yoloGtold1/train/56917.png +../../data/yoloGtold1/train/56918.png +../../data/yoloGtold1/train/56919.png +../../data/yoloGtold1/train/56920.png +../../data/yoloGtold1/train/56921.png +../../data/yoloGtold1/train/56922.png +../../data/yoloGtold1/train/56923.png +../../data/yoloGtold1/train/56924.png +../../data/yoloGtold1/train/56925.png +../../data/yoloGtold1/train/56926.png +../../data/yoloGtold1/train/56927.png +../../data/yoloGtold1/train/56928.png +../../data/yoloGtold1/train/56929.png +../../data/yoloGtold1/train/56930.png +../../data/yoloGtold1/train/56931.png +../../data/yoloGtold1/train/56932.png +../../data/yoloGtold1/train/56933.png +../../data/yoloGtold1/train/56934.png +../../data/yoloGtold1/train/56935.png +../../data/yoloGtold1/train/56936.png +../../data/yoloGtold1/train/56937.png +../../data/yoloGtold1/train/56938.png +../../data/yoloGtold1/train/56939.png +../../data/yoloGtold1/train/56940.png +../../data/yoloGtold1/train/56941.png +../../data/yoloGtold1/train/56942.png +../../data/yoloGtold1/train/56943.png +../../data/yoloGtold1/train/56944.png +../../data/yoloGtold1/train/56945.png +../../data/yoloGtold1/train/56946.png +../../data/yoloGtold1/train/56947.png +../../data/yoloGtold1/train/56948.png +../../data/yoloGtold1/train/56949.png +../../data/yoloGtold1/train/56950.png +../../data/yoloGtold1/train/56951.png +../../data/yoloGtold1/train/56952.png +../../data/yoloGtold1/train/56953.png +../../data/yoloGtold1/train/56954.png +../../data/yoloGtold1/train/56955.png +../../data/yoloGtold1/train/56956.png +../../data/yoloGtold1/train/56957.png +../../data/yoloGtold1/train/56958.png +../../data/yoloGtold1/train/56959.png +../../data/yoloGtold1/train/56960.png +../../data/yoloGtold1/train/56961.png +../../data/yoloGtold1/train/56962.png +../../data/yoloGtold1/train/56963.png +../../data/yoloGtold1/train/56964.png +../../data/yoloGtold1/train/56965.png +../../data/yoloGtold1/train/56966.png +../../data/yoloGtold1/train/56967.png +../../data/yoloGtold1/train/56968.png +../../data/yoloGtold1/train/56969.png +../../data/yoloGtold1/train/56970.png +../../data/yoloGtold1/train/56971.png +../../data/yoloGtold1/train/56972.png +../../data/yoloGtold1/train/56973.png +../../data/yoloGtold1/train/56974.png +../../data/yoloGtold1/train/56975.png +../../data/yoloGtold1/train/56976.png +../../data/yoloGtold1/train/56977.png +../../data/yoloGtold1/train/56978.png +../../data/yoloGtold1/train/56979.png +../../data/yoloGtold1/train/56980.png +../../data/yoloGtold1/train/56981.png +../../data/yoloGtold1/train/56982.png +../../data/yoloGtold1/train/56983.png +../../data/yoloGtold1/train/56984.png +../../data/yoloGtold1/train/56985.png +../../data/yoloGtold1/train/56986.png +../../data/yoloGtold1/train/56987.png +../../data/yoloGtold1/train/56988.png +../../data/yoloGtold1/train/56989.png +../../data/yoloGtold1/train/56990.png +../../data/yoloGtold1/train/56991.png +../../data/yoloGtold1/train/56992.png +../../data/yoloGtold1/train/56993.png +../../data/yoloGtold1/train/56994.png +../../data/yoloGtold1/train/56995.png +../../data/yoloGtold1/train/56996.png +../../data/yoloGtold1/train/56997.png +../../data/yoloGtold1/train/56998.png +../../data/yoloGtold1/train/56999.png +../../data/yoloGtold1/train/57000.png +../../data/yoloGtold1/train/57001.png +../../data/yoloGtold1/train/57002.png +../../data/yoloGtold1/train/57003.png +../../data/yoloGtold1/train/57004.png +../../data/yoloGtold1/train/57005.png +../../data/yoloGtold1/train/57006.png +../../data/yoloGtold1/train/57007.png +../../data/yoloGtold1/train/57008.png +../../data/yoloGtold1/train/57009.png +../../data/yoloGtold1/train/57010.png +../../data/yoloGtold1/train/57011.png +../../data/yoloGtold1/train/57012.png +../../data/yoloGtold1/train/57013.png +../../data/yoloGtold1/train/57014.png +../../data/yoloGtold1/train/57015.png +../../data/yoloGtold1/train/57016.png +../../data/yoloGtold1/train/57017.png +../../data/yoloGtold1/train/57018.png +../../data/yoloGtold1/train/57019.png +../../data/yoloGtold1/train/57020.png +../../data/yoloGtold1/train/57021.png +../../data/yoloGtold1/train/57022.png +../../data/yoloGtold1/train/57023.png +../../data/yoloGtold1/train/57024.png +../../data/yoloGtold1/train/57025.png +../../data/yoloGtold1/train/57026.png +../../data/yoloGtold1/train/57027.png +../../data/yoloGtold1/train/57028.png +../../data/yoloGtold1/train/57029.png +../../data/yoloGtold1/train/57030.png +../../data/yoloGtold1/train/57031.png +../../data/yoloGtold1/train/57032.png +../../data/yoloGtold1/train/57033.png +../../data/yoloGtold1/train/57034.png +../../data/yoloGtold1/train/57035.png +../../data/yoloGtold1/train/57036.png +../../data/yoloGtold1/train/57037.png +../../data/yoloGtold1/train/57038.png +../../data/yoloGtold1/train/57039.png +../../data/yoloGtold1/train/57040.png +../../data/yoloGtold1/train/57041.png +../../data/yoloGtold1/train/57042.png +../../data/yoloGtold1/train/57043.png +../../data/yoloGtold1/train/57044.png +../../data/yoloGtold1/train/57045.png +../../data/yoloGtold1/train/57046.png +../../data/yoloGtold1/train/57047.png +../../data/yoloGtold1/train/57048.png +../../data/yoloGtold1/train/57049.png +../../data/yoloGtold1/train/57050.png +../../data/yoloGtold1/train/57051.png +../../data/yoloGtold1/train/57052.png +../../data/yoloGtold1/train/57053.png +../../data/yoloGtold1/train/57054.png +../../data/yoloGtold1/train/57055.png +../../data/yoloGtold1/train/57056.png +../../data/yoloGtold1/train/57057.png +../../data/yoloGtold1/train/57058.png +../../data/yoloGtold1/train/57059.png +../../data/yoloGtold1/train/57060.png +../../data/yoloGtold1/train/57061.png +../../data/yoloGtold1/train/57062.png +../../data/yoloGtold1/train/57063.png +../../data/yoloGtold1/train/57064.png +../../data/yoloGtold1/train/57065.png +../../data/yoloGtold1/train/57066.png +../../data/yoloGtold1/train/57067.png +../../data/yoloGtold1/train/57068.png +../../data/yoloGtold1/train/57069.png +../../data/yoloGtold1/train/57070.png +../../data/yoloGtold1/train/57071.png +../../data/yoloGtold1/train/57072.png +../../data/yoloGtold1/train/57073.png +../../data/yoloGtold1/train/57074.png +../../data/yoloGtold1/train/57075.png +../../data/yoloGtold1/train/57076.png +../../data/yoloGtold1/train/57077.png +../../data/yoloGtold1/train/57078.png +../../data/yoloGtold1/train/57079.png +../../data/yoloGtold1/train/57080.png +../../data/yoloGtold1/train/57081.png +../../data/yoloGtold1/train/57082.png +../../data/yoloGtold1/train/57083.png +../../data/yoloGtold1/train/57084.png +../../data/yoloGtold1/train/57085.png +../../data/yoloGtold1/train/57086.png +../../data/yoloGtold1/train/57087.png +../../data/yoloGtold1/train/57088.png +../../data/yoloGtold1/train/57089.png +../../data/yoloGtold1/train/57090.png +../../data/yoloGtold1/train/57091.png +../../data/yoloGtold1/train/57092.png +../../data/yoloGtold1/train/57093.png +../../data/yoloGtold1/train/57094.png +../../data/yoloGtold1/train/57095.png +../../data/yoloGtold1/train/57096.png +../../data/yoloGtold1/train/57097.png +../../data/yoloGtold1/train/57098.png +../../data/yoloGtold1/train/57099.png +../../data/yoloGtold1/train/57100.png +../../data/yoloGtold1/train/57101.png +../../data/yoloGtold1/train/57102.png +../../data/yoloGtold1/train/57103.png +../../data/yoloGtold1/train/57104.png +../../data/yoloGtold1/train/57105.png +../../data/yoloGtold1/train/57106.png +../../data/yoloGtold1/train/57107.png +../../data/yoloGtold1/train/57108.png +../../data/yoloGtold1/train/57109.png +../../data/yoloGtold1/train/57110.png +../../data/yoloGtold1/train/57111.png +../../data/yoloGtold1/train/57112.png +../../data/yoloGtold1/train/57113.png +../../data/yoloGtold1/train/57114.png +../../data/yoloGtold1/train/57115.png +../../data/yoloGtold1/train/57116.png +../../data/yoloGtold1/train/57117.png +../../data/yoloGtold1/train/57118.png +../../data/yoloGtold1/train/57119.png +../../data/yoloGtold1/train/57120.png +../../data/yoloGtold1/train/57121.png +../../data/yoloGtold1/train/57122.png +../../data/yoloGtold1/train/57123.png +../../data/yoloGtold1/train/57124.png +../../data/yoloGtold1/train/57125.png +../../data/yoloGtold1/train/57126.png +../../data/yoloGtold1/train/57127.png +../../data/yoloGtold1/train/57128.png +../../data/yoloGtold1/train/57129.png +../../data/yoloGtold1/train/57130.png +../../data/yoloGtold1/train/57131.png +../../data/yoloGtold1/train/57132.png +../../data/yoloGtold1/train/57133.png +../../data/yoloGtold1/train/57134.png +../../data/yoloGtold1/train/57135.png +../../data/yoloGtold1/train/57136.png +../../data/yoloGtold1/train/57137.png +../../data/yoloGtold1/train/57138.png +../../data/yoloGtold1/train/57139.png +../../data/yoloGtold1/train/57140.png +../../data/yoloGtold1/train/57141.png +../../data/yoloGtold1/train/57142.png +../../data/yoloGtold1/train/57143.png +../../data/yoloGtold1/train/57144.png +../../data/yoloGtold1/train/57145.png +../../data/yoloGtold1/train/57146.png +../../data/yoloGtold1/train/57147.png +../../data/yoloGtold1/train/57148.png +../../data/yoloGtold1/train/57149.png +../../data/yoloGtold1/train/57150.png +../../data/yoloGtold1/train/57151.png +../../data/yoloGtold1/train/57152.png +../../data/yoloGtold1/train/57153.png +../../data/yoloGtold1/train/57154.png +../../data/yoloGtold1/train/57155.png +../../data/yoloGtold1/train/57156.png +../../data/yoloGtold1/train/57157.png +../../data/yoloGtold1/train/57158.png +../../data/yoloGtold1/train/57159.png +../../data/yoloGtold1/train/57160.png +../../data/yoloGtold1/train/57161.png +../../data/yoloGtold1/train/57162.png +../../data/yoloGtold1/train/57163.png +../../data/yoloGtold1/train/57164.png +../../data/yoloGtold1/train/57165.png +../../data/yoloGtold1/train/57166.png +../../data/yoloGtold1/train/57167.png +../../data/yoloGtold1/train/57168.png +../../data/yoloGtold1/train/57169.png +../../data/yoloGtold1/train/57170.png +../../data/yoloGtold1/train/57171.png +../../data/yoloGtold1/train/57172.png +../../data/yoloGtold1/train/57173.png +../../data/yoloGtold1/train/57174.png +../../data/yoloGtold1/train/57175.png +../../data/yoloGtold1/train/57176.png +../../data/yoloGtold1/train/57177.png +../../data/yoloGtold1/train/57178.png +../../data/yoloGtold1/train/57179.png +../../data/yoloGtold1/train/57180.png +../../data/yoloGtold1/train/57181.png +../../data/yoloGtold1/train/57182.png +../../data/yoloGtold1/train/57183.png +../../data/yoloGtold1/train/57184.png +../../data/yoloGtold1/train/57185.png +../../data/yoloGtold1/train/57186.png +../../data/yoloGtold1/train/57187.png +../../data/yoloGtold1/train/57188.png +../../data/yoloGtold1/train/57189.png +../../data/yoloGtold1/train/57190.png +../../data/yoloGtold1/train/57191.png +../../data/yoloGtold1/train/57192.png +../../data/yoloGtold1/train/57193.png +../../data/yoloGtold1/train/57194.png +../../data/yoloGtold1/train/57195.png +../../data/yoloGtold1/train/57196.png +../../data/yoloGtold1/train/57197.png +../../data/yoloGtold1/train/57198.png +../../data/yoloGtold1/train/57199.png +../../data/yoloGtold1/train/57200.png +../../data/yoloGtold1/train/57201.png +../../data/yoloGtold1/train/57202.png +../../data/yoloGtold1/train/57203.png +../../data/yoloGtold1/train/57204.png +../../data/yoloGtold1/train/57205.png +../../data/yoloGtold1/train/57206.png +../../data/yoloGtold1/train/57207.png +../../data/yoloGtold1/train/57208.png +../../data/yoloGtold1/train/57209.png +../../data/yoloGtold1/train/57210.png +../../data/yoloGtold1/train/57211.png +../../data/yoloGtold1/train/57212.png +../../data/yoloGtold1/train/57213.png +../../data/yoloGtold1/train/57214.png +../../data/yoloGtold1/train/57215.png +../../data/yoloGtold1/train/57216.png +../../data/yoloGtold1/train/57217.png +../../data/yoloGtold1/train/57218.png +../../data/yoloGtold1/train/57219.png +../../data/yoloGtold1/train/57220.png +../../data/yoloGtold1/train/57221.png +../../data/yoloGtold1/train/57222.png +../../data/yoloGtold1/train/57223.png +../../data/yoloGtold1/train/57224.png +../../data/yoloGtold1/train/57225.png +../../data/yoloGtold1/train/57226.png +../../data/yoloGtold1/train/57227.png +../../data/yoloGtold1/train/57228.png +../../data/yoloGtold1/train/57229.png +../../data/yoloGtold1/train/57230.png +../../data/yoloGtold1/train/57231.png +../../data/yoloGtold1/train/57232.png +../../data/yoloGtold1/train/57233.png +../../data/yoloGtold1/train/57234.png +../../data/yoloGtold1/train/57235.png +../../data/yoloGtold1/train/57236.png +../../data/yoloGtold1/train/57237.png +../../data/yoloGtold1/train/57238.png +../../data/yoloGtold1/train/57239.png +../../data/yoloGtold1/train/57240.png +../../data/yoloGtold1/train/57241.png +../../data/yoloGtold1/train/57242.png +../../data/yoloGtold1/train/57243.png +../../data/yoloGtold1/train/57244.png +../../data/yoloGtold1/train/57245.png +../../data/yoloGtold1/train/57246.png +../../data/yoloGtold1/train/57247.png +../../data/yoloGtold1/train/57248.png +../../data/yoloGtold1/train/57249.png +../../data/yoloGtold1/train/57250.png +../../data/yoloGtold1/train/57251.png +../../data/yoloGtold1/train/57252.png +../../data/yoloGtold1/train/57253.png +../../data/yoloGtold1/train/57254.png +../../data/yoloGtold1/train/57255.png +../../data/yoloGtold1/train/57256.png +../../data/yoloGtold1/train/57257.png +../../data/yoloGtold1/train/57258.png +../../data/yoloGtold1/train/57259.png +../../data/yoloGtold1/train/57260.png +../../data/yoloGtold1/train/57261.png +../../data/yoloGtold1/train/57262.png +../../data/yoloGtold1/train/57263.png +../../data/yoloGtold1/train/57264.png +../../data/yoloGtold1/train/57265.png +../../data/yoloGtold1/train/57266.png +../../data/yoloGtold1/train/57267.png +../../data/yoloGtold1/train/57268.png +../../data/yoloGtold1/train/57269.png +../../data/yoloGtold1/train/57270.png +../../data/yoloGtold1/train/57271.png +../../data/yoloGtold1/train/57272.png +../../data/yoloGtold1/train/57273.png +../../data/yoloGtold1/train/57274.png +../../data/yoloGtold1/train/57275.png +../../data/yoloGtold1/train/57276.png +../../data/yoloGtold1/train/57277.png +../../data/yoloGtold1/train/57278.png +../../data/yoloGtold1/train/57279.png +../../data/yoloGtold1/train/57280.png +../../data/yoloGtold1/train/57281.png +../../data/yoloGtold1/train/57282.png +../../data/yoloGtold1/train/57283.png +../../data/yoloGtold1/train/57284.png +../../data/yoloGtold1/train/57285.png +../../data/yoloGtold1/train/57286.png +../../data/yoloGtold1/train/57287.png +../../data/yoloGtold1/train/57288.png +../../data/yoloGtold1/train/57289.png +../../data/yoloGtold1/train/57290.png +../../data/yoloGtold1/train/57291.png +../../data/yoloGtold1/train/57292.png +../../data/yoloGtold1/train/57293.png +../../data/yoloGtold1/train/57294.png +../../data/yoloGtold1/train/57295.png +../../data/yoloGtold1/train/57296.png +../../data/yoloGtold1/train/57297.png +../../data/yoloGtold1/train/57298.png +../../data/yoloGtold1/train/57299.png +../../data/yoloGtold1/train/57300.png +../../data/yoloGtold1/train/57301.png +../../data/yoloGtold1/train/57302.png +../../data/yoloGtold1/train/57303.png +../../data/yoloGtold1/train/57304.png +../../data/yoloGtold1/train/57305.png +../../data/yoloGtold1/train/57306.png +../../data/yoloGtold1/train/57307.png +../../data/yoloGtold1/train/57308.png +../../data/yoloGtold1/train/57309.png +../../data/yoloGtold1/train/57310.png +../../data/yoloGtold1/train/57311.png +../../data/yoloGtold1/train/57312.png +../../data/yoloGtold1/train/57313.png +../../data/yoloGtold1/train/57314.png +../../data/yoloGtold1/train/57315.png +../../data/yoloGtold1/train/57316.png +../../data/yoloGtold1/train/57317.png +../../data/yoloGtold1/train/57318.png +../../data/yoloGtold1/train/57319.png +../../data/yoloGtold1/train/57320.png +../../data/yoloGtold1/train/57321.png +../../data/yoloGtold1/train/57322.png +../../data/yoloGtold1/train/57323.png +../../data/yoloGtold1/train/57324.png +../../data/yoloGtold1/train/57325.png +../../data/yoloGtold1/train/57326.png +../../data/yoloGtold1/train/57327.png +../../data/yoloGtold1/train/57328.png +../../data/yoloGtold1/train/57329.png +../../data/yoloGtold1/train/57330.png +../../data/yoloGtold1/train/57331.png +../../data/yoloGtold1/train/57332.png +../../data/yoloGtold1/train/57333.png +../../data/yoloGtold1/train/57334.png +../../data/yoloGtold1/train/57335.png +../../data/yoloGtold1/train/57336.png +../../data/yoloGtold1/train/57337.png +../../data/yoloGtold1/train/57338.png +../../data/yoloGtold1/train/57339.png +../../data/yoloGtold1/train/57340.png +../../data/yoloGtold1/train/57341.png +../../data/yoloGtold1/train/57342.png +../../data/yoloGtold1/train/57343.png +../../data/yoloGtold1/train/57344.png +../../data/yoloGtold1/train/57345.png +../../data/yoloGtold1/train/57346.png +../../data/yoloGtold1/train/57347.png +../../data/yoloGtold1/train/57348.png +../../data/yoloGtold1/train/57349.png +../../data/yoloGtold1/train/57350.png +../../data/yoloGtold1/train/57351.png +../../data/yoloGtold1/train/57352.png +../../data/yoloGtold1/train/57353.png +../../data/yoloGtold1/train/57354.png +../../data/yoloGtold1/train/57355.png +../../data/yoloGtold1/train/57356.png +../../data/yoloGtold1/train/57357.png +../../data/yoloGtold1/train/57358.png +../../data/yoloGtold1/train/57359.png +../../data/yoloGtold1/train/57360.png +../../data/yoloGtold1/train/57361.png +../../data/yoloGtold1/train/57362.png +../../data/yoloGtold1/train/57363.png +../../data/yoloGtold1/train/57364.png +../../data/yoloGtold1/train/57365.png +../../data/yoloGtold1/train/57366.png +../../data/yoloGtold1/train/57367.png +../../data/yoloGtold1/train/57368.png +../../data/yoloGtold1/train/57369.png +../../data/yoloGtold1/train/57370.png +../../data/yoloGtold1/train/57371.png +../../data/yoloGtold1/train/57372.png +../../data/yoloGtold1/train/57373.png +../../data/yoloGtold1/train/57374.png +../../data/yoloGtold1/train/57375.png +../../data/yoloGtold1/train/57376.png +../../data/yoloGtold1/train/57377.png +../../data/yoloGtold1/train/57378.png +../../data/yoloGtold1/train/57379.png +../../data/yoloGtold1/train/57380.png +../../data/yoloGtold1/train/57381.png +../../data/yoloGtold1/train/57382.png +../../data/yoloGtold1/train/57383.png +../../data/yoloGtold1/train/57384.png +../../data/yoloGtold1/train/57385.png +../../data/yoloGtold1/train/57386.png +../../data/yoloGtold1/train/57387.png +../../data/yoloGtold1/train/57388.png +../../data/yoloGtold1/train/57389.png +../../data/yoloGtold1/train/57390.png +../../data/yoloGtold1/train/57391.png +../../data/yoloGtold1/train/57392.png +../../data/yoloGtold1/train/57393.png +../../data/yoloGtold1/train/57394.png +../../data/yoloGtold1/train/57395.png +../../data/yoloGtold1/train/57396.png +../../data/yoloGtold1/train/57397.png +../../data/yoloGtold1/train/57398.png +../../data/yoloGtold1/train/57399.png +../../data/yoloGtold1/train/57400.png +../../data/yoloGtold1/train/57401.png +../../data/yoloGtold1/train/57402.png +../../data/yoloGtold1/train/57403.png +../../data/yoloGtold1/train/57404.png +../../data/yoloGtold1/train/57405.png +../../data/yoloGtold1/train/57406.png +../../data/yoloGtold1/train/57407.png +../../data/yoloGtold1/train/57408.png +../../data/yoloGtold1/train/57409.png +../../data/yoloGtold1/train/57410.png +../../data/yoloGtold1/train/57411.png +../../data/yoloGtold1/train/57412.png +../../data/yoloGtold1/train/57413.png +../../data/yoloGtold1/train/57414.png +../../data/yoloGtold1/train/57415.png +../../data/yoloGtold1/train/57416.png +../../data/yoloGtold1/train/57417.png +../../data/yoloGtold1/train/57418.png +../../data/yoloGtold1/train/57419.png +../../data/yoloGtold1/train/57420.png +../../data/yoloGtold1/train/57421.png +../../data/yoloGtold1/train/57422.png +../../data/yoloGtold1/train/57423.png +../../data/yoloGtold1/train/57424.png +../../data/yoloGtold1/train/57425.png +../../data/yoloGtold1/train/57426.png +../../data/yoloGtold1/train/57427.png +../../data/yoloGtold1/train/57428.png +../../data/yoloGtold1/train/57429.png +../../data/yoloGtold1/train/57430.png +../../data/yoloGtold1/train/57431.png +../../data/yoloGtold1/train/57432.png +../../data/yoloGtold1/train/57433.png +../../data/yoloGtold1/train/57434.png +../../data/yoloGtold1/train/57435.png +../../data/yoloGtold1/train/57436.png +../../data/yoloGtold1/train/57437.png +../../data/yoloGtold1/train/57438.png +../../data/yoloGtold1/train/57439.png +../../data/yoloGtold1/train/57440.png +../../data/yoloGtold1/train/57441.png +../../data/yoloGtold1/train/57442.png +../../data/yoloGtold1/train/57443.png +../../data/yoloGtold1/train/57444.png +../../data/yoloGtold1/train/57445.png +../../data/yoloGtold1/train/57446.png +../../data/yoloGtold1/train/57447.png +../../data/yoloGtold1/train/57448.png +../../data/yoloGtold1/train/57449.png +../../data/yoloGtold1/train/57450.png +../../data/yoloGtold1/train/57451.png +../../data/yoloGtold1/train/57452.png +../../data/yoloGtold1/train/57453.png +../../data/yoloGtold1/train/57454.png +../../data/yoloGtold1/train/57455.png +../../data/yoloGtold1/train/57456.png +../../data/yoloGtold1/train/57457.png +../../data/yoloGtold1/train/57458.png +../../data/yoloGtold1/train/57459.png +../../data/yoloGtold1/train/57460.png +../../data/yoloGtold1/train/57461.png +../../data/yoloGtold1/train/57462.png +../../data/yoloGtold1/train/57463.png +../../data/yoloGtold1/train/57464.png +../../data/yoloGtold1/train/57465.png +../../data/yoloGtold1/train/57466.png +../../data/yoloGtold1/train/57467.png +../../data/yoloGtold1/train/57468.png +../../data/yoloGtold1/train/57469.png +../../data/yoloGtold1/train/57470.png +../../data/yoloGtold1/train/57471.png +../../data/yoloGtold1/train/57472.png +../../data/yoloGtold1/train/57473.png +../../data/yoloGtold1/train/57474.png +../../data/yoloGtold1/train/57475.png +../../data/yoloGtold1/train/57476.png +../../data/yoloGtold1/train/57477.png +../../data/yoloGtold1/train/57478.png +../../data/yoloGtold1/train/57479.png +../../data/yoloGtold1/train/57480.png +../../data/yoloGtold1/train/57481.png +../../data/yoloGtold1/train/57482.png +../../data/yoloGtold1/train/57483.png +../../data/yoloGtold1/train/57484.png +../../data/yoloGtold1/train/57485.png +../../data/yoloGtold1/train/57486.png +../../data/yoloGtold1/train/57487.png +../../data/yoloGtold1/train/57488.png +../../data/yoloGtold1/train/57489.png +../../data/yoloGtold1/train/57490.png +../../data/yoloGtold1/train/57491.png +../../data/yoloGtold1/train/57492.png +../../data/yoloGtold1/train/57493.png +../../data/yoloGtold1/train/57494.png +../../data/yoloGtold1/train/57495.png +../../data/yoloGtold1/train/57496.png +../../data/yoloGtold1/train/57497.png +../../data/yoloGtold1/train/57498.png +../../data/yoloGtold1/train/57499.png +../../data/yoloGtold1/train/57500.png +../../data/yoloGtold1/train/57501.png +../../data/yoloGtold1/train/57502.png +../../data/yoloGtold1/train/57503.png +../../data/yoloGtold1/train/57504.png +../../data/yoloGtold1/train/57505.png +../../data/yoloGtold1/train/57506.png +../../data/yoloGtold1/train/57507.png +../../data/yoloGtold1/train/57508.png +../../data/yoloGtold1/train/57509.png +../../data/yoloGtold1/train/57510.png +../../data/yoloGtold1/train/57511.png +../../data/yoloGtold1/train/57512.png +../../data/yoloGtold1/train/57513.png +../../data/yoloGtold1/train/57514.png +../../data/yoloGtold1/train/57515.png +../../data/yoloGtold1/train/57516.png +../../data/yoloGtold1/train/57517.png +../../data/yoloGtold1/train/57518.png +../../data/yoloGtold1/train/57519.png +../../data/yoloGtold1/train/57520.png +../../data/yoloGtold1/train/57521.png +../../data/yoloGtold1/train/57522.png +../../data/yoloGtold1/train/57523.png +../../data/yoloGtold1/train/57524.png +../../data/yoloGtold1/train/57525.png +../../data/yoloGtold1/train/57526.png +../../data/yoloGtold1/train/57527.png +../../data/yoloGtold1/train/57528.png +../../data/yoloGtold1/train/57529.png +../../data/yoloGtold1/train/57530.png +../../data/yoloGtold1/train/57531.png +../../data/yoloGtold1/train/57532.png +../../data/yoloGtold1/train/57533.png +../../data/yoloGtold1/train/57534.png +../../data/yoloGtold1/train/57535.png +../../data/yoloGtold1/train/57536.png +../../data/yoloGtold1/train/57537.png +../../data/yoloGtold1/train/57538.png +../../data/yoloGtold1/train/57539.png +../../data/yoloGtold1/train/57540.png +../../data/yoloGtold1/train/57541.png +../../data/yoloGtold1/train/57542.png +../../data/yoloGtold1/train/57543.png +../../data/yoloGtold1/train/57544.png +../../data/yoloGtold1/train/57545.png +../../data/yoloGtold1/train/57546.png +../../data/yoloGtold1/train/57547.png +../../data/yoloGtold1/train/57548.png +../../data/yoloGtold1/train/57549.png +../../data/yoloGtold1/train/57550.png +../../data/yoloGtold1/train/57551.png +../../data/yoloGtold1/train/57552.png +../../data/yoloGtold1/train/57553.png +../../data/yoloGtold1/train/57554.png +../../data/yoloGtold1/train/57555.png +../../data/yoloGtold1/train/57556.png +../../data/yoloGtold1/train/57557.png +../../data/yoloGtold1/train/57558.png +../../data/yoloGtold1/train/57559.png +../../data/yoloGtold1/train/57560.png +../../data/yoloGtold1/train/57561.png +../../data/yoloGtold1/train/57562.png +../../data/yoloGtold1/train/57563.png +../../data/yoloGtold1/train/57564.png +../../data/yoloGtold1/train/57565.png +../../data/yoloGtold1/train/57566.png +../../data/yoloGtold1/train/57567.png +../../data/yoloGtold1/train/57568.png +../../data/yoloGtold1/train/57569.png +../../data/yoloGtold1/train/57570.png +../../data/yoloGtold1/train/57571.png +../../data/yoloGtold1/train/57572.png +../../data/yoloGtold1/train/57573.png +../../data/yoloGtold1/train/57574.png +../../data/yoloGtold1/train/57575.png +../../data/yoloGtold1/train/57576.png +../../data/yoloGtold1/train/57577.png +../../data/yoloGtold1/train/57578.png +../../data/yoloGtold1/train/57579.png +../../data/yoloGtold1/train/57580.png +../../data/yoloGtold1/train/57581.png +../../data/yoloGtold1/train/57582.png +../../data/yoloGtold1/train/57583.png +../../data/yoloGtold1/train/57584.png +../../data/yoloGtold1/train/57585.png +../../data/yoloGtold1/train/57586.png +../../data/yoloGtold1/train/57587.png +../../data/yoloGtold1/train/57588.png +../../data/yoloGtold1/train/57589.png +../../data/yoloGtold1/train/57590.png +../../data/yoloGtold1/train/57591.png +../../data/yoloGtold1/train/57592.png +../../data/yoloGtold1/train/57593.png +../../data/yoloGtold1/train/57594.png +../../data/yoloGtold1/train/57595.png +../../data/yoloGtold1/train/57596.png +../../data/yoloGtold1/train/57597.png +../../data/yoloGtold1/train/57598.png +../../data/yoloGtold1/train/57599.png +../../data/yoloGtold1/train/57600.png +../../data/yoloGtold1/train/57601.png +../../data/yoloGtold1/train/57602.png +../../data/yoloGtold1/train/57603.png +../../data/yoloGtold1/train/57604.png +../../data/yoloGtold1/train/57605.png +../../data/yoloGtold1/train/57606.png +../../data/yoloGtold1/train/57607.png +../../data/yoloGtold1/train/57608.png +../../data/yoloGtold1/train/57609.png +../../data/yoloGtold1/train/57610.png +../../data/yoloGtold1/train/57611.png +../../data/yoloGtold1/train/57612.png +../../data/yoloGtold1/train/57613.png +../../data/yoloGtold1/train/57614.png +../../data/yoloGtold1/train/57615.png +../../data/yoloGtold1/train/57616.png +../../data/yoloGtold1/train/57617.png +../../data/yoloGtold1/train/57618.png +../../data/yoloGtold1/train/57619.png +../../data/yoloGtold1/train/57620.png +../../data/yoloGtold1/train/57621.png +../../data/yoloGtold1/train/57622.png +../../data/yoloGtold1/train/57623.png +../../data/yoloGtold1/train/57624.png +../../data/yoloGtold1/train/57625.png +../../data/yoloGtold1/train/57626.png +../../data/yoloGtold1/train/57627.png +../../data/yoloGtold1/train/57628.png +../../data/yoloGtold1/train/57629.png +../../data/yoloGtold1/train/57630.png +../../data/yoloGtold1/train/57631.png +../../data/yoloGtold1/train/57632.png +../../data/yoloGtold1/train/57633.png +../../data/yoloGtold1/train/57634.png +../../data/yoloGtold1/train/57635.png +../../data/yoloGtold1/train/57636.png +../../data/yoloGtold1/train/57637.png +../../data/yoloGtold1/train/57638.png +../../data/yoloGtold1/train/57639.png +../../data/yoloGtold1/train/57640.png +../../data/yoloGtold1/train/57641.png +../../data/yoloGtold1/train/57642.png +../../data/yoloGtold1/train/57643.png +../../data/yoloGtold1/train/57644.png +../../data/yoloGtold1/train/57645.png +../../data/yoloGtold1/train/57646.png +../../data/yoloGtold1/train/57647.png +../../data/yoloGtold1/train/57648.png +../../data/yoloGtold1/train/57649.png +../../data/yoloGtold1/train/57650.png +../../data/yoloGtold1/train/57651.png +../../data/yoloGtold1/train/57652.png +../../data/yoloGtold1/train/57653.png +../../data/yoloGtold1/train/57654.png +../../data/yoloGtold1/train/57655.png +../../data/yoloGtold1/train/57656.png +../../data/yoloGtold1/train/57657.png +../../data/yoloGtold1/train/57658.png +../../data/yoloGtold1/train/57659.png +../../data/yoloGtold1/train/57660.png +../../data/yoloGtold1/train/57661.png +../../data/yoloGtold1/train/57662.png +../../data/yoloGtold1/train/57663.png +../../data/yoloGtold1/train/57664.png +../../data/yoloGtold1/train/57665.png +../../data/yoloGtold1/train/57666.png +../../data/yoloGtold1/train/57667.png +../../data/yoloGtold1/train/57668.png +../../data/yoloGtold1/train/57669.png +../../data/yoloGtold1/train/57670.png +../../data/yoloGtold1/train/57671.png +../../data/yoloGtold1/train/57672.png +../../data/yoloGtold1/train/57673.png +../../data/yoloGtold1/train/57674.png +../../data/yoloGtold1/train/57675.png +../../data/yoloGtold1/train/57676.png +../../data/yoloGtold1/train/57677.png +../../data/yoloGtold1/train/57678.png +../../data/yoloGtold1/train/57679.png +../../data/yoloGtold1/train/57680.png +../../data/yoloGtold1/train/57681.png +../../data/yoloGtold1/train/57682.png +../../data/yoloGtold1/train/57683.png +../../data/yoloGtold1/train/57684.png +../../data/yoloGtold1/train/57685.png +../../data/yoloGtold1/train/57686.png +../../data/yoloGtold1/train/57687.png +../../data/yoloGtold1/train/57688.png +../../data/yoloGtold1/train/57689.png +../../data/yoloGtold1/train/57690.png +../../data/yoloGtold1/train/57691.png +../../data/yoloGtold1/train/57692.png +../../data/yoloGtold1/train/57693.png +../../data/yoloGtold1/train/57694.png +../../data/yoloGtold1/train/57695.png +../../data/yoloGtold1/train/57696.png +../../data/yoloGtold1/train/57697.png +../../data/yoloGtold1/train/57698.png +../../data/yoloGtold1/train/57699.png +../../data/yoloGtold1/train/57700.png +../../data/yoloGtold1/train/57701.png +../../data/yoloGtold1/train/57702.png +../../data/yoloGtold1/train/57703.png +../../data/yoloGtold1/train/57704.png +../../data/yoloGtold1/train/57705.png +../../data/yoloGtold1/train/57706.png +../../data/yoloGtold1/train/57707.png +../../data/yoloGtold1/train/57708.png +../../data/yoloGtold1/train/57709.png +../../data/yoloGtold1/train/57710.png +../../data/yoloGtold1/train/57711.png +../../data/yoloGtold1/train/57712.png +../../data/yoloGtold1/train/57713.png +../../data/yoloGtold1/train/57714.png +../../data/yoloGtold1/train/57715.png +../../data/yoloGtold1/train/57716.png +../../data/yoloGtold1/train/57717.png +../../data/yoloGtold1/train/57718.png +../../data/yoloGtold1/train/57719.png +../../data/yoloGtold1/train/57720.png +../../data/yoloGtold1/train/57721.png +../../data/yoloGtold1/train/57722.png +../../data/yoloGtold1/train/57723.png +../../data/yoloGtold1/train/57724.png +../../data/yoloGtold1/train/57725.png +../../data/yoloGtold1/train/57726.png +../../data/yoloGtold1/train/57727.png +../../data/yoloGtold1/train/57728.png +../../data/yoloGtold1/train/57729.png +../../data/yoloGtold1/train/57730.png +../../data/yoloGtold1/train/57731.png +../../data/yoloGtold1/train/57732.png +../../data/yoloGtold1/train/57733.png +../../data/yoloGtold1/train/57734.png +../../data/yoloGtold1/train/57735.png +../../data/yoloGtold1/train/57736.png +../../data/yoloGtold1/train/57737.png +../../data/yoloGtold1/train/57738.png +../../data/yoloGtold1/train/57739.png +../../data/yoloGtold1/train/57740.png +../../data/yoloGtold1/train/57741.png +../../data/yoloGtold1/train/57742.png +../../data/yoloGtold1/train/57743.png +../../data/yoloGtold1/train/57744.png +../../data/yoloGtold1/train/57745.png +../../data/yoloGtold1/train/57746.png +../../data/yoloGtold1/train/57747.png +../../data/yoloGtold1/train/57748.png +../../data/yoloGtold1/train/57749.png +../../data/yoloGtold1/train/57750.png +../../data/yoloGtold1/train/57751.png +../../data/yoloGtold1/train/57752.png +../../data/yoloGtold1/train/57753.png +../../data/yoloGtold1/train/57754.png +../../data/yoloGtold1/train/57755.png +../../data/yoloGtold1/train/57756.png +../../data/yoloGtold1/train/57757.png +../../data/yoloGtold1/train/57758.png +../../data/yoloGtold1/train/57759.png +../../data/yoloGtold1/train/57760.png +../../data/yoloGtold1/train/57761.png +../../data/yoloGtold1/train/57762.png +../../data/yoloGtold1/train/57763.png +../../data/yoloGtold1/train/57764.png +../../data/yoloGtold1/train/57765.png +../../data/yoloGtold1/train/57766.png +../../data/yoloGtold1/train/57767.png +../../data/yoloGtold1/train/57768.png +../../data/yoloGtold1/train/57769.png +../../data/yoloGtold1/train/57770.png +../../data/yoloGtold1/train/57771.png +../../data/yoloGtold1/train/57772.png +../../data/yoloGtold1/train/57773.png +../../data/yoloGtold1/train/57774.png +../../data/yoloGtold1/train/57775.png +../../data/yoloGtold1/train/57776.png +../../data/yoloGtold1/train/57777.png +../../data/yoloGtold1/train/57778.png +../../data/yoloGtold1/train/57779.png +../../data/yoloGtold1/train/57780.png +../../data/yoloGtold1/train/57781.png +../../data/yoloGtold1/train/57782.png +../../data/yoloGtold1/train/57783.png +../../data/yoloGtold1/train/57784.png +../../data/yoloGtold1/train/57785.png +../../data/yoloGtold1/train/57786.png +../../data/yoloGtold1/train/57787.png +../../data/yoloGtold1/train/57788.png +../../data/yoloGtold1/train/57789.png +../../data/yoloGtold1/train/57790.png +../../data/yoloGtold1/train/57791.png +../../data/yoloGtold1/train/57792.png +../../data/yoloGtold1/train/57793.png +../../data/yoloGtold1/train/57794.png +../../data/yoloGtold1/train/57795.png +../../data/yoloGtold1/train/57796.png +../../data/yoloGtold1/train/57797.png +../../data/yoloGtold1/train/57798.png +../../data/yoloGtold1/train/57799.png +../../data/yoloGtold1/train/57800.png +../../data/yoloGtold1/train/57801.png +../../data/yoloGtold1/train/57802.png +../../data/yoloGtold1/train/57803.png +../../data/yoloGtold1/train/57804.png +../../data/yoloGtold1/train/57805.png +../../data/yoloGtold1/train/57806.png +../../data/yoloGtold1/train/57807.png +../../data/yoloGtold1/train/57808.png +../../data/yoloGtold1/train/57809.png +../../data/yoloGtold1/train/57810.png +../../data/yoloGtold1/train/57811.png +../../data/yoloGtold1/train/57812.png +../../data/yoloGtold1/train/57813.png +../../data/yoloGtold1/train/57814.png +../../data/yoloGtold1/train/57815.png +../../data/yoloGtold1/train/57816.png +../../data/yoloGtold1/train/57817.png +../../data/yoloGtold1/train/57818.png +../../data/yoloGtold1/train/57819.png +../../data/yoloGtold1/train/57820.png +../../data/yoloGtold1/train/57821.png +../../data/yoloGtold1/train/57822.png +../../data/yoloGtold1/train/57823.png +../../data/yoloGtold1/train/57824.png +../../data/yoloGtold1/train/57825.png +../../data/yoloGtold1/train/57826.png +../../data/yoloGtold1/train/57827.png +../../data/yoloGtold1/train/57828.png +../../data/yoloGtold1/train/57829.png +../../data/yoloGtold1/train/57830.png +../../data/yoloGtold1/train/57831.png +../../data/yoloGtold1/train/57832.png +../../data/yoloGtold1/train/57833.png +../../data/yoloGtold1/train/57834.png +../../data/yoloGtold1/train/57835.png +../../data/yoloGtold1/train/57836.png +../../data/yoloGtold1/train/57837.png +../../data/yoloGtold1/train/57838.png +../../data/yoloGtold1/train/57839.png +../../data/yoloGtold1/train/57840.png +../../data/yoloGtold1/train/57841.png +../../data/yoloGtold1/train/57842.png +../../data/yoloGtold1/train/57843.png +../../data/yoloGtold1/train/57844.png +../../data/yoloGtold1/train/57845.png +../../data/yoloGtold1/train/57846.png +../../data/yoloGtold1/train/57847.png +../../data/yoloGtold1/train/57848.png +../../data/yoloGtold1/train/57849.png +../../data/yoloGtold1/train/57850.png +../../data/yoloGtold1/train/57851.png +../../data/yoloGtold1/train/57852.png +../../data/yoloGtold1/train/57853.png +../../data/yoloGtold1/train/57854.png +../../data/yoloGtold1/train/57855.png +../../data/yoloGtold1/train/57856.png +../../data/yoloGtold1/train/57857.png +../../data/yoloGtold1/train/57858.png +../../data/yoloGtold1/train/57859.png +../../data/yoloGtold1/train/57860.png +../../data/yoloGtold1/train/57861.png +../../data/yoloGtold1/train/57862.png +../../data/yoloGtold1/train/57863.png +../../data/yoloGtold1/train/57864.png +../../data/yoloGtold1/train/57865.png +../../data/yoloGtold1/train/57866.png +../../data/yoloGtold1/train/57867.png +../../data/yoloGtold1/train/57868.png +../../data/yoloGtold1/train/57869.png +../../data/yoloGtold1/train/57870.png +../../data/yoloGtold1/train/57871.png +../../data/yoloGtold1/train/57872.png +../../data/yoloGtold1/train/57873.png +../../data/yoloGtold1/train/57874.png +../../data/yoloGtold1/train/57875.png +../../data/yoloGtold1/train/57876.png +../../data/yoloGtold1/train/57877.png +../../data/yoloGtold1/train/57878.png +../../data/yoloGtold1/train/57879.png +../../data/yoloGtold1/train/57880.png +../../data/yoloGtold1/train/57881.png +../../data/yoloGtold1/train/57882.png +../../data/yoloGtold1/train/57883.png +../../data/yoloGtold1/train/57884.png +../../data/yoloGtold1/train/57885.png +../../data/yoloGtold1/train/57886.png +../../data/yoloGtold1/train/57887.png +../../data/yoloGtold1/train/57888.png +../../data/yoloGtold1/train/57889.png +../../data/yoloGtold1/train/57890.png +../../data/yoloGtold1/train/57891.png +../../data/yoloGtold1/train/57892.png +../../data/yoloGtold1/train/57893.png +../../data/yoloGtold1/train/57894.png +../../data/yoloGtold1/train/57895.png +../../data/yoloGtold1/train/57896.png +../../data/yoloGtold1/train/57897.png +../../data/yoloGtold1/train/57898.png +../../data/yoloGtold1/train/57899.png +../../data/yoloGtold1/train/57900.png +../../data/yoloGtold1/train/57901.png +../../data/yoloGtold1/train/57902.png +../../data/yoloGtold1/train/57903.png +../../data/yoloGtold1/train/57904.png +../../data/yoloGtold1/train/57905.png +../../data/yoloGtold1/train/57906.png +../../data/yoloGtold1/train/57907.png +../../data/yoloGtold1/train/57908.png +../../data/yoloGtold1/train/57909.png +../../data/yoloGtold1/train/57910.png +../../data/yoloGtold1/train/57911.png +../../data/yoloGtold1/train/57912.png +../../data/yoloGtold1/train/57913.png +../../data/yoloGtold1/train/57914.png +../../data/yoloGtold1/train/57915.png +../../data/yoloGtold1/train/57916.png +../../data/yoloGtold1/train/57917.png +../../data/yoloGtold1/train/57918.png +../../data/yoloGtold1/train/57919.png +../../data/yoloGtold1/train/57920.png +../../data/yoloGtold1/train/57921.png +../../data/yoloGtold1/train/57922.png +../../data/yoloGtold1/train/57923.png +../../data/yoloGtold1/train/57924.png +../../data/yoloGtold1/train/57925.png +../../data/yoloGtold1/train/57926.png +../../data/yoloGtold1/train/57927.png +../../data/yoloGtold1/train/57928.png +../../data/yoloGtold1/train/57929.png +../../data/yoloGtold1/train/57930.png +../../data/yoloGtold1/train/57931.png +../../data/yoloGtold1/train/57932.png +../../data/yoloGtold1/train/57933.png +../../data/yoloGtold1/train/57934.png +../../data/yoloGtold1/train/57935.png +../../data/yoloGtold1/train/57936.png +../../data/yoloGtold1/train/57937.png +../../data/yoloGtold1/train/57938.png +../../data/yoloGtold1/train/57939.png +../../data/yoloGtold1/train/57940.png +../../data/yoloGtold1/train/57941.png +../../data/yoloGtold1/train/57942.png +../../data/yoloGtold1/train/57943.png +../../data/yoloGtold1/train/57944.png +../../data/yoloGtold1/train/57945.png +../../data/yoloGtold1/train/57946.png +../../data/yoloGtold1/train/57947.png +../../data/yoloGtold1/train/57948.png +../../data/yoloGtold1/train/57949.png +../../data/yoloGtold1/train/57950.png +../../data/yoloGtold1/train/57951.png +../../data/yoloGtold1/train/57952.png +../../data/yoloGtold1/train/57953.png +../../data/yoloGtold1/train/57954.png +../../data/yoloGtold1/train/57955.png +../../data/yoloGtold1/train/57956.png +../../data/yoloGtold1/train/57957.png +../../data/yoloGtold1/train/57958.png +../../data/yoloGtold1/train/57959.png +../../data/yoloGtold1/train/57960.png +../../data/yoloGtold1/train/57961.png +../../data/yoloGtold1/train/57962.png +../../data/yoloGtold1/train/57963.png +../../data/yoloGtold1/train/57964.png +../../data/yoloGtold1/train/57965.png +../../data/yoloGtold1/train/57966.png +../../data/yoloGtold1/train/57967.png +../../data/yoloGtold1/train/57968.png +../../data/yoloGtold1/train/57969.png +../../data/yoloGtold1/train/57970.png +../../data/yoloGtold1/train/57971.png +../../data/yoloGtold1/train/57972.png +../../data/yoloGtold1/train/57973.png +../../data/yoloGtold1/train/57974.png +../../data/yoloGtold1/train/57975.png +../../data/yoloGtold1/train/57976.png +../../data/yoloGtold1/train/57977.png +../../data/yoloGtold1/train/57978.png +../../data/yoloGtold1/train/57979.png +../../data/yoloGtold1/train/57980.png +../../data/yoloGtold1/train/57981.png +../../data/yoloGtold1/train/57982.png +../../data/yoloGtold1/train/57983.png +../../data/yoloGtold1/train/57984.png +../../data/yoloGtold1/train/57985.png +../../data/yoloGtold1/train/57986.png +../../data/yoloGtold1/train/57987.png +../../data/yoloGtold1/train/57988.png +../../data/yoloGtold1/train/57989.png +../../data/yoloGtold1/train/57990.png +../../data/yoloGtold1/train/57991.png +../../data/yoloGtold1/train/57992.png +../../data/yoloGtold1/train/57993.png +../../data/yoloGtold1/train/57994.png +../../data/yoloGtold1/train/57995.png +../../data/yoloGtold1/train/57996.png +../../data/yoloGtold1/train/57997.png +../../data/yoloGtold1/train/57998.png +../../data/yoloGtold1/train/57999.png +../../data/yoloGtold1/train/58000.png +../../data/yoloGtold1/train/58001.png +../../data/yoloGtold1/train/58002.png +../../data/yoloGtold1/train/58003.png +../../data/yoloGtold1/train/58004.png +../../data/yoloGtold1/train/58005.png +../../data/yoloGtold1/train/58006.png +../../data/yoloGtold1/train/58007.png +../../data/yoloGtold1/train/58008.png +../../data/yoloGtold1/train/58009.png +../../data/yoloGtold1/train/58010.png +../../data/yoloGtold1/train/58011.png +../../data/yoloGtold1/train/58012.png +../../data/yoloGtold1/train/58013.png +../../data/yoloGtold1/train/58014.png +../../data/yoloGtold1/train/58015.png +../../data/yoloGtold1/train/58016.png +../../data/yoloGtold1/train/58017.png +../../data/yoloGtold1/train/58018.png +../../data/yoloGtold1/train/58019.png +../../data/yoloGtold1/train/58020.png +../../data/yoloGtold1/train/58021.png +../../data/yoloGtold1/train/58022.png +../../data/yoloGtold1/train/58023.png +../../data/yoloGtold1/train/58024.png +../../data/yoloGtold1/train/58025.png +../../data/yoloGtold1/train/58026.png +../../data/yoloGtold1/train/58027.png +../../data/yoloGtold1/train/58028.png +../../data/yoloGtold1/train/58029.png +../../data/yoloGtold1/train/58030.png +../../data/yoloGtold1/train/58031.png +../../data/yoloGtold1/train/58032.png +../../data/yoloGtold1/train/58033.png +../../data/yoloGtold1/train/58034.png +../../data/yoloGtold1/train/58035.png +../../data/yoloGtold1/train/58036.png +../../data/yoloGtold1/train/58037.png +../../data/yoloGtold1/train/58038.png +../../data/yoloGtold1/train/58039.png +../../data/yoloGtold1/train/58040.png +../../data/yoloGtold1/train/58041.png +../../data/yoloGtold1/train/58042.png +../../data/yoloGtold1/train/58043.png +../../data/yoloGtold1/train/58044.png +../../data/yoloGtold1/train/58045.png +../../data/yoloGtold1/train/58046.png +../../data/yoloGtold1/train/58047.png +../../data/yoloGtold1/train/58048.png +../../data/yoloGtold1/train/58049.png +../../data/yoloGtold1/train/58050.png +../../data/yoloGtold1/train/58051.png +../../data/yoloGtold1/train/58052.png +../../data/yoloGtold1/train/58053.png +../../data/yoloGtold1/train/58054.png +../../data/yoloGtold1/train/58055.png +../../data/yoloGtold1/train/58056.png +../../data/yoloGtold1/train/58057.png +../../data/yoloGtold1/train/58058.png +../../data/yoloGtold1/train/58059.png +../../data/yoloGtold1/train/58060.png +../../data/yoloGtold1/train/58061.png +../../data/yoloGtold1/train/58062.png +../../data/yoloGtold1/train/58063.png +../../data/yoloGtold1/train/58064.png +../../data/yoloGtold1/train/58065.png +../../data/yoloGtold1/train/58066.png +../../data/yoloGtold1/train/58067.png +../../data/yoloGtold1/train/58068.png +../../data/yoloGtold1/train/58069.png +../../data/yoloGtold1/train/58070.png +../../data/yoloGtold1/train/58071.png +../../data/yoloGtold1/train/58072.png +../../data/yoloGtold1/train/58073.png +../../data/yoloGtold1/train/58074.png +../../data/yoloGtold1/train/58075.png +../../data/yoloGtold1/train/58076.png +../../data/yoloGtold1/train/58077.png +../../data/yoloGtold1/train/58078.png +../../data/yoloGtold1/train/58079.png +../../data/yoloGtold1/train/58080.png +../../data/yoloGtold1/train/58081.png +../../data/yoloGtold1/train/58082.png +../../data/yoloGtold1/train/58083.png +../../data/yoloGtold1/train/58084.png +../../data/yoloGtold1/train/58085.png +../../data/yoloGtold1/train/58086.png +../../data/yoloGtold1/train/58087.png +../../data/yoloGtold1/train/58088.png +../../data/yoloGtold1/train/58089.png +../../data/yoloGtold1/train/58090.png +../../data/yoloGtold1/train/58091.png +../../data/yoloGtold1/train/58092.png +../../data/yoloGtold1/train/58093.png +../../data/yoloGtold1/train/58094.png +../../data/yoloGtold1/train/58095.png +../../data/yoloGtold1/train/58096.png +../../data/yoloGtold1/train/58097.png +../../data/yoloGtold1/train/58098.png +../../data/yoloGtold1/train/58099.png +../../data/yoloGtold1/train/58100.png +../../data/yoloGtold1/train/58101.png +../../data/yoloGtold1/train/58102.png +../../data/yoloGtold1/train/58103.png +../../data/yoloGtold1/train/58104.png +../../data/yoloGtold1/train/58105.png +../../data/yoloGtold1/train/58106.png +../../data/yoloGtold1/train/58107.png +../../data/yoloGtold1/train/58108.png +../../data/yoloGtold1/train/58109.png +../../data/yoloGtold1/train/58110.png +../../data/yoloGtold1/train/58111.png +../../data/yoloGtold1/train/58112.png +../../data/yoloGtold1/train/58113.png +../../data/yoloGtold1/train/58114.png +../../data/yoloGtold1/train/58115.png +../../data/yoloGtold1/train/58116.png +../../data/yoloGtold1/train/58117.png +../../data/yoloGtold1/train/58118.png +../../data/yoloGtold1/train/58119.png +../../data/yoloGtold1/train/58120.png +../../data/yoloGtold1/train/58121.png +../../data/yoloGtold1/train/58122.png +../../data/yoloGtold1/train/58123.png +../../data/yoloGtold1/train/58124.png +../../data/yoloGtold1/train/58125.png +../../data/yoloGtold1/train/58126.png +../../data/yoloGtold1/train/58127.png +../../data/yoloGtold1/train/58128.png +../../data/yoloGtold1/train/58129.png +../../data/yoloGtold1/train/58130.png +../../data/yoloGtold1/train/58131.png +../../data/yoloGtold1/train/58132.png +../../data/yoloGtold1/train/58133.png +../../data/yoloGtold1/train/58134.png +../../data/yoloGtold1/train/58135.png +../../data/yoloGtold1/train/58136.png +../../data/yoloGtold1/train/58137.png +../../data/yoloGtold1/train/58138.png +../../data/yoloGtold1/train/58139.png +../../data/yoloGtold1/train/58140.png +../../data/yoloGtold1/train/58141.png +../../data/yoloGtold1/train/58142.png +../../data/yoloGtold1/train/58143.png +../../data/yoloGtold1/train/58144.png +../../data/yoloGtold1/train/58145.png +../../data/yoloGtold1/train/58146.png +../../data/yoloGtold1/train/58147.png +../../data/yoloGtold1/train/58148.png +../../data/yoloGtold1/train/58149.png +../../data/yoloGtold1/train/58150.png +../../data/yoloGtold1/train/58151.png +../../data/yoloGtold1/train/58152.png +../../data/yoloGtold1/train/58153.png +../../data/yoloGtold1/train/58154.png +../../data/yoloGtold1/train/58155.png +../../data/yoloGtold1/train/58156.png +../../data/yoloGtold1/train/58157.png +../../data/yoloGtold1/train/58158.png +../../data/yoloGtold1/train/58159.png +../../data/yoloGtold1/train/58160.png +../../data/yoloGtold1/train/58161.png +../../data/yoloGtold1/train/58162.png +../../data/yoloGtold1/train/58163.png +../../data/yoloGtold1/train/58164.png +../../data/yoloGtold1/train/58165.png +../../data/yoloGtold1/train/58166.png +../../data/yoloGtold1/train/58167.png +../../data/yoloGtold1/train/58168.png +../../data/yoloGtold1/train/58169.png +../../data/yoloGtold1/train/58170.png +../../data/yoloGtold1/train/58171.png +../../data/yoloGtold1/train/58172.png +../../data/yoloGtold1/train/58173.png +../../data/yoloGtold1/train/58174.png +../../data/yoloGtold1/train/58175.png +../../data/yoloGtold1/train/58176.png +../../data/yoloGtold1/train/58177.png +../../data/yoloGtold1/train/58178.png +../../data/yoloGtold1/train/58179.png +../../data/yoloGtold1/train/58180.png +../../data/yoloGtold1/train/58181.png +../../data/yoloGtold1/train/58182.png +../../data/yoloGtold1/train/58183.png +../../data/yoloGtold1/train/58184.png +../../data/yoloGtold1/train/58185.png +../../data/yoloGtold1/train/58186.png +../../data/yoloGtold1/train/58187.png +../../data/yoloGtold1/train/58188.png +../../data/yoloGtold1/train/58189.png +../../data/yoloGtold1/train/58190.png +../../data/yoloGtold1/train/58191.png +../../data/yoloGtold1/train/58192.png +../../data/yoloGtold1/train/58193.png +../../data/yoloGtold1/train/58194.png +../../data/yoloGtold1/train/58195.png +../../data/yoloGtold1/train/58196.png +../../data/yoloGtold1/train/58197.png +../../data/yoloGtold1/train/58198.png +../../data/yoloGtold1/train/58199.png +../../data/yoloGtold1/train/58200.png +../../data/yoloGtold1/train/58201.png +../../data/yoloGtold1/train/58202.png +../../data/yoloGtold1/train/58203.png +../../data/yoloGtold1/train/58204.png +../../data/yoloGtold1/train/58205.png +../../data/yoloGtold1/train/58206.png +../../data/yoloGtold1/train/58207.png +../../data/yoloGtold1/train/58208.png +../../data/yoloGtold1/train/58209.png +../../data/yoloGtold1/train/58210.png +../../data/yoloGtold1/train/58211.png +../../data/yoloGtold1/train/58212.png +../../data/yoloGtold1/train/58213.png +../../data/yoloGtold1/train/58214.png +../../data/yoloGtold1/train/58215.png +../../data/yoloGtold1/train/58216.png +../../data/yoloGtold1/train/58217.png +../../data/yoloGtold1/train/58218.png +../../data/yoloGtold1/train/58219.png +../../data/yoloGtold1/train/58220.png +../../data/yoloGtold1/train/58221.png +../../data/yoloGtold1/train/58222.png +../../data/yoloGtold1/train/58223.png +../../data/yoloGtold1/train/58224.png +../../data/yoloGtold1/train/58225.png +../../data/yoloGtold1/train/58226.png +../../data/yoloGtold1/train/58227.png +../../data/yoloGtold1/train/58228.png +../../data/yoloGtold1/train/58229.png +../../data/yoloGtold1/train/58230.png +../../data/yoloGtold1/train/58231.png +../../data/yoloGtold1/train/58232.png +../../data/yoloGtold1/train/58233.png +../../data/yoloGtold1/train/58234.png +../../data/yoloGtold1/train/58235.png +../../data/yoloGtold1/train/58236.png +../../data/yoloGtold1/train/58237.png +../../data/yoloGtold1/train/58238.png +../../data/yoloGtold1/train/58239.png +../../data/yoloGtold1/train/58240.png +../../data/yoloGtold1/train/58241.png +../../data/yoloGtold1/train/58242.png +../../data/yoloGtold1/train/58243.png +../../data/yoloGtold1/train/58244.png +../../data/yoloGtold1/train/58245.png +../../data/yoloGtold1/train/58246.png +../../data/yoloGtold1/train/58247.png +../../data/yoloGtold1/train/58248.png +../../data/yoloGtold1/train/58249.png +../../data/yoloGtold1/train/58250.png +../../data/yoloGtold1/train/58251.png +../../data/yoloGtold1/train/58252.png +../../data/yoloGtold1/train/58253.png +../../data/yoloGtold1/train/58254.png +../../data/yoloGtold1/train/58255.png +../../data/yoloGtold1/train/58256.png +../../data/yoloGtold1/train/58257.png +../../data/yoloGtold1/train/58258.png +../../data/yoloGtold1/train/58259.png +../../data/yoloGtold1/train/58260.png +../../data/yoloGtold1/train/58261.png +../../data/yoloGtold1/train/58262.png +../../data/yoloGtold1/train/58263.png +../../data/yoloGtold1/train/58264.png +../../data/yoloGtold1/train/58265.png +../../data/yoloGtold1/train/58266.png +../../data/yoloGtold1/train/58267.png +../../data/yoloGtold1/train/58268.png +../../data/yoloGtold1/train/58269.png +../../data/yoloGtold1/train/58270.png +../../data/yoloGtold1/train/58271.png +../../data/yoloGtold1/train/58272.png +../../data/yoloGtold1/train/58273.png +../../data/yoloGtold1/train/58274.png +../../data/yoloGtold1/train/58275.png +../../data/yoloGtold1/train/58276.png +../../data/yoloGtold1/train/58277.png +../../data/yoloGtold1/train/58278.png +../../data/yoloGtold1/train/58279.png +../../data/yoloGtold1/train/58280.png +../../data/yoloGtold1/train/58281.png +../../data/yoloGtold1/train/58282.png +../../data/yoloGtold1/train/58283.png +../../data/yoloGtold1/train/58284.png +../../data/yoloGtold1/train/58285.png +../../data/yoloGtold1/train/58286.png +../../data/yoloGtold1/train/58287.png +../../data/yoloGtold1/train/58288.png +../../data/yoloGtold1/train/58289.png +../../data/yoloGtold1/train/58290.png +../../data/yoloGtold1/train/58291.png +../../data/yoloGtold1/train/58292.png +../../data/yoloGtold1/train/58293.png +../../data/yoloGtold1/train/58294.png +../../data/yoloGtold1/train/58295.png +../../data/yoloGtold1/train/58296.png +../../data/yoloGtold1/train/58297.png +../../data/yoloGtold1/train/58298.png +../../data/yoloGtold1/train/58299.png +../../data/yoloGtold1/train/58300.png +../../data/yoloGtold1/train/58301.png +../../data/yoloGtold1/train/58302.png +../../data/yoloGtold1/train/58303.png +../../data/yoloGtold1/train/58304.png +../../data/yoloGtold1/train/58305.png +../../data/yoloGtold1/train/58306.png +../../data/yoloGtold1/train/58307.png +../../data/yoloGtold1/train/58308.png +../../data/yoloGtold1/train/58309.png +../../data/yoloGtold1/train/58310.png +../../data/yoloGtold1/train/58311.png +../../data/yoloGtold1/train/58312.png +../../data/yoloGtold1/train/58313.png +../../data/yoloGtold1/train/58314.png +../../data/yoloGtold1/train/58315.png +../../data/yoloGtold1/train/58316.png +../../data/yoloGtold1/train/58317.png +../../data/yoloGtold1/train/58318.png +../../data/yoloGtold1/train/58319.png +../../data/yoloGtold1/train/58320.png +../../data/yoloGtold1/train/58321.png +../../data/yoloGtold1/train/58322.png +../../data/yoloGtold1/train/58323.png +../../data/yoloGtold1/train/58324.png +../../data/yoloGtold1/train/58325.png +../../data/yoloGtold1/train/58326.png +../../data/yoloGtold1/train/58327.png +../../data/yoloGtold1/train/58328.png +../../data/yoloGtold1/train/58329.png +../../data/yoloGtold1/train/58330.png +../../data/yoloGtold1/train/58331.png +../../data/yoloGtold1/train/58332.png +../../data/yoloGtold1/train/58333.png +../../data/yoloGtold1/train/58334.png +../../data/yoloGtold1/train/58335.png +../../data/yoloGtold1/train/58336.png +../../data/yoloGtold1/train/58337.png +../../data/yoloGtold1/train/58338.png +../../data/yoloGtold1/train/58339.png +../../data/yoloGtold1/train/58340.png +../../data/yoloGtold1/train/58341.png +../../data/yoloGtold1/train/58342.png +../../data/yoloGtold1/train/58343.png +../../data/yoloGtold1/train/58344.png +../../data/yoloGtold1/train/58345.png +../../data/yoloGtold1/train/58346.png +../../data/yoloGtold1/train/58347.png +../../data/yoloGtold1/train/58348.png +../../data/yoloGtold1/train/58349.png +../../data/yoloGtold1/train/58350.png +../../data/yoloGtold1/train/58351.png +../../data/yoloGtold1/train/58352.png +../../data/yoloGtold1/train/58353.png +../../data/yoloGtold1/train/58354.png +../../data/yoloGtold1/train/58355.png +../../data/yoloGtold1/train/58356.png +../../data/yoloGtold1/train/58357.png +../../data/yoloGtold1/train/58358.png +../../data/yoloGtold1/train/58359.png +../../data/yoloGtold1/train/58360.png +../../data/yoloGtold1/train/58361.png +../../data/yoloGtold1/train/58362.png +../../data/yoloGtold1/train/58363.png +../../data/yoloGtold1/train/58364.png +../../data/yoloGtold1/train/58365.png +../../data/yoloGtold1/train/58366.png +../../data/yoloGtold1/train/58367.png +../../data/yoloGtold1/train/58368.png +../../data/yoloGtold1/train/58369.png +../../data/yoloGtold1/train/58370.png +../../data/yoloGtold1/train/58371.png +../../data/yoloGtold1/train/58372.png +../../data/yoloGtold1/train/58373.png +../../data/yoloGtold1/train/58374.png +../../data/yoloGtold1/train/58375.png +../../data/yoloGtold1/train/58376.png +../../data/yoloGtold1/train/58377.png +../../data/yoloGtold1/train/58378.png +../../data/yoloGtold1/train/58379.png +../../data/yoloGtold1/train/58380.png +../../data/yoloGtold1/train/58381.png +../../data/yoloGtold1/train/58382.png +../../data/yoloGtold1/train/58383.png +../../data/yoloGtold1/train/58384.png +../../data/yoloGtold1/train/58385.png +../../data/yoloGtold1/train/58386.png +../../data/yoloGtold1/train/58387.png +../../data/yoloGtold1/train/58388.png +../../data/yoloGtold1/train/58389.png +../../data/yoloGtold1/train/58390.png +../../data/yoloGtold1/train/58391.png +../../data/yoloGtold1/train/58392.png +../../data/yoloGtold1/train/58393.png +../../data/yoloGtold1/train/58394.png +../../data/yoloGtold1/train/58395.png +../../data/yoloGtold1/train/58396.png +../../data/yoloGtold1/train/58397.png +../../data/yoloGtold1/train/58398.png +../../data/yoloGtold1/train/58399.png +../../data/yoloGtold1/train/58400.png +../../data/yoloGtold1/train/58401.png +../../data/yoloGtold1/train/58402.png +../../data/yoloGtold1/train/58403.png +../../data/yoloGtold1/train/58404.png +../../data/yoloGtold1/train/58405.png +../../data/yoloGtold1/train/58406.png +../../data/yoloGtold1/train/58407.png +../../data/yoloGtold1/train/58408.png +../../data/yoloGtold1/train/58409.png +../../data/yoloGtold1/train/58410.png +../../data/yoloGtold1/train/58411.png +../../data/yoloGtold1/train/58412.png +../../data/yoloGtold1/train/58413.png +../../data/yoloGtold1/train/58414.png +../../data/yoloGtold1/train/58415.png +../../data/yoloGtold1/train/58416.png +../../data/yoloGtold1/train/58417.png +../../data/yoloGtold1/train/58418.png +../../data/yoloGtold1/train/58419.png +../../data/yoloGtold1/train/58420.png +../../data/yoloGtold1/train/58421.png +../../data/yoloGtold1/train/58422.png +../../data/yoloGtold1/train/58423.png +../../data/yoloGtold1/train/58424.png +../../data/yoloGtold1/train/58425.png +../../data/yoloGtold1/train/58426.png +../../data/yoloGtold1/train/58427.png +../../data/yoloGtold1/train/58428.png +../../data/yoloGtold1/train/58429.png +../../data/yoloGtold1/train/58430.png +../../data/yoloGtold1/train/58431.png +../../data/yoloGtold1/train/58432.png +../../data/yoloGtold1/train/58433.png +../../data/yoloGtold1/train/58434.png +../../data/yoloGtold1/train/58435.png +../../data/yoloGtold1/train/58436.png +../../data/yoloGtold1/train/58437.png +../../data/yoloGtold1/train/58438.png +../../data/yoloGtold1/train/58439.png +../../data/yoloGtold1/train/58440.png +../../data/yoloGtold1/train/58441.png +../../data/yoloGtold1/train/58442.png +../../data/yoloGtold1/train/58443.png +../../data/yoloGtold1/train/58444.png +../../data/yoloGtold1/train/58445.png +../../data/yoloGtold1/train/58446.png +../../data/yoloGtold1/train/58447.png +../../data/yoloGtold1/train/58448.png +../../data/yoloGtold1/train/58449.png +../../data/yoloGtold1/train/58450.png +../../data/yoloGtold1/train/58451.png +../../data/yoloGtold1/train/58452.png +../../data/yoloGtold1/train/58453.png +../../data/yoloGtold1/train/58454.png +../../data/yoloGtold1/train/58455.png +../../data/yoloGtold1/train/58456.png +../../data/yoloGtold1/train/58457.png +../../data/yoloGtold1/train/58458.png +../../data/yoloGtold1/train/58459.png +../../data/yoloGtold1/train/58460.png +../../data/yoloGtold1/train/58461.png +../../data/yoloGtold1/train/58462.png +../../data/yoloGtold1/train/58463.png +../../data/yoloGtold1/train/58464.png +../../data/yoloGtold1/train/58465.png +../../data/yoloGtold1/train/58466.png +../../data/yoloGtold1/train/58467.png +../../data/yoloGtold1/train/58468.png +../../data/yoloGtold1/train/58469.png +../../data/yoloGtold1/train/58470.png +../../data/yoloGtold1/train/58471.png +../../data/yoloGtold1/train/58472.png +../../data/yoloGtold1/train/58473.png +../../data/yoloGtold1/train/58474.png +../../data/yoloGtold1/train/58475.png +../../data/yoloGtold1/train/58476.png +../../data/yoloGtold1/train/58477.png +../../data/yoloGtold1/train/58478.png +../../data/yoloGtold1/train/58479.png +../../data/yoloGtold1/train/58480.png +../../data/yoloGtold1/train/58481.png +../../data/yoloGtold1/train/58482.png +../../data/yoloGtold1/train/58483.png +../../data/yoloGtold1/train/58484.png +../../data/yoloGtold1/train/58485.png +../../data/yoloGtold1/train/58486.png +../../data/yoloGtold1/train/58487.png +../../data/yoloGtold1/train/58488.png +../../data/yoloGtold1/train/58489.png +../../data/yoloGtold1/train/58490.png +../../data/yoloGtold1/train/58491.png +../../data/yoloGtold1/train/58492.png +../../data/yoloGtold1/train/58493.png +../../data/yoloGtold1/train/58494.png +../../data/yoloGtold1/train/58495.png +../../data/yoloGtold1/train/58496.png +../../data/yoloGtold1/train/58497.png +../../data/yoloGtold1/train/58498.png +../../data/yoloGtold1/train/58499.png +../../data/yoloGtold1/train/58500.png +../../data/yoloGtold1/train/58501.png +../../data/yoloGtold1/train/58502.png +../../data/yoloGtold1/train/58503.png +../../data/yoloGtold1/train/58504.png +../../data/yoloGtold1/train/58505.png +../../data/yoloGtold1/train/58506.png +../../data/yoloGtold1/train/58507.png +../../data/yoloGtold1/train/58508.png +../../data/yoloGtold1/train/58509.png +../../data/yoloGtold1/train/58510.png +../../data/yoloGtold1/train/58511.png +../../data/yoloGtold1/train/58512.png +../../data/yoloGtold1/train/58513.png +../../data/yoloGtold1/train/58514.png +../../data/yoloGtold1/train/58515.png +../../data/yoloGtold1/train/58516.png +../../data/yoloGtold1/train/58517.png +../../data/yoloGtold1/train/58518.png +../../data/yoloGtold1/train/58519.png +../../data/yoloGtold1/train/58520.png +../../data/yoloGtold1/train/58521.png +../../data/yoloGtold1/train/58522.png +../../data/yoloGtold1/train/58523.png +../../data/yoloGtold1/train/58524.png +../../data/yoloGtold1/train/58525.png +../../data/yoloGtold1/train/58526.png +../../data/yoloGtold1/train/58527.png +../../data/yoloGtold1/train/58528.png +../../data/yoloGtold1/train/58529.png +../../data/yoloGtold1/train/58530.png +../../data/yoloGtold1/train/58531.png +../../data/yoloGtold1/train/58532.png +../../data/yoloGtold1/train/58533.png +../../data/yoloGtold1/train/58534.png +../../data/yoloGtold1/train/58535.png +../../data/yoloGtold1/train/58536.png +../../data/yoloGtold1/train/58537.png +../../data/yoloGtold1/train/58538.png +../../data/yoloGtold1/train/58539.png +../../data/yoloGtold1/train/58540.png +../../data/yoloGtold1/train/58541.png +../../data/yoloGtold1/train/58542.png +../../data/yoloGtold1/train/58543.png +../../data/yoloGtold1/train/58544.png +../../data/yoloGtold1/train/58545.png +../../data/yoloGtold1/train/58546.png +../../data/yoloGtold1/train/58547.png +../../data/yoloGtold1/train/58548.png +../../data/yoloGtold1/train/58549.png +../../data/yoloGtold1/train/58550.png +../../data/yoloGtold1/train/58551.png +../../data/yoloGtold1/train/58552.png +../../data/yoloGtold1/train/58553.png +../../data/yoloGtold1/train/58554.png +../../data/yoloGtold1/train/58555.png +../../data/yoloGtold1/train/58556.png +../../data/yoloGtold1/train/58557.png +../../data/yoloGtold1/train/58558.png +../../data/yoloGtold1/train/58559.png +../../data/yoloGtold1/train/58560.png +../../data/yoloGtold1/train/58561.png +../../data/yoloGtold1/train/58562.png +../../data/yoloGtold1/train/58563.png +../../data/yoloGtold1/train/58564.png +../../data/yoloGtold1/train/58565.png +../../data/yoloGtold1/train/58566.png +../../data/yoloGtold1/train/58567.png +../../data/yoloGtold1/train/58568.png +../../data/yoloGtold1/train/58569.png +../../data/yoloGtold1/train/58570.png +../../data/yoloGtold1/train/58571.png +../../data/yoloGtold1/train/58572.png +../../data/yoloGtold1/train/58573.png +../../data/yoloGtold1/train/58574.png +../../data/yoloGtold1/train/58575.png +../../data/yoloGtold1/train/58576.png +../../data/yoloGtold1/train/58577.png +../../data/yoloGtold1/train/58578.png +../../data/yoloGtold1/train/58579.png +../../data/yoloGtold1/train/58580.png +../../data/yoloGtold1/train/58581.png +../../data/yoloGtold1/train/58582.png +../../data/yoloGtold1/train/58583.png +../../data/yoloGtold1/train/58584.png +../../data/yoloGtold1/train/58585.png +../../data/yoloGtold1/train/58586.png +../../data/yoloGtold1/train/58587.png +../../data/yoloGtold1/train/58588.png +../../data/yoloGtold1/train/58589.png +../../data/yoloGtold1/train/58590.png +../../data/yoloGtold1/train/58591.png +../../data/yoloGtold1/train/58592.png +../../data/yoloGtold1/train/58593.png +../../data/yoloGtold1/train/58594.png +../../data/yoloGtold1/train/58595.png +../../data/yoloGtold1/train/58596.png +../../data/yoloGtold1/train/58597.png +../../data/yoloGtold1/train/58598.png +../../data/yoloGtold1/train/58599.png +../../data/yoloGtold1/train/58600.png +../../data/yoloGtold1/train/58601.png +../../data/yoloGtold1/train/58602.png +../../data/yoloGtold1/train/58603.png +../../data/yoloGtold1/train/58604.png +../../data/yoloGtold1/train/58605.png +../../data/yoloGtold1/train/58606.png +../../data/yoloGtold1/train/58607.png +../../data/yoloGtold1/train/58608.png +../../data/yoloGtold1/train/58609.png +../../data/yoloGtold1/train/58610.png +../../data/yoloGtold1/train/58611.png +../../data/yoloGtold1/train/58612.png +../../data/yoloGtold1/train/58613.png +../../data/yoloGtold1/train/58614.png +../../data/yoloGtold1/train/58615.png +../../data/yoloGtold1/train/58616.png +../../data/yoloGtold1/train/58617.png +../../data/yoloGtold1/train/58618.png +../../data/yoloGtold1/train/58619.png +../../data/yoloGtold1/train/58620.png +../../data/yoloGtold1/train/58621.png +../../data/yoloGtold1/train/58622.png +../../data/yoloGtold1/train/58623.png +../../data/yoloGtold1/train/58624.png +../../data/yoloGtold1/train/58625.png +../../data/yoloGtold1/train/58626.png +../../data/yoloGtold1/train/58627.png +../../data/yoloGtold1/train/58628.png +../../data/yoloGtold1/train/58629.png +../../data/yoloGtold1/train/58630.png +../../data/yoloGtold1/train/58631.png +../../data/yoloGtold1/train/58632.png +../../data/yoloGtold1/train/58633.png +../../data/yoloGtold1/train/58634.png +../../data/yoloGtold1/train/58635.png +../../data/yoloGtold1/train/58636.png +../../data/yoloGtold1/train/58637.png +../../data/yoloGtold1/train/58638.png +../../data/yoloGtold1/train/58639.png +../../data/yoloGtold1/train/58640.png +../../data/yoloGtold1/train/58641.png +../../data/yoloGtold1/train/58642.png +../../data/yoloGtold1/train/58643.png +../../data/yoloGtold1/train/58644.png +../../data/yoloGtold1/train/58645.png +../../data/yoloGtold1/train/58646.png +../../data/yoloGtold1/train/58647.png +../../data/yoloGtold1/train/58648.png +../../data/yoloGtold1/train/58649.png +../../data/yoloGtold1/train/58650.png +../../data/yoloGtold1/train/58651.png +../../data/yoloGtold1/train/58652.png +../../data/yoloGtold1/train/58653.png +../../data/yoloGtold1/train/58654.png +../../data/yoloGtold1/train/58655.png +../../data/yoloGtold1/train/58656.png +../../data/yoloGtold1/train/58657.png +../../data/yoloGtold1/train/58658.png +../../data/yoloGtold1/train/58659.png +../../data/yoloGtold1/train/58660.png +../../data/yoloGtold1/train/58661.png +../../data/yoloGtold1/train/58662.png +../../data/yoloGtold1/train/58663.png +../../data/yoloGtold1/train/58664.png +../../data/yoloGtold1/train/58665.png +../../data/yoloGtold1/train/58666.png +../../data/yoloGtold1/train/58667.png +../../data/yoloGtold1/train/58668.png +../../data/yoloGtold1/train/58669.png +../../data/yoloGtold1/train/58670.png +../../data/yoloGtold1/train/58671.png +../../data/yoloGtold1/train/58672.png +../../data/yoloGtold1/train/58673.png +../../data/yoloGtold1/train/58674.png +../../data/yoloGtold1/train/58675.png +../../data/yoloGtold1/train/58676.png +../../data/yoloGtold1/train/58677.png +../../data/yoloGtold1/train/58678.png +../../data/yoloGtold1/train/58679.png +../../data/yoloGtold1/train/58680.png +../../data/yoloGtold1/train/58681.png +../../data/yoloGtold1/train/58682.png +../../data/yoloGtold1/train/58683.png +../../data/yoloGtold1/train/58684.png +../../data/yoloGtold1/train/58685.png +../../data/yoloGtold1/train/58686.png +../../data/yoloGtold1/train/58687.png +../../data/yoloGtold1/train/58688.png +../../data/yoloGtold1/train/58689.png +../../data/yoloGtold1/train/58690.png +../../data/yoloGtold1/train/58691.png +../../data/yoloGtold1/train/58692.png +../../data/yoloGtold1/train/58693.png +../../data/yoloGtold1/train/58694.png +../../data/yoloGtold1/train/58695.png +../../data/yoloGtold1/train/58696.png +../../data/yoloGtold1/train/58697.png +../../data/yoloGtold1/train/58698.png +../../data/yoloGtold1/train/58699.png +../../data/yoloGtold1/train/58700.png +../../data/yoloGtold1/train/58701.png +../../data/yoloGtold1/train/58702.png +../../data/yoloGtold1/train/58703.png +../../data/yoloGtold1/train/58704.png +../../data/yoloGtold1/train/58705.png +../../data/yoloGtold1/train/58706.png +../../data/yoloGtold1/train/58707.png +../../data/yoloGtold1/train/58708.png +../../data/yoloGtold1/train/58709.png +../../data/yoloGtold1/train/58710.png +../../data/yoloGtold1/train/58711.png +../../data/yoloGtold1/train/58712.png +../../data/yoloGtold1/train/58713.png +../../data/yoloGtold1/train/58714.png +../../data/yoloGtold1/train/58715.png +../../data/yoloGtold1/train/58716.png +../../data/yoloGtold1/train/58717.png +../../data/yoloGtold1/train/58718.png +../../data/yoloGtold1/train/58719.png +../../data/yoloGtold1/train/58720.png +../../data/yoloGtold1/train/58721.png +../../data/yoloGtold1/train/58722.png +../../data/yoloGtold1/train/58723.png +../../data/yoloGtold1/train/58724.png +../../data/yoloGtold1/train/58725.png +../../data/yoloGtold1/train/58726.png +../../data/yoloGtold1/train/58727.png +../../data/yoloGtold1/train/58728.png +../../data/yoloGtold1/train/58729.png +../../data/yoloGtold1/train/58730.png +../../data/yoloGtold1/train/58731.png +../../data/yoloGtold1/train/58732.png +../../data/yoloGtold1/train/58733.png +../../data/yoloGtold1/train/58734.png +../../data/yoloGtold1/train/58735.png +../../data/yoloGtold1/train/58736.png +../../data/yoloGtold1/train/58737.png +../../data/yoloGtold1/train/58738.png +../../data/yoloGtold1/train/58739.png +../../data/yoloGtold1/train/58740.png +../../data/yoloGtold1/train/58741.png +../../data/yoloGtold1/train/58742.png +../../data/yoloGtold1/train/58743.png +../../data/yoloGtold1/train/58744.png +../../data/yoloGtold1/train/58745.png +../../data/yoloGtold1/train/58746.png +../../data/yoloGtold1/train/58747.png +../../data/yoloGtold1/train/58748.png +../../data/yoloGtold1/train/58749.png +../../data/yoloGtold1/train/58750.png +../../data/yoloGtold1/train/58751.png +../../data/yoloGtold1/train/58752.png +../../data/yoloGtold1/train/58753.png +../../data/yoloGtold1/train/58754.png +../../data/yoloGtold1/train/58755.png +../../data/yoloGtold1/train/58756.png +../../data/yoloGtold1/train/58757.png +../../data/yoloGtold1/train/58758.png +../../data/yoloGtold1/train/58759.png +../../data/yoloGtold1/train/58760.png +../../data/yoloGtold1/train/58761.png +../../data/yoloGtold1/train/58762.png +../../data/yoloGtold1/train/58763.png +../../data/yoloGtold1/train/58764.png +../../data/yoloGtold1/train/58765.png +../../data/yoloGtold1/train/58766.png +../../data/yoloGtold1/train/58767.png +../../data/yoloGtold1/train/58768.png +../../data/yoloGtold1/train/58769.png +../../data/yoloGtold1/train/58770.png +../../data/yoloGtold1/train/58771.png +../../data/yoloGtold1/train/58772.png +../../data/yoloGtold1/train/58773.png +../../data/yoloGtold1/train/58774.png +../../data/yoloGtold1/train/58775.png +../../data/yoloGtold1/train/58776.png +../../data/yoloGtold1/train/58777.png +../../data/yoloGtold1/train/58778.png +../../data/yoloGtold1/train/58779.png +../../data/yoloGtold1/train/58780.png +../../data/yoloGtold1/train/58781.png +../../data/yoloGtold1/train/58782.png +../../data/yoloGtold1/train/58783.png +../../data/yoloGtold1/train/58784.png +../../data/yoloGtold1/train/58785.png +../../data/yoloGtold1/train/58786.png +../../data/yoloGtold1/train/58787.png +../../data/yoloGtold1/train/58788.png +../../data/yoloGtold1/train/58789.png +../../data/yoloGtold1/train/58790.png +../../data/yoloGtold1/train/58791.png +../../data/yoloGtold1/train/58792.png +../../data/yoloGtold1/train/58793.png +../../data/yoloGtold1/train/58794.png +../../data/yoloGtold1/train/58795.png +../../data/yoloGtold1/train/58796.png +../../data/yoloGtold1/train/58797.png +../../data/yoloGtold1/train/58798.png +../../data/yoloGtold1/train/58799.png +../../data/yoloGtold1/train/58800.png +../../data/yoloGtold1/train/58801.png +../../data/yoloGtold1/train/58802.png +../../data/yoloGtold1/train/58803.png +../../data/yoloGtold1/train/58804.png +../../data/yoloGtold1/train/58805.png +../../data/yoloGtold1/train/58806.png +../../data/yoloGtold1/train/58807.png +../../data/yoloGtold1/train/58808.png +../../data/yoloGtold1/train/58809.png +../../data/yoloGtold1/train/58810.png +../../data/yoloGtold1/train/58811.png +../../data/yoloGtold1/train/58812.png +../../data/yoloGtold1/train/58813.png +../../data/yoloGtold1/train/58814.png +../../data/yoloGtold1/train/58815.png +../../data/yoloGtold1/train/58816.png +../../data/yoloGtold1/train/58817.png +../../data/yoloGtold1/train/58818.png +../../data/yoloGtold1/train/58819.png +../../data/yoloGtold1/train/58820.png +../../data/yoloGtold1/train/58821.png +../../data/yoloGtold1/train/58822.png +../../data/yoloGtold1/train/58823.png +../../data/yoloGtold1/train/58824.png +../../data/yoloGtold1/train/58825.png +../../data/yoloGtold1/train/58826.png +../../data/yoloGtold1/train/58827.png +../../data/yoloGtold1/train/58828.png +../../data/yoloGtold1/train/58829.png +../../data/yoloGtold1/train/58830.png +../../data/yoloGtold1/train/58831.png +../../data/yoloGtold1/train/58832.png +../../data/yoloGtold1/train/58833.png +../../data/yoloGtold1/train/58834.png +../../data/yoloGtold1/train/58835.png +../../data/yoloGtold1/train/58836.png +../../data/yoloGtold1/train/58837.png +../../data/yoloGtold1/train/58838.png +../../data/yoloGtold1/train/58839.png +../../data/yoloGtold1/train/58840.png +../../data/yoloGtold1/train/58841.png +../../data/yoloGtold1/train/58842.png +../../data/yoloGtold1/train/58843.png +../../data/yoloGtold1/train/58844.png +../../data/yoloGtold1/train/58845.png +../../data/yoloGtold1/train/58846.png +../../data/yoloGtold1/train/58847.png +../../data/yoloGtold1/train/58848.png +../../data/yoloGtold1/train/58849.png +../../data/yoloGtold1/train/58850.png +../../data/yoloGtold1/train/58851.png +../../data/yoloGtold1/train/58852.png +../../data/yoloGtold1/train/58853.png +../../data/yoloGtold1/train/58854.png +../../data/yoloGtold1/train/58855.png +../../data/yoloGtold1/train/58856.png +../../data/yoloGtold1/train/58857.png +../../data/yoloGtold1/train/58858.png +../../data/yoloGtold1/train/58859.png +../../data/yoloGtold1/train/58860.png +../../data/yoloGtold1/train/58861.png +../../data/yoloGtold1/train/58862.png +../../data/yoloGtold1/train/58863.png +../../data/yoloGtold1/train/58864.png +../../data/yoloGtold1/train/58865.png +../../data/yoloGtold1/train/58866.png +../../data/yoloGtold1/train/58867.png +../../data/yoloGtold1/train/58868.png +../../data/yoloGtold1/train/58869.png +../../data/yoloGtold1/train/58870.png +../../data/yoloGtold1/train/58871.png +../../data/yoloGtold1/train/58872.png +../../data/yoloGtold1/train/58873.png +../../data/yoloGtold1/train/58874.png +../../data/yoloGtold1/train/58875.png +../../data/yoloGtold1/train/58876.png +../../data/yoloGtold1/train/58877.png +../../data/yoloGtold1/train/58878.png +../../data/yoloGtold1/train/58879.png +../../data/yoloGtold1/train/58880.png +../../data/yoloGtold1/train/58881.png +../../data/yoloGtold1/train/58882.png +../../data/yoloGtold1/train/58883.png +../../data/yoloGtold1/train/58884.png +../../data/yoloGtold1/train/58885.png +../../data/yoloGtold1/train/58886.png +../../data/yoloGtold1/train/58887.png +../../data/yoloGtold1/train/58888.png +../../data/yoloGtold1/train/58889.png +../../data/yoloGtold1/train/58890.png +../../data/yoloGtold1/train/58891.png +../../data/yoloGtold1/train/58892.png +../../data/yoloGtold1/train/58893.png +../../data/yoloGtold1/train/58894.png +../../data/yoloGtold1/train/58895.png +../../data/yoloGtold1/train/58896.png +../../data/yoloGtold1/train/58897.png +../../data/yoloGtold1/train/58898.png +../../data/yoloGtold1/train/58899.png +../../data/yoloGtold1/train/58900.png +../../data/yoloGtold1/train/58901.png +../../data/yoloGtold1/train/58902.png +../../data/yoloGtold1/train/58903.png +../../data/yoloGtold1/train/58904.png +../../data/yoloGtold1/train/58905.png +../../data/yoloGtold1/train/58906.png +../../data/yoloGtold1/train/58907.png +../../data/yoloGtold1/train/58908.png +../../data/yoloGtold1/train/58909.png +../../data/yoloGtold1/train/58910.png +../../data/yoloGtold1/train/58911.png +../../data/yoloGtold1/train/58912.png +../../data/yoloGtold1/train/58913.png +../../data/yoloGtold1/train/58914.png +../../data/yoloGtold1/train/58915.png +../../data/yoloGtold1/train/58916.png +../../data/yoloGtold1/train/58917.png +../../data/yoloGtold1/train/58918.png +../../data/yoloGtold1/train/58919.png +../../data/yoloGtold1/train/58920.png +../../data/yoloGtold1/train/58921.png +../../data/yoloGtold1/train/58922.png +../../data/yoloGtold1/train/58923.png +../../data/yoloGtold1/train/58924.png +../../data/yoloGtold1/train/58925.png +../../data/yoloGtold1/train/58926.png +../../data/yoloGtold1/train/58927.png +../../data/yoloGtold1/train/58928.png +../../data/yoloGtold1/train/58929.png +../../data/yoloGtold1/train/58930.png +../../data/yoloGtold1/train/58931.png +../../data/yoloGtold1/train/58932.png +../../data/yoloGtold1/train/58933.png +../../data/yoloGtold1/train/58934.png +../../data/yoloGtold1/train/58935.png +../../data/yoloGtold1/train/58936.png +../../data/yoloGtold1/train/58937.png +../../data/yoloGtold1/train/58938.png +../../data/yoloGtold1/train/58939.png +../../data/yoloGtold1/train/58940.png +../../data/yoloGtold1/train/58941.png +../../data/yoloGtold1/train/58942.png +../../data/yoloGtold1/train/58943.png +../../data/yoloGtold1/train/58944.png +../../data/yoloGtold1/train/58945.png +../../data/yoloGtold1/train/58946.png +../../data/yoloGtold1/train/58947.png +../../data/yoloGtold1/train/58948.png +../../data/yoloGtold1/train/58949.png +../../data/yoloGtold1/train/58950.png +../../data/yoloGtold1/train/58951.png +../../data/yoloGtold1/train/58952.png +../../data/yoloGtold1/train/58953.png +../../data/yoloGtold1/train/58954.png +../../data/yoloGtold1/train/58955.png +../../data/yoloGtold1/train/58956.png +../../data/yoloGtold1/train/58957.png +../../data/yoloGtold1/train/58958.png +../../data/yoloGtold1/train/58959.png +../../data/yoloGtold1/train/58960.png +../../data/yoloGtold1/train/58961.png +../../data/yoloGtold1/train/58962.png +../../data/yoloGtold1/train/58963.png +../../data/yoloGtold1/train/58964.png +../../data/yoloGtold1/train/58965.png +../../data/yoloGtold1/train/58966.png +../../data/yoloGtold1/train/58967.png +../../data/yoloGtold1/train/58968.png +../../data/yoloGtold1/train/58969.png +../../data/yoloGtold1/train/58970.png +../../data/yoloGtold1/train/58971.png +../../data/yoloGtold1/train/58972.png +../../data/yoloGtold1/train/58973.png +../../data/yoloGtold1/train/58974.png +../../data/yoloGtold1/train/58975.png +../../data/yoloGtold1/train/58976.png +../../data/yoloGtold1/train/58977.png +../../data/yoloGtold1/train/58978.png +../../data/yoloGtold1/train/58979.png +../../data/yoloGtold1/train/58980.png +../../data/yoloGtold1/train/58981.png +../../data/yoloGtold1/train/58982.png +../../data/yoloGtold1/train/58983.png +../../data/yoloGtold1/train/58984.png +../../data/yoloGtold1/train/58985.png +../../data/yoloGtold1/train/58986.png +../../data/yoloGtold1/train/58987.png +../../data/yoloGtold1/train/58988.png +../../data/yoloGtold1/train/58989.png +../../data/yoloGtold1/train/58990.png +../../data/yoloGtold1/train/58991.png +../../data/yoloGtold1/train/58992.png +../../data/yoloGtold1/train/58993.png +../../data/yoloGtold1/train/58994.png +../../data/yoloGtold1/train/58995.png +../../data/yoloGtold1/train/58996.png +../../data/yoloGtold1/train/58997.png +../../data/yoloGtold1/train/58998.png +../../data/yoloGtold1/train/58999.png +../../data/yoloGtold1/train/59000.png +../../data/yoloGtold1/train/59001.png +../../data/yoloGtold1/train/59002.png +../../data/yoloGtold1/train/59003.png +../../data/yoloGtold1/train/59004.png +../../data/yoloGtold1/train/59005.png +../../data/yoloGtold1/train/59006.png +../../data/yoloGtold1/train/59007.png +../../data/yoloGtold1/train/59008.png +../../data/yoloGtold1/train/59009.png +../../data/yoloGtold1/train/59010.png +../../data/yoloGtold1/train/59011.png +../../data/yoloGtold1/train/59012.png +../../data/yoloGtold1/train/59013.png +../../data/yoloGtold1/train/59014.png +../../data/yoloGtold1/train/59015.png +../../data/yoloGtold1/train/59016.png +../../data/yoloGtold1/train/59017.png +../../data/yoloGtold1/train/59018.png +../../data/yoloGtold1/train/59019.png +../../data/yoloGtold1/train/59020.png +../../data/yoloGtold1/train/59021.png +../../data/yoloGtold1/train/59022.png +../../data/yoloGtold1/train/59023.png +../../data/yoloGtold1/train/59024.png +../../data/yoloGtold1/train/59025.png +../../data/yoloGtold1/train/59026.png +../../data/yoloGtold1/train/59027.png +../../data/yoloGtold1/train/59028.png +../../data/yoloGtold1/train/59029.png +../../data/yoloGtold1/train/59030.png +../../data/yoloGtold1/train/59031.png +../../data/yoloGtold1/train/59032.png +../../data/yoloGtold1/train/59033.png +../../data/yoloGtold1/train/59034.png +../../data/yoloGtold1/train/59035.png +../../data/yoloGtold1/train/59036.png +../../data/yoloGtold1/train/59037.png +../../data/yoloGtold1/train/59038.png +../../data/yoloGtold1/train/59039.png +../../data/yoloGtold1/train/59040.png +../../data/yoloGtold1/train/59041.png +../../data/yoloGtold1/train/59042.png +../../data/yoloGtold1/train/59043.png +../../data/yoloGtold1/train/59044.png +../../data/yoloGtold1/train/59045.png +../../data/yoloGtold1/train/59046.png +../../data/yoloGtold1/train/59047.png +../../data/yoloGtold1/train/59048.png +../../data/yoloGtold1/train/59049.png +../../data/yoloGtold1/train/59050.png +../../data/yoloGtold1/train/59051.png +../../data/yoloGtold1/train/59052.png +../../data/yoloGtold1/train/59053.png +../../data/yoloGtold1/train/59054.png +../../data/yoloGtold1/train/59055.png +../../data/yoloGtold1/train/59056.png +../../data/yoloGtold1/train/59057.png +../../data/yoloGtold1/train/59058.png +../../data/yoloGtold1/train/59059.png +../../data/yoloGtold1/train/59060.png +../../data/yoloGtold1/train/59061.png +../../data/yoloGtold1/train/59062.png +../../data/yoloGtold1/train/59063.png +../../data/yoloGtold1/train/59064.png +../../data/yoloGtold1/train/59065.png +../../data/yoloGtold1/train/59066.png +../../data/yoloGtold1/train/59067.png +../../data/yoloGtold1/train/59068.png +../../data/yoloGtold1/train/59069.png +../../data/yoloGtold1/train/59070.png +../../data/yoloGtold1/train/59071.png +../../data/yoloGtold1/train/59072.png +../../data/yoloGtold1/train/59073.png +../../data/yoloGtold1/train/59074.png +../../data/yoloGtold1/train/59075.png +../../data/yoloGtold1/train/59076.png +../../data/yoloGtold1/train/59077.png +../../data/yoloGtold1/train/59078.png +../../data/yoloGtold1/train/59079.png +../../data/yoloGtold1/train/59080.png +../../data/yoloGtold1/train/59081.png +../../data/yoloGtold1/train/59082.png +../../data/yoloGtold1/train/59083.png +../../data/yoloGtold1/train/59084.png +../../data/yoloGtold1/train/59085.png +../../data/yoloGtold1/train/59086.png +../../data/yoloGtold1/train/59087.png +../../data/yoloGtold1/train/59088.png +../../data/yoloGtold1/train/59089.png +../../data/yoloGtold1/train/59090.png +../../data/yoloGtold1/train/59091.png +../../data/yoloGtold1/train/59092.png +../../data/yoloGtold1/train/59093.png +../../data/yoloGtold1/train/59094.png +../../data/yoloGtold1/train/59095.png +../../data/yoloGtold1/train/59096.png +../../data/yoloGtold1/train/59097.png +../../data/yoloGtold1/train/59098.png +../../data/yoloGtold1/train/59099.png +../../data/yoloGtold1/train/59100.png +../../data/yoloGtold1/train/59101.png +../../data/yoloGtold1/train/59102.png +../../data/yoloGtold1/train/59103.png +../../data/yoloGtold1/train/59104.png +../../data/yoloGtold1/train/59105.png +../../data/yoloGtold1/train/59106.png +../../data/yoloGtold1/train/59107.png +../../data/yoloGtold1/train/59108.png +../../data/yoloGtold1/train/59109.png +../../data/yoloGtold1/train/59110.png +../../data/yoloGtold1/train/59111.png +../../data/yoloGtold1/train/59112.png +../../data/yoloGtold1/train/59113.png +../../data/yoloGtold1/train/59114.png +../../data/yoloGtold1/train/59115.png +../../data/yoloGtold1/train/59116.png +../../data/yoloGtold1/train/59117.png +../../data/yoloGtold1/train/59118.png +../../data/yoloGtold1/train/59119.png +../../data/yoloGtold1/train/59120.png +../../data/yoloGtold1/train/59121.png +../../data/yoloGtold1/train/59122.png +../../data/yoloGtold1/train/59123.png +../../data/yoloGtold1/train/59124.png +../../data/yoloGtold1/train/59125.png +../../data/yoloGtold1/train/59126.png +../../data/yoloGtold1/train/59127.png +../../data/yoloGtold1/train/59128.png +../../data/yoloGtold1/train/59129.png +../../data/yoloGtold1/train/59130.png +../../data/yoloGtold1/train/59131.png +../../data/yoloGtold1/train/59132.png +../../data/yoloGtold1/train/59133.png +../../data/yoloGtold1/train/59134.png +../../data/yoloGtold1/train/59135.png +../../data/yoloGtold1/train/59136.png +../../data/yoloGtold1/train/59137.png +../../data/yoloGtold1/train/59138.png +../../data/yoloGtold1/train/59139.png +../../data/yoloGtold1/train/59140.png +../../data/yoloGtold1/train/59141.png +../../data/yoloGtold1/train/59142.png +../../data/yoloGtold1/train/59143.png +../../data/yoloGtold1/train/59144.png +../../data/yoloGtold1/train/59145.png +../../data/yoloGtold1/train/59146.png +../../data/yoloGtold1/train/59147.png +../../data/yoloGtold1/train/59148.png +../../data/yoloGtold1/train/59149.png +../../data/yoloGtold1/train/59150.png +../../data/yoloGtold1/train/59151.png +../../data/yoloGtold1/train/59152.png +../../data/yoloGtold1/train/59153.png +../../data/yoloGtold1/train/59154.png +../../data/yoloGtold1/train/59155.png +../../data/yoloGtold1/train/59156.png +../../data/yoloGtold1/train/59157.png +../../data/yoloGtold1/train/59158.png +../../data/yoloGtold1/train/59159.png +../../data/yoloGtold1/train/59160.png +../../data/yoloGtold1/train/59161.png +../../data/yoloGtold1/train/59162.png +../../data/yoloGtold1/train/59163.png +../../data/yoloGtold1/train/59164.png +../../data/yoloGtold1/train/59165.png +../../data/yoloGtold1/train/59166.png +../../data/yoloGtold1/train/59167.png +../../data/yoloGtold1/train/59168.png +../../data/yoloGtold1/train/59169.png +../../data/yoloGtold1/train/59170.png +../../data/yoloGtold1/train/59171.png +../../data/yoloGtold1/train/59172.png +../../data/yoloGtold1/train/59173.png +../../data/yoloGtold1/train/59174.png +../../data/yoloGtold1/train/59175.png +../../data/yoloGtold1/train/59176.png +../../data/yoloGtold1/train/59177.png +../../data/yoloGtold1/train/59178.png +../../data/yoloGtold1/train/59179.png +../../data/yoloGtold1/train/59180.png +../../data/yoloGtold1/train/59181.png +../../data/yoloGtold1/train/59182.png +../../data/yoloGtold1/train/59183.png +../../data/yoloGtold1/train/59184.png +../../data/yoloGtold1/train/59185.png +../../data/yoloGtold1/train/59186.png +../../data/yoloGtold1/train/59187.png +../../data/yoloGtold1/train/59188.png +../../data/yoloGtold1/train/59189.png +../../data/yoloGtold1/train/59190.png +../../data/yoloGtold1/train/59191.png +../../data/yoloGtold1/train/59192.png +../../data/yoloGtold1/train/59193.png +../../data/yoloGtold1/train/59194.png +../../data/yoloGtold1/train/59195.png +../../data/yoloGtold1/train/59196.png +../../data/yoloGtold1/train/59197.png +../../data/yoloGtold1/train/59198.png +../../data/yoloGtold1/train/59199.png +../../data/yoloGtold1/train/59200.png +../../data/yoloGtold1/train/59201.png +../../data/yoloGtold1/train/59202.png +../../data/yoloGtold1/train/59203.png +../../data/yoloGtold1/train/59204.png +../../data/yoloGtold1/train/59205.png +../../data/yoloGtold1/train/59206.png +../../data/yoloGtold1/train/59207.png +../../data/yoloGtold1/train/59208.png +../../data/yoloGtold1/train/59209.png +../../data/yoloGtold1/train/59210.png +../../data/yoloGtold1/train/59211.png +../../data/yoloGtold1/train/59212.png +../../data/yoloGtold1/train/59213.png +../../data/yoloGtold1/train/59214.png +../../data/yoloGtold1/train/59215.png +../../data/yoloGtold1/train/59216.png +../../data/yoloGtold1/train/59217.png +../../data/yoloGtold1/train/59218.png +../../data/yoloGtold1/train/59219.png +../../data/yoloGtold1/train/59220.png +../../data/yoloGtold1/train/59221.png +../../data/yoloGtold1/train/59222.png +../../data/yoloGtold1/train/59223.png +../../data/yoloGtold1/train/59224.png +../../data/yoloGtold1/train/59225.png +../../data/yoloGtold1/train/59226.png +../../data/yoloGtold1/train/59227.png +../../data/yoloGtold1/train/59228.png +../../data/yoloGtold1/train/59229.png +../../data/yoloGtold1/train/59230.png +../../data/yoloGtold1/train/59231.png +../../data/yoloGtold1/train/59232.png +../../data/yoloGtold1/train/59233.png +../../data/yoloGtold1/train/59234.png +../../data/yoloGtold1/train/59235.png +../../data/yoloGtold1/train/59236.png +../../data/yoloGtold1/train/59237.png +../../data/yoloGtold1/train/59238.png +../../data/yoloGtold1/train/59239.png +../../data/yoloGtold1/train/59240.png +../../data/yoloGtold1/train/59241.png +../../data/yoloGtold1/train/59242.png +../../data/yoloGtold1/train/59243.png +../../data/yoloGtold1/train/59244.png +../../data/yoloGtold1/train/59245.png +../../data/yoloGtold1/train/59246.png +../../data/yoloGtold1/train/59247.png +../../data/yoloGtold1/train/59248.png +../../data/yoloGtold1/train/59249.png +../../data/yoloGtold1/train/59250.png +../../data/yoloGtold1/train/59251.png +../../data/yoloGtold1/train/59252.png +../../data/yoloGtold1/train/59253.png +../../data/yoloGtold1/train/59254.png +../../data/yoloGtold1/train/59255.png +../../data/yoloGtold1/train/59256.png +../../data/yoloGtold1/train/59257.png +../../data/yoloGtold1/train/59258.png +../../data/yoloGtold1/train/59259.png +../../data/yoloGtold1/train/59260.png +../../data/yoloGtold1/train/59261.png +../../data/yoloGtold1/train/59262.png +../../data/yoloGtold1/train/59263.png +../../data/yoloGtold1/train/59264.png +../../data/yoloGtold1/train/59265.png +../../data/yoloGtold1/train/59266.png +../../data/yoloGtold1/train/59267.png +../../data/yoloGtold1/train/59268.png +../../data/yoloGtold1/train/59269.png +../../data/yoloGtold1/train/59270.png +../../data/yoloGtold1/train/59271.png +../../data/yoloGtold1/train/59272.png +../../data/yoloGtold1/train/59273.png +../../data/yoloGtold1/train/59274.png +../../data/yoloGtold1/train/59275.png +../../data/yoloGtold1/train/59276.png +../../data/yoloGtold1/train/59277.png +../../data/yoloGtold1/train/59278.png +../../data/yoloGtold1/train/59279.png +../../data/yoloGtold1/train/59280.png +../../data/yoloGtold1/train/59281.png +../../data/yoloGtold1/train/59282.png +../../data/yoloGtold1/train/59283.png +../../data/yoloGtold1/train/59284.png +../../data/yoloGtold1/train/59285.png +../../data/yoloGtold1/train/59286.png +../../data/yoloGtold1/train/59287.png +../../data/yoloGtold1/train/59288.png +../../data/yoloGtold1/train/59289.png +../../data/yoloGtold1/train/59290.png +../../data/yoloGtold1/train/59291.png +../../data/yoloGtold1/train/59292.png +../../data/yoloGtold1/train/59293.png +../../data/yoloGtold1/train/59294.png +../../data/yoloGtold1/train/59295.png +../../data/yoloGtold1/train/59296.png +../../data/yoloGtold1/train/59297.png +../../data/yoloGtold1/train/59298.png +../../data/yoloGtold1/train/59299.png +../../data/yoloGtold1/train/59300.png +../../data/yoloGtold1/train/59301.png +../../data/yoloGtold1/train/59302.png +../../data/yoloGtold1/train/59303.png +../../data/yoloGtold1/train/59304.png +../../data/yoloGtold1/train/59305.png +../../data/yoloGtold1/train/59306.png +../../data/yoloGtold1/train/59307.png +../../data/yoloGtold1/train/59308.png +../../data/yoloGtold1/train/59309.png +../../data/yoloGtold1/train/59310.png +../../data/yoloGtold1/train/59311.png +../../data/yoloGtold1/train/59312.png +../../data/yoloGtold1/train/59313.png +../../data/yoloGtold1/train/59314.png +../../data/yoloGtold1/train/59315.png +../../data/yoloGtold1/train/59316.png +../../data/yoloGtold1/train/59317.png +../../data/yoloGtold1/train/59318.png +../../data/yoloGtold1/train/59319.png +../../data/yoloGtold1/train/59320.png +../../data/yoloGtold1/train/59321.png +../../data/yoloGtold1/train/59322.png +../../data/yoloGtold1/train/59323.png +../../data/yoloGtold1/train/59324.png +../../data/yoloGtold1/train/59325.png +../../data/yoloGtold1/train/59326.png +../../data/yoloGtold1/train/59327.png +../../data/yoloGtold1/train/59328.png +../../data/yoloGtold1/train/59329.png +../../data/yoloGtold1/train/59330.png +../../data/yoloGtold1/train/59331.png +../../data/yoloGtold1/train/59332.png +../../data/yoloGtold1/train/59333.png +../../data/yoloGtold1/train/59334.png +../../data/yoloGtold1/train/59335.png +../../data/yoloGtold1/train/59336.png +../../data/yoloGtold1/train/59337.png +../../data/yoloGtold1/train/59338.png +../../data/yoloGtold1/train/59339.png +../../data/yoloGtold1/train/59340.png +../../data/yoloGtold1/train/59341.png +../../data/yoloGtold1/train/59342.png +../../data/yoloGtold1/train/59343.png +../../data/yoloGtold1/train/59344.png +../../data/yoloGtold1/train/59345.png +../../data/yoloGtold1/train/59346.png +../../data/yoloGtold1/train/59347.png +../../data/yoloGtold1/train/59348.png +../../data/yoloGtold1/train/59349.png +../../data/yoloGtold1/train/59350.png +../../data/yoloGtold1/train/59351.png +../../data/yoloGtold1/train/59352.png +../../data/yoloGtold1/train/59353.png +../../data/yoloGtold1/train/59354.png +../../data/yoloGtold1/train/59355.png +../../data/yoloGtold1/train/59356.png +../../data/yoloGtold1/train/59357.png +../../data/yoloGtold1/train/59358.png +../../data/yoloGtold1/train/59359.png +../../data/yoloGtold1/train/59360.png +../../data/yoloGtold1/train/59361.png +../../data/yoloGtold1/train/59362.png +../../data/yoloGtold1/train/59363.png +../../data/yoloGtold1/train/59364.png +../../data/yoloGtold1/train/59365.png +../../data/yoloGtold1/train/59366.png +../../data/yoloGtold1/train/59367.png +../../data/yoloGtold1/train/59368.png +../../data/yoloGtold1/train/59369.png +../../data/yoloGtold1/train/59370.png +../../data/yoloGtold1/train/59371.png +../../data/yoloGtold1/train/59372.png +../../data/yoloGtold1/train/59373.png +../../data/yoloGtold1/train/59374.png +../../data/yoloGtold1/train/59375.png +../../data/yoloGtold1/train/59376.png +../../data/yoloGtold1/train/59377.png +../../data/yoloGtold1/train/59378.png +../../data/yoloGtold1/train/59379.png +../../data/yoloGtold1/train/59380.png +../../data/yoloGtold1/train/59381.png +../../data/yoloGtold1/train/59382.png +../../data/yoloGtold1/train/59383.png +../../data/yoloGtold1/train/59384.png +../../data/yoloGtold1/train/59385.png +../../data/yoloGtold1/train/59386.png +../../data/yoloGtold1/train/59387.png +../../data/yoloGtold1/train/59388.png +../../data/yoloGtold1/train/59389.png +../../data/yoloGtold1/train/59390.png +../../data/yoloGtold1/train/59391.png +../../data/yoloGtold1/train/59392.png +../../data/yoloGtold1/train/59393.png +../../data/yoloGtold1/train/59394.png +../../data/yoloGtold1/train/59395.png +../../data/yoloGtold1/train/59396.png +../../data/yoloGtold1/train/59397.png +../../data/yoloGtold1/train/59398.png +../../data/yoloGtold1/train/59399.png +../../data/yoloGtold1/train/59400.png +../../data/yoloGtold1/train/59401.png +../../data/yoloGtold1/train/59402.png +../../data/yoloGtold1/train/59403.png +../../data/yoloGtold1/train/59404.png +../../data/yoloGtold1/train/59405.png +../../data/yoloGtold1/train/59406.png +../../data/yoloGtold1/train/59407.png +../../data/yoloGtold1/train/59408.png +../../data/yoloGtold1/train/59409.png +../../data/yoloGtold1/train/59410.png +../../data/yoloGtold1/train/59411.png +../../data/yoloGtold1/train/59412.png +../../data/yoloGtold1/train/59413.png +../../data/yoloGtold1/train/59414.png +../../data/yoloGtold1/train/59415.png +../../data/yoloGtold1/train/59416.png +../../data/yoloGtold1/train/59417.png +../../data/yoloGtold1/train/59418.png +../../data/yoloGtold1/train/59419.png +../../data/yoloGtold1/train/59420.png +../../data/yoloGtold1/train/59421.png +../../data/yoloGtold1/train/59422.png +../../data/yoloGtold1/train/59423.png +../../data/yoloGtold1/train/59424.png +../../data/yoloGtold1/train/59425.png +../../data/yoloGtold1/train/59426.png +../../data/yoloGtold1/train/59427.png +../../data/yoloGtold1/train/59428.png +../../data/yoloGtold1/train/59429.png +../../data/yoloGtold1/train/59430.png +../../data/yoloGtold1/train/59431.png +../../data/yoloGtold1/train/59432.png +../../data/yoloGtold1/train/59433.png +../../data/yoloGtold1/train/59434.png +../../data/yoloGtold1/train/59435.png +../../data/yoloGtold1/train/59436.png +../../data/yoloGtold1/train/59437.png +../../data/yoloGtold1/train/59438.png +../../data/yoloGtold1/train/59439.png +../../data/yoloGtold1/train/59440.png +../../data/yoloGtold1/train/59441.png +../../data/yoloGtold1/train/59442.png +../../data/yoloGtold1/train/59443.png +../../data/yoloGtold1/train/59444.png +../../data/yoloGtold1/train/59445.png +../../data/yoloGtold1/train/59446.png +../../data/yoloGtold1/train/59447.png +../../data/yoloGtold1/train/59448.png +../../data/yoloGtold1/train/59449.png +../../data/yoloGtold1/train/59450.png +../../data/yoloGtold1/train/59451.png +../../data/yoloGtold1/train/59452.png +../../data/yoloGtold1/train/59453.png +../../data/yoloGtold1/train/59454.png +../../data/yoloGtold1/train/59455.png +../../data/yoloGtold1/train/59456.png +../../data/yoloGtold1/train/59457.png +../../data/yoloGtold1/train/59458.png +../../data/yoloGtold1/train/59459.png +../../data/yoloGtold1/train/59460.png +../../data/yoloGtold1/train/59461.png +../../data/yoloGtold1/train/59462.png +../../data/yoloGtold1/train/59463.png +../../data/yoloGtold1/train/59464.png +../../data/yoloGtold1/train/59465.png +../../data/yoloGtold1/train/59466.png +../../data/yoloGtold1/train/59467.png +../../data/yoloGtold1/train/59468.png +../../data/yoloGtold1/train/59469.png +../../data/yoloGtold1/train/59470.png +../../data/yoloGtold1/train/59471.png +../../data/yoloGtold1/train/59472.png +../../data/yoloGtold1/train/59473.png +../../data/yoloGtold1/train/59474.png +../../data/yoloGtold1/train/59475.png +../../data/yoloGtold1/train/59476.png +../../data/yoloGtold1/train/59477.png +../../data/yoloGtold1/train/59478.png +../../data/yoloGtold1/train/59479.png +../../data/yoloGtold1/train/59480.png +../../data/yoloGtold1/train/59481.png +../../data/yoloGtold1/train/59482.png +../../data/yoloGtold1/train/59483.png +../../data/yoloGtold1/train/59484.png +../../data/yoloGtold1/train/59485.png +../../data/yoloGtold1/train/59486.png +../../data/yoloGtold1/train/59487.png +../../data/yoloGtold1/train/59488.png +../../data/yoloGtold1/train/59489.png +../../data/yoloGtold1/train/59490.png +../../data/yoloGtold1/train/59491.png +../../data/yoloGtold1/train/59492.png +../../data/yoloGtold1/train/59493.png +../../data/yoloGtold1/train/59494.png +../../data/yoloGtold1/train/59495.png +../../data/yoloGtold1/train/59496.png +../../data/yoloGtold1/train/59497.png +../../data/yoloGtold1/train/59498.png +../../data/yoloGtold1/train/59499.png +../../data/yoloGtold1/train/59500.png +../../data/yoloGtold1/train/59501.png +../../data/yoloGtold1/train/59502.png +../../data/yoloGtold1/train/59503.png +../../data/yoloGtold1/train/59504.png +../../data/yoloGtold1/train/59505.png +../../data/yoloGtold1/train/59506.png +../../data/yoloGtold1/train/59507.png +../../data/yoloGtold1/train/59508.png +../../data/yoloGtold1/train/59509.png +../../data/yoloGtold1/train/59510.png +../../data/yoloGtold1/train/59511.png +../../data/yoloGtold1/train/59512.png +../../data/yoloGtold1/train/59513.png +../../data/yoloGtold1/train/59514.png +../../data/yoloGtold1/train/59515.png +../../data/yoloGtold1/train/59516.png +../../data/yoloGtold1/train/59517.png +../../data/yoloGtold1/train/59518.png +../../data/yoloGtold1/train/59519.png +../../data/yoloGtold1/train/59520.png +../../data/yoloGtold1/train/59521.png +../../data/yoloGtold1/train/59522.png +../../data/yoloGtold1/train/59523.png +../../data/yoloGtold1/train/59524.png +../../data/yoloGtold1/train/59525.png +../../data/yoloGtold1/train/59526.png +../../data/yoloGtold1/train/59527.png +../../data/yoloGtold1/train/59528.png +../../data/yoloGtold1/train/59529.png +../../data/yoloGtold1/train/59530.png +../../data/yoloGtold1/train/59531.png +../../data/yoloGtold1/train/59532.png +../../data/yoloGtold1/train/59533.png +../../data/yoloGtold1/train/59534.png +../../data/yoloGtold1/train/59535.png +../../data/yoloGtold1/train/59536.png +../../data/yoloGtold1/train/59537.png +../../data/yoloGtold1/train/59538.png +../../data/yoloGtold1/train/59539.png +../../data/yoloGtold1/train/59540.png +../../data/yoloGtold1/train/59541.png +../../data/yoloGtold1/train/59542.png +../../data/yoloGtold1/train/59543.png +../../data/yoloGtold1/train/59544.png +../../data/yoloGtold1/train/59545.png +../../data/yoloGtold1/train/59546.png +../../data/yoloGtold1/train/59547.png +../../data/yoloGtold1/train/59548.png +../../data/yoloGtold1/train/59549.png +../../data/yoloGtold1/train/59550.png +../../data/yoloGtold1/train/59551.png +../../data/yoloGtold1/train/59552.png +../../data/yoloGtold1/train/59553.png +../../data/yoloGtold1/train/59554.png +../../data/yoloGtold1/train/59555.png +../../data/yoloGtold1/train/59556.png +../../data/yoloGtold1/train/59557.png +../../data/yoloGtold1/train/59558.png +../../data/yoloGtold1/train/59559.png +../../data/yoloGtold1/train/59560.png +../../data/yoloGtold1/train/59561.png +../../data/yoloGtold1/train/59562.png +../../data/yoloGtold1/train/59563.png +../../data/yoloGtold1/train/59564.png +../../data/yoloGtold1/train/59565.png +../../data/yoloGtold1/train/59566.png +../../data/yoloGtold1/train/59567.png +../../data/yoloGtold1/train/59568.png +../../data/yoloGtold1/train/59569.png +../../data/yoloGtold1/train/59570.png +../../data/yoloGtold1/train/59571.png +../../data/yoloGtold1/train/59572.png +../../data/yoloGtold1/train/59573.png +../../data/yoloGtold1/train/59574.png +../../data/yoloGtold1/train/59575.png +../../data/yoloGtold1/train/59576.png +../../data/yoloGtold1/train/59577.png +../../data/yoloGtold1/train/59578.png +../../data/yoloGtold1/train/59579.png +../../data/yoloGtold1/train/59580.png +../../data/yoloGtold1/train/59581.png +../../data/yoloGtold1/train/59582.png +../../data/yoloGtold1/train/59583.png +../../data/yoloGtold1/train/59584.png +../../data/yoloGtold1/train/59585.png +../../data/yoloGtold1/train/59586.png +../../data/yoloGtold1/train/59587.png +../../data/yoloGtold1/train/59588.png +../../data/yoloGtold1/train/59589.png +../../data/yoloGtold1/train/59590.png +../../data/yoloGtold1/train/59591.png +../../data/yoloGtold1/train/59592.png +../../data/yoloGtold1/train/59593.png +../../data/yoloGtold1/train/59594.png +../../data/yoloGtold1/train/59595.png +../../data/yoloGtold1/train/59596.png +../../data/yoloGtold1/train/59597.png +../../data/yoloGtold1/train/59598.png +../../data/yoloGtold1/train/59599.png +../../data/yoloGtold1/train/59600.png +../../data/yoloGtold1/train/59601.png +../../data/yoloGtold1/train/59602.png +../../data/yoloGtold1/train/59603.png +../../data/yoloGtold1/train/59604.png +../../data/yoloGtold1/train/59605.png +../../data/yoloGtold1/train/59606.png +../../data/yoloGtold1/train/59607.png +../../data/yoloGtold1/train/59608.png +../../data/yoloGtold1/train/59609.png +../../data/yoloGtold1/train/59610.png +../../data/yoloGtold1/train/59611.png +../../data/yoloGtold1/train/59612.png +../../data/yoloGtold1/train/59613.png +../../data/yoloGtold1/train/59614.png +../../data/yoloGtold1/train/59615.png +../../data/yoloGtold1/train/59616.png +../../data/yoloGtold1/train/59617.png +../../data/yoloGtold1/train/59618.png +../../data/yoloGtold1/train/59619.png +../../data/yoloGtold1/train/59620.png +../../data/yoloGtold1/train/59621.png +../../data/yoloGtold1/train/59622.png +../../data/yoloGtold1/train/59623.png +../../data/yoloGtold1/train/59624.png +../../data/yoloGtold1/train/59625.png +../../data/yoloGtold1/train/59626.png +../../data/yoloGtold1/train/59627.png +../../data/yoloGtold1/train/59628.png +../../data/yoloGtold1/train/59629.png +../../data/yoloGtold1/train/59630.png +../../data/yoloGtold1/train/59631.png +../../data/yoloGtold1/train/59632.png +../../data/yoloGtold1/train/59633.png +../../data/yoloGtold1/train/59634.png +../../data/yoloGtold1/train/59635.png +../../data/yoloGtold1/train/59636.png +../../data/yoloGtold1/train/59637.png +../../data/yoloGtold1/train/59638.png +../../data/yoloGtold1/train/59639.png +../../data/yoloGtold1/train/59640.png +../../data/yoloGtold1/train/59641.png +../../data/yoloGtold1/train/59642.png +../../data/yoloGtold1/train/59643.png +../../data/yoloGtold1/train/59644.png +../../data/yoloGtold1/train/59645.png +../../data/yoloGtold1/train/59646.png +../../data/yoloGtold1/train/59647.png +../../data/yoloGtold1/train/59648.png +../../data/yoloGtold1/train/59649.png +../../data/yoloGtold1/train/59650.png +../../data/yoloGtold1/train/59651.png +../../data/yoloGtold1/train/59652.png +../../data/yoloGtold1/train/59653.png +../../data/yoloGtold1/train/59654.png +../../data/yoloGtold1/train/59655.png +../../data/yoloGtold1/train/59656.png +../../data/yoloGtold1/train/59657.png +../../data/yoloGtold1/train/59658.png +../../data/yoloGtold1/train/59659.png +../../data/yoloGtold1/train/59660.png +../../data/yoloGtold1/train/59661.png +../../data/yoloGtold1/train/59662.png +../../data/yoloGtold1/train/59663.png +../../data/yoloGtold1/train/59664.png +../../data/yoloGtold1/train/59665.png +../../data/yoloGtold1/train/59666.png +../../data/yoloGtold1/train/59667.png +../../data/yoloGtold1/train/59668.png +../../data/yoloGtold1/train/59669.png +../../data/yoloGtold1/train/59670.png +../../data/yoloGtold1/train/59671.png +../../data/yoloGtold1/train/59672.png +../../data/yoloGtold1/train/59673.png +../../data/yoloGtold1/train/59674.png +../../data/yoloGtold1/train/59675.png +../../data/yoloGtold1/train/59676.png +../../data/yoloGtold1/train/59677.png +../../data/yoloGtold1/train/59678.png +../../data/yoloGtold1/train/59679.png +../../data/yoloGtold1/train/59680.png +../../data/yoloGtold1/train/59681.png +../../data/yoloGtold1/train/59682.png +../../data/yoloGtold1/train/59683.png +../../data/yoloGtold1/train/59684.png +../../data/yoloGtold1/train/59685.png +../../data/yoloGtold1/train/59686.png +../../data/yoloGtold1/train/59687.png +../../data/yoloGtold1/train/59688.png +../../data/yoloGtold1/train/59689.png +../../data/yoloGtold1/train/59690.png +../../data/yoloGtold1/train/59691.png +../../data/yoloGtold1/train/59692.png +../../data/yoloGtold1/train/59693.png +../../data/yoloGtold1/train/59694.png +../../data/yoloGtold1/train/59695.png +../../data/yoloGtold1/train/59696.png +../../data/yoloGtold1/train/59697.png +../../data/yoloGtold1/train/59698.png +../../data/yoloGtold1/train/59699.png +../../data/yoloGtold1/train/59700.png +../../data/yoloGtold1/train/59701.png +../../data/yoloGtold1/train/59702.png +../../data/yoloGtold1/train/59703.png +../../data/yoloGtold1/train/59704.png +../../data/yoloGtold1/train/59705.png +../../data/yoloGtold1/train/59706.png +../../data/yoloGtold1/train/59707.png +../../data/yoloGtold1/train/59708.png +../../data/yoloGtold1/train/59709.png +../../data/yoloGtold1/train/59710.png +../../data/yoloGtold1/train/59711.png +../../data/yoloGtold1/train/59712.png +../../data/yoloGtold1/train/59713.png +../../data/yoloGtold1/train/59714.png +../../data/yoloGtold1/train/59715.png +../../data/yoloGtold1/train/59716.png +../../data/yoloGtold1/train/59717.png +../../data/yoloGtold1/train/59718.png +../../data/yoloGtold1/train/59719.png +../../data/yoloGtold1/train/59720.png +../../data/yoloGtold1/train/59721.png +../../data/yoloGtold1/train/59722.png +../../data/yoloGtold1/train/59723.png +../../data/yoloGtold1/train/59724.png +../../data/yoloGtold1/train/59725.png +../../data/yoloGtold1/train/59726.png +../../data/yoloGtold1/train/59727.png +../../data/yoloGtold1/train/59728.png +../../data/yoloGtold1/train/59729.png +../../data/yoloGtold1/train/59730.png +../../data/yoloGtold1/train/59731.png +../../data/yoloGtold1/train/59732.png +../../data/yoloGtold1/train/59733.png +../../data/yoloGtold1/train/59734.png +../../data/yoloGtold1/train/59735.png +../../data/yoloGtold1/train/59736.png +../../data/yoloGtold1/train/59737.png +../../data/yoloGtold1/train/59738.png +../../data/yoloGtold1/train/59739.png +../../data/yoloGtold1/train/59740.png +../../data/yoloGtold1/train/59741.png +../../data/yoloGtold1/train/59742.png +../../data/yoloGtold1/train/59743.png +../../data/yoloGtold1/train/59744.png +../../data/yoloGtold1/train/59745.png +../../data/yoloGtold1/train/59746.png +../../data/yoloGtold1/train/59747.png +../../data/yoloGtold1/train/59748.png +../../data/yoloGtold1/train/59749.png +../../data/yoloGtold1/train/59750.png +../../data/yoloGtold1/train/59751.png +../../data/yoloGtold1/train/59752.png +../../data/yoloGtold1/train/59753.png +../../data/yoloGtold1/train/59754.png +../../data/yoloGtold1/train/59755.png +../../data/yoloGtold1/train/59756.png +../../data/yoloGtold1/train/59757.png +../../data/yoloGtold1/train/59758.png +../../data/yoloGtold1/train/59759.png +../../data/yoloGtold1/train/59760.png +../../data/yoloGtold1/train/59761.png +../../data/yoloGtold1/train/59762.png +../../data/yoloGtold1/train/59763.png +../../data/yoloGtold1/train/59764.png +../../data/yoloGtold1/train/59765.png +../../data/yoloGtold1/train/59766.png +../../data/yoloGtold1/train/59767.png +../../data/yoloGtold1/train/59768.png +../../data/yoloGtold1/train/59769.png +../../data/yoloGtold1/train/59770.png +../../data/yoloGtold1/train/59771.png +../../data/yoloGtold1/train/59772.png +../../data/yoloGtold1/train/59773.png +../../data/yoloGtold1/train/59774.png +../../data/yoloGtold1/train/59775.png +../../data/yoloGtold1/train/59776.png +../../data/yoloGtold1/train/59777.png +../../data/yoloGtold1/train/59778.png +../../data/yoloGtold1/train/59779.png +../../data/yoloGtold1/train/59780.png +../../data/yoloGtold1/train/59781.png +../../data/yoloGtold1/train/59782.png +../../data/yoloGtold1/train/59783.png +../../data/yoloGtold1/train/59784.png +../../data/yoloGtold1/train/59785.png +../../data/yoloGtold1/train/59786.png +../../data/yoloGtold1/train/59787.png +../../data/yoloGtold1/train/59788.png +../../data/yoloGtold1/train/59789.png +../../data/yoloGtold1/train/59790.png +../../data/yoloGtold1/train/59791.png +../../data/yoloGtold1/train/59792.png +../../data/yoloGtold1/train/59793.png +../../data/yoloGtold1/train/59794.png +../../data/yoloGtold1/train/59795.png +../../data/yoloGtold1/train/59796.png +../../data/yoloGtold1/train/59797.png +../../data/yoloGtold1/train/59798.png +../../data/yoloGtold1/train/59799.png +../../data/yoloGtold1/train/59800.png +../../data/yoloGtold1/train/59801.png +../../data/yoloGtold1/train/59802.png +../../data/yoloGtold1/train/59803.png +../../data/yoloGtold1/train/59804.png +../../data/yoloGtold1/train/59805.png +../../data/yoloGtold1/train/59806.png +../../data/yoloGtold1/train/59807.png +../../data/yoloGtold1/train/59808.png +../../data/yoloGtold1/train/59809.png +../../data/yoloGtold1/train/59810.png +../../data/yoloGtold1/train/59811.png +../../data/yoloGtold1/train/59812.png +../../data/yoloGtold1/train/59813.png +../../data/yoloGtold1/train/59814.png +../../data/yoloGtold1/train/59815.png +../../data/yoloGtold1/train/59816.png +../../data/yoloGtold1/train/59817.png +../../data/yoloGtold1/train/59818.png +../../data/yoloGtold1/train/59819.png +../../data/yoloGtold1/train/59820.png +../../data/yoloGtold1/train/59821.png +../../data/yoloGtold1/train/59822.png +../../data/yoloGtold1/train/59823.png +../../data/yoloGtold1/train/59824.png +../../data/yoloGtold1/train/59825.png +../../data/yoloGtold1/train/59826.png +../../data/yoloGtold1/train/59827.png +../../data/yoloGtold1/train/59828.png +../../data/yoloGtold1/train/59829.png +../../data/yoloGtold1/train/59830.png +../../data/yoloGtold1/train/59831.png +../../data/yoloGtold1/train/59832.png +../../data/yoloGtold1/train/59833.png +../../data/yoloGtold1/train/59834.png +../../data/yoloGtold1/train/59835.png +../../data/yoloGtold1/train/59836.png +../../data/yoloGtold1/train/59837.png +../../data/yoloGtold1/train/59838.png +../../data/yoloGtold1/train/59839.png +../../data/yoloGtold1/train/59840.png +../../data/yoloGtold1/train/59841.png +../../data/yoloGtold1/train/59842.png +../../data/yoloGtold1/train/59843.png +../../data/yoloGtold1/train/59844.png +../../data/yoloGtold1/train/59845.png +../../data/yoloGtold1/train/59846.png +../../data/yoloGtold1/train/59847.png +../../data/yoloGtold1/train/59848.png +../../data/yoloGtold1/train/59849.png +../../data/yoloGtold1/train/59850.png +../../data/yoloGtold1/train/59851.png +../../data/yoloGtold1/train/59852.png +../../data/yoloGtold1/train/59853.png +../../data/yoloGtold1/train/59854.png +../../data/yoloGtold1/train/59855.png +../../data/yoloGtold1/train/59856.png +../../data/yoloGtold1/train/59857.png +../../data/yoloGtold1/train/59858.png +../../data/yoloGtold1/train/59859.png +../../data/yoloGtold1/train/59860.png +../../data/yoloGtold1/train/59861.png +../../data/yoloGtold1/train/59862.png +../../data/yoloGtold1/train/59863.png +../../data/yoloGtold1/train/59864.png +../../data/yoloGtold1/train/59865.png +../../data/yoloGtold1/train/59866.png +../../data/yoloGtold1/train/59867.png +../../data/yoloGtold1/train/59868.png +../../data/yoloGtold1/train/59869.png +../../data/yoloGtold1/train/59870.png +../../data/yoloGtold1/train/59871.png +../../data/yoloGtold1/train/59872.png +../../data/yoloGtold1/train/59873.png +../../data/yoloGtold1/train/59874.png +../../data/yoloGtold1/train/59875.png +../../data/yoloGtold1/train/59876.png +../../data/yoloGtold1/train/59877.png +../../data/yoloGtold1/train/59878.png +../../data/yoloGtold1/train/59879.png +../../data/yoloGtold1/train/59880.png +../../data/yoloGtold1/train/59881.png +../../data/yoloGtold1/train/59882.png +../../data/yoloGtold1/train/59883.png +../../data/yoloGtold1/train/59884.png +../../data/yoloGtold1/train/59885.png +../../data/yoloGtold1/train/59886.png +../../data/yoloGtold1/train/59887.png +../../data/yoloGtold1/train/59888.png +../../data/yoloGtold1/train/59889.png +../../data/yoloGtold1/train/59890.png +../../data/yoloGtold1/train/59891.png +../../data/yoloGtold1/train/59892.png +../../data/yoloGtold1/train/59893.png +../../data/yoloGtold1/train/59894.png +../../data/yoloGtold1/train/59895.png +../../data/yoloGtold1/train/59896.png +../../data/yoloGtold1/train/59897.png +../../data/yoloGtold1/train/59898.png +../../data/yoloGtold1/train/59899.png +../../data/yoloGtold1/train/59900.png +../../data/yoloGtold1/train/59901.png +../../data/yoloGtold1/train/59902.png +../../data/yoloGtold1/train/59903.png +../../data/yoloGtold1/train/59904.png +../../data/yoloGtold1/train/59905.png +../../data/yoloGtold1/train/59906.png +../../data/yoloGtold1/train/59907.png +../../data/yoloGtold1/train/59908.png +../../data/yoloGtold1/train/59909.png +../../data/yoloGtold1/train/59910.png +../../data/yoloGtold1/train/59911.png +../../data/yoloGtold1/train/59912.png +../../data/yoloGtold1/train/59913.png +../../data/yoloGtold1/train/59914.png +../../data/yoloGtold1/train/59915.png +../../data/yoloGtold1/train/59916.png +../../data/yoloGtold1/train/59917.png +../../data/yoloGtold1/train/59918.png +../../data/yoloGtold1/train/59919.png +../../data/yoloGtold1/train/59920.png +../../data/yoloGtold1/train/59921.png +../../data/yoloGtold1/train/59922.png +../../data/yoloGtold1/train/59923.png +../../data/yoloGtold1/train/59924.png +../../data/yoloGtold1/train/59925.png +../../data/yoloGtold1/train/59926.png +../../data/yoloGtold1/train/59927.png +../../data/yoloGtold1/train/59928.png +../../data/yoloGtold1/train/59929.png +../../data/yoloGtold1/train/59930.png +../../data/yoloGtold1/train/59931.png +../../data/yoloGtold1/train/59932.png +../../data/yoloGtold1/train/59933.png +../../data/yoloGtold1/train/59934.png +../../data/yoloGtold1/train/59935.png +../../data/yoloGtold1/train/59936.png +../../data/yoloGtold1/train/59937.png +../../data/yoloGtold1/train/59938.png +../../data/yoloGtold1/train/59939.png +../../data/yoloGtold1/train/59940.png +../../data/yoloGtold1/train/59941.png +../../data/yoloGtold1/train/59942.png +../../data/yoloGtold1/train/59943.png +../../data/yoloGtold1/train/59944.png +../../data/yoloGtold1/train/59945.png +../../data/yoloGtold1/train/59946.png +../../data/yoloGtold1/train/59947.png +../../data/yoloGtold1/train/59948.png +../../data/yoloGtold1/train/59949.png +../../data/yoloGtold1/train/59950.png +../../data/yoloGtold1/train/59951.png +../../data/yoloGtold1/train/59952.png +../../data/yoloGtold1/train/59953.png +../../data/yoloGtold1/train/59954.png +../../data/yoloGtold1/train/59955.png +../../data/yoloGtold1/train/59956.png +../../data/yoloGtold1/train/59957.png +../../data/yoloGtold1/train/59958.png +../../data/yoloGtold1/train/59959.png +../../data/yoloGtold1/train/59960.png +../../data/yoloGtold1/train/59961.png +../../data/yoloGtold1/train/59962.png +../../data/yoloGtold1/train/59963.png +../../data/yoloGtold1/train/59964.png +../../data/yoloGtold1/train/59965.png +../../data/yoloGtold1/train/59966.png +../../data/yoloGtold1/train/59967.png +../../data/yoloGtold1/train/59968.png +../../data/yoloGtold1/train/59969.png +../../data/yoloGtold1/train/59970.png +../../data/yoloGtold1/train/59971.png +../../data/yoloGtold1/train/59972.png +../../data/yoloGtold1/train/59973.png +../../data/yoloGtold1/train/59974.png +../../data/yoloGtold1/train/59975.png +../../data/yoloGtold1/train/59976.png +../../data/yoloGtold1/train/59977.png +../../data/yoloGtold1/train/59978.png +../../data/yoloGtold1/train/59979.png +../../data/yoloGtold1/train/59980.png +../../data/yoloGtold1/train/59981.png +../../data/yoloGtold1/train/59982.png +../../data/yoloGtold1/train/59983.png +../../data/yoloGtold1/train/59984.png +../../data/yoloGtold1/train/59985.png +../../data/yoloGtold1/train/59986.png +../../data/yoloGtold1/train/59987.png +../../data/yoloGtold1/train/59988.png +../../data/yoloGtold1/train/59989.png +../../data/yoloGtold1/train/59990.png +../../data/yoloGtold1/train/59991.png +../../data/yoloGtold1/train/59992.png +../../data/yoloGtold1/train/59993.png +../../data/yoloGtold1/train/59994.png +../../data/yoloGtold1/train/59995.png +../../data/yoloGtold1/train/59996.png +../../data/yoloGtold1/train/59997.png +../../data/yoloGtold1/train/59998.png +../../data/yoloGtold1/train/59999.png +../../data/yoloGtold1/train/60000.png +../../data/yoloGtold1/train/60001.png +../../data/yoloGtold1/train/60002.png +../../data/yoloGtold1/train/60003.png +../../data/yoloGtold1/train/60004.png +../../data/yoloGtold1/train/60005.png +../../data/yoloGtold1/train/60006.png +../../data/yoloGtold1/train/60007.png +../../data/yoloGtold1/train/60008.png +../../data/yoloGtold1/train/60009.png +../../data/yoloGtold1/train/60010.png +../../data/yoloGtold1/train/60011.png +../../data/yoloGtold1/train/60012.png +../../data/yoloGtold1/train/60013.png +../../data/yoloGtold1/train/60014.png +../../data/yoloGtold1/train/60015.png +../../data/yoloGtold1/train/60016.png +../../data/yoloGtold1/train/60017.png +../../data/yoloGtold1/train/60018.png +../../data/yoloGtold1/train/60019.png +../../data/yoloGtold1/train/60020.png +../../data/yoloGtold1/train/60021.png +../../data/yoloGtold1/train/60022.png +../../data/yoloGtold1/train/60023.png +../../data/yoloGtold1/train/60024.png +../../data/yoloGtold1/train/60025.png +../../data/yoloGtold1/train/60026.png +../../data/yoloGtold1/train/60027.png +../../data/yoloGtold1/train/60028.png +../../data/yoloGtold1/train/60029.png +../../data/yoloGtold1/train/60030.png +../../data/yoloGtold1/train/60031.png +../../data/yoloGtold1/train/60032.png +../../data/yoloGtold1/train/60033.png +../../data/yoloGtold1/train/60034.png +../../data/yoloGtold1/train/60035.png +../../data/yoloGtold1/train/60036.png +../../data/yoloGtold1/train/60037.png +../../data/yoloGtold1/train/60038.png +../../data/yoloGtold1/train/60039.png +../../data/yoloGtold1/train/60040.png +../../data/yoloGtold1/train/60041.png +../../data/yoloGtold1/train/60042.png +../../data/yoloGtold1/train/60043.png +../../data/yoloGtold1/train/60044.png +../../data/yoloGtold1/train/60045.png +../../data/yoloGtold1/train/60046.png +../../data/yoloGtold1/train/60047.png +../../data/yoloGtold1/train/60048.png +../../data/yoloGtold1/train/60049.png +../../data/yoloGtold1/train/60050.png +../../data/yoloGtold1/train/60051.png +../../data/yoloGtold1/train/60052.png +../../data/yoloGtold1/train/60053.png +../../data/yoloGtold1/train/60054.png +../../data/yoloGtold1/train/60055.png +../../data/yoloGtold1/train/60056.png +../../data/yoloGtold1/train/60057.png +../../data/yoloGtold1/train/60058.png +../../data/yoloGtold1/train/60059.png +../../data/yoloGtold1/train/60060.png +../../data/yoloGtold1/train/60061.png +../../data/yoloGtold1/train/60062.png +../../data/yoloGtold1/train/60063.png +../../data/yoloGtold1/train/60064.png +../../data/yoloGtold1/train/60065.png +../../data/yoloGtold1/train/60066.png +../../data/yoloGtold1/train/60067.png +../../data/yoloGtold1/train/60068.png +../../data/yoloGtold1/train/60069.png +../../data/yoloGtold1/train/60070.png +../../data/yoloGtold1/train/60071.png +../../data/yoloGtold1/train/60072.png +../../data/yoloGtold1/train/60073.png +../../data/yoloGtold1/train/60074.png +../../data/yoloGtold1/train/60075.png +../../data/yoloGtold1/train/60076.png +../../data/yoloGtold1/train/60077.png +../../data/yoloGtold1/train/60078.png +../../data/yoloGtold1/train/60079.png +../../data/yoloGtold1/train/60080.png +../../data/yoloGtold1/train/60081.png +../../data/yoloGtold1/train/60082.png +../../data/yoloGtold1/train/60083.png +../../data/yoloGtold1/train/60084.png +../../data/yoloGtold1/train/60085.png +../../data/yoloGtold1/train/60086.png +../../data/yoloGtold1/train/60087.png +../../data/yoloGtold1/train/60088.png +../../data/yoloGtold1/train/60089.png +../../data/yoloGtold1/train/60090.png +../../data/yoloGtold1/train/60091.png +../../data/yoloGtold1/train/60092.png +../../data/yoloGtold1/train/60093.png +../../data/yoloGtold1/train/60094.png +../../data/yoloGtold1/train/60095.png +../../data/yoloGtold1/train/60096.png +../../data/yoloGtold1/train/60097.png +../../data/yoloGtold1/train/60098.png +../../data/yoloGtold1/train/60099.png +../../data/yoloGtold1/train/60100.png +../../data/yoloGtold1/train/60101.png +../../data/yoloGtold1/train/60102.png +../../data/yoloGtold1/train/60103.png +../../data/yoloGtold1/train/60104.png +../../data/yoloGtold1/train/60105.png +../../data/yoloGtold1/train/60106.png +../../data/yoloGtold1/train/60107.png +../../data/yoloGtold1/train/60108.png +../../data/yoloGtold1/train/60109.png +../../data/yoloGtold1/train/60110.png +../../data/yoloGtold1/train/60111.png +../../data/yoloGtold1/train/60112.png +../../data/yoloGtold1/train/60113.png +../../data/yoloGtold1/train/60114.png +../../data/yoloGtold1/train/60115.png +../../data/yoloGtold1/train/60116.png +../../data/yoloGtold1/train/60117.png +../../data/yoloGtold1/train/60118.png +../../data/yoloGtold1/train/60119.png +../../data/yoloGtold1/train/60120.png +../../data/yoloGtold1/train/60121.png +../../data/yoloGtold1/train/60122.png +../../data/yoloGtold1/train/60123.png +../../data/yoloGtold1/train/60124.png +../../data/yoloGtold1/train/60125.png +../../data/yoloGtold1/train/60126.png +../../data/yoloGtold1/train/60127.png +../../data/yoloGtold1/train/60128.png +../../data/yoloGtold1/train/60129.png +../../data/yoloGtold1/train/60130.png +../../data/yoloGtold1/train/60131.png +../../data/yoloGtold1/train/60132.png +../../data/yoloGtold1/train/60133.png +../../data/yoloGtold1/train/60134.png +../../data/yoloGtold1/train/60135.png +../../data/yoloGtold1/train/60136.png +../../data/yoloGtold1/train/60137.png +../../data/yoloGtold1/train/60138.png +../../data/yoloGtold1/train/60139.png +../../data/yoloGtold1/train/60140.png +../../data/yoloGtold1/train/60141.png +../../data/yoloGtold1/train/60142.png +../../data/yoloGtold1/train/60143.png +../../data/yoloGtold1/train/60144.png +../../data/yoloGtold1/train/60145.png +../../data/yoloGtold1/train/60146.png +../../data/yoloGtold1/train/60147.png +../../data/yoloGtold1/train/60148.png +../../data/yoloGtold1/train/60149.png +../../data/yoloGtold1/train/60150.png +../../data/yoloGtold1/train/60151.png +../../data/yoloGtold1/train/60152.png +../../data/yoloGtold1/train/60153.png +../../data/yoloGtold1/train/60154.png +../../data/yoloGtold1/train/60155.png +../../data/yoloGtold1/train/60156.png +../../data/yoloGtold1/train/60157.png +../../data/yoloGtold1/train/60158.png +../../data/yoloGtold1/train/60159.png +../../data/yoloGtold1/train/60160.png +../../data/yoloGtold1/train/60161.png +../../data/yoloGtold1/train/60162.png +../../data/yoloGtold1/train/60163.png +../../data/yoloGtold1/train/60164.png +../../data/yoloGtold1/train/60165.png +../../data/yoloGtold1/train/60166.png +../../data/yoloGtold1/train/60167.png +../../data/yoloGtold1/train/60168.png +../../data/yoloGtold1/train/60169.png +../../data/yoloGtold1/train/60170.png +../../data/yoloGtold1/train/60171.png +../../data/yoloGtold1/train/60172.png +../../data/yoloGtold1/train/60173.png +../../data/yoloGtold1/train/60174.png +../../data/yoloGtold1/train/60175.png +../../data/yoloGtold1/train/60176.png +../../data/yoloGtold1/train/60177.png +../../data/yoloGtold1/train/60178.png +../../data/yoloGtold1/train/60179.png +../../data/yoloGtold1/train/60180.png +../../data/yoloGtold1/train/60181.png +../../data/yoloGtold1/train/60182.png +../../data/yoloGtold1/train/60183.png +../../data/yoloGtold1/train/60184.png +../../data/yoloGtold1/train/60185.png +../../data/yoloGtold1/train/60186.png +../../data/yoloGtold1/train/60187.png +../../data/yoloGtold1/train/60188.png +../../data/yoloGtold1/train/60189.png +../../data/yoloGtold1/train/60190.png +../../data/yoloGtold1/train/60191.png +../../data/yoloGtold1/train/60192.png +../../data/yoloGtold1/train/60193.png +../../data/yoloGtold1/train/60194.png +../../data/yoloGtold1/train/60195.png +../../data/yoloGtold1/train/60196.png +../../data/yoloGtold1/train/60197.png +../../data/yoloGtold1/train/60198.png +../../data/yoloGtold1/train/60199.png +../../data/yoloGtold1/train/60200.png +../../data/yoloGtold1/train/60201.png +../../data/yoloGtold1/train/60202.png +../../data/yoloGtold1/train/60203.png +../../data/yoloGtold1/train/60204.png +../../data/yoloGtold1/train/60205.png +../../data/yoloGtold1/train/60206.png +../../data/yoloGtold1/train/60207.png +../../data/yoloGtold1/train/60208.png +../../data/yoloGtold1/train/60209.png +../../data/yoloGtold1/train/60210.png +../../data/yoloGtold1/train/60211.png +../../data/yoloGtold1/train/60212.png +../../data/yoloGtold1/train/60213.png +../../data/yoloGtold1/train/60214.png +../../data/yoloGtold1/train/60215.png +../../data/yoloGtold1/train/60216.png +../../data/yoloGtold1/train/60217.png +../../data/yoloGtold1/train/60218.png +../../data/yoloGtold1/train/60219.png +../../data/yoloGtold1/train/60220.png +../../data/yoloGtold1/train/60221.png +../../data/yoloGtold1/train/60222.png +../../data/yoloGtold1/train/60223.png +../../data/yoloGtold1/train/60224.png +../../data/yoloGtold1/train/60225.png +../../data/yoloGtold1/train/60226.png +../../data/yoloGtold1/train/60227.png +../../data/yoloGtold1/train/60228.png +../../data/yoloGtold1/train/60229.png +../../data/yoloGtold1/train/60230.png +../../data/yoloGtold1/train/60231.png +../../data/yoloGtold1/train/60232.png +../../data/yoloGtold1/train/60233.png +../../data/yoloGtold1/train/60234.png +../../data/yoloGtold1/train/60235.png +../../data/yoloGtold1/train/60236.png +../../data/yoloGtold1/train/60237.png +../../data/yoloGtold1/train/60238.png +../../data/yoloGtold1/train/60239.png +../../data/yoloGtold1/train/60240.png +../../data/yoloGtold1/train/60241.png +../../data/yoloGtold1/train/60242.png +../../data/yoloGtold1/train/60243.png +../../data/yoloGtold1/train/60244.png +../../data/yoloGtold1/train/60245.png +../../data/yoloGtold1/train/60246.png +../../data/yoloGtold1/train/60247.png +../../data/yoloGtold1/train/60248.png +../../data/yoloGtold1/train/60249.png +../../data/yoloGtold1/train/60250.png +../../data/yoloGtold1/train/60251.png +../../data/yoloGtold1/train/60252.png +../../data/yoloGtold1/train/60253.png +../../data/yoloGtold1/train/60254.png +../../data/yoloGtold1/train/60255.png +../../data/yoloGtold1/train/60256.png +../../data/yoloGtold1/train/60257.png +../../data/yoloGtold1/train/60258.png +../../data/yoloGtold1/train/60259.png +../../data/yoloGtold1/train/60260.png +../../data/yoloGtold1/train/60261.png +../../data/yoloGtold1/train/60262.png +../../data/yoloGtold1/train/60263.png +../../data/yoloGtold1/train/60264.png +../../data/yoloGtold1/train/60265.png +../../data/yoloGtold1/train/60266.png +../../data/yoloGtold1/train/60267.png +../../data/yoloGtold1/train/60268.png +../../data/yoloGtold1/train/60269.png +../../data/yoloGtold1/train/60270.png +../../data/yoloGtold1/train/60271.png +../../data/yoloGtold1/train/60272.png +../../data/yoloGtold1/train/60273.png +../../data/yoloGtold1/train/60274.png +../../data/yoloGtold1/train/60275.png +../../data/yoloGtold1/train/60276.png +../../data/yoloGtold1/train/60277.png +../../data/yoloGtold1/train/60278.png +../../data/yoloGtold1/train/60279.png +../../data/yoloGtold1/train/60280.png +../../data/yoloGtold1/train/60281.png +../../data/yoloGtold1/train/60282.png +../../data/yoloGtold1/train/60283.png +../../data/yoloGtold1/train/60284.png +../../data/yoloGtold1/train/60285.png +../../data/yoloGtold1/train/60286.png +../../data/yoloGtold1/train/60287.png +../../data/yoloGtold1/train/60288.png +../../data/yoloGtold1/train/60289.png +../../data/yoloGtold1/train/60290.png +../../data/yoloGtold1/train/60291.png +../../data/yoloGtold1/train/60292.png +../../data/yoloGtold1/train/60293.png +../../data/yoloGtold1/train/60294.png +../../data/yoloGtold1/train/60295.png +../../data/yoloGtold1/train/60296.png +../../data/yoloGtold1/train/60297.png +../../data/yoloGtold1/train/60298.png +../../data/yoloGtold1/train/60299.png +../../data/yoloGtold1/train/60300.png +../../data/yoloGtold1/train/60301.png +../../data/yoloGtold1/train/60302.png +../../data/yoloGtold1/train/60303.png +../../data/yoloGtold1/train/60304.png +../../data/yoloGtold1/train/60305.png +../../data/yoloGtold1/train/60306.png +../../data/yoloGtold1/train/60307.png +../../data/yoloGtold1/train/60308.png +../../data/yoloGtold1/train/60309.png +../../data/yoloGtold1/train/60310.png +../../data/yoloGtold1/train/60311.png +../../data/yoloGtold1/train/60312.png +../../data/yoloGtold1/train/60313.png +../../data/yoloGtold1/train/60314.png +../../data/yoloGtold1/train/60315.png +../../data/yoloGtold1/train/60316.png +../../data/yoloGtold1/train/60317.png +../../data/yoloGtold1/train/60318.png +../../data/yoloGtold1/train/60319.png +../../data/yoloGtold1/train/60320.png +../../data/yoloGtold1/train/60321.png +../../data/yoloGtold1/train/60322.png +../../data/yoloGtold1/train/60323.png +../../data/yoloGtold1/train/60324.png +../../data/yoloGtold1/train/60325.png +../../data/yoloGtold1/train/60326.png +../../data/yoloGtold1/train/60327.png +../../data/yoloGtold1/train/60328.png +../../data/yoloGtold1/train/60329.png +../../data/yoloGtold1/train/60330.png +../../data/yoloGtold1/train/60331.png +../../data/yoloGtold1/train/60332.png +../../data/yoloGtold1/train/60333.png +../../data/yoloGtold1/train/60334.png +../../data/yoloGtold1/train/60335.png +../../data/yoloGtold1/train/60336.png +../../data/yoloGtold1/train/60337.png +../../data/yoloGtold1/train/60338.png +../../data/yoloGtold1/train/60339.png +../../data/yoloGtold1/train/60340.png +../../data/yoloGtold1/train/60341.png +../../data/yoloGtold1/train/60342.png +../../data/yoloGtold1/train/60343.png +../../data/yoloGtold1/train/60344.png +../../data/yoloGtold1/train/60345.png +../../data/yoloGtold1/train/60346.png +../../data/yoloGtold1/train/60347.png +../../data/yoloGtold1/train/60348.png +../../data/yoloGtold1/train/60349.png +../../data/yoloGtold1/train/60350.png +../../data/yoloGtold1/train/60351.png +../../data/yoloGtold1/train/60352.png +../../data/yoloGtold1/train/60353.png +../../data/yoloGtold1/train/60354.png +../../data/yoloGtold1/train/60355.png +../../data/yoloGtold1/train/60356.png +../../data/yoloGtold1/train/60357.png +../../data/yoloGtold1/train/60358.png +../../data/yoloGtold1/train/60359.png +../../data/yoloGtold1/train/60360.png +../../data/yoloGtold1/train/60361.png +../../data/yoloGtold1/train/60362.png +../../data/yoloGtold1/train/60363.png +../../data/yoloGtold1/train/60364.png +../../data/yoloGtold1/train/60365.png +../../data/yoloGtold1/train/60366.png +../../data/yoloGtold1/train/60367.png +../../data/yoloGtold1/train/60368.png +../../data/yoloGtold1/train/60369.png +../../data/yoloGtold1/train/60370.png +../../data/yoloGtold1/train/60371.png +../../data/yoloGtold1/train/60372.png +../../data/yoloGtold1/train/60373.png +../../data/yoloGtold1/train/60374.png +../../data/yoloGtold1/train/60375.png +../../data/yoloGtold1/train/60376.png +../../data/yoloGtold1/train/60377.png +../../data/yoloGtold1/train/60378.png +../../data/yoloGtold1/train/60379.png +../../data/yoloGtold1/train/60380.png +../../data/yoloGtold1/train/60381.png +../../data/yoloGtold1/train/60382.png +../../data/yoloGtold1/train/60383.png +../../data/yoloGtold1/train/60384.png +../../data/yoloGtold1/train/60385.png +../../data/yoloGtold1/train/60386.png +../../data/yoloGtold1/train/60387.png +../../data/yoloGtold1/train/60388.png +../../data/yoloGtold1/train/60389.png +../../data/yoloGtold1/train/60390.png +../../data/yoloGtold1/train/60391.png +../../data/yoloGtold1/train/60392.png +../../data/yoloGtold1/train/60393.png +../../data/yoloGtold1/train/60394.png +../../data/yoloGtold1/train/60395.png +../../data/yoloGtold1/train/60396.png +../../data/yoloGtold1/train/60397.png +../../data/yoloGtold1/train/60398.png +../../data/yoloGtold1/train/60399.png +../../data/yoloGtold1/train/60400.png +../../data/yoloGtold1/train/60401.png +../../data/yoloGtold1/train/60402.png +../../data/yoloGtold1/train/60403.png +../../data/yoloGtold1/train/60404.png +../../data/yoloGtold1/train/60405.png +../../data/yoloGtold1/train/60406.png +../../data/yoloGtold1/train/60407.png +../../data/yoloGtold1/train/60408.png +../../data/yoloGtold1/train/60409.png +../../data/yoloGtold1/train/60410.png +../../data/yoloGtold1/train/60411.png +../../data/yoloGtold1/train/60412.png +../../data/yoloGtold1/train/60413.png +../../data/yoloGtold1/train/60414.png +../../data/yoloGtold1/train/60415.png +../../data/yoloGtold1/train/60416.png +../../data/yoloGtold1/train/60417.png +../../data/yoloGtold1/train/60418.png +../../data/yoloGtold1/train/60419.png +../../data/yoloGtold1/train/60420.png +../../data/yoloGtold1/train/60421.png +../../data/yoloGtold1/train/60422.png +../../data/yoloGtold1/train/60423.png +../../data/yoloGtold1/train/60424.png +../../data/yoloGtold1/train/60425.png +../../data/yoloGtold1/train/60426.png +../../data/yoloGtold1/train/60427.png +../../data/yoloGtold1/train/60428.png +../../data/yoloGtold1/train/60429.png +../../data/yoloGtold1/train/60430.png +../../data/yoloGtold1/train/60431.png +../../data/yoloGtold1/train/60432.png +../../data/yoloGtold1/train/60433.png +../../data/yoloGtold1/train/60434.png +../../data/yoloGtold1/train/60435.png +../../data/yoloGtold1/train/60436.png +../../data/yoloGtold1/train/60437.png +../../data/yoloGtold1/train/60438.png +../../data/yoloGtold1/train/60439.png +../../data/yoloGtold1/train/60440.png +../../data/yoloGtold1/train/60441.png +../../data/yoloGtold1/train/60442.png +../../data/yoloGtold1/train/60443.png +../../data/yoloGtold1/train/60444.png +../../data/yoloGtold1/train/60445.png +../../data/yoloGtold1/train/60446.png +../../data/yoloGtold1/train/60447.png +../../data/yoloGtold1/train/60448.png +../../data/yoloGtold1/train/60449.png +../../data/yoloGtold1/train/60450.png +../../data/yoloGtold1/train/60451.png +../../data/yoloGtold1/train/60452.png +../../data/yoloGtold1/train/60453.png +../../data/yoloGtold1/train/60454.png +../../data/yoloGtold1/train/60455.png +../../data/yoloGtold1/train/60456.png +../../data/yoloGtold1/train/60457.png +../../data/yoloGtold1/train/60458.png +../../data/yoloGtold1/train/60459.png +../../data/yoloGtold1/train/60460.png +../../data/yoloGtold1/train/60461.png +../../data/yoloGtold1/train/60462.png +../../data/yoloGtold1/train/60463.png +../../data/yoloGtold1/train/60464.png +../../data/yoloGtold1/train/60465.png +../../data/yoloGtold1/train/60466.png +../../data/yoloGtold1/train/60467.png +../../data/yoloGtold1/train/60468.png +../../data/yoloGtold1/train/60469.png +../../data/yoloGtold1/train/60470.png +../../data/yoloGtold1/train/60471.png +../../data/yoloGtold1/train/60472.png +../../data/yoloGtold1/train/60473.png +../../data/yoloGtold1/train/60474.png +../../data/yoloGtold1/train/60475.png +../../data/yoloGtold1/train/60476.png +../../data/yoloGtold1/train/60477.png +../../data/yoloGtold1/train/60478.png +../../data/yoloGtold1/train/60479.png +../../data/yoloGtold1/train/60480.png +../../data/yoloGtold1/train/60481.png +../../data/yoloGtold1/train/60482.png +../../data/yoloGtold1/train/60483.png +../../data/yoloGtold1/train/60484.png +../../data/yoloGtold1/train/60485.png +../../data/yoloGtold1/train/60486.png +../../data/yoloGtold1/train/60487.png +../../data/yoloGtold1/train/60488.png +../../data/yoloGtold1/train/60489.png +../../data/yoloGtold1/train/60490.png +../../data/yoloGtold1/train/60491.png +../../data/yoloGtold1/train/60492.png +../../data/yoloGtold1/train/60493.png +../../data/yoloGtold1/train/60494.png +../../data/yoloGtold1/train/60495.png +../../data/yoloGtold1/train/60496.png +../../data/yoloGtold1/train/60497.png +../../data/yoloGtold1/train/60498.png +../../data/yoloGtold1/train/60499.png +../../data/yoloGtold1/train/60500.png +../../data/yoloGtold1/train/60501.png +../../data/yoloGtold1/train/60502.png +../../data/yoloGtold1/train/60503.png +../../data/yoloGtold1/train/60504.png +../../data/yoloGtold1/train/60505.png +../../data/yoloGtold1/train/60506.png +../../data/yoloGtold1/train/60507.png +../../data/yoloGtold1/train/60508.png +../../data/yoloGtold1/train/60509.png +../../data/yoloGtold1/train/60510.png +../../data/yoloGtold1/train/60511.png +../../data/yoloGtold1/train/60512.png +../../data/yoloGtold1/train/60513.png +../../data/yoloGtold1/train/60514.png +../../data/yoloGtold1/train/60515.png +../../data/yoloGtold1/train/60516.png +../../data/yoloGtold1/train/60517.png +../../data/yoloGtold1/train/60518.png +../../data/yoloGtold1/train/60519.png +../../data/yoloGtold1/train/60520.png +../../data/yoloGtold1/train/60521.png +../../data/yoloGtold1/train/60522.png +../../data/yoloGtold1/train/60523.png +../../data/yoloGtold1/train/60524.png +../../data/yoloGtold1/train/60525.png +../../data/yoloGtold1/train/60526.png +../../data/yoloGtold1/train/60527.png +../../data/yoloGtold1/train/60528.png +../../data/yoloGtold1/train/60529.png +../../data/yoloGtold1/train/60530.png +../../data/yoloGtold1/train/60531.png +../../data/yoloGtold1/train/60532.png +../../data/yoloGtold1/train/60533.png +../../data/yoloGtold1/train/60534.png +../../data/yoloGtold1/train/60535.png +../../data/yoloGtold1/train/60536.png +../../data/yoloGtold1/train/60537.png +../../data/yoloGtold1/train/60538.png +../../data/yoloGtold1/train/60539.png +../../data/yoloGtold1/train/60540.png +../../data/yoloGtold1/train/60541.png +../../data/yoloGtold1/train/60542.png +../../data/yoloGtold1/train/60543.png +../../data/yoloGtold1/train/60544.png +../../data/yoloGtold1/train/60545.png +../../data/yoloGtold1/train/60546.png +../../data/yoloGtold1/train/60547.png +../../data/yoloGtold1/train/60548.png +../../data/yoloGtold1/train/60549.png +../../data/yoloGtold1/train/60550.png +../../data/yoloGtold1/train/60551.png +../../data/yoloGtold1/train/60552.png +../../data/yoloGtold1/train/60553.png +../../data/yoloGtold1/train/60554.png +../../data/yoloGtold1/train/60555.png +../../data/yoloGtold1/train/60556.png +../../data/yoloGtold1/train/60557.png +../../data/yoloGtold1/train/60558.png +../../data/yoloGtold1/train/60559.png +../../data/yoloGtold1/train/60560.png +../../data/yoloGtold1/train/60561.png +../../data/yoloGtold1/train/60562.png +../../data/yoloGtold1/train/60563.png +../../data/yoloGtold1/train/60564.png +../../data/yoloGtold1/train/60565.png +../../data/yoloGtold1/train/60566.png +../../data/yoloGtold1/train/60567.png +../../data/yoloGtold1/train/60568.png +../../data/yoloGtold1/train/60569.png +../../data/yoloGtold1/train/60570.png +../../data/yoloGtold1/train/60571.png +../../data/yoloGtold1/train/60572.png +../../data/yoloGtold1/train/60573.png +../../data/yoloGtold1/train/60574.png +../../data/yoloGtold1/train/60575.png +../../data/yoloGtold1/train/60576.png +../../data/yoloGtold1/train/60577.png +../../data/yoloGtold1/train/60578.png +../../data/yoloGtold1/train/60579.png +../../data/yoloGtold1/train/60580.png +../../data/yoloGtold1/train/60581.png +../../data/yoloGtold1/train/60582.png +../../data/yoloGtold1/train/60583.png +../../data/yoloGtold1/train/60584.png +../../data/yoloGtold1/train/60585.png +../../data/yoloGtold1/train/60586.png +../../data/yoloGtold1/train/60587.png +../../data/yoloGtold1/train/60588.png +../../data/yoloGtold1/train/60589.png +../../data/yoloGtold1/train/60590.png +../../data/yoloGtold1/train/60591.png +../../data/yoloGtold1/train/60592.png +../../data/yoloGtold1/train/60593.png +../../data/yoloGtold1/train/60594.png +../../data/yoloGtold1/train/60595.png +../../data/yoloGtold1/train/60596.png +../../data/yoloGtold1/train/60597.png +../../data/yoloGtold1/train/60598.png +../../data/yoloGtold1/train/60599.png +../../data/yoloGtold1/train/60600.png +../../data/yoloGtold1/train/60601.png +../../data/yoloGtold1/train/60602.png +../../data/yoloGtold1/train/60603.png +../../data/yoloGtold1/train/60604.png +../../data/yoloGtold1/train/60605.png +../../data/yoloGtold1/train/60606.png +../../data/yoloGtold1/train/60607.png +../../data/yoloGtold1/train/60608.png +../../data/yoloGtold1/train/60609.png +../../data/yoloGtold1/train/60610.png +../../data/yoloGtold1/train/60611.png +../../data/yoloGtold1/train/60612.png +../../data/yoloGtold1/train/60613.png +../../data/yoloGtold1/train/60614.png +../../data/yoloGtold1/train/60615.png +../../data/yoloGtold1/train/60616.png +../../data/yoloGtold1/train/60617.png +../../data/yoloGtold1/train/60618.png +../../data/yoloGtold1/train/60619.png +../../data/yoloGtold1/train/60620.png +../../data/yoloGtold1/train/60621.png +../../data/yoloGtold1/train/60622.png +../../data/yoloGtold1/train/60623.png +../../data/yoloGtold1/train/60624.png +../../data/yoloGtold1/train/60625.png +../../data/yoloGtold1/train/60626.png +../../data/yoloGtold1/train/60627.png +../../data/yoloGtold1/train/60628.png +../../data/yoloGtold1/train/60629.png +../../data/yoloGtold1/train/60630.png +../../data/yoloGtold1/train/60631.png +../../data/yoloGtold1/train/60632.png +../../data/yoloGtold1/train/60633.png +../../data/yoloGtold1/train/60634.png +../../data/yoloGtold1/train/60635.png +../../data/yoloGtold1/train/60636.png +../../data/yoloGtold1/train/60637.png +../../data/yoloGtold1/train/60638.png +../../data/yoloGtold1/train/60639.png +../../data/yoloGtold1/train/60640.png +../../data/yoloGtold1/train/60641.png +../../data/yoloGtold1/train/60642.png +../../data/yoloGtold1/train/60643.png +../../data/yoloGtold1/train/60644.png +../../data/yoloGtold1/train/60645.png +../../data/yoloGtold1/train/60646.png +../../data/yoloGtold1/train/60647.png +../../data/yoloGtold1/train/60648.png +../../data/yoloGtold1/train/60649.png +../../data/yoloGtold1/train/60650.png +../../data/yoloGtold1/train/60651.png +../../data/yoloGtold1/train/60652.png +../../data/yoloGtold1/train/60653.png +../../data/yoloGtold1/train/60654.png +../../data/yoloGtold1/train/60655.png +../../data/yoloGtold1/train/60656.png +../../data/yoloGtold1/train/60657.png +../../data/yoloGtold1/train/60658.png +../../data/yoloGtold1/train/60659.png +../../data/yoloGtold1/train/60660.png +../../data/yoloGtold1/train/60661.png +../../data/yoloGtold1/train/60662.png +../../data/yoloGtold1/train/60663.png +../../data/yoloGtold1/train/60664.png +../../data/yoloGtold1/train/60665.png +../../data/yoloGtold1/train/60666.png +../../data/yoloGtold1/train/60667.png +../../data/yoloGtold1/train/60668.png +../../data/yoloGtold1/train/60669.png +../../data/yoloGtold1/train/60670.png +../../data/yoloGtold1/train/60671.png +../../data/yoloGtold1/train/60672.png +../../data/yoloGtold1/train/60673.png +../../data/yoloGtold1/train/60674.png +../../data/yoloGtold1/train/60675.png +../../data/yoloGtold1/train/60676.png +../../data/yoloGtold1/train/60677.png +../../data/yoloGtold1/train/60678.png +../../data/yoloGtold1/train/60679.png +../../data/yoloGtold1/train/60680.png +../../data/yoloGtold1/train/60681.png +../../data/yoloGtold1/train/60682.png +../../data/yoloGtold1/train/60683.png +../../data/yoloGtold1/train/60684.png +../../data/yoloGtold1/train/60685.png +../../data/yoloGtold1/train/60686.png +../../data/yoloGtold1/train/60687.png +../../data/yoloGtold1/train/60688.png +../../data/yoloGtold1/train/60689.png +../../data/yoloGtold1/train/60690.png +../../data/yoloGtold1/train/60691.png +../../data/yoloGtold1/train/60692.png +../../data/yoloGtold1/train/60693.png +../../data/yoloGtold1/train/60694.png +../../data/yoloGtold1/train/60695.png +../../data/yoloGtold1/train/60696.png +../../data/yoloGtold1/train/60697.png +../../data/yoloGtold1/train/60698.png +../../data/yoloGtold1/train/60699.png +../../data/yoloGtold1/train/60700.png +../../data/yoloGtold1/train/60701.png +../../data/yoloGtold1/train/60702.png +../../data/yoloGtold1/train/60703.png +../../data/yoloGtold1/train/60704.png +../../data/yoloGtold1/train/60705.png +../../data/yoloGtold1/train/60706.png +../../data/yoloGtold1/train/60707.png +../../data/yoloGtold1/train/60708.png +../../data/yoloGtold1/train/60709.png +../../data/yoloGtold1/train/60710.png +../../data/yoloGtold1/train/60711.png +../../data/yoloGtold1/train/60712.png +../../data/yoloGtold1/train/60713.png +../../data/yoloGtold1/train/60714.png +../../data/yoloGtold1/train/60715.png +../../data/yoloGtold1/train/60716.png +../../data/yoloGtold1/train/60717.png +../../data/yoloGtold1/train/60718.png +../../data/yoloGtold1/train/60719.png +../../data/yoloGtold1/train/60720.png +../../data/yoloGtold1/train/60721.png +../../data/yoloGtold1/train/60722.png +../../data/yoloGtold1/train/60723.png +../../data/yoloGtold1/train/60724.png +../../data/yoloGtold1/train/60725.png +../../data/yoloGtold1/train/60726.png +../../data/yoloGtold1/train/60727.png +../../data/yoloGtold1/train/60728.png +../../data/yoloGtold1/train/60729.png +../../data/yoloGtold1/train/60730.png +../../data/yoloGtold1/train/60731.png +../../data/yoloGtold1/train/60732.png +../../data/yoloGtold1/train/60733.png +../../data/yoloGtold1/train/60734.png +../../data/yoloGtold1/train/60735.png +../../data/yoloGtold1/train/60736.png +../../data/yoloGtold1/train/60737.png +../../data/yoloGtold1/train/60738.png +../../data/yoloGtold1/train/60739.png +../../data/yoloGtold1/train/60740.png +../../data/yoloGtold1/train/60741.png +../../data/yoloGtold1/train/60742.png +../../data/yoloGtold1/train/60743.png +../../data/yoloGtold1/train/60744.png +../../data/yoloGtold1/train/60745.png +../../data/yoloGtold1/train/60746.png +../../data/yoloGtold1/train/60747.png +../../data/yoloGtold1/train/60748.png +../../data/yoloGtold1/train/60749.png +../../data/yoloGtold1/train/60750.png +../../data/yoloGtold1/train/60751.png +../../data/yoloGtold1/train/60752.png +../../data/yoloGtold1/train/60753.png +../../data/yoloGtold1/train/60754.png +../../data/yoloGtold1/train/60755.png +../../data/yoloGtold1/train/60756.png +../../data/yoloGtold1/train/60757.png +../../data/yoloGtold1/train/60758.png +../../data/yoloGtold1/train/60759.png +../../data/yoloGtold1/train/60760.png +../../data/yoloGtold1/train/60761.png +../../data/yoloGtold1/train/60762.png +../../data/yoloGtold1/train/60763.png +../../data/yoloGtold1/train/60764.png +../../data/yoloGtold1/train/60765.png +../../data/yoloGtold1/train/60766.png +../../data/yoloGtold1/train/60767.png +../../data/yoloGtold1/train/60768.png +../../data/yoloGtold1/train/60769.png +../../data/yoloGtold1/train/60770.png +../../data/yoloGtold1/train/60771.png +../../data/yoloGtold1/train/60772.png +../../data/yoloGtold1/train/60773.png +../../data/yoloGtold1/train/60774.png +../../data/yoloGtold1/train/60775.png +../../data/yoloGtold1/train/60776.png +../../data/yoloGtold1/train/60777.png +../../data/yoloGtold1/train/60778.png +../../data/yoloGtold1/train/60779.png +../../data/yoloGtold1/train/60780.png +../../data/yoloGtold1/train/60781.png +../../data/yoloGtold1/train/60782.png +../../data/yoloGtold1/train/60783.png +../../data/yoloGtold1/train/60784.png +../../data/yoloGtold1/train/60785.png +../../data/yoloGtold1/train/60786.png +../../data/yoloGtold1/train/60787.png +../../data/yoloGtold1/train/60788.png +../../data/yoloGtold1/train/60789.png +../../data/yoloGtold1/train/60790.png +../../data/yoloGtold1/train/60791.png +../../data/yoloGtold1/train/60792.png +../../data/yoloGtold1/train/60793.png +../../data/yoloGtold1/train/60794.png +../../data/yoloGtold1/train/60795.png +../../data/yoloGtold1/train/60796.png +../../data/yoloGtold1/train/60797.png +../../data/yoloGtold1/train/60798.png +../../data/yoloGtold1/train/60799.png +../../data/yoloGtold1/train/60800.png +../../data/yoloGtold1/train/60801.png +../../data/yoloGtold1/train/60802.png +../../data/yoloGtold1/train/60803.png +../../data/yoloGtold1/train/60804.png +../../data/yoloGtold1/train/60805.png +../../data/yoloGtold1/train/60806.png +../../data/yoloGtold1/train/60807.png +../../data/yoloGtold1/train/60808.png +../../data/yoloGtold1/train/60809.png +../../data/yoloGtold1/train/60810.png +../../data/yoloGtold1/train/60811.png +../../data/yoloGtold1/train/60812.png +../../data/yoloGtold1/train/60813.png +../../data/yoloGtold1/train/60814.png +../../data/yoloGtold1/train/60815.png +../../data/yoloGtold1/train/60816.png +../../data/yoloGtold1/train/60817.png +../../data/yoloGtold1/train/60818.png +../../data/yoloGtold1/train/60819.png +../../data/yoloGtold1/train/60820.png +../../data/yoloGtold1/train/60821.png +../../data/yoloGtold1/train/60822.png +../../data/yoloGtold1/train/60823.png +../../data/yoloGtold1/train/60824.png +../../data/yoloGtold1/train/60825.png +../../data/yoloGtold1/train/60826.png +../../data/yoloGtold1/train/60827.png +../../data/yoloGtold1/train/60828.png +../../data/yoloGtold1/train/60829.png +../../data/yoloGtold1/train/60830.png +../../data/yoloGtold1/train/60831.png +../../data/yoloGtold1/train/60832.png +../../data/yoloGtold1/train/60833.png +../../data/yoloGtold1/train/60834.png +../../data/yoloGtold1/train/60835.png +../../data/yoloGtold1/train/60836.png +../../data/yoloGtold1/train/60837.png +../../data/yoloGtold1/train/60838.png +../../data/yoloGtold1/train/60839.png +../../data/yoloGtold1/train/60840.png +../../data/yoloGtold1/train/60841.png +../../data/yoloGtold1/train/60842.png +../../data/yoloGtold1/train/60843.png +../../data/yoloGtold1/train/60844.png +../../data/yoloGtold1/train/60845.png +../../data/yoloGtold1/train/60846.png +../../data/yoloGtold1/train/60847.png +../../data/yoloGtold1/train/60848.png +../../data/yoloGtold1/train/60849.png +../../data/yoloGtold1/train/60850.png +../../data/yoloGtold1/train/60851.png +../../data/yoloGtold1/train/60852.png +../../data/yoloGtold1/train/60853.png +../../data/yoloGtold1/train/60854.png +../../data/yoloGtold1/train/60855.png +../../data/yoloGtold1/train/60856.png +../../data/yoloGtold1/train/60857.png +../../data/yoloGtold1/train/60858.png +../../data/yoloGtold1/train/60859.png +../../data/yoloGtold1/train/60860.png +../../data/yoloGtold1/train/60861.png +../../data/yoloGtold1/train/60862.png +../../data/yoloGtold1/train/60863.png +../../data/yoloGtold1/train/60864.png +../../data/yoloGtold1/train/60865.png +../../data/yoloGtold1/train/60866.png +../../data/yoloGtold1/train/60867.png +../../data/yoloGtold1/train/60868.png +../../data/yoloGtold1/train/60869.png +../../data/yoloGtold1/train/60870.png +../../data/yoloGtold1/train/60871.png +../../data/yoloGtold1/train/60872.png +../../data/yoloGtold1/train/60873.png +../../data/yoloGtold1/train/60874.png +../../data/yoloGtold1/train/60875.png +../../data/yoloGtold1/train/60876.png +../../data/yoloGtold1/train/60877.png +../../data/yoloGtold1/train/60878.png +../../data/yoloGtold1/train/60879.png +../../data/yoloGtold1/train/60880.png +../../data/yoloGtold1/train/60881.png +../../data/yoloGtold1/train/60882.png +../../data/yoloGtold1/train/60883.png +../../data/yoloGtold1/train/60884.png +../../data/yoloGtold1/train/60885.png +../../data/yoloGtold1/train/60886.png +../../data/yoloGtold1/train/60887.png +../../data/yoloGtold1/train/60888.png +../../data/yoloGtold1/train/60889.png +../../data/yoloGtold1/train/60890.png +../../data/yoloGtold1/train/60891.png +../../data/yoloGtold1/train/60892.png +../../data/yoloGtold1/train/60893.png +../../data/yoloGtold1/train/60894.png +../../data/yoloGtold1/train/60895.png +../../data/yoloGtold1/train/60896.png +../../data/yoloGtold1/train/60897.png +../../data/yoloGtold1/train/60898.png +../../data/yoloGtold1/train/60899.png +../../data/yoloGtold1/train/60900.png +../../data/yoloGtold1/train/60901.png +../../data/yoloGtold1/train/60902.png +../../data/yoloGtold1/train/60903.png +../../data/yoloGtold1/train/60904.png +../../data/yoloGtold1/train/60905.png +../../data/yoloGtold1/train/60906.png +../../data/yoloGtold1/train/60907.png +../../data/yoloGtold1/train/60908.png +../../data/yoloGtold1/train/60909.png +../../data/yoloGtold1/train/60910.png +../../data/yoloGtold1/train/60911.png +../../data/yoloGtold1/train/60912.png +../../data/yoloGtold1/train/60913.png +../../data/yoloGtold1/train/60914.png +../../data/yoloGtold1/train/60915.png +../../data/yoloGtold1/train/60916.png +../../data/yoloGtold1/train/60917.png +../../data/yoloGtold1/train/60918.png +../../data/yoloGtold1/train/60919.png +../../data/yoloGtold1/train/60920.png +../../data/yoloGtold1/train/60921.png +../../data/yoloGtold1/train/60922.png +../../data/yoloGtold1/train/60923.png +../../data/yoloGtold1/train/60924.png +../../data/yoloGtold1/train/60925.png +../../data/yoloGtold1/train/60926.png +../../data/yoloGtold1/train/60927.png +../../data/yoloGtold1/train/60928.png +../../data/yoloGtold1/train/60929.png +../../data/yoloGtold1/train/60930.png +../../data/yoloGtold1/train/60931.png +../../data/yoloGtold1/train/60932.png +../../data/yoloGtold1/train/60933.png +../../data/yoloGtold1/train/60934.png +../../data/yoloGtold1/train/60935.png +../../data/yoloGtold1/train/60936.png +../../data/yoloGtold1/train/60937.png +../../data/yoloGtold1/train/60938.png +../../data/yoloGtold1/train/60939.png +../../data/yoloGtold1/train/60940.png +../../data/yoloGtold1/train/60941.png +../../data/yoloGtold1/train/60942.png +../../data/yoloGtold1/train/60943.png +../../data/yoloGtold1/train/60944.png +../../data/yoloGtold1/train/60945.png +../../data/yoloGtold1/train/60946.png +../../data/yoloGtold1/train/60947.png +../../data/yoloGtold1/train/60948.png +../../data/yoloGtold1/train/60949.png +../../data/yoloGtold1/train/60950.png +../../data/yoloGtold1/train/60951.png +../../data/yoloGtold1/train/60952.png +../../data/yoloGtold1/train/60953.png +../../data/yoloGtold1/train/60954.png +../../data/yoloGtold1/train/60955.png +../../data/yoloGtold1/train/60956.png +../../data/yoloGtold1/train/60957.png +../../data/yoloGtold1/train/60958.png +../../data/yoloGtold1/train/60959.png +../../data/yoloGtold1/train/60960.png +../../data/yoloGtold1/train/60961.png +../../data/yoloGtold1/train/60962.png +../../data/yoloGtold1/train/60963.png +../../data/yoloGtold1/train/60964.png +../../data/yoloGtold1/train/60965.png +../../data/yoloGtold1/train/60966.png +../../data/yoloGtold1/train/60967.png +../../data/yoloGtold1/train/60968.png +../../data/yoloGtold1/train/60969.png +../../data/yoloGtold1/train/60970.png +../../data/yoloGtold1/train/60971.png +../../data/yoloGtold1/train/60972.png +../../data/yoloGtold1/train/60973.png +../../data/yoloGtold1/train/60974.png +../../data/yoloGtold1/train/60975.png +../../data/yoloGtold1/train/60976.png +../../data/yoloGtold1/train/60977.png +../../data/yoloGtold1/train/60978.png +../../data/yoloGtold1/train/60979.png +../../data/yoloGtold1/train/60980.png +../../data/yoloGtold1/train/60981.png +../../data/yoloGtold1/train/60982.png +../../data/yoloGtold1/train/60983.png +../../data/yoloGtold1/train/60984.png +../../data/yoloGtold1/train/60985.png +../../data/yoloGtold1/train/60986.png +../../data/yoloGtold1/train/60987.png +../../data/yoloGtold1/train/60988.png +../../data/yoloGtold1/train/60989.png +../../data/yoloGtold1/train/60990.png +../../data/yoloGtold1/train/60991.png +../../data/yoloGtold1/train/60992.png +../../data/yoloGtold1/train/60993.png +../../data/yoloGtold1/train/60994.png +../../data/yoloGtold1/train/60995.png +../../data/yoloGtold1/train/60996.png +../../data/yoloGtold1/train/60997.png +../../data/yoloGtold1/train/60998.png +../../data/yoloGtold1/train/60999.png +../../data/yoloGtold1/train/61000.png +../../data/yoloGtold1/train/61001.png +../../data/yoloGtold1/train/61002.png +../../data/yoloGtold1/train/61003.png +../../data/yoloGtold1/train/61004.png +../../data/yoloGtold1/train/61005.png +../../data/yoloGtold1/train/61006.png +../../data/yoloGtold1/train/61007.png +../../data/yoloGtold1/train/61008.png +../../data/yoloGtold1/train/61009.png +../../data/yoloGtold1/train/61010.png +../../data/yoloGtold1/train/61011.png +../../data/yoloGtold1/train/61012.png +../../data/yoloGtold1/train/61013.png +../../data/yoloGtold1/train/61014.png +../../data/yoloGtold1/train/61015.png +../../data/yoloGtold1/train/61016.png +../../data/yoloGtold1/train/61017.png +../../data/yoloGtold1/train/61018.png +../../data/yoloGtold1/train/61019.png +../../data/yoloGtold1/train/61020.png +../../data/yoloGtold1/train/61021.png +../../data/yoloGtold1/train/61022.png +../../data/yoloGtold1/train/61023.png +../../data/yoloGtold1/train/61024.png +../../data/yoloGtold1/train/61025.png +../../data/yoloGtold1/train/61026.png +../../data/yoloGtold1/train/61027.png +../../data/yoloGtold1/train/61028.png +../../data/yoloGtold1/train/61029.png +../../data/yoloGtold1/train/61030.png +../../data/yoloGtold1/train/61031.png +../../data/yoloGtold1/train/61032.png +../../data/yoloGtold1/train/61033.png +../../data/yoloGtold1/train/61034.png +../../data/yoloGtold1/train/61035.png +../../data/yoloGtold1/train/61036.png +../../data/yoloGtold1/train/61037.png +../../data/yoloGtold1/train/61038.png +../../data/yoloGtold1/train/61039.png +../../data/yoloGtold1/train/61040.png +../../data/yoloGtold1/train/61041.png +../../data/yoloGtold1/train/61042.png +../../data/yoloGtold1/train/61043.png +../../data/yoloGtold1/train/61044.png +../../data/yoloGtold1/train/61045.png +../../data/yoloGtold1/train/61046.png +../../data/yoloGtold1/train/61047.png +../../data/yoloGtold1/train/61048.png +../../data/yoloGtold1/train/61049.png +../../data/yoloGtold1/train/61050.png +../../data/yoloGtold1/train/61051.png +../../data/yoloGtold1/train/61052.png +../../data/yoloGtold1/train/61053.png +../../data/yoloGtold1/train/61054.png +../../data/yoloGtold1/train/61055.png +../../data/yoloGtold1/train/61056.png +../../data/yoloGtold1/train/61057.png +../../data/yoloGtold1/train/61058.png +../../data/yoloGtold1/train/61059.png +../../data/yoloGtold1/train/61060.png +../../data/yoloGtold1/train/61061.png +../../data/yoloGtold1/train/61062.png +../../data/yoloGtold1/train/61063.png +../../data/yoloGtold1/train/61064.png +../../data/yoloGtold1/train/61065.png +../../data/yoloGtold1/train/61066.png +../../data/yoloGtold1/train/61067.png +../../data/yoloGtold1/train/61068.png +../../data/yoloGtold1/train/61069.png +../../data/yoloGtold1/train/61070.png +../../data/yoloGtold1/train/61071.png +../../data/yoloGtold1/train/61072.png +../../data/yoloGtold1/train/61073.png +../../data/yoloGtold1/train/61074.png +../../data/yoloGtold1/train/61075.png +../../data/yoloGtold1/train/61076.png +../../data/yoloGtold1/train/61077.png +../../data/yoloGtold1/train/61078.png +../../data/yoloGtold1/train/61079.png +../../data/yoloGtold1/train/61080.png +../../data/yoloGtold1/train/61081.png +../../data/yoloGtold1/train/61082.png +../../data/yoloGtold1/train/61083.png +../../data/yoloGtold1/train/61084.png +../../data/yoloGtold1/train/61085.png +../../data/yoloGtold1/train/61086.png +../../data/yoloGtold1/train/61087.png +../../data/yoloGtold1/train/61088.png +../../data/yoloGtold1/train/61089.png +../../data/yoloGtold1/train/61090.png +../../data/yoloGtold1/train/61091.png +../../data/yoloGtold1/train/61092.png +../../data/yoloGtold1/train/61093.png +../../data/yoloGtold1/train/61094.png +../../data/yoloGtold1/train/61095.png +../../data/yoloGtold1/train/61096.png +../../data/yoloGtold1/train/61097.png +../../data/yoloGtold1/train/61098.png +../../data/yoloGtold1/train/61099.png +../../data/yoloGtold1/train/61100.png +../../data/yoloGtold1/train/61101.png +../../data/yoloGtold1/train/61102.png +../../data/yoloGtold1/train/61103.png +../../data/yoloGtold1/train/61104.png +../../data/yoloGtold1/train/61105.png +../../data/yoloGtold1/train/61106.png +../../data/yoloGtold1/train/61107.png +../../data/yoloGtold1/train/61108.png +../../data/yoloGtold1/train/61109.png +../../data/yoloGtold1/train/61110.png +../../data/yoloGtold1/train/61111.png +../../data/yoloGtold1/train/61112.png +../../data/yoloGtold1/train/61113.png +../../data/yoloGtold1/train/61114.png +../../data/yoloGtold1/train/61115.png +../../data/yoloGtold1/train/61116.png +../../data/yoloGtold1/train/61117.png +../../data/yoloGtold1/train/61118.png +../../data/yoloGtold1/train/61119.png +../../data/yoloGtold1/train/61120.png +../../data/yoloGtold1/train/61121.png +../../data/yoloGtold1/train/61122.png +../../data/yoloGtold1/train/61123.png +../../data/yoloGtold1/train/61124.png +../../data/yoloGtold1/train/61125.png +../../data/yoloGtold1/train/61126.png +../../data/yoloGtold1/train/61127.png +../../data/yoloGtold1/train/61128.png +../../data/yoloGtold1/train/61129.png +../../data/yoloGtold1/train/61130.png +../../data/yoloGtold1/train/61131.png +../../data/yoloGtold1/train/61132.png +../../data/yoloGtold1/train/61133.png +../../data/yoloGtold1/train/61134.png +../../data/yoloGtold1/train/61135.png +../../data/yoloGtold1/train/61136.png +../../data/yoloGtold1/train/61137.png +../../data/yoloGtold1/train/61138.png +../../data/yoloGtold1/train/61139.png +../../data/yoloGtold1/train/61140.png +../../data/yoloGtold1/train/61141.png +../../data/yoloGtold1/train/61142.png +../../data/yoloGtold1/train/61143.png +../../data/yoloGtold1/train/61144.png +../../data/yoloGtold1/train/61145.png +../../data/yoloGtold1/train/61146.png +../../data/yoloGtold1/train/61147.png +../../data/yoloGtold1/train/61148.png +../../data/yoloGtold1/train/61149.png +../../data/yoloGtold1/train/61150.png +../../data/yoloGtold1/train/61151.png +../../data/yoloGtold1/train/61152.png +../../data/yoloGtold1/train/61153.png +../../data/yoloGtold1/train/61154.png +../../data/yoloGtold1/train/61155.png +../../data/yoloGtold1/train/61156.png +../../data/yoloGtold1/train/61157.png +../../data/yoloGtold1/train/61158.png +../../data/yoloGtold1/train/61159.png +../../data/yoloGtold1/train/61160.png +../../data/yoloGtold1/train/61161.png +../../data/yoloGtold1/train/61162.png +../../data/yoloGtold1/train/61163.png +../../data/yoloGtold1/train/61164.png +../../data/yoloGtold1/train/61165.png +../../data/yoloGtold1/train/61166.png +../../data/yoloGtold1/train/61167.png +../../data/yoloGtold1/train/61168.png +../../data/yoloGtold1/train/61169.png +../../data/yoloGtold1/train/61170.png +../../data/yoloGtold1/train/61171.png +../../data/yoloGtold1/train/61172.png +../../data/yoloGtold1/train/61173.png +../../data/yoloGtold1/train/61174.png +../../data/yoloGtold1/train/61175.png +../../data/yoloGtold1/train/61176.png +../../data/yoloGtold1/train/61177.png +../../data/yoloGtold1/train/61178.png +../../data/yoloGtold1/train/61179.png +../../data/yoloGtold1/train/61180.png +../../data/yoloGtold1/train/61181.png +../../data/yoloGtold1/train/61182.png +../../data/yoloGtold1/train/61183.png +../../data/yoloGtold1/train/61184.png +../../data/yoloGtold1/train/61185.png +../../data/yoloGtold1/train/61186.png +../../data/yoloGtold1/train/61187.png +../../data/yoloGtold1/train/61188.png +../../data/yoloGtold1/train/61189.png +../../data/yoloGtold1/train/61190.png +../../data/yoloGtold1/train/61191.png +../../data/yoloGtold1/train/61192.png +../../data/yoloGtold1/train/61193.png +../../data/yoloGtold1/train/61194.png +../../data/yoloGtold1/train/61195.png +../../data/yoloGtold1/train/61196.png +../../data/yoloGtold1/train/61197.png +../../data/yoloGtold1/train/61198.png +../../data/yoloGtold1/train/61199.png +../../data/yoloGtold1/train/61200.png +../../data/yoloGtold1/train/61201.png +../../data/yoloGtold1/train/61202.png +../../data/yoloGtold1/train/61203.png +../../data/yoloGtold1/train/61204.png +../../data/yoloGtold1/train/61205.png +../../data/yoloGtold1/train/61206.png +../../data/yoloGtold1/train/61207.png +../../data/yoloGtold1/train/61208.png +../../data/yoloGtold1/train/61209.png +../../data/yoloGtold1/train/61210.png +../../data/yoloGtold1/train/61211.png +../../data/yoloGtold1/train/61212.png +../../data/yoloGtold1/train/61213.png +../../data/yoloGtold1/train/61214.png +../../data/yoloGtold1/train/61215.png +../../data/yoloGtold1/train/61216.png +../../data/yoloGtold1/train/61217.png +../../data/yoloGtold1/train/61218.png +../../data/yoloGtold1/train/61219.png +../../data/yoloGtold1/train/61220.png +../../data/yoloGtold1/train/61221.png +../../data/yoloGtold1/train/61222.png +../../data/yoloGtold1/train/61223.png +../../data/yoloGtold1/train/61224.png +../../data/yoloGtold1/train/61225.png +../../data/yoloGtold1/train/61226.png +../../data/yoloGtold1/train/61227.png +../../data/yoloGtold1/train/61228.png +../../data/yoloGtold1/train/61229.png +../../data/yoloGtold1/train/61230.png +../../data/yoloGtold1/train/61231.png +../../data/yoloGtold1/train/61232.png +../../data/yoloGtold1/train/61233.png +../../data/yoloGtold1/train/61234.png +../../data/yoloGtold1/train/61235.png +../../data/yoloGtold1/train/61236.png +../../data/yoloGtold1/train/61237.png +../../data/yoloGtold1/train/61238.png +../../data/yoloGtold1/train/61239.png +../../data/yoloGtold1/train/61240.png +../../data/yoloGtold1/train/61241.png +../../data/yoloGtold1/train/61242.png +../../data/yoloGtold1/train/61243.png +../../data/yoloGtold1/train/61244.png +../../data/yoloGtold1/train/61245.png +../../data/yoloGtold1/train/61246.png +../../data/yoloGtold1/train/61247.png +../../data/yoloGtold1/train/61248.png +../../data/yoloGtold1/train/61249.png +../../data/yoloGtold1/train/61250.png +../../data/yoloGtold1/train/61251.png +../../data/yoloGtold1/train/61252.png +../../data/yoloGtold1/train/61253.png +../../data/yoloGtold1/train/61254.png +../../data/yoloGtold1/train/61255.png +../../data/yoloGtold1/train/61256.png +../../data/yoloGtold1/train/61257.png +../../data/yoloGtold1/train/61258.png +../../data/yoloGtold1/train/61259.png +../../data/yoloGtold1/train/61260.png +../../data/yoloGtold1/train/61261.png +../../data/yoloGtold1/train/61262.png +../../data/yoloGtold1/train/61263.png +../../data/yoloGtold1/train/61264.png +../../data/yoloGtold1/train/61265.png +../../data/yoloGtold1/train/61266.png +../../data/yoloGtold1/train/61267.png +../../data/yoloGtold1/train/61268.png +../../data/yoloGtold1/train/61269.png +../../data/yoloGtold1/train/61270.png +../../data/yoloGtold1/train/61271.png +../../data/yoloGtold1/train/61272.png +../../data/yoloGtold1/train/61273.png +../../data/yoloGtold1/train/61274.png +../../data/yoloGtold1/train/61275.png +../../data/yoloGtold1/train/61276.png +../../data/yoloGtold1/train/61277.png +../../data/yoloGtold1/train/61278.png +../../data/yoloGtold1/train/61279.png +../../data/yoloGtold1/train/61280.png +../../data/yoloGtold1/train/61281.png +../../data/yoloGtold1/train/61282.png +../../data/yoloGtold1/train/61283.png +../../data/yoloGtold1/train/61284.png +../../data/yoloGtold1/train/61285.png +../../data/yoloGtold1/train/61286.png +../../data/yoloGtold1/train/61287.png +../../data/yoloGtold1/train/61288.png +../../data/yoloGtold1/train/61289.png +../../data/yoloGtold1/train/61290.png +../../data/yoloGtold1/train/61291.png +../../data/yoloGtold1/train/61292.png +../../data/yoloGtold1/train/61293.png +../../data/yoloGtold1/train/61294.png +../../data/yoloGtold1/train/61295.png +../../data/yoloGtold1/train/61296.png +../../data/yoloGtold1/train/61297.png +../../data/yoloGtold1/train/61298.png +../../data/yoloGtold1/train/61299.png +../../data/yoloGtold1/train/61300.png +../../data/yoloGtold1/train/61301.png +../../data/yoloGtold1/train/61302.png +../../data/yoloGtold1/train/61303.png +../../data/yoloGtold1/train/61304.png +../../data/yoloGtold1/train/61305.png +../../data/yoloGtold1/train/61306.png +../../data/yoloGtold1/train/61307.png +../../data/yoloGtold1/train/61308.png +../../data/yoloGtold1/train/61309.png +../../data/yoloGtold1/train/61310.png +../../data/yoloGtold1/train/61311.png +../../data/yoloGtold1/train/61312.png +../../data/yoloGtold1/train/61313.png +../../data/yoloGtold1/train/61314.png +../../data/yoloGtold1/train/61315.png +../../data/yoloGtold1/train/61316.png +../../data/yoloGtold1/train/61317.png +../../data/yoloGtold1/train/61318.png +../../data/yoloGtold1/train/61319.png +../../data/yoloGtold1/train/61320.png +../../data/yoloGtold1/train/61321.png +../../data/yoloGtold1/train/61322.png +../../data/yoloGtold1/train/61323.png +../../data/yoloGtold1/train/61324.png +../../data/yoloGtold1/train/61325.png +../../data/yoloGtold1/train/61326.png +../../data/yoloGtold1/train/61327.png +../../data/yoloGtold1/train/61328.png +../../data/yoloGtold1/train/61329.png +../../data/yoloGtold1/train/61330.png +../../data/yoloGtold1/train/61331.png +../../data/yoloGtold1/train/61332.png +../../data/yoloGtold1/train/61333.png +../../data/yoloGtold1/train/61334.png +../../data/yoloGtold1/train/61335.png +../../data/yoloGtold1/train/61336.png +../../data/yoloGtold1/train/61337.png +../../data/yoloGtold1/train/61338.png +../../data/yoloGtold1/train/61339.png +../../data/yoloGtold1/train/61340.png +../../data/yoloGtold1/train/61341.png +../../data/yoloGtold1/train/61342.png +../../data/yoloGtold1/train/61343.png +../../data/yoloGtold1/train/61344.png +../../data/yoloGtold1/train/61345.png +../../data/yoloGtold1/train/61346.png +../../data/yoloGtold1/train/61347.png +../../data/yoloGtold1/train/61348.png +../../data/yoloGtold1/train/61349.png +../../data/yoloGtold1/train/61350.png +../../data/yoloGtold1/train/61351.png +../../data/yoloGtold1/train/61352.png +../../data/yoloGtold1/train/61353.png +../../data/yoloGtold1/train/61354.png +../../data/yoloGtold1/train/61355.png +../../data/yoloGtold1/train/61356.png +../../data/yoloGtold1/train/61357.png +../../data/yoloGtold1/train/61358.png +../../data/yoloGtold1/train/61359.png +../../data/yoloGtold1/train/61360.png +../../data/yoloGtold1/train/61361.png +../../data/yoloGtold1/train/61362.png +../../data/yoloGtold1/train/61363.png +../../data/yoloGtold1/train/61364.png +../../data/yoloGtold1/train/61365.png +../../data/yoloGtold1/train/61366.png +../../data/yoloGtold1/train/61367.png +../../data/yoloGtold1/train/61368.png +../../data/yoloGtold1/train/61369.png +../../data/yoloGtold1/train/61370.png +../../data/yoloGtold1/train/61371.png +../../data/yoloGtold1/train/61372.png +../../data/yoloGtold1/train/61373.png +../../data/yoloGtold1/train/61374.png +../../data/yoloGtold1/train/61375.png +../../data/yoloGtold1/train/61376.png +../../data/yoloGtold1/train/61377.png +../../data/yoloGtold1/train/61378.png +../../data/yoloGtold1/train/61379.png +../../data/yoloGtold1/train/61380.png +../../data/yoloGtold1/train/61381.png +../../data/yoloGtold1/train/61382.png +../../data/yoloGtold1/train/61383.png +../../data/yoloGtold1/train/61384.png +../../data/yoloGtold1/train/61385.png +../../data/yoloGtold1/train/61386.png +../../data/yoloGtold1/train/61387.png +../../data/yoloGtold1/train/61388.png +../../data/yoloGtold1/train/61389.png +../../data/yoloGtold1/train/61390.png +../../data/yoloGtold1/train/61391.png +../../data/yoloGtold1/train/61392.png +../../data/yoloGtold1/train/61393.png +../../data/yoloGtold1/train/61394.png +../../data/yoloGtold1/train/61395.png +../../data/yoloGtold1/train/61396.png +../../data/yoloGtold1/train/61397.png +../../data/yoloGtold1/train/61398.png +../../data/yoloGtold1/train/61399.png +../../data/yoloGtold1/train/61400.png +../../data/yoloGtold1/train/61401.png +../../data/yoloGtold1/train/61402.png +../../data/yoloGtold1/train/61403.png +../../data/yoloGtold1/train/61404.png +../../data/yoloGtold1/train/61405.png +../../data/yoloGtold1/train/61406.png +../../data/yoloGtold1/train/61407.png +../../data/yoloGtold1/train/61408.png +../../data/yoloGtold1/train/61409.png +../../data/yoloGtold1/train/61410.png +../../data/yoloGtold1/train/61411.png +../../data/yoloGtold1/train/61412.png +../../data/yoloGtold1/train/61413.png +../../data/yoloGtold1/train/61414.png +../../data/yoloGtold1/train/61415.png +../../data/yoloGtold1/train/61416.png +../../data/yoloGtold1/train/61417.png +../../data/yoloGtold1/train/61418.png +../../data/yoloGtold1/train/61419.png +../../data/yoloGtold1/train/61420.png +../../data/yoloGtold1/train/61421.png +../../data/yoloGtold1/train/61422.png +../../data/yoloGtold1/train/61423.png +../../data/yoloGtold1/train/61424.png +../../data/yoloGtold1/train/61425.png +../../data/yoloGtold1/train/61426.png +../../data/yoloGtold1/train/61427.png +../../data/yoloGtold1/train/61428.png +../../data/yoloGtold1/train/61429.png +../../data/yoloGtold1/train/61430.png +../../data/yoloGtold1/train/61431.png +../../data/yoloGtold1/train/61432.png +../../data/yoloGtold1/train/61433.png +../../data/yoloGtold1/train/61434.png +../../data/yoloGtold1/train/61435.png +../../data/yoloGtold1/train/61436.png +../../data/yoloGtold1/train/61437.png +../../data/yoloGtold1/train/61438.png +../../data/yoloGtold1/train/61439.png +../../data/yoloGtold1/train/61440.png +../../data/yoloGtold1/train/61441.png +../../data/yoloGtold1/train/61442.png +../../data/yoloGtold1/train/61443.png +../../data/yoloGtold1/train/61444.png +../../data/yoloGtold1/train/61445.png +../../data/yoloGtold1/train/61446.png +../../data/yoloGtold1/train/61447.png +../../data/yoloGtold1/train/61448.png +../../data/yoloGtold1/train/61449.png +../../data/yoloGtold1/train/61450.png +../../data/yoloGtold1/train/61451.png +../../data/yoloGtold1/train/61452.png +../../data/yoloGtold1/train/61453.png +../../data/yoloGtold1/train/61454.png +../../data/yoloGtold1/train/61455.png +../../data/yoloGtold1/train/61456.png +../../data/yoloGtold1/train/61457.png +../../data/yoloGtold1/train/61458.png +../../data/yoloGtold1/train/61459.png +../../data/yoloGtold1/train/61460.png +../../data/yoloGtold1/train/61461.png +../../data/yoloGtold1/train/61462.png +../../data/yoloGtold1/train/61463.png +../../data/yoloGtold1/train/61464.png +../../data/yoloGtold1/train/61465.png +../../data/yoloGtold1/train/61466.png +../../data/yoloGtold1/train/61467.png +../../data/yoloGtold1/train/61468.png +../../data/yoloGtold1/train/61469.png +../../data/yoloGtold1/train/61470.png +../../data/yoloGtold1/train/61471.png +../../data/yoloGtold1/train/61472.png +../../data/yoloGtold1/train/61473.png +../../data/yoloGtold1/train/61474.png +../../data/yoloGtold1/train/61475.png +../../data/yoloGtold1/train/61476.png +../../data/yoloGtold1/train/61477.png +../../data/yoloGtold1/train/61478.png +../../data/yoloGtold1/train/61479.png +../../data/yoloGtold1/train/61480.png +../../data/yoloGtold1/train/61481.png +../../data/yoloGtold1/train/61482.png +../../data/yoloGtold1/train/61483.png +../../data/yoloGtold1/train/61484.png +../../data/yoloGtold1/train/61485.png +../../data/yoloGtold1/train/61486.png +../../data/yoloGtold1/train/61487.png +../../data/yoloGtold1/train/61488.png +../../data/yoloGtold1/train/61489.png +../../data/yoloGtold1/train/61490.png +../../data/yoloGtold1/train/61491.png +../../data/yoloGtold1/train/61492.png +../../data/yoloGtold1/train/61493.png +../../data/yoloGtold1/train/61494.png +../../data/yoloGtold1/train/61495.png +../../data/yoloGtold1/train/61496.png +../../data/yoloGtold1/train/61497.png +../../data/yoloGtold1/train/61498.png +../../data/yoloGtold1/train/61499.png +../../data/yoloGtold1/train/61500.png +../../data/yoloGtold1/train/61501.png +../../data/yoloGtold1/train/61502.png +../../data/yoloGtold1/train/61503.png +../../data/yoloGtold1/train/61504.png +../../data/yoloGtold1/train/61505.png +../../data/yoloGtold1/train/61506.png +../../data/yoloGtold1/train/61507.png +../../data/yoloGtold1/train/61508.png +../../data/yoloGtold1/train/61509.png +../../data/yoloGtold1/train/61510.png +../../data/yoloGtold1/train/61511.png +../../data/yoloGtold1/train/61512.png +../../data/yoloGtold1/train/61513.png +../../data/yoloGtold1/train/61514.png +../../data/yoloGtold1/train/61515.png +../../data/yoloGtold1/train/61516.png +../../data/yoloGtold1/train/61517.png +../../data/yoloGtold1/train/61518.png +../../data/yoloGtold1/train/61519.png +../../data/yoloGtold1/train/61520.png +../../data/yoloGtold1/train/61521.png +../../data/yoloGtold1/train/61522.png +../../data/yoloGtold1/train/61523.png +../../data/yoloGtold1/train/61524.png +../../data/yoloGtold1/train/61525.png +../../data/yoloGtold1/train/61526.png +../../data/yoloGtold1/train/61527.png +../../data/yoloGtold1/train/61528.png +../../data/yoloGtold1/train/61529.png +../../data/yoloGtold1/train/61530.png +../../data/yoloGtold1/train/61531.png +../../data/yoloGtold1/train/61532.png +../../data/yoloGtold1/train/61533.png +../../data/yoloGtold1/train/61534.png +../../data/yoloGtold1/train/61535.png +../../data/yoloGtold1/train/61536.png +../../data/yoloGtold1/train/61537.png +../../data/yoloGtold1/train/61538.png +../../data/yoloGtold1/train/61539.png +../../data/yoloGtold1/train/61540.png +../../data/yoloGtold1/train/61541.png +../../data/yoloGtold1/train/61542.png +../../data/yoloGtold1/train/61543.png +../../data/yoloGtold1/train/61544.png +../../data/yoloGtold1/train/61545.png +../../data/yoloGtold1/train/61546.png +../../data/yoloGtold1/train/61547.png +../../data/yoloGtold1/train/61548.png +../../data/yoloGtold1/train/61549.png +../../data/yoloGtold1/train/61550.png +../../data/yoloGtold1/train/61551.png +../../data/yoloGtold1/train/61552.png +../../data/yoloGtold1/train/61553.png +../../data/yoloGtold1/train/61554.png +../../data/yoloGtold1/train/61555.png +../../data/yoloGtold1/train/61556.png +../../data/yoloGtold1/train/61557.png +../../data/yoloGtold1/train/61558.png +../../data/yoloGtold1/train/61559.png +../../data/yoloGtold1/train/61560.png +../../data/yoloGtold1/train/61561.png +../../data/yoloGtold1/train/61562.png +../../data/yoloGtold1/train/61563.png +../../data/yoloGtold1/train/61564.png +../../data/yoloGtold1/train/61565.png +../../data/yoloGtold1/train/61566.png +../../data/yoloGtold1/train/61567.png +../../data/yoloGtold1/train/61568.png +../../data/yoloGtold1/train/61569.png +../../data/yoloGtold1/train/61570.png +../../data/yoloGtold1/train/61571.png +../../data/yoloGtold1/train/61572.png +../../data/yoloGtold1/train/61573.png +../../data/yoloGtold1/train/61574.png +../../data/yoloGtold1/train/61575.png +../../data/yoloGtold1/train/61576.png +../../data/yoloGtold1/train/61577.png +../../data/yoloGtold1/train/61578.png +../../data/yoloGtold1/train/61579.png +../../data/yoloGtold1/train/61580.png +../../data/yoloGtold1/train/61581.png +../../data/yoloGtold1/train/61582.png +../../data/yoloGtold1/train/61583.png +../../data/yoloGtold1/train/61584.png +../../data/yoloGtold1/train/61585.png +../../data/yoloGtold1/train/61586.png +../../data/yoloGtold1/train/61587.png +../../data/yoloGtold1/train/61588.png +../../data/yoloGtold1/train/61589.png +../../data/yoloGtold1/train/61590.png +../../data/yoloGtold1/train/61591.png +../../data/yoloGtold1/train/61592.png +../../data/yoloGtold1/train/61593.png +../../data/yoloGtold1/train/61594.png +../../data/yoloGtold1/train/61595.png +../../data/yoloGtold1/train/61596.png +../../data/yoloGtold1/train/61597.png +../../data/yoloGtold1/train/61598.png +../../data/yoloGtold1/train/61599.png +../../data/yoloGtold1/train/61600.png +../../data/yoloGtold1/train/61601.png +../../data/yoloGtold1/train/61602.png +../../data/yoloGtold1/train/61603.png +../../data/yoloGtold1/train/61604.png +../../data/yoloGtold1/train/61605.png +../../data/yoloGtold1/train/61606.png +../../data/yoloGtold1/train/61607.png +../../data/yoloGtold1/train/61608.png +../../data/yoloGtold1/train/61609.png +../../data/yoloGtold1/train/61610.png +../../data/yoloGtold1/train/61611.png +../../data/yoloGtold1/train/61612.png +../../data/yoloGtold1/train/61613.png +../../data/yoloGtold1/train/61614.png +../../data/yoloGtold1/train/61615.png +../../data/yoloGtold1/train/61616.png +../../data/yoloGtold1/train/61617.png +../../data/yoloGtold1/train/61618.png +../../data/yoloGtold1/train/61619.png +../../data/yoloGtold1/train/61620.png +../../data/yoloGtold1/train/61621.png +../../data/yoloGtold1/train/61622.png +../../data/yoloGtold1/train/61623.png +../../data/yoloGtold1/train/61624.png +../../data/yoloGtold1/train/61625.png +../../data/yoloGtold1/train/61626.png +../../data/yoloGtold1/train/61627.png +../../data/yoloGtold1/train/61628.png +../../data/yoloGtold1/train/61629.png +../../data/yoloGtold1/train/61630.png +../../data/yoloGtold1/train/61631.png +../../data/yoloGtold1/train/61632.png +../../data/yoloGtold1/train/61633.png +../../data/yoloGtold1/train/61634.png +../../data/yoloGtold1/train/61635.png +../../data/yoloGtold1/train/61636.png +../../data/yoloGtold1/train/61637.png +../../data/yoloGtold1/train/61638.png +../../data/yoloGtold1/train/61639.png +../../data/yoloGtold1/train/61640.png +../../data/yoloGtold1/train/61641.png +../../data/yoloGtold1/train/61642.png +../../data/yoloGtold1/train/61643.png +../../data/yoloGtold1/train/61644.png +../../data/yoloGtold1/train/61645.png +../../data/yoloGtold1/train/61646.png +../../data/yoloGtold1/train/61647.png +../../data/yoloGtold1/train/61648.png +../../data/yoloGtold1/train/61649.png +../../data/yoloGtold1/train/61650.png +../../data/yoloGtold1/train/61651.png +../../data/yoloGtold1/train/61652.png +../../data/yoloGtold1/train/61653.png +../../data/yoloGtold1/train/61654.png +../../data/yoloGtold1/train/61655.png +../../data/yoloGtold1/train/61656.png +../../data/yoloGtold1/train/61657.png +../../data/yoloGtold1/train/61658.png +../../data/yoloGtold1/train/61659.png +../../data/yoloGtold1/train/61660.png +../../data/yoloGtold1/train/61661.png +../../data/yoloGtold1/train/61662.png +../../data/yoloGtold1/train/61663.png +../../data/yoloGtold1/train/61664.png +../../data/yoloGtold1/train/61665.png +../../data/yoloGtold1/train/61666.png +../../data/yoloGtold1/train/61667.png +../../data/yoloGtold1/train/61668.png +../../data/yoloGtold1/train/61669.png +../../data/yoloGtold1/train/61670.png +../../data/yoloGtold1/train/61671.png +../../data/yoloGtold1/train/61672.png +../../data/yoloGtold1/train/61673.png +../../data/yoloGtold1/train/61674.png +../../data/yoloGtold1/train/61675.png +../../data/yoloGtold1/train/61676.png +../../data/yoloGtold1/train/61677.png +../../data/yoloGtold1/train/61678.png +../../data/yoloGtold1/train/61679.png +../../data/yoloGtold1/train/61680.png +../../data/yoloGtold1/train/61681.png +../../data/yoloGtold1/train/61682.png +../../data/yoloGtold1/train/61683.png +../../data/yoloGtold1/train/61684.png +../../data/yoloGtold1/train/61685.png +../../data/yoloGtold1/train/61686.png +../../data/yoloGtold1/train/61687.png +../../data/yoloGtold1/train/61688.png +../../data/yoloGtold1/train/61689.png +../../data/yoloGtold1/train/61690.png +../../data/yoloGtold1/train/61691.png +../../data/yoloGtold1/train/61692.png +../../data/yoloGtold1/train/61693.png +../../data/yoloGtold1/train/61694.png +../../data/yoloGtold1/train/61695.png +../../data/yoloGtold1/train/61696.png +../../data/yoloGtold1/train/61697.png +../../data/yoloGtold1/train/61698.png +../../data/yoloGtold1/train/61699.png +../../data/yoloGtold1/train/61700.png +../../data/yoloGtold1/train/61701.png +../../data/yoloGtold1/train/61702.png +../../data/yoloGtold1/train/61703.png +../../data/yoloGtold1/train/61704.png +../../data/yoloGtold1/train/61705.png +../../data/yoloGtold1/train/61706.png +../../data/yoloGtold1/train/61707.png +../../data/yoloGtold1/train/61708.png +../../data/yoloGtold1/train/61709.png +../../data/yoloGtold1/train/61710.png +../../data/yoloGtold1/train/61711.png +../../data/yoloGtold1/train/61712.png +../../data/yoloGtold1/train/61713.png +../../data/yoloGtold1/train/61714.png +../../data/yoloGtold1/train/61715.png +../../data/yoloGtold1/train/61716.png +../../data/yoloGtold1/train/61717.png +../../data/yoloGtold1/train/61718.png +../../data/yoloGtold1/train/61719.png +../../data/yoloGtold1/train/61720.png +../../data/yoloGtold1/train/61721.png +../../data/yoloGtold1/train/61722.png +../../data/yoloGtold1/train/61723.png +../../data/yoloGtold1/train/61724.png +../../data/yoloGtold1/train/61725.png +../../data/yoloGtold1/train/61726.png +../../data/yoloGtold1/train/61727.png +../../data/yoloGtold1/train/61728.png +../../data/yoloGtold1/train/61729.png +../../data/yoloGtold1/train/61730.png +../../data/yoloGtold1/train/61731.png +../../data/yoloGtold1/train/61732.png +../../data/yoloGtold1/train/61733.png +../../data/yoloGtold1/train/61734.png +../../data/yoloGtold1/train/61735.png +../../data/yoloGtold1/train/61736.png +../../data/yoloGtold1/train/61737.png +../../data/yoloGtold1/train/61738.png +../../data/yoloGtold1/train/61739.png +../../data/yoloGtold1/train/61740.png +../../data/yoloGtold1/train/61741.png +../../data/yoloGtold1/train/61742.png +../../data/yoloGtold1/train/61743.png +../../data/yoloGtold1/train/61744.png +../../data/yoloGtold1/train/61745.png +../../data/yoloGtold1/train/61746.png +../../data/yoloGtold1/train/61747.png +../../data/yoloGtold1/train/61748.png +../../data/yoloGtold1/train/61749.png +../../data/yoloGtold1/train/61750.png +../../data/yoloGtold1/train/61751.png +../../data/yoloGtold1/train/61752.png +../../data/yoloGtold1/train/61753.png +../../data/yoloGtold1/train/61754.png +../../data/yoloGtold1/train/61755.png +../../data/yoloGtold1/train/61756.png +../../data/yoloGtold1/train/61757.png +../../data/yoloGtold1/train/61758.png +../../data/yoloGtold1/train/61759.png +../../data/yoloGtold1/train/61760.png +../../data/yoloGtold1/train/61761.png +../../data/yoloGtold1/train/61762.png +../../data/yoloGtold1/train/61763.png +../../data/yoloGtold1/train/61764.png +../../data/yoloGtold1/train/61765.png +../../data/yoloGtold1/train/61766.png +../../data/yoloGtold1/train/61767.png +../../data/yoloGtold1/train/61768.png +../../data/yoloGtold1/train/61769.png +../../data/yoloGtold1/train/61770.png +../../data/yoloGtold1/train/61771.png +../../data/yoloGtold1/train/61772.png +../../data/yoloGtold1/train/61773.png +../../data/yoloGtold1/train/61774.png +../../data/yoloGtold1/train/61775.png +../../data/yoloGtold1/train/61776.png +../../data/yoloGtold1/train/61777.png +../../data/yoloGtold1/train/61778.png +../../data/yoloGtold1/train/61779.png +../../data/yoloGtold1/train/61780.png +../../data/yoloGtold1/train/61781.png +../../data/yoloGtold1/train/61782.png +../../data/yoloGtold1/train/61783.png +../../data/yoloGtold1/train/61784.png +../../data/yoloGtold1/train/61785.png +../../data/yoloGtold1/train/61786.png +../../data/yoloGtold1/train/61787.png +../../data/yoloGtold1/train/61788.png +../../data/yoloGtold1/train/61789.png +../../data/yoloGtold1/train/61790.png +../../data/yoloGtold1/train/61791.png +../../data/yoloGtold1/train/61792.png +../../data/yoloGtold1/train/61793.png +../../data/yoloGtold1/train/61794.png +../../data/yoloGtold1/train/61795.png +../../data/yoloGtold1/train/61796.png +../../data/yoloGtold1/train/61797.png +../../data/yoloGtold1/train/61798.png +../../data/yoloGtold1/train/61799.png +../../data/yoloGtold1/train/61800.png +../../data/yoloGtold1/train/61801.png +../../data/yoloGtold1/train/61802.png +../../data/yoloGtold1/train/61803.png +../../data/yoloGtold1/train/61804.png +../../data/yoloGtold1/train/61805.png +../../data/yoloGtold1/train/61806.png +../../data/yoloGtold1/train/61807.png +../../data/yoloGtold1/train/61808.png +../../data/yoloGtold1/train/61809.png +../../data/yoloGtold1/train/61810.png +../../data/yoloGtold1/train/61811.png +../../data/yoloGtold1/train/61812.png +../../data/yoloGtold1/train/61813.png +../../data/yoloGtold1/train/61814.png +../../data/yoloGtold1/train/61815.png +../../data/yoloGtold1/train/61816.png +../../data/yoloGtold1/train/61817.png +../../data/yoloGtold1/train/61818.png +../../data/yoloGtold1/train/61819.png +../../data/yoloGtold1/train/61820.png +../../data/yoloGtold1/train/61821.png +../../data/yoloGtold1/train/61822.png +../../data/yoloGtold1/train/61823.png +../../data/yoloGtold1/train/61824.png +../../data/yoloGtold1/train/61825.png +../../data/yoloGtold1/train/61826.png +../../data/yoloGtold1/train/61827.png +../../data/yoloGtold1/train/61828.png +../../data/yoloGtold1/train/61829.png +../../data/yoloGtold1/train/61830.png +../../data/yoloGtold1/train/61831.png +../../data/yoloGtold1/train/61832.png +../../data/yoloGtold1/train/61833.png +../../data/yoloGtold1/train/61834.png +../../data/yoloGtold1/train/61835.png +../../data/yoloGtold1/train/61836.png +../../data/yoloGtold1/train/61837.png +../../data/yoloGtold1/train/61838.png +../../data/yoloGtold1/train/61839.png +../../data/yoloGtold1/train/61840.png +../../data/yoloGtold1/train/61841.png +../../data/yoloGtold1/train/61842.png +../../data/yoloGtold1/train/61843.png +../../data/yoloGtold1/train/61844.png +../../data/yoloGtold1/train/61845.png +../../data/yoloGtold1/train/61846.png +../../data/yoloGtold1/train/61847.png +../../data/yoloGtold1/train/61848.png +../../data/yoloGtold1/train/61849.png +../../data/yoloGtold1/train/61850.png +../../data/yoloGtold1/train/61851.png +../../data/yoloGtold1/train/61852.png +../../data/yoloGtold1/train/61853.png +../../data/yoloGtold1/train/61854.png +../../data/yoloGtold1/train/61855.png +../../data/yoloGtold1/train/61856.png +../../data/yoloGtold1/train/61857.png +../../data/yoloGtold1/train/61858.png +../../data/yoloGtold1/train/61859.png +../../data/yoloGtold1/train/61860.png +../../data/yoloGtold1/train/61861.png +../../data/yoloGtold1/train/61862.png +../../data/yoloGtold1/train/61863.png +../../data/yoloGtold1/train/61864.png +../../data/yoloGtold1/train/61865.png +../../data/yoloGtold1/train/61866.png +../../data/yoloGtold1/train/61867.png +../../data/yoloGtold1/train/61868.png +../../data/yoloGtold1/train/61869.png +../../data/yoloGtold1/train/61870.png +../../data/yoloGtold1/train/61871.png +../../data/yoloGtold1/train/61872.png +../../data/yoloGtold1/train/61873.png +../../data/yoloGtold1/train/61874.png +../../data/yoloGtold1/train/61875.png +../../data/yoloGtold1/train/61876.png +../../data/yoloGtold1/train/61877.png +../../data/yoloGtold1/train/61878.png +../../data/yoloGtold1/train/61879.png +../../data/yoloGtold1/train/61880.png +../../data/yoloGtold1/train/61881.png +../../data/yoloGtold1/train/61882.png +../../data/yoloGtold1/train/61883.png +../../data/yoloGtold1/train/61884.png +../../data/yoloGtold1/train/61885.png +../../data/yoloGtold1/train/61886.png +../../data/yoloGtold1/train/61887.png +../../data/yoloGtold1/train/61888.png +../../data/yoloGtold1/train/61889.png +../../data/yoloGtold1/train/61890.png +../../data/yoloGtold1/train/61891.png +../../data/yoloGtold1/train/61892.png +../../data/yoloGtold1/train/61893.png +../../data/yoloGtold1/train/61894.png +../../data/yoloGtold1/train/61895.png +../../data/yoloGtold1/train/61896.png +../../data/yoloGtold1/train/61897.png +../../data/yoloGtold1/train/61898.png +../../data/yoloGtold1/train/61899.png +../../data/yoloGtold1/train/61900.png +../../data/yoloGtold1/train/61901.png +../../data/yoloGtold1/train/61902.png +../../data/yoloGtold1/train/61903.png +../../data/yoloGtold1/train/61904.png +../../data/yoloGtold1/train/61905.png +../../data/yoloGtold1/train/61906.png +../../data/yoloGtold1/train/61907.png +../../data/yoloGtold1/train/61908.png +../../data/yoloGtold1/train/61909.png +../../data/yoloGtold1/train/61910.png +../../data/yoloGtold1/train/61911.png +../../data/yoloGtold1/train/61912.png +../../data/yoloGtold1/train/61913.png +../../data/yoloGtold1/train/61914.png +../../data/yoloGtold1/train/61915.png +../../data/yoloGtold1/train/61916.png +../../data/yoloGtold1/train/61917.png +../../data/yoloGtold1/train/61918.png +../../data/yoloGtold1/train/61919.png +../../data/yoloGtold1/train/61920.png +../../data/yoloGtold1/train/61921.png +../../data/yoloGtold1/train/61922.png +../../data/yoloGtold1/train/61923.png +../../data/yoloGtold1/train/61924.png +../../data/yoloGtold1/train/61925.png +../../data/yoloGtold1/train/61926.png +../../data/yoloGtold1/train/61927.png +../../data/yoloGtold1/train/61928.png +../../data/yoloGtold1/train/61929.png +../../data/yoloGtold1/train/61930.png +../../data/yoloGtold1/train/61931.png +../../data/yoloGtold1/train/61932.png +../../data/yoloGtold1/train/61933.png +../../data/yoloGtold1/train/61934.png +../../data/yoloGtold1/train/61935.png +../../data/yoloGtold1/train/61936.png +../../data/yoloGtold1/train/61937.png +../../data/yoloGtold1/train/61938.png +../../data/yoloGtold1/train/61939.png +../../data/yoloGtold1/train/61940.png +../../data/yoloGtold1/train/61941.png +../../data/yoloGtold1/train/61942.png +../../data/yoloGtold1/train/61943.png +../../data/yoloGtold1/train/61944.png +../../data/yoloGtold1/train/61945.png +../../data/yoloGtold1/train/61946.png +../../data/yoloGtold1/train/61947.png +../../data/yoloGtold1/train/61948.png +../../data/yoloGtold1/train/61949.png +../../data/yoloGtold1/train/61950.png +../../data/yoloGtold1/train/61951.png +../../data/yoloGtold1/train/61952.png +../../data/yoloGtold1/train/61953.png +../../data/yoloGtold1/train/61954.png +../../data/yoloGtold1/train/61955.png +../../data/yoloGtold1/train/61956.png +../../data/yoloGtold1/train/61957.png +../../data/yoloGtold1/train/61958.png +../../data/yoloGtold1/train/61959.png +../../data/yoloGtold1/train/61960.png +../../data/yoloGtold1/train/61961.png +../../data/yoloGtold1/train/61962.png +../../data/yoloGtold1/train/61963.png +../../data/yoloGtold1/train/61964.png +../../data/yoloGtold1/train/61965.png +../../data/yoloGtold1/train/61966.png +../../data/yoloGtold1/train/61967.png +../../data/yoloGtold1/train/61968.png +../../data/yoloGtold1/train/61969.png +../../data/yoloGtold1/train/61970.png +../../data/yoloGtold1/train/61971.png +../../data/yoloGtold1/train/61972.png +../../data/yoloGtold1/train/61973.png +../../data/yoloGtold1/train/61974.png +../../data/yoloGtold1/train/61975.png +../../data/yoloGtold1/train/61976.png +../../data/yoloGtold1/train/61977.png +../../data/yoloGtold1/train/61978.png +../../data/yoloGtold1/train/61979.png +../../data/yoloGtold1/train/61980.png +../../data/yoloGtold1/train/61981.png +../../data/yoloGtold1/train/61982.png +../../data/yoloGtold1/train/61983.png +../../data/yoloGtold1/train/61984.png +../../data/yoloGtold1/train/61985.png +../../data/yoloGtold1/train/61986.png +../../data/yoloGtold1/train/61987.png +../../data/yoloGtold1/train/61988.png +../../data/yoloGtold1/train/61989.png +../../data/yoloGtold1/train/61990.png +../../data/yoloGtold1/train/61991.png +../../data/yoloGtold1/train/61992.png +../../data/yoloGtold1/train/61993.png +../../data/yoloGtold1/train/61994.png +../../data/yoloGtold1/train/61995.png +../../data/yoloGtold1/train/61996.png +../../data/yoloGtold1/train/61997.png +../../data/yoloGtold1/train/61998.png +../../data/yoloGtold1/train/61999.png +../../data/yoloGtold1/train/62000.png +../../data/yoloGtold1/train/62001.png +../../data/yoloGtold1/train/62002.png +../../data/yoloGtold1/train/62003.png +../../data/yoloGtold1/train/62004.png +../../data/yoloGtold1/train/62005.png +../../data/yoloGtold1/train/62006.png +../../data/yoloGtold1/train/62007.png +../../data/yoloGtold1/train/62008.png +../../data/yoloGtold1/train/62009.png +../../data/yoloGtold1/train/62010.png +../../data/yoloGtold1/train/62011.png +../../data/yoloGtold1/train/62012.png +../../data/yoloGtold1/train/62013.png +../../data/yoloGtold1/train/62014.png +../../data/yoloGtold1/train/62015.png +../../data/yoloGtold1/train/62016.png +../../data/yoloGtold1/train/62017.png +../../data/yoloGtold1/train/62018.png +../../data/yoloGtold1/train/62019.png +../../data/yoloGtold1/train/62020.png +../../data/yoloGtold1/train/62021.png +../../data/yoloGtold1/train/62022.png +../../data/yoloGtold1/train/62023.png +../../data/yoloGtold1/train/62024.png +../../data/yoloGtold1/train/62025.png +../../data/yoloGtold1/train/62026.png +../../data/yoloGtold1/train/62027.png +../../data/yoloGtold1/train/62028.png +../../data/yoloGtold1/train/62029.png +../../data/yoloGtold1/train/62030.png +../../data/yoloGtold1/train/62031.png +../../data/yoloGtold1/train/62032.png +../../data/yoloGtold1/train/62033.png +../../data/yoloGtold1/train/62034.png +../../data/yoloGtold1/train/62035.png +../../data/yoloGtold1/train/62036.png +../../data/yoloGtold1/train/62037.png +../../data/yoloGtold1/train/62038.png +../../data/yoloGtold1/train/62039.png +../../data/yoloGtold1/train/62040.png +../../data/yoloGtold1/train/62041.png +../../data/yoloGtold1/train/62042.png +../../data/yoloGtold1/train/62043.png +../../data/yoloGtold1/train/62044.png +../../data/yoloGtold1/train/62045.png +../../data/yoloGtold1/train/62046.png +../../data/yoloGtold1/train/62047.png +../../data/yoloGtold1/train/62048.png +../../data/yoloGtold1/train/62049.png +../../data/yoloGtold1/train/62050.png +../../data/yoloGtold1/train/62051.png +../../data/yoloGtold1/train/62052.png +../../data/yoloGtold1/train/62053.png +../../data/yoloGtold1/train/62054.png +../../data/yoloGtold1/train/62055.png +../../data/yoloGtold1/train/62056.png +../../data/yoloGtold1/train/62057.png +../../data/yoloGtold1/train/62058.png +../../data/yoloGtold1/train/62059.png +../../data/yoloGtold1/train/62060.png +../../data/yoloGtold1/train/62061.png +../../data/yoloGtold1/train/62062.png +../../data/yoloGtold1/train/62063.png +../../data/yoloGtold1/train/62064.png +../../data/yoloGtold1/train/62065.png +../../data/yoloGtold1/train/62066.png +../../data/yoloGtold1/train/62067.png +../../data/yoloGtold1/train/62068.png +../../data/yoloGtold1/train/62069.png +../../data/yoloGtold1/train/62070.png +../../data/yoloGtold1/train/62071.png +../../data/yoloGtold1/train/62072.png +../../data/yoloGtold1/train/62073.png +../../data/yoloGtold1/train/62074.png +../../data/yoloGtold1/train/62075.png +../../data/yoloGtold1/train/62076.png +../../data/yoloGtold1/train/62077.png +../../data/yoloGtold1/train/62078.png +../../data/yoloGtold1/train/62079.png +../../data/yoloGtold1/train/62080.png +../../data/yoloGtold1/train/62081.png +../../data/yoloGtold1/train/62082.png +../../data/yoloGtold1/train/62083.png +../../data/yoloGtold1/train/62084.png +../../data/yoloGtold1/train/62085.png +../../data/yoloGtold1/train/62086.png +../../data/yoloGtold1/train/62087.png +../../data/yoloGtold1/train/62088.png +../../data/yoloGtold1/train/62089.png +../../data/yoloGtold1/train/62090.png +../../data/yoloGtold1/train/62091.png +../../data/yoloGtold1/train/62092.png +../../data/yoloGtold1/train/62093.png +../../data/yoloGtold1/train/62094.png +../../data/yoloGtold1/train/62095.png +../../data/yoloGtold1/train/62096.png +../../data/yoloGtold1/train/62097.png +../../data/yoloGtold1/train/62098.png +../../data/yoloGtold1/train/62099.png +../../data/yoloGtold1/train/62100.png +../../data/yoloGtold1/train/62101.png +../../data/yoloGtold1/train/62102.png +../../data/yoloGtold1/train/62103.png +../../data/yoloGtold1/train/62104.png +../../data/yoloGtold1/train/62105.png +../../data/yoloGtold1/train/62106.png +../../data/yoloGtold1/train/62107.png +../../data/yoloGtold1/train/62108.png +../../data/yoloGtold1/train/62109.png +../../data/yoloGtold1/train/62110.png +../../data/yoloGtold1/train/62111.png +../../data/yoloGtold1/train/62112.png +../../data/yoloGtold1/train/62113.png +../../data/yoloGtold1/train/62114.png +../../data/yoloGtold1/train/62115.png +../../data/yoloGtold1/train/62116.png +../../data/yoloGtold1/train/62117.png +../../data/yoloGtold1/train/62118.png +../../data/yoloGtold1/train/62119.png +../../data/yoloGtold1/train/62120.png +../../data/yoloGtold1/train/62121.png +../../data/yoloGtold1/train/62122.png +../../data/yoloGtold1/train/62123.png +../../data/yoloGtold1/train/62124.png +../../data/yoloGtold1/train/62125.png +../../data/yoloGtold1/train/62126.png +../../data/yoloGtold1/train/62127.png +../../data/yoloGtold1/train/62128.png +../../data/yoloGtold1/train/62129.png +../../data/yoloGtold1/train/62130.png +../../data/yoloGtold1/train/62131.png +../../data/yoloGtold1/train/62132.png +../../data/yoloGtold1/train/62133.png +../../data/yoloGtold1/train/62134.png +../../data/yoloGtold1/train/62135.png +../../data/yoloGtold1/train/62136.png +../../data/yoloGtold1/train/62137.png +../../data/yoloGtold1/train/62138.png +../../data/yoloGtold1/train/62139.png +../../data/yoloGtold1/train/62140.png +../../data/yoloGtold1/train/62141.png +../../data/yoloGtold1/train/62142.png +../../data/yoloGtold1/train/62143.png +../../data/yoloGtold1/train/62144.png +../../data/yoloGtold1/train/62145.png +../../data/yoloGtold1/train/62146.png +../../data/yoloGtold1/train/62147.png +../../data/yoloGtold1/train/62148.png +../../data/yoloGtold1/train/62149.png +../../data/yoloGtold1/train/62150.png +../../data/yoloGtold1/train/62151.png +../../data/yoloGtold1/train/62152.png +../../data/yoloGtold1/train/62153.png +../../data/yoloGtold1/train/62154.png +../../data/yoloGtold1/train/62155.png +../../data/yoloGtold1/train/62156.png +../../data/yoloGtold1/train/62157.png +../../data/yoloGtold1/train/62158.png +../../data/yoloGtold1/train/62159.png +../../data/yoloGtold1/train/62160.png +../../data/yoloGtold1/train/62161.png +../../data/yoloGtold1/train/62162.png +../../data/yoloGtold1/train/62163.png +../../data/yoloGtold1/train/62164.png +../../data/yoloGtold1/train/62165.png +../../data/yoloGtold1/train/62166.png +../../data/yoloGtold1/train/62167.png +../../data/yoloGtold1/train/62168.png +../../data/yoloGtold1/train/62169.png +../../data/yoloGtold1/train/62170.png +../../data/yoloGtold1/train/62171.png +../../data/yoloGtold1/train/62172.png +../../data/yoloGtold1/train/62173.png +../../data/yoloGtold1/train/62174.png +../../data/yoloGtold1/train/62175.png +../../data/yoloGtold1/train/62176.png +../../data/yoloGtold1/train/62177.png +../../data/yoloGtold1/train/62178.png +../../data/yoloGtold1/train/62179.png +../../data/yoloGtold1/train/62180.png +../../data/yoloGtold1/train/62181.png +../../data/yoloGtold1/train/62182.png +../../data/yoloGtold1/train/62183.png +../../data/yoloGtold1/train/62184.png +../../data/yoloGtold1/train/62185.png +../../data/yoloGtold1/train/62186.png +../../data/yoloGtold1/train/62187.png +../../data/yoloGtold1/train/62188.png +../../data/yoloGtold1/train/62189.png +../../data/yoloGtold1/train/62190.png +../../data/yoloGtold1/train/62191.png +../../data/yoloGtold1/train/62192.png +../../data/yoloGtold1/train/62193.png +../../data/yoloGtold1/train/62194.png +../../data/yoloGtold1/train/62195.png +../../data/yoloGtold1/train/62196.png +../../data/yoloGtold1/train/62197.png +../../data/yoloGtold1/train/62198.png +../../data/yoloGtold1/train/62199.png +../../data/yoloGtold1/train/62200.png +../../data/yoloGtold1/train/62201.png +../../data/yoloGtold1/train/62202.png +../../data/yoloGtold1/train/62203.png +../../data/yoloGtold1/train/62204.png +../../data/yoloGtold1/train/62205.png +../../data/yoloGtold1/train/62206.png +../../data/yoloGtold1/train/62207.png +../../data/yoloGtold1/train/62208.png +../../data/yoloGtold1/train/62209.png +../../data/yoloGtold1/train/62210.png +../../data/yoloGtold1/train/62211.png +../../data/yoloGtold1/train/62212.png +../../data/yoloGtold1/train/62213.png +../../data/yoloGtold1/train/62214.png +../../data/yoloGtold1/train/62215.png +../../data/yoloGtold1/train/62216.png +../../data/yoloGtold1/train/62217.png +../../data/yoloGtold1/train/62218.png +../../data/yoloGtold1/train/62219.png +../../data/yoloGtold1/train/62220.png +../../data/yoloGtold1/train/62221.png +../../data/yoloGtold1/train/62222.png +../../data/yoloGtold1/train/62223.png +../../data/yoloGtold1/train/62224.png +../../data/yoloGtold1/train/62225.png +../../data/yoloGtold1/train/62226.png +../../data/yoloGtold1/train/62227.png +../../data/yoloGtold1/train/62228.png +../../data/yoloGtold1/train/62229.png +../../data/yoloGtold1/train/62230.png +../../data/yoloGtold1/train/62231.png +../../data/yoloGtold1/train/62232.png +../../data/yoloGtold1/train/62233.png +../../data/yoloGtold1/train/62234.png +../../data/yoloGtold1/train/62235.png +../../data/yoloGtold1/train/62236.png +../../data/yoloGtold1/train/62237.png +../../data/yoloGtold1/train/62238.png +../../data/yoloGtold1/train/62239.png +../../data/yoloGtold1/train/62240.png +../../data/yoloGtold1/train/62241.png +../../data/yoloGtold1/train/62242.png +../../data/yoloGtold1/train/62243.png +../../data/yoloGtold1/train/62244.png +../../data/yoloGtold1/train/62245.png +../../data/yoloGtold1/train/62246.png +../../data/yoloGtold1/train/62247.png +../../data/yoloGtold1/train/62248.png +../../data/yoloGtold1/train/62249.png +../../data/yoloGtold1/train/62250.png +../../data/yoloGtold1/train/62251.png +../../data/yoloGtold1/train/62252.png +../../data/yoloGtold1/train/62253.png +../../data/yoloGtold1/train/62254.png +../../data/yoloGtold1/train/62255.png +../../data/yoloGtold1/train/62256.png +../../data/yoloGtold1/train/62257.png +../../data/yoloGtold1/train/62258.png +../../data/yoloGtold1/train/62259.png +../../data/yoloGtold1/train/62260.png +../../data/yoloGtold1/train/62261.png +../../data/yoloGtold1/train/62262.png +../../data/yoloGtold1/train/62263.png +../../data/yoloGtold1/train/62264.png +../../data/yoloGtold1/train/62265.png +../../data/yoloGtold1/train/62266.png +../../data/yoloGtold1/train/62267.png +../../data/yoloGtold1/train/62268.png +../../data/yoloGtold1/train/62269.png +../../data/yoloGtold1/train/62270.png +../../data/yoloGtold1/train/62271.png +../../data/yoloGtold1/train/62272.png +../../data/yoloGtold1/train/62273.png +../../data/yoloGtold1/train/62274.png +../../data/yoloGtold1/train/62275.png +../../data/yoloGtold1/train/62276.png +../../data/yoloGtold1/train/62277.png +../../data/yoloGtold1/train/62278.png +../../data/yoloGtold1/train/62279.png +../../data/yoloGtold1/train/62280.png +../../data/yoloGtold1/train/62281.png +../../data/yoloGtold1/train/62282.png +../../data/yoloGtold1/train/62283.png +../../data/yoloGtold1/train/62284.png +../../data/yoloGtold1/train/62285.png +../../data/yoloGtold1/train/62286.png +../../data/yoloGtold1/train/62287.png +../../data/yoloGtold1/train/62288.png +../../data/yoloGtold1/train/62289.png +../../data/yoloGtold1/train/62290.png +../../data/yoloGtold1/train/62291.png +../../data/yoloGtold1/train/62292.png +../../data/yoloGtold1/train/62293.png +../../data/yoloGtold1/train/62294.png +../../data/yoloGtold1/train/62295.png +../../data/yoloGtold1/train/62296.png +../../data/yoloGtold1/train/62297.png +../../data/yoloGtold1/train/62298.png +../../data/yoloGtold1/train/62299.png +../../data/yoloGtold1/train/62300.png +../../data/yoloGtold1/train/62301.png +../../data/yoloGtold1/train/62302.png +../../data/yoloGtold1/train/62303.png +../../data/yoloGtold1/train/62304.png +../../data/yoloGtold1/train/62305.png +../../data/yoloGtold1/train/62306.png +../../data/yoloGtold1/train/62307.png +../../data/yoloGtold1/train/62308.png +../../data/yoloGtold1/train/62309.png +../../data/yoloGtold1/train/62310.png +../../data/yoloGtold1/train/62311.png +../../data/yoloGtold1/train/62312.png +../../data/yoloGtold1/train/62313.png +../../data/yoloGtold1/train/62314.png +../../data/yoloGtold1/train/62315.png +../../data/yoloGtold1/train/62316.png +../../data/yoloGtold1/train/62317.png +../../data/yoloGtold1/train/62318.png +../../data/yoloGtold1/train/62319.png +../../data/yoloGtold1/train/62320.png +../../data/yoloGtold1/train/62321.png +../../data/yoloGtold1/train/62322.png +../../data/yoloGtold1/train/62323.png +../../data/yoloGtold1/train/62324.png +../../data/yoloGtold1/train/62325.png +../../data/yoloGtold1/train/62326.png +../../data/yoloGtold1/train/62327.png +../../data/yoloGtold1/train/62328.png +../../data/yoloGtold1/train/62329.png +../../data/yoloGtold1/train/62330.png +../../data/yoloGtold1/train/62331.png +../../data/yoloGtold1/train/62332.png +../../data/yoloGtold1/train/62333.png +../../data/yoloGtold1/train/62334.png +../../data/yoloGtold1/train/62335.png +../../data/yoloGtold1/train/62336.png +../../data/yoloGtold1/train/62337.png +../../data/yoloGtold1/train/62338.png +../../data/yoloGtold1/train/62339.png +../../data/yoloGtold1/train/62340.png +../../data/yoloGtold1/train/62341.png +../../data/yoloGtold1/train/62342.png +../../data/yoloGtold1/train/62343.png +../../data/yoloGtold1/train/62344.png +../../data/yoloGtold1/train/62345.png +../../data/yoloGtold1/train/62346.png +../../data/yoloGtold1/train/62347.png +../../data/yoloGtold1/train/62348.png +../../data/yoloGtold1/train/62349.png +../../data/yoloGtold1/train/62350.png +../../data/yoloGtold1/train/62351.png +../../data/yoloGtold1/train/62352.png +../../data/yoloGtold1/train/62353.png +../../data/yoloGtold1/train/62354.png +../../data/yoloGtold1/train/62355.png +../../data/yoloGtold1/train/62356.png +../../data/yoloGtold1/train/62357.png +../../data/yoloGtold1/train/62358.png +../../data/yoloGtold1/train/62359.png +../../data/yoloGtold1/train/62360.png +../../data/yoloGtold1/train/62361.png +../../data/yoloGtold1/train/62362.png +../../data/yoloGtold1/train/62363.png +../../data/yoloGtold1/train/62364.png +../../data/yoloGtold1/train/62365.png +../../data/yoloGtold1/train/62366.png +../../data/yoloGtold1/train/62367.png +../../data/yoloGtold1/train/62368.png +../../data/yoloGtold1/train/62369.png +../../data/yoloGtold1/train/62370.png +../../data/yoloGtold1/train/62371.png +../../data/yoloGtold1/train/62372.png +../../data/yoloGtold1/train/62373.png +../../data/yoloGtold1/train/62374.png +../../data/yoloGtold1/train/62375.png +../../data/yoloGtold1/train/62376.png +../../data/yoloGtold1/train/62377.png +../../data/yoloGtold1/train/62378.png +../../data/yoloGtold1/train/62379.png +../../data/yoloGtold1/train/62380.png +../../data/yoloGtold1/train/62381.png +../../data/yoloGtold1/train/62382.png +../../data/yoloGtold1/train/62383.png +../../data/yoloGtold1/train/62384.png +../../data/yoloGtold1/train/62385.png +../../data/yoloGtold1/train/62386.png +../../data/yoloGtold1/train/62387.png +../../data/yoloGtold1/train/62388.png +../../data/yoloGtold1/train/62389.png +../../data/yoloGtold1/train/62390.png +../../data/yoloGtold1/train/62391.png +../../data/yoloGtold1/train/62392.png +../../data/yoloGtold1/train/62393.png +../../data/yoloGtold1/train/62394.png +../../data/yoloGtold1/train/62395.png +../../data/yoloGtold1/train/62396.png +../../data/yoloGtold1/train/62397.png +../../data/yoloGtold1/train/62398.png +../../data/yoloGtold1/train/62399.png +../../data/yoloGtold1/train/62400.png +../../data/yoloGtold1/train/62401.png +../../data/yoloGtold1/train/62402.png +../../data/yoloGtold1/train/62403.png +../../data/yoloGtold1/train/62404.png +../../data/yoloGtold1/train/62405.png +../../data/yoloGtold1/train/62406.png +../../data/yoloGtold1/train/62407.png +../../data/yoloGtold1/train/62408.png +../../data/yoloGtold1/train/62409.png +../../data/yoloGtold1/train/62410.png +../../data/yoloGtold1/train/62411.png +../../data/yoloGtold1/train/62412.png +../../data/yoloGtold1/train/62413.png +../../data/yoloGtold1/train/62414.png +../../data/yoloGtold1/train/62415.png +../../data/yoloGtold1/train/62416.png +../../data/yoloGtold1/train/62417.png +../../data/yoloGtold1/train/62418.png +../../data/yoloGtold1/train/62419.png +../../data/yoloGtold1/train/62420.png +../../data/yoloGtold1/train/62421.png +../../data/yoloGtold1/train/62422.png +../../data/yoloGtold1/train/62423.png +../../data/yoloGtold1/train/62424.png +../../data/yoloGtold1/train/62425.png +../../data/yoloGtold1/train/62426.png +../../data/yoloGtold1/train/62427.png +../../data/yoloGtold1/train/62428.png +../../data/yoloGtold1/train/62429.png +../../data/yoloGtold1/train/62430.png +../../data/yoloGtold1/train/62431.png +../../data/yoloGtold1/train/62432.png +../../data/yoloGtold1/train/62433.png +../../data/yoloGtold1/train/62434.png +../../data/yoloGtold1/train/62435.png +../../data/yoloGtold1/train/62436.png +../../data/yoloGtold1/train/62437.png +../../data/yoloGtold1/train/62438.png +../../data/yoloGtold1/train/62439.png +../../data/yoloGtold1/train/62440.png +../../data/yoloGtold1/train/62441.png +../../data/yoloGtold1/train/62442.png +../../data/yoloGtold1/train/62443.png +../../data/yoloGtold1/train/62444.png +../../data/yoloGtold1/train/62445.png +../../data/yoloGtold1/train/62446.png +../../data/yoloGtold1/train/62447.png +../../data/yoloGtold1/train/62448.png +../../data/yoloGtold1/train/62449.png +../../data/yoloGtold1/train/62450.png +../../data/yoloGtold1/train/62451.png +../../data/yoloGtold1/train/62452.png +../../data/yoloGtold1/train/62453.png +../../data/yoloGtold1/train/62454.png +../../data/yoloGtold1/train/62455.png +../../data/yoloGtold1/train/62456.png +../../data/yoloGtold1/train/62457.png +../../data/yoloGtold1/train/62458.png +../../data/yoloGtold1/train/62459.png +../../data/yoloGtold1/train/62460.png +../../data/yoloGtold1/train/62461.png +../../data/yoloGtold1/train/62462.png +../../data/yoloGtold1/train/62463.png +../../data/yoloGtold1/train/62464.png +../../data/yoloGtold1/train/62465.png +../../data/yoloGtold1/train/62466.png +../../data/yoloGtold1/train/62467.png +../../data/yoloGtold1/train/62468.png +../../data/yoloGtold1/train/62469.png +../../data/yoloGtold1/train/62470.png +../../data/yoloGtold1/train/62471.png +../../data/yoloGtold1/train/62472.png +../../data/yoloGtold1/train/62473.png +../../data/yoloGtold1/train/62474.png +../../data/yoloGtold1/train/62475.png +../../data/yoloGtold1/train/62476.png +../../data/yoloGtold1/train/62477.png +../../data/yoloGtold1/train/62478.png +../../data/yoloGtold1/train/62479.png +../../data/yoloGtold1/train/62480.png +../../data/yoloGtold1/train/62481.png +../../data/yoloGtold1/train/62482.png +../../data/yoloGtold1/train/62483.png +../../data/yoloGtold1/train/62484.png +../../data/yoloGtold1/train/62485.png +../../data/yoloGtold1/train/62486.png +../../data/yoloGtold1/train/62487.png +../../data/yoloGtold1/train/62488.png +../../data/yoloGtold1/train/62489.png +../../data/yoloGtold1/train/62490.png +../../data/yoloGtold1/train/62491.png +../../data/yoloGtold1/train/62492.png +../../data/yoloGtold1/train/62493.png +../../data/yoloGtold1/train/62494.png +../../data/yoloGtold1/train/62495.png +../../data/yoloGtold1/train/62496.png +../../data/yoloGtold1/train/62497.png +../../data/yoloGtold1/train/62498.png +../../data/yoloGtold1/train/62499.png +../../data/yoloGtold1/train/62500.png +../../data/yoloGtold1/train/62501.png +../../data/yoloGtold1/train/62502.png +../../data/yoloGtold1/train/62503.png +../../data/yoloGtold1/train/62504.png +../../data/yoloGtold1/train/62505.png +../../data/yoloGtold1/train/62506.png +../../data/yoloGtold1/train/62507.png +../../data/yoloGtold1/train/62508.png +../../data/yoloGtold1/train/62509.png +../../data/yoloGtold1/train/62510.png +../../data/yoloGtold1/train/62511.png +../../data/yoloGtold1/train/62512.png +../../data/yoloGtold1/train/62513.png +../../data/yoloGtold1/train/62514.png +../../data/yoloGtold1/train/62515.png +../../data/yoloGtold1/train/62516.png +../../data/yoloGtold1/train/62517.png +../../data/yoloGtold1/train/62518.png +../../data/yoloGtold1/train/62519.png +../../data/yoloGtold1/train/62520.png +../../data/yoloGtold1/train/62521.png +../../data/yoloGtold1/train/62522.png +../../data/yoloGtold1/train/62523.png +../../data/yoloGtold1/train/62524.png +../../data/yoloGtold1/train/62525.png +../../data/yoloGtold1/train/62526.png +../../data/yoloGtold1/train/62527.png +../../data/yoloGtold1/train/62528.png +../../data/yoloGtold1/train/62529.png +../../data/yoloGtold1/train/62530.png +../../data/yoloGtold1/train/62531.png +../../data/yoloGtold1/train/62532.png +../../data/yoloGtold1/train/62533.png +../../data/yoloGtold1/train/62534.png +../../data/yoloGtold1/train/62535.png +../../data/yoloGtold1/train/62536.png +../../data/yoloGtold1/train/62537.png +../../data/yoloGtold1/train/62538.png +../../data/yoloGtold1/train/62539.png +../../data/yoloGtold1/train/62540.png +../../data/yoloGtold1/train/62541.png +../../data/yoloGtold1/train/62542.png +../../data/yoloGtold1/train/62543.png +../../data/yoloGtold1/train/62544.png +../../data/yoloGtold1/train/62545.png +../../data/yoloGtold1/train/62546.png +../../data/yoloGtold1/train/62547.png +../../data/yoloGtold1/train/62548.png +../../data/yoloGtold1/train/62549.png +../../data/yoloGtold1/train/62550.png +../../data/yoloGtold1/train/62551.png +../../data/yoloGtold1/train/62552.png +../../data/yoloGtold1/train/62553.png +../../data/yoloGtold1/train/62554.png +../../data/yoloGtold1/train/62555.png +../../data/yoloGtold1/train/62556.png +../../data/yoloGtold1/train/62557.png +../../data/yoloGtold1/train/62558.png +../../data/yoloGtold1/train/62559.png +../../data/yoloGtold1/train/62560.png +../../data/yoloGtold1/train/62561.png +../../data/yoloGtold1/train/62562.png +../../data/yoloGtold1/train/62563.png +../../data/yoloGtold1/train/62564.png +../../data/yoloGtold1/train/62565.png +../../data/yoloGtold1/train/62566.png +../../data/yoloGtold1/train/62567.png +../../data/yoloGtold1/train/62568.png +../../data/yoloGtold1/train/62569.png +../../data/yoloGtold1/train/62570.png +../../data/yoloGtold1/train/62571.png +../../data/yoloGtold1/train/62572.png +../../data/yoloGtold1/train/62573.png +../../data/yoloGtold1/train/62574.png +../../data/yoloGtold1/train/62575.png +../../data/yoloGtold1/train/62576.png +../../data/yoloGtold1/train/62577.png +../../data/yoloGtold1/train/62578.png +../../data/yoloGtold1/train/62579.png +../../data/yoloGtold1/train/62580.png +../../data/yoloGtold1/train/62581.png +../../data/yoloGtold1/train/62582.png +../../data/yoloGtold1/train/62583.png +../../data/yoloGtold1/train/62584.png +../../data/yoloGtold1/train/62585.png +../../data/yoloGtold1/train/62586.png +../../data/yoloGtold1/train/62587.png +../../data/yoloGtold1/train/62588.png +../../data/yoloGtold1/train/62589.png +../../data/yoloGtold1/train/62590.png +../../data/yoloGtold1/train/62591.png +../../data/yoloGtold1/train/62592.png +../../data/yoloGtold1/train/62593.png +../../data/yoloGtold1/train/62594.png +../../data/yoloGtold1/train/62595.png +../../data/yoloGtold1/train/62596.png +../../data/yoloGtold1/train/62597.png +../../data/yoloGtold1/train/62598.png +../../data/yoloGtold1/train/62599.png +../../data/yoloGtold1/train/62600.png +../../data/yoloGtold1/train/62601.png +../../data/yoloGtold1/train/62602.png +../../data/yoloGtold1/train/62603.png +../../data/yoloGtold1/train/62604.png +../../data/yoloGtold1/train/62605.png +../../data/yoloGtold1/train/62606.png +../../data/yoloGtold1/train/62607.png +../../data/yoloGtold1/train/62608.png +../../data/yoloGtold1/train/62609.png +../../data/yoloGtold1/train/62610.png +../../data/yoloGtold1/train/62611.png +../../data/yoloGtold1/train/62612.png +../../data/yoloGtold1/train/62613.png +../../data/yoloGtold1/train/62614.png +../../data/yoloGtold1/train/62615.png +../../data/yoloGtold1/train/62616.png +../../data/yoloGtold1/train/62617.png +../../data/yoloGtold1/train/62618.png +../../data/yoloGtold1/train/62619.png +../../data/yoloGtold1/train/62620.png +../../data/yoloGtold1/train/62621.png +../../data/yoloGtold1/train/62622.png +../../data/yoloGtold1/train/62623.png +../../data/yoloGtold1/train/62624.png +../../data/yoloGtold1/train/62625.png +../../data/yoloGtold1/train/62626.png +../../data/yoloGtold1/train/62627.png +../../data/yoloGtold1/train/62628.png +../../data/yoloGtold1/train/62629.png +../../data/yoloGtold1/train/62630.png +../../data/yoloGtold1/train/62631.png +../../data/yoloGtold1/train/62632.png +../../data/yoloGtold1/train/62633.png +../../data/yoloGtold1/train/62634.png +../../data/yoloGtold1/train/62635.png +../../data/yoloGtold1/train/62636.png +../../data/yoloGtold1/train/62637.png +../../data/yoloGtold1/train/62638.png +../../data/yoloGtold1/train/62639.png +../../data/yoloGtold1/train/62640.png +../../data/yoloGtold1/train/62641.png +../../data/yoloGtold1/train/62642.png +../../data/yoloGtold1/train/62643.png +../../data/yoloGtold1/train/62644.png +../../data/yoloGtold1/train/62645.png +../../data/yoloGtold1/train/62646.png +../../data/yoloGtold1/train/62647.png +../../data/yoloGtold1/train/62648.png +../../data/yoloGtold1/train/62649.png +../../data/yoloGtold1/train/62650.png +../../data/yoloGtold1/train/62651.png +../../data/yoloGtold1/train/62652.png +../../data/yoloGtold1/train/62653.png +../../data/yoloGtold1/train/62654.png +../../data/yoloGtold1/train/62655.png +../../data/yoloGtold1/train/62656.png +../../data/yoloGtold1/train/62657.png +../../data/yoloGtold1/train/62658.png +../../data/yoloGtold1/train/62659.png +../../data/yoloGtold1/train/62660.png +../../data/yoloGtold1/train/62661.png +../../data/yoloGtold1/train/62662.png +../../data/yoloGtold1/train/62663.png +../../data/yoloGtold1/train/62664.png +../../data/yoloGtold1/train/62665.png +../../data/yoloGtold1/train/62666.png +../../data/yoloGtold1/train/62667.png +../../data/yoloGtold1/train/62668.png +../../data/yoloGtold1/train/62669.png +../../data/yoloGtold1/train/62670.png +../../data/yoloGtold1/train/62671.png +../../data/yoloGtold1/train/62672.png +../../data/yoloGtold1/train/62673.png +../../data/yoloGtold1/train/62674.png +../../data/yoloGtold1/train/62675.png +../../data/yoloGtold1/train/62676.png +../../data/yoloGtold1/train/62677.png +../../data/yoloGtold1/train/62678.png +../../data/yoloGtold1/train/62679.png +../../data/yoloGtold1/train/62680.png +../../data/yoloGtold1/train/62681.png +../../data/yoloGtold1/train/62682.png +../../data/yoloGtold1/train/62683.png +../../data/yoloGtold1/train/62684.png +../../data/yoloGtold1/train/62685.png +../../data/yoloGtold1/train/62686.png +../../data/yoloGtold1/train/62687.png +../../data/yoloGtold1/train/62688.png +../../data/yoloGtold1/train/62689.png +../../data/yoloGtold1/train/62690.png +../../data/yoloGtold1/train/62691.png +../../data/yoloGtold1/train/62692.png +../../data/yoloGtold1/train/62693.png +../../data/yoloGtold1/train/62694.png +../../data/yoloGtold1/train/62695.png +../../data/yoloGtold1/train/62696.png +../../data/yoloGtold1/train/62697.png +../../data/yoloGtold1/train/62698.png +../../data/yoloGtold1/train/62699.png +../../data/yoloGtold1/train/62700.png +../../data/yoloGtold1/train/62701.png +../../data/yoloGtold1/train/62702.png +../../data/yoloGtold1/train/62703.png +../../data/yoloGtold1/train/62704.png +../../data/yoloGtold1/train/62705.png +../../data/yoloGtold1/train/62706.png +../../data/yoloGtold1/train/62707.png +../../data/yoloGtold1/train/62708.png +../../data/yoloGtold1/train/62709.png +../../data/yoloGtold1/train/62710.png +../../data/yoloGtold1/train/62711.png +../../data/yoloGtold1/train/62712.png +../../data/yoloGtold1/train/62713.png +../../data/yoloGtold1/train/62714.png +../../data/yoloGtold1/train/62715.png +../../data/yoloGtold1/train/62716.png +../../data/yoloGtold1/train/62717.png +../../data/yoloGtold1/train/62718.png +../../data/yoloGtold1/train/62719.png +../../data/yoloGtold1/train/62720.png +../../data/yoloGtold1/train/62721.png +../../data/yoloGtold1/train/62722.png +../../data/yoloGtold1/train/62723.png +../../data/yoloGtold1/train/62724.png +../../data/yoloGtold1/train/62725.png +../../data/yoloGtold1/train/62726.png +../../data/yoloGtold1/train/62727.png +../../data/yoloGtold1/train/62728.png +../../data/yoloGtold1/train/62729.png +../../data/yoloGtold1/train/62730.png +../../data/yoloGtold1/train/62731.png +../../data/yoloGtold1/train/62732.png +../../data/yoloGtold1/train/62733.png +../../data/yoloGtold1/train/62734.png +../../data/yoloGtold1/train/62735.png +../../data/yoloGtold1/train/62736.png +../../data/yoloGtold1/train/62737.png +../../data/yoloGtold1/train/62738.png +../../data/yoloGtold1/train/62739.png +../../data/yoloGtold1/train/62740.png +../../data/yoloGtold1/train/62741.png +../../data/yoloGtold1/train/62742.png +../../data/yoloGtold1/train/62743.png +../../data/yoloGtold1/train/62744.png +../../data/yoloGtold1/train/62745.png +../../data/yoloGtold1/train/62746.png +../../data/yoloGtold1/train/62747.png +../../data/yoloGtold1/train/62748.png +../../data/yoloGtold1/train/62749.png +../../data/yoloGtold1/train/62750.png +../../data/yoloGtold1/train/62751.png +../../data/yoloGtold1/train/62752.png +../../data/yoloGtold1/train/62753.png +../../data/yoloGtold1/train/62754.png +../../data/yoloGtold1/train/62755.png +../../data/yoloGtold1/train/62756.png +../../data/yoloGtold1/train/62757.png +../../data/yoloGtold1/train/62758.png +../../data/yoloGtold1/train/62759.png +../../data/yoloGtold1/train/62760.png +../../data/yoloGtold1/train/62761.png +../../data/yoloGtold1/train/62762.png +../../data/yoloGtold1/train/62763.png +../../data/yoloGtold1/train/62764.png +../../data/yoloGtold1/train/62765.png +../../data/yoloGtold1/train/62766.png +../../data/yoloGtold1/train/62767.png +../../data/yoloGtold1/train/62768.png +../../data/yoloGtold1/train/62769.png +../../data/yoloGtold1/train/62770.png +../../data/yoloGtold1/train/62771.png +../../data/yoloGtold1/train/62772.png +../../data/yoloGtold1/train/62773.png +../../data/yoloGtold1/train/62774.png +../../data/yoloGtold1/train/62775.png +../../data/yoloGtold1/train/62776.png +../../data/yoloGtold1/train/62777.png +../../data/yoloGtold1/train/62778.png +../../data/yoloGtold1/train/62779.png +../../data/yoloGtold1/train/62780.png +../../data/yoloGtold1/train/62781.png +../../data/yoloGtold1/train/62782.png +../../data/yoloGtold1/train/62783.png +../../data/yoloGtold1/train/62784.png +../../data/yoloGtold1/train/62785.png +../../data/yoloGtold1/train/62786.png +../../data/yoloGtold1/train/62787.png +../../data/yoloGtold1/train/62788.png +../../data/yoloGtold1/train/62789.png +../../data/yoloGtold1/train/62790.png +../../data/yoloGtold1/train/62791.png +../../data/yoloGtold1/train/62792.png +../../data/yoloGtold1/train/62793.png +../../data/yoloGtold1/train/62794.png +../../data/yoloGtold1/train/62795.png +../../data/yoloGtold1/train/62796.png +../../data/yoloGtold1/train/62797.png +../../data/yoloGtold1/train/62798.png +../../data/yoloGtold1/train/62799.png +../../data/yoloGtold1/train/62800.png +../../data/yoloGtold1/train/62801.png +../../data/yoloGtold1/train/62802.png +../../data/yoloGtold1/train/62803.png +../../data/yoloGtold1/train/62804.png +../../data/yoloGtold1/train/62805.png +../../data/yoloGtold1/train/62806.png +../../data/yoloGtold1/train/62807.png +../../data/yoloGtold1/train/62808.png +../../data/yoloGtold1/train/62809.png +../../data/yoloGtold1/train/62810.png +../../data/yoloGtold1/train/62811.png +../../data/yoloGtold1/train/62812.png +../../data/yoloGtold1/train/62813.png +../../data/yoloGtold1/train/62814.png +../../data/yoloGtold1/train/62815.png +../../data/yoloGtold1/train/62816.png +../../data/yoloGtold1/train/62817.png +../../data/yoloGtold1/train/62818.png +../../data/yoloGtold1/train/62819.png +../../data/yoloGtold1/train/62820.png +../../data/yoloGtold1/train/62821.png +../../data/yoloGtold1/train/62822.png +../../data/yoloGtold1/train/62823.png +../../data/yoloGtold1/train/62824.png +../../data/yoloGtold1/train/62825.png +../../data/yoloGtold1/train/62826.png +../../data/yoloGtold1/train/62827.png +../../data/yoloGtold1/train/62828.png +../../data/yoloGtold1/train/62829.png +../../data/yoloGtold1/train/62830.png +../../data/yoloGtold1/train/62831.png +../../data/yoloGtold1/train/62832.png +../../data/yoloGtold1/train/62833.png +../../data/yoloGtold1/train/62834.png +../../data/yoloGtold1/train/62835.png +../../data/yoloGtold1/train/62836.png +../../data/yoloGtold1/train/62837.png +../../data/yoloGtold1/train/62838.png +../../data/yoloGtold1/train/62839.png +../../data/yoloGtold1/train/62840.png +../../data/yoloGtold1/train/62841.png +../../data/yoloGtold1/train/62842.png +../../data/yoloGtold1/train/62843.png +../../data/yoloGtold1/train/62844.png +../../data/yoloGtold1/train/62845.png +../../data/yoloGtold1/train/62846.png +../../data/yoloGtold1/train/62847.png +../../data/yoloGtold1/train/62848.png +../../data/yoloGtold1/train/62849.png +../../data/yoloGtold1/train/62850.png +../../data/yoloGtold1/train/62851.png +../../data/yoloGtold1/train/62852.png +../../data/yoloGtold1/train/62853.png +../../data/yoloGtold1/train/62854.png +../../data/yoloGtold1/train/62855.png +../../data/yoloGtold1/train/62856.png +../../data/yoloGtold1/train/62857.png +../../data/yoloGtold1/train/62858.png +../../data/yoloGtold1/train/62859.png +../../data/yoloGtold1/train/62860.png +../../data/yoloGtold1/train/62861.png +../../data/yoloGtold1/train/62862.png +../../data/yoloGtold1/train/62863.png +../../data/yoloGtold1/train/62864.png +../../data/yoloGtold1/train/62865.png +../../data/yoloGtold1/train/62866.png +../../data/yoloGtold1/train/62867.png +../../data/yoloGtold1/train/62868.png +../../data/yoloGtold1/train/62869.png +../../data/yoloGtold1/train/62870.png +../../data/yoloGtold1/train/62871.png +../../data/yoloGtold1/train/62872.png +../../data/yoloGtold1/train/62873.png +../../data/yoloGtold1/train/62874.png +../../data/yoloGtold1/train/62875.png +../../data/yoloGtold1/train/62876.png +../../data/yoloGtold1/train/62877.png +../../data/yoloGtold1/train/62878.png +../../data/yoloGtold1/train/62879.png +../../data/yoloGtold1/train/62880.png +../../data/yoloGtold1/train/62881.png +../../data/yoloGtold1/train/62882.png +../../data/yoloGtold1/train/62883.png +../../data/yoloGtold1/train/62884.png +../../data/yoloGtold1/train/62885.png +../../data/yoloGtold1/train/62886.png +../../data/yoloGtold1/train/62887.png +../../data/yoloGtold1/train/62888.png +../../data/yoloGtold1/train/62889.png +../../data/yoloGtold1/train/62890.png +../../data/yoloGtold1/train/62891.png +../../data/yoloGtold1/train/62892.png +../../data/yoloGtold1/train/62893.png +../../data/yoloGtold1/train/62894.png +../../data/yoloGtold1/train/62895.png +../../data/yoloGtold1/train/62896.png +../../data/yoloGtold1/train/62897.png +../../data/yoloGtold1/train/62898.png +../../data/yoloGtold1/train/62899.png +../../data/yoloGtold1/train/62900.png +../../data/yoloGtold1/train/62901.png +../../data/yoloGtold1/train/62902.png +../../data/yoloGtold1/train/62903.png +../../data/yoloGtold1/train/62904.png +../../data/yoloGtold1/train/62905.png +../../data/yoloGtold1/train/62906.png +../../data/yoloGtold1/train/62907.png +../../data/yoloGtold1/train/62908.png +../../data/yoloGtold1/train/62909.png +../../data/yoloGtold1/train/62910.png +../../data/yoloGtold1/train/62911.png +../../data/yoloGtold1/train/62912.png +../../data/yoloGtold1/train/62913.png +../../data/yoloGtold1/train/62914.png +../../data/yoloGtold1/train/62915.png +../../data/yoloGtold1/train/62916.png +../../data/yoloGtold1/train/62917.png +../../data/yoloGtold1/train/62918.png +../../data/yoloGtold1/train/62919.png +../../data/yoloGtold1/train/62920.png +../../data/yoloGtold1/train/62921.png +../../data/yoloGtold1/train/62922.png +../../data/yoloGtold1/train/62923.png +../../data/yoloGtold1/train/62924.png +../../data/yoloGtold1/train/62925.png +../../data/yoloGtold1/train/62926.png +../../data/yoloGtold1/train/62927.png +../../data/yoloGtold1/train/62928.png +../../data/yoloGtold1/train/62929.png +../../data/yoloGtold1/train/62930.png +../../data/yoloGtold1/train/62931.png +../../data/yoloGtold1/train/62932.png +../../data/yoloGtold1/train/62933.png +../../data/yoloGtold1/train/62934.png +../../data/yoloGtold1/train/62935.png +../../data/yoloGtold1/train/62936.png +../../data/yoloGtold1/train/62937.png +../../data/yoloGtold1/train/62938.png +../../data/yoloGtold1/train/62939.png +../../data/yoloGtold1/train/62940.png +../../data/yoloGtold1/train/62941.png +../../data/yoloGtold1/train/62942.png +../../data/yoloGtold1/train/62943.png +../../data/yoloGtold1/train/62944.png +../../data/yoloGtold1/train/62945.png +../../data/yoloGtold1/train/62946.png +../../data/yoloGtold1/train/62947.png +../../data/yoloGtold1/train/62948.png +../../data/yoloGtold1/train/62949.png +../../data/yoloGtold1/train/62950.png +../../data/yoloGtold1/train/62951.png +../../data/yoloGtold1/train/62952.png +../../data/yoloGtold1/train/62953.png +../../data/yoloGtold1/train/62954.png +../../data/yoloGtold1/train/62955.png +../../data/yoloGtold1/train/62956.png +../../data/yoloGtold1/train/62957.png +../../data/yoloGtold1/train/62958.png +../../data/yoloGtold1/train/62959.png +../../data/yoloGtold1/train/62960.png +../../data/yoloGtold1/train/62961.png +../../data/yoloGtold1/train/62962.png +../../data/yoloGtold1/train/62963.png +../../data/yoloGtold1/train/62964.png +../../data/yoloGtold1/train/62965.png +../../data/yoloGtold1/train/62966.png +../../data/yoloGtold1/train/62967.png +../../data/yoloGtold1/train/62968.png +../../data/yoloGtold1/train/62969.png +../../data/yoloGtold1/train/62970.png +../../data/yoloGtold1/train/62971.png +../../data/yoloGtold1/train/62972.png +../../data/yoloGtold1/train/62973.png +../../data/yoloGtold1/train/62974.png +../../data/yoloGtold1/train/62975.png +../../data/yoloGtold1/train/62976.png +../../data/yoloGtold1/train/62977.png +../../data/yoloGtold1/train/62978.png +../../data/yoloGtold1/train/62979.png +../../data/yoloGtold1/train/62980.png +../../data/yoloGtold1/train/62981.png +../../data/yoloGtold1/train/62982.png +../../data/yoloGtold1/train/62983.png +../../data/yoloGtold1/train/62984.png +../../data/yoloGtold1/train/62985.png +../../data/yoloGtold1/train/62986.png +../../data/yoloGtold1/train/62987.png +../../data/yoloGtold1/train/62988.png +../../data/yoloGtold1/train/62989.png +../../data/yoloGtold1/train/62990.png +../../data/yoloGtold1/train/62991.png +../../data/yoloGtold1/train/62992.png +../../data/yoloGtold1/train/62993.png +../../data/yoloGtold1/train/62994.png +../../data/yoloGtold1/train/62995.png +../../data/yoloGtold1/train/62996.png +../../data/yoloGtold1/train/62997.png +../../data/yoloGtold1/train/62998.png +../../data/yoloGtold1/train/62999.png +../../data/yoloGtold1/train/63000.png +../../data/yoloGtold1/train/63001.png +../../data/yoloGtold1/train/63002.png +../../data/yoloGtold1/train/63003.png +../../data/yoloGtold1/train/63004.png +../../data/yoloGtold1/train/63005.png +../../data/yoloGtold1/train/63006.png +../../data/yoloGtold1/train/63007.png +../../data/yoloGtold1/train/63008.png +../../data/yoloGtold1/train/63009.png +../../data/yoloGtold1/train/63010.png +../../data/yoloGtold1/train/63011.png +../../data/yoloGtold1/train/63012.png +../../data/yoloGtold1/train/63013.png +../../data/yoloGtold1/train/63014.png +../../data/yoloGtold1/train/63015.png +../../data/yoloGtold1/train/63016.png +../../data/yoloGtold1/train/63017.png +../../data/yoloGtold1/train/63018.png +../../data/yoloGtold1/train/63019.png +../../data/yoloGtold1/train/63020.png +../../data/yoloGtold1/train/63021.png +../../data/yoloGtold1/train/63022.png +../../data/yoloGtold1/train/63023.png +../../data/yoloGtold1/train/63024.png +../../data/yoloGtold1/train/63025.png +../../data/yoloGtold1/train/63026.png +../../data/yoloGtold1/train/63027.png +../../data/yoloGtold1/train/63028.png +../../data/yoloGtold1/train/63029.png +../../data/yoloGtold1/train/63030.png +../../data/yoloGtold1/train/63031.png +../../data/yoloGtold1/train/63032.png +../../data/yoloGtold1/train/63033.png +../../data/yoloGtold1/train/63034.png +../../data/yoloGtold1/train/63035.png +../../data/yoloGtold1/train/63036.png +../../data/yoloGtold1/train/63037.png +../../data/yoloGtold1/train/63038.png +../../data/yoloGtold1/train/63039.png +../../data/yoloGtold1/train/63040.png +../../data/yoloGtold1/train/63041.png +../../data/yoloGtold1/train/63042.png +../../data/yoloGtold1/train/63043.png +../../data/yoloGtold1/train/63044.png +../../data/yoloGtold1/train/63045.png +../../data/yoloGtold1/train/63046.png +../../data/yoloGtold1/train/63047.png +../../data/yoloGtold1/train/63048.png +../../data/yoloGtold1/train/63049.png +../../data/yoloGtold1/train/63050.png +../../data/yoloGtold1/train/63051.png +../../data/yoloGtold1/train/63052.png +../../data/yoloGtold1/train/63053.png +../../data/yoloGtold1/train/63054.png +../../data/yoloGtold1/train/63055.png +../../data/yoloGtold1/train/63056.png +../../data/yoloGtold1/train/63057.png +../../data/yoloGtold1/train/63058.png +../../data/yoloGtold1/train/63059.png +../../data/yoloGtold1/train/63060.png +../../data/yoloGtold1/train/63061.png +../../data/yoloGtold1/train/63062.png +../../data/yoloGtold1/train/63063.png +../../data/yoloGtold1/train/63064.png +../../data/yoloGtold1/train/63065.png +../../data/yoloGtold1/train/63066.png +../../data/yoloGtold1/train/63067.png +../../data/yoloGtold1/train/63068.png +../../data/yoloGtold1/train/63069.png +../../data/yoloGtold1/train/63070.png +../../data/yoloGtold1/train/63071.png +../../data/yoloGtold1/train/63072.png +../../data/yoloGtold1/train/63073.png +../../data/yoloGtold1/train/63074.png +../../data/yoloGtold1/train/63075.png +../../data/yoloGtold1/train/63076.png +../../data/yoloGtold1/train/63077.png +../../data/yoloGtold1/train/63078.png +../../data/yoloGtold1/train/63079.png +../../data/yoloGtold1/train/63080.png +../../data/yoloGtold1/train/63081.png +../../data/yoloGtold1/train/63082.png +../../data/yoloGtold1/train/63083.png +../../data/yoloGtold1/train/63084.png +../../data/yoloGtold1/train/63085.png +../../data/yoloGtold1/train/63086.png +../../data/yoloGtold1/train/63087.png +../../data/yoloGtold1/train/63088.png +../../data/yoloGtold1/train/63089.png +../../data/yoloGtold1/train/63090.png +../../data/yoloGtold1/train/63091.png +../../data/yoloGtold1/train/63092.png +../../data/yoloGtold1/train/63093.png +../../data/yoloGtold1/train/63094.png +../../data/yoloGtold1/train/63095.png +../../data/yoloGtold1/train/63096.png +../../data/yoloGtold1/train/63097.png +../../data/yoloGtold1/train/63098.png +../../data/yoloGtold1/train/63099.png +../../data/yoloGtold1/train/63100.png +../../data/yoloGtold1/train/63101.png +../../data/yoloGtold1/train/63102.png +../../data/yoloGtold1/train/63103.png +../../data/yoloGtold1/train/63104.png +../../data/yoloGtold1/train/63105.png +../../data/yoloGtold1/train/63106.png +../../data/yoloGtold1/train/63107.png +../../data/yoloGtold1/train/63108.png +../../data/yoloGtold1/train/63109.png +../../data/yoloGtold1/train/63110.png +../../data/yoloGtold1/train/63111.png +../../data/yoloGtold1/train/63112.png +../../data/yoloGtold1/train/63113.png +../../data/yoloGtold1/train/63114.png +../../data/yoloGtold1/train/63115.png +../../data/yoloGtold1/train/63116.png +../../data/yoloGtold1/train/63117.png +../../data/yoloGtold1/train/63118.png +../../data/yoloGtold1/train/63119.png +../../data/yoloGtold1/train/63120.png +../../data/yoloGtold1/train/63121.png +../../data/yoloGtold1/train/63122.png +../../data/yoloGtold1/train/63123.png +../../data/yoloGtold1/train/63124.png +../../data/yoloGtold1/train/63125.png +../../data/yoloGtold1/train/63126.png +../../data/yoloGtold1/train/63127.png +../../data/yoloGtold1/train/63128.png +../../data/yoloGtold1/train/63129.png +../../data/yoloGtold1/train/63130.png +../../data/yoloGtold1/train/63131.png +../../data/yoloGtold1/train/63132.png +../../data/yoloGtold1/train/63133.png +../../data/yoloGtold1/train/63134.png +../../data/yoloGtold1/train/63135.png +../../data/yoloGtold1/train/63136.png +../../data/yoloGtold1/train/63137.png +../../data/yoloGtold1/train/63138.png +../../data/yoloGtold1/train/63139.png +../../data/yoloGtold1/train/63140.png +../../data/yoloGtold1/train/63141.png +../../data/yoloGtold1/train/63142.png +../../data/yoloGtold1/train/63143.png +../../data/yoloGtold1/train/63144.png +../../data/yoloGtold1/train/63145.png +../../data/yoloGtold1/train/63146.png +../../data/yoloGtold1/train/63147.png +../../data/yoloGtold1/train/63148.png +../../data/yoloGtold1/train/63149.png +../../data/yoloGtold1/train/63150.png +../../data/yoloGtold1/train/63151.png +../../data/yoloGtold1/train/63152.png +../../data/yoloGtold1/train/63153.png +../../data/yoloGtold1/train/63154.png +../../data/yoloGtold1/train/63155.png +../../data/yoloGtold1/train/63156.png +../../data/yoloGtold1/train/63157.png +../../data/yoloGtold1/train/63158.png +../../data/yoloGtold1/train/63159.png +../../data/yoloGtold1/train/63160.png +../../data/yoloGtold1/train/63161.png +../../data/yoloGtold1/train/63162.png +../../data/yoloGtold1/train/63163.png +../../data/yoloGtold1/train/63164.png +../../data/yoloGtold1/train/63165.png +../../data/yoloGtold1/train/63166.png +../../data/yoloGtold1/train/63167.png +../../data/yoloGtold1/train/63168.png +../../data/yoloGtold1/train/63169.png +../../data/yoloGtold1/train/63170.png +../../data/yoloGtold1/train/63171.png +../../data/yoloGtold1/train/63172.png +../../data/yoloGtold1/train/63173.png +../../data/yoloGtold1/train/63174.png +../../data/yoloGtold1/train/63175.png +../../data/yoloGtold1/train/63176.png +../../data/yoloGtold1/train/63177.png +../../data/yoloGtold1/train/63178.png +../../data/yoloGtold1/train/63179.png +../../data/yoloGtold1/train/63180.png +../../data/yoloGtold1/train/63181.png +../../data/yoloGtold1/train/63182.png +../../data/yoloGtold1/train/63183.png +../../data/yoloGtold1/train/63184.png +../../data/yoloGtold1/train/63185.png +../../data/yoloGtold1/train/63186.png +../../data/yoloGtold1/train/63187.png +../../data/yoloGtold1/train/63188.png +../../data/yoloGtold1/train/63189.png +../../data/yoloGtold1/train/63190.png +../../data/yoloGtold1/train/63191.png +../../data/yoloGtold1/train/63192.png +../../data/yoloGtold1/train/63193.png +../../data/yoloGtold1/train/63194.png +../../data/yoloGtold1/train/63195.png +../../data/yoloGtold1/train/63196.png +../../data/yoloGtold1/train/63197.png +../../data/yoloGtold1/train/63198.png +../../data/yoloGtold1/train/63199.png +../../data/yoloGtold1/train/63200.png +../../data/yoloGtold1/train/63201.png +../../data/yoloGtold1/train/63202.png +../../data/yoloGtold1/train/63203.png +../../data/yoloGtold1/train/63204.png +../../data/yoloGtold1/train/63205.png +../../data/yoloGtold1/train/63206.png +../../data/yoloGtold1/train/63207.png +../../data/yoloGtold1/train/63208.png +../../data/yoloGtold1/train/63209.png +../../data/yoloGtold1/train/63210.png +../../data/yoloGtold1/train/63211.png +../../data/yoloGtold1/train/63212.png +../../data/yoloGtold1/train/63213.png +../../data/yoloGtold1/train/63214.png +../../data/yoloGtold1/train/63215.png +../../data/yoloGtold1/train/63216.png +../../data/yoloGtold1/train/63217.png +../../data/yoloGtold1/train/63218.png +../../data/yoloGtold1/train/63219.png +../../data/yoloGtold1/train/63220.png +../../data/yoloGtold1/train/63221.png +../../data/yoloGtold1/train/63222.png +../../data/yoloGtold1/train/63223.png +../../data/yoloGtold1/train/63224.png +../../data/yoloGtold1/train/63225.png +../../data/yoloGtold1/train/63226.png +../../data/yoloGtold1/train/63227.png +../../data/yoloGtold1/train/63228.png +../../data/yoloGtold1/train/63229.png +../../data/yoloGtold1/train/63230.png +../../data/yoloGtold1/train/63231.png +../../data/yoloGtold1/train/63232.png +../../data/yoloGtold1/train/63233.png +../../data/yoloGtold1/train/63234.png +../../data/yoloGtold1/train/63235.png +../../data/yoloGtold1/train/63236.png +../../data/yoloGtold1/train/63237.png +../../data/yoloGtold1/train/63238.png +../../data/yoloGtold1/train/63239.png +../../data/yoloGtold1/train/63240.png +../../data/yoloGtold1/train/63241.png +../../data/yoloGtold1/train/63242.png +../../data/yoloGtold1/train/63243.png +../../data/yoloGtold1/train/63244.png +../../data/yoloGtold1/train/63245.png +../../data/yoloGtold1/train/63246.png +../../data/yoloGtold1/train/63247.png +../../data/yoloGtold1/train/63248.png +../../data/yoloGtold1/train/63249.png +../../data/yoloGtold1/train/63250.png +../../data/yoloGtold1/train/63251.png +../../data/yoloGtold1/train/63252.png +../../data/yoloGtold1/train/63253.png +../../data/yoloGtold1/train/63254.png +../../data/yoloGtold1/train/63255.png +../../data/yoloGtold1/train/63256.png +../../data/yoloGtold1/train/63257.png +../../data/yoloGtold1/train/63258.png +../../data/yoloGtold1/train/63259.png +../../data/yoloGtold1/train/63260.png +../../data/yoloGtold1/train/63261.png +../../data/yoloGtold1/train/63262.png +../../data/yoloGtold1/train/63263.png +../../data/yoloGtold1/train/63264.png +../../data/yoloGtold1/train/63265.png +../../data/yoloGtold1/train/63266.png +../../data/yoloGtold1/train/63267.png +../../data/yoloGtold1/train/63268.png +../../data/yoloGtold1/train/63269.png +../../data/yoloGtold1/train/63270.png +../../data/yoloGtold1/train/63271.png +../../data/yoloGtold1/train/63272.png +../../data/yoloGtold1/train/63273.png +../../data/yoloGtold1/train/63274.png +../../data/yoloGtold1/train/63275.png +../../data/yoloGtold1/train/63276.png +../../data/yoloGtold1/train/63277.png +../../data/yoloGtold1/train/63278.png +../../data/yoloGtold1/train/63279.png +../../data/yoloGtold1/train/63280.png +../../data/yoloGtold1/train/63281.png +../../data/yoloGtold1/train/63282.png +../../data/yoloGtold1/train/63283.png +../../data/yoloGtold1/train/63284.png +../../data/yoloGtold1/train/63285.png +../../data/yoloGtold1/train/63286.png +../../data/yoloGtold1/train/63287.png +../../data/yoloGtold1/train/63288.png +../../data/yoloGtold1/train/63289.png +../../data/yoloGtold1/train/63290.png +../../data/yoloGtold1/train/63291.png +../../data/yoloGtold1/train/63292.png +../../data/yoloGtold1/train/63293.png +../../data/yoloGtold1/train/63294.png +../../data/yoloGtold1/train/63295.png +../../data/yoloGtold1/train/63296.png +../../data/yoloGtold1/train/63297.png +../../data/yoloGtold1/train/63298.png +../../data/yoloGtold1/train/63299.png +../../data/yoloGtold1/train/63300.png +../../data/yoloGtold1/train/63301.png +../../data/yoloGtold1/train/63302.png +../../data/yoloGtold1/train/63303.png +../../data/yoloGtold1/train/63304.png +../../data/yoloGtold1/train/63305.png +../../data/yoloGtold1/train/63306.png +../../data/yoloGtold1/train/63307.png +../../data/yoloGtold1/train/63308.png +../../data/yoloGtold1/train/63309.png +../../data/yoloGtold1/train/63310.png +../../data/yoloGtold1/train/63311.png +../../data/yoloGtold1/train/63312.png +../../data/yoloGtold1/train/63313.png +../../data/yoloGtold1/train/63314.png +../../data/yoloGtold1/train/63315.png +../../data/yoloGtold1/train/63316.png +../../data/yoloGtold1/train/63317.png +../../data/yoloGtold1/train/63318.png +../../data/yoloGtold1/train/63319.png +../../data/yoloGtold1/train/63320.png +../../data/yoloGtold1/train/63321.png +../../data/yoloGtold1/train/63322.png +../../data/yoloGtold1/train/63323.png +../../data/yoloGtold1/train/63324.png +../../data/yoloGtold1/train/63325.png +../../data/yoloGtold1/train/63326.png +../../data/yoloGtold1/train/63327.png +../../data/yoloGtold1/train/63328.png +../../data/yoloGtold1/train/63329.png +../../data/yoloGtold1/train/63330.png +../../data/yoloGtold1/train/63331.png +../../data/yoloGtold1/train/63332.png +../../data/yoloGtold1/train/63333.png +../../data/yoloGtold1/train/63334.png +../../data/yoloGtold1/train/63335.png +../../data/yoloGtold1/train/63336.png +../../data/yoloGtold1/train/63337.png +../../data/yoloGtold1/train/63338.png +../../data/yoloGtold1/train/63339.png +../../data/yoloGtold1/train/63340.png +../../data/yoloGtold1/train/63341.png +../../data/yoloGtold1/train/63342.png +../../data/yoloGtold1/train/63343.png +../../data/yoloGtold1/train/63344.png +../../data/yoloGtold1/train/63345.png +../../data/yoloGtold1/train/63346.png +../../data/yoloGtold1/train/63347.png +../../data/yoloGtold1/train/63348.png +../../data/yoloGtold1/train/63349.png +../../data/yoloGtold1/train/63350.png +../../data/yoloGtold1/train/63351.png +../../data/yoloGtold1/train/63352.png +../../data/yoloGtold1/train/63353.png +../../data/yoloGtold1/train/63354.png +../../data/yoloGtold1/train/63355.png +../../data/yoloGtold1/train/63356.png +../../data/yoloGtold1/train/63357.png +../../data/yoloGtold1/train/63358.png +../../data/yoloGtold1/train/63359.png +../../data/yoloGtold1/train/63360.png +../../data/yoloGtold1/train/63361.png +../../data/yoloGtold1/train/63362.png +../../data/yoloGtold1/train/63363.png +../../data/yoloGtold1/train/63364.png +../../data/yoloGtold1/train/63365.png +../../data/yoloGtold1/train/63366.png +../../data/yoloGtold1/train/63367.png +../../data/yoloGtold1/train/63368.png +../../data/yoloGtold1/train/63369.png +../../data/yoloGtold1/train/63370.png +../../data/yoloGtold1/train/63371.png +../../data/yoloGtold1/train/63372.png +../../data/yoloGtold1/train/63373.png +../../data/yoloGtold1/train/63374.png +../../data/yoloGtold1/train/63375.png +../../data/yoloGtold1/train/63376.png +../../data/yoloGtold1/train/63377.png +../../data/yoloGtold1/train/63378.png +../../data/yoloGtold1/train/63379.png +../../data/yoloGtold1/train/63380.png +../../data/yoloGtold1/train/63381.png +../../data/yoloGtold1/train/63382.png +../../data/yoloGtold1/train/63383.png +../../data/yoloGtold1/train/63384.png +../../data/yoloGtold1/train/63385.png +../../data/yoloGtold1/train/63386.png +../../data/yoloGtold1/train/63387.png +../../data/yoloGtold1/train/63388.png +../../data/yoloGtold1/train/63389.png +../../data/yoloGtold1/train/63390.png +../../data/yoloGtold1/train/63391.png +../../data/yoloGtold1/train/63392.png +../../data/yoloGtold1/train/63393.png +../../data/yoloGtold1/train/63394.png +../../data/yoloGtold1/train/63395.png +../../data/yoloGtold1/train/63396.png +../../data/yoloGtold1/train/63397.png +../../data/yoloGtold1/train/63398.png +../../data/yoloGtold1/train/63399.png +../../data/yoloGtold1/train/63400.png +../../data/yoloGtold1/train/63401.png +../../data/yoloGtold1/train/63402.png +../../data/yoloGtold1/train/63403.png +../../data/yoloGtold1/train/63404.png +../../data/yoloGtold1/train/63405.png +../../data/yoloGtold1/train/63406.png +../../data/yoloGtold1/train/63407.png +../../data/yoloGtold1/train/63408.png +../../data/yoloGtold1/train/63409.png +../../data/yoloGtold1/train/63410.png +../../data/yoloGtold1/train/63411.png +../../data/yoloGtold1/train/63412.png +../../data/yoloGtold1/train/63413.png +../../data/yoloGtold1/train/63414.png +../../data/yoloGtold1/train/63415.png +../../data/yoloGtold1/train/63416.png +../../data/yoloGtold1/train/63417.png +../../data/yoloGtold1/train/63418.png +../../data/yoloGtold1/train/63419.png +../../data/yoloGtold1/train/63420.png +../../data/yoloGtold1/train/63421.png +../../data/yoloGtold1/train/63422.png +../../data/yoloGtold1/train/63423.png +../../data/yoloGtold1/train/63424.png +../../data/yoloGtold1/train/63425.png +../../data/yoloGtold1/train/63426.png +../../data/yoloGtold1/train/63427.png +../../data/yoloGtold1/train/63428.png +../../data/yoloGtold1/train/63429.png +../../data/yoloGtold1/train/63430.png +../../data/yoloGtold1/train/63431.png +../../data/yoloGtold1/train/63432.png +../../data/yoloGtold1/train/63433.png +../../data/yoloGtold1/train/63434.png +../../data/yoloGtold1/train/63435.png +../../data/yoloGtold1/train/63436.png +../../data/yoloGtold1/train/63437.png +../../data/yoloGtold1/train/63438.png +../../data/yoloGtold1/train/63439.png +../../data/yoloGtold1/train/63440.png +../../data/yoloGtold1/train/63441.png +../../data/yoloGtold1/train/63442.png +../../data/yoloGtold1/train/63443.png +../../data/yoloGtold1/train/63444.png +../../data/yoloGtold1/train/63445.png +../../data/yoloGtold1/train/63446.png +../../data/yoloGtold1/train/63447.png +../../data/yoloGtold1/train/63448.png +../../data/yoloGtold1/train/63449.png +../../data/yoloGtold1/train/63450.png +../../data/yoloGtold1/train/63451.png +../../data/yoloGtold1/train/63452.png +../../data/yoloGtold1/train/63453.png +../../data/yoloGtold1/train/63454.png +../../data/yoloGtold1/train/63455.png +../../data/yoloGtold1/train/63456.png +../../data/yoloGtold1/train/63457.png +../../data/yoloGtold1/train/63458.png +../../data/yoloGtold1/train/63459.png +../../data/yoloGtold1/train/63460.png +../../data/yoloGtold1/train/63461.png +../../data/yoloGtold1/train/63462.png +../../data/yoloGtold1/train/63463.png +../../data/yoloGtold1/train/63464.png +../../data/yoloGtold1/train/63465.png +../../data/yoloGtold1/train/63466.png +../../data/yoloGtold1/train/63467.png +../../data/yoloGtold1/train/63468.png +../../data/yoloGtold1/train/63469.png +../../data/yoloGtold1/train/63470.png +../../data/yoloGtold1/train/63471.png +../../data/yoloGtold1/train/63472.png +../../data/yoloGtold1/train/63473.png +../../data/yoloGtold1/train/63474.png +../../data/yoloGtold1/train/63475.png +../../data/yoloGtold1/train/63476.png +../../data/yoloGtold1/train/63477.png +../../data/yoloGtold1/train/63478.png +../../data/yoloGtold1/train/63479.png +../../data/yoloGtold1/train/63480.png +../../data/yoloGtold1/train/63481.png +../../data/yoloGtold1/train/63482.png +../../data/yoloGtold1/train/63483.png +../../data/yoloGtold1/train/63484.png +../../data/yoloGtold1/train/63485.png +../../data/yoloGtold1/train/63486.png +../../data/yoloGtold1/train/63487.png +../../data/yoloGtold1/train/63488.png +../../data/yoloGtold1/train/63489.png +../../data/yoloGtold1/train/63490.png +../../data/yoloGtold1/train/63491.png +../../data/yoloGtold1/train/63492.png +../../data/yoloGtold1/train/63493.png +../../data/yoloGtold1/train/63494.png +../../data/yoloGtold1/train/63495.png +../../data/yoloGtold1/train/63496.png +../../data/yoloGtold1/train/63497.png +../../data/yoloGtold1/train/63498.png +../../data/yoloGtold1/train/63499.png +../../data/yoloGtold1/train/63500.png +../../data/yoloGtold1/train/63501.png +../../data/yoloGtold1/train/63502.png +../../data/yoloGtold1/train/63503.png +../../data/yoloGtold1/train/63504.png +../../data/yoloGtold1/train/63505.png +../../data/yoloGtold1/train/63506.png +../../data/yoloGtold1/train/63507.png +../../data/yoloGtold1/train/63508.png +../../data/yoloGtold1/train/63509.png +../../data/yoloGtold1/train/63510.png +../../data/yoloGtold1/train/63511.png +../../data/yoloGtold1/train/63512.png +../../data/yoloGtold1/train/63513.png +../../data/yoloGtold1/train/63514.png +../../data/yoloGtold1/train/63515.png +../../data/yoloGtold1/train/63516.png +../../data/yoloGtold1/train/63517.png +../../data/yoloGtold1/train/63518.png +../../data/yoloGtold1/train/63519.png +../../data/yoloGtold1/train/63520.png +../../data/yoloGtold1/train/63521.png +../../data/yoloGtold1/train/63522.png +../../data/yoloGtold1/train/63523.png +../../data/yoloGtold1/train/63524.png +../../data/yoloGtold1/train/63525.png +../../data/yoloGtold1/train/63526.png +../../data/yoloGtold1/train/63527.png +../../data/yoloGtold1/train/63528.png +../../data/yoloGtold1/train/63529.png +../../data/yoloGtold1/train/63530.png +../../data/yoloGtold1/train/63531.png +../../data/yoloGtold1/train/63532.png +../../data/yoloGtold1/train/63533.png +../../data/yoloGtold1/train/63534.png +../../data/yoloGtold1/train/63535.png +../../data/yoloGtold1/train/63536.png +../../data/yoloGtold1/train/63537.png +../../data/yoloGtold1/train/63538.png +../../data/yoloGtold1/train/63539.png +../../data/yoloGtold1/train/63540.png +../../data/yoloGtold1/train/63541.png +../../data/yoloGtold1/train/63542.png +../../data/yoloGtold1/train/63543.png +../../data/yoloGtold1/train/63544.png +../../data/yoloGtold1/train/63545.png +../../data/yoloGtold1/train/63546.png +../../data/yoloGtold1/train/63547.png +../../data/yoloGtold1/train/63548.png +../../data/yoloGtold1/train/63549.png +../../data/yoloGtold1/train/63550.png +../../data/yoloGtold1/train/63551.png +../../data/yoloGtold1/train/63552.png +../../data/yoloGtold1/train/63553.png +../../data/yoloGtold1/train/63554.png +../../data/yoloGtold1/train/63555.png +../../data/yoloGtold1/train/63556.png +../../data/yoloGtold1/train/63557.png +../../data/yoloGtold1/train/63558.png +../../data/yoloGtold1/train/63559.png +../../data/yoloGtold1/train/63560.png +../../data/yoloGtold1/train/63561.png +../../data/yoloGtold1/train/63562.png +../../data/yoloGtold1/train/63563.png +../../data/yoloGtold1/train/63564.png +../../data/yoloGtold1/train/63565.png +../../data/yoloGtold1/train/63566.png +../../data/yoloGtold1/train/63567.png +../../data/yoloGtold1/train/63568.png +../../data/yoloGtold1/train/63569.png +../../data/yoloGtold1/train/63570.png +../../data/yoloGtold1/train/63571.png +../../data/yoloGtold1/train/63572.png +../../data/yoloGtold1/train/63573.png +../../data/yoloGtold1/train/63574.png +../../data/yoloGtold1/train/63575.png +../../data/yoloGtold1/train/63576.png +../../data/yoloGtold1/train/63577.png +../../data/yoloGtold1/train/63578.png +../../data/yoloGtold1/train/63579.png +../../data/yoloGtold1/train/63580.png +../../data/yoloGtold1/train/63581.png +../../data/yoloGtold1/train/63582.png +../../data/yoloGtold1/train/63583.png +../../data/yoloGtold1/train/63584.png +../../data/yoloGtold1/train/63585.png +../../data/yoloGtold1/train/63586.png +../../data/yoloGtold1/train/63587.png +../../data/yoloGtold1/train/63588.png +../../data/yoloGtold1/train/63589.png +../../data/yoloGtold1/train/63590.png +../../data/yoloGtold1/train/63591.png +../../data/yoloGtold1/train/63592.png +../../data/yoloGtold1/train/63593.png +../../data/yoloGtold1/train/63594.png +../../data/yoloGtold1/train/63595.png +../../data/yoloGtold1/train/63596.png +../../data/yoloGtold1/train/63597.png +../../data/yoloGtold1/train/63598.png +../../data/yoloGtold1/train/63599.png +../../data/yoloGtold1/train/63600.png +../../data/yoloGtold1/train/63601.png +../../data/yoloGtold1/train/63602.png +../../data/yoloGtold1/train/63603.png +../../data/yoloGtold1/train/63604.png +../../data/yoloGtold1/train/63605.png +../../data/yoloGtold1/train/63606.png +../../data/yoloGtold1/train/63607.png +../../data/yoloGtold1/train/63608.png +../../data/yoloGtold1/train/63609.png +../../data/yoloGtold1/train/63610.png +../../data/yoloGtold1/train/63611.png +../../data/yoloGtold1/train/63612.png +../../data/yoloGtold1/train/63613.png +../../data/yoloGtold1/train/63614.png +../../data/yoloGtold1/train/63615.png +../../data/yoloGtold1/train/63616.png +../../data/yoloGtold1/train/63617.png +../../data/yoloGtold1/train/63618.png +../../data/yoloGtold1/train/63619.png +../../data/yoloGtold1/train/63620.png +../../data/yoloGtold1/train/63621.png +../../data/yoloGtold1/train/63622.png +../../data/yoloGtold1/train/63623.png +../../data/yoloGtold1/train/63624.png +../../data/yoloGtold1/train/63625.png +../../data/yoloGtold1/train/63626.png +../../data/yoloGtold1/train/63627.png +../../data/yoloGtold1/train/63628.png +../../data/yoloGtold1/train/63629.png +../../data/yoloGtold1/train/63630.png +../../data/yoloGtold1/train/63631.png +../../data/yoloGtold1/train/63632.png +../../data/yoloGtold1/train/63633.png +../../data/yoloGtold1/train/63634.png +../../data/yoloGtold1/train/63635.png +../../data/yoloGtold1/train/63636.png +../../data/yoloGtold1/train/63637.png +../../data/yoloGtold1/train/63638.png +../../data/yoloGtold1/train/63639.png +../../data/yoloGtold1/train/63640.png +../../data/yoloGtold1/train/63641.png +../../data/yoloGtold1/train/63642.png +../../data/yoloGtold1/train/63643.png +../../data/yoloGtold1/train/63644.png +../../data/yoloGtold1/train/63645.png +../../data/yoloGtold1/train/63646.png +../../data/yoloGtold1/train/63647.png +../../data/yoloGtold1/train/63648.png +../../data/yoloGtold1/train/63649.png +../../data/yoloGtold1/train/63650.png +../../data/yoloGtold1/train/63651.png +../../data/yoloGtold1/train/63652.png +../../data/yoloGtold1/train/63653.png +../../data/yoloGtold1/train/63654.png +../../data/yoloGtold1/train/63655.png +../../data/yoloGtold1/train/63656.png +../../data/yoloGtold1/train/63657.png +../../data/yoloGtold1/train/63658.png +../../data/yoloGtold1/train/63659.png +../../data/yoloGtold1/train/63660.png +../../data/yoloGtold1/train/63661.png +../../data/yoloGtold1/train/63662.png +../../data/yoloGtold1/train/63663.png +../../data/yoloGtold1/train/63664.png +../../data/yoloGtold1/train/63665.png +../../data/yoloGtold1/train/63666.png +../../data/yoloGtold1/train/63667.png +../../data/yoloGtold1/train/63668.png +../../data/yoloGtold1/train/63669.png +../../data/yoloGtold1/train/63670.png +../../data/yoloGtold1/train/63671.png +../../data/yoloGtold1/train/63672.png +../../data/yoloGtold1/train/63673.png +../../data/yoloGtold1/train/63674.png +../../data/yoloGtold1/train/63675.png +../../data/yoloGtold1/train/63676.png +../../data/yoloGtold1/train/63677.png +../../data/yoloGtold1/train/63678.png +../../data/yoloGtold1/train/63679.png +../../data/yoloGtold1/train/63680.png +../../data/yoloGtold1/train/63681.png +../../data/yoloGtold1/train/63682.png +../../data/yoloGtold1/train/63683.png +../../data/yoloGtold1/train/63684.png +../../data/yoloGtold1/train/63685.png +../../data/yoloGtold1/train/63686.png +../../data/yoloGtold1/train/63687.png +../../data/yoloGtold1/train/63688.png +../../data/yoloGtold1/train/63689.png +../../data/yoloGtold1/train/63690.png +../../data/yoloGtold1/train/63691.png +../../data/yoloGtold1/train/63692.png +../../data/yoloGtold1/train/63693.png +../../data/yoloGtold1/train/63694.png +../../data/yoloGtold1/train/63695.png +../../data/yoloGtold1/train/63696.png +../../data/yoloGtold1/train/63697.png +../../data/yoloGtold1/train/63698.png +../../data/yoloGtold1/train/63699.png +../../data/yoloGtold1/train/63700.png +../../data/yoloGtold1/train/63701.png +../../data/yoloGtold1/train/63702.png +../../data/yoloGtold1/train/63703.png +../../data/yoloGtold1/train/63704.png +../../data/yoloGtold1/train/63705.png +../../data/yoloGtold1/train/63706.png +../../data/yoloGtold1/train/63707.png +../../data/yoloGtold1/train/63708.png +../../data/yoloGtold1/train/63709.png +../../data/yoloGtold1/train/63710.png +../../data/yoloGtold1/train/63711.png +../../data/yoloGtold1/train/63712.png +../../data/yoloGtold1/train/63713.png +../../data/yoloGtold1/train/63714.png +../../data/yoloGtold1/train/63715.png +../../data/yoloGtold1/train/63716.png +../../data/yoloGtold1/train/63717.png +../../data/yoloGtold1/train/63718.png +../../data/yoloGtold1/train/63719.png +../../data/yoloGtold1/train/63720.png +../../data/yoloGtold1/train/63721.png +../../data/yoloGtold1/train/63722.png +../../data/yoloGtold1/train/63723.png +../../data/yoloGtold1/train/63724.png +../../data/yoloGtold1/train/63725.png +../../data/yoloGtold1/train/63726.png +../../data/yoloGtold1/train/63727.png +../../data/yoloGtold1/train/63728.png +../../data/yoloGtold1/train/63729.png +../../data/yoloGtold1/train/63730.png +../../data/yoloGtold1/train/63731.png +../../data/yoloGtold1/train/63732.png +../../data/yoloGtold1/train/63733.png +../../data/yoloGtold1/train/63734.png +../../data/yoloGtold1/train/63735.png +../../data/yoloGtold1/train/63736.png +../../data/yoloGtold1/train/63737.png +../../data/yoloGtold1/train/63738.png +../../data/yoloGtold1/train/63739.png +../../data/yoloGtold1/train/63740.png +../../data/yoloGtold1/train/63741.png +../../data/yoloGtold1/train/63742.png +../../data/yoloGtold1/train/63743.png +../../data/yoloGtold1/train/63744.png +../../data/yoloGtold1/train/63745.png +../../data/yoloGtold1/train/63746.png +../../data/yoloGtold1/train/63747.png +../../data/yoloGtold1/train/63748.png +../../data/yoloGtold1/train/63749.png +../../data/yoloGtold1/train/63750.png +../../data/yoloGtold1/train/63751.png +../../data/yoloGtold1/train/63752.png +../../data/yoloGtold1/train/63753.png +../../data/yoloGtold1/train/63754.png +../../data/yoloGtold1/train/63755.png +../../data/yoloGtold1/train/63756.png +../../data/yoloGtold1/train/63757.png +../../data/yoloGtold1/train/63758.png +../../data/yoloGtold1/train/63759.png +../../data/yoloGtold1/train/63760.png +../../data/yoloGtold1/train/63761.png +../../data/yoloGtold1/train/63762.png +../../data/yoloGtold1/train/63763.png +../../data/yoloGtold1/train/63764.png +../../data/yoloGtold1/train/63765.png +../../data/yoloGtold1/train/63766.png +../../data/yoloGtold1/train/63767.png +../../data/yoloGtold1/train/63768.png +../../data/yoloGtold1/train/63769.png +../../data/yoloGtold1/train/63770.png +../../data/yoloGtold1/train/63771.png +../../data/yoloGtold1/train/63772.png +../../data/yoloGtold1/train/63773.png +../../data/yoloGtold1/train/63774.png +../../data/yoloGtold1/train/63775.png +../../data/yoloGtold1/train/63776.png +../../data/yoloGtold1/train/63777.png +../../data/yoloGtold1/train/63778.png +../../data/yoloGtold1/train/63779.png +../../data/yoloGtold1/train/63780.png +../../data/yoloGtold1/train/63781.png +../../data/yoloGtold1/train/63782.png +../../data/yoloGtold1/train/63783.png +../../data/yoloGtold1/train/63784.png +../../data/yoloGtold1/train/63785.png +../../data/yoloGtold1/train/63786.png +../../data/yoloGtold1/train/63787.png +../../data/yoloGtold1/train/63788.png +../../data/yoloGtold1/train/63789.png +../../data/yoloGtold1/train/63790.png +../../data/yoloGtold1/train/63791.png +../../data/yoloGtold1/train/63792.png +../../data/yoloGtold1/train/63793.png +../../data/yoloGtold1/train/63794.png +../../data/yoloGtold1/train/63795.png +../../data/yoloGtold1/train/63796.png +../../data/yoloGtold1/train/63797.png +../../data/yoloGtold1/train/63798.png +../../data/yoloGtold1/train/63799.png +../../data/yoloGtold1/train/63800.png +../../data/yoloGtold1/train/63801.png +../../data/yoloGtold1/train/63802.png +../../data/yoloGtold1/train/63803.png +../../data/yoloGtold1/train/63804.png +../../data/yoloGtold1/train/63805.png +../../data/yoloGtold1/train/63806.png +../../data/yoloGtold1/train/63807.png +../../data/yoloGtold1/train/63808.png +../../data/yoloGtold1/train/63809.png +../../data/yoloGtold1/train/63810.png +../../data/yoloGtold1/train/63811.png +../../data/yoloGtold1/train/63812.png +../../data/yoloGtold1/train/63813.png +../../data/yoloGtold1/train/63814.png +../../data/yoloGtold1/train/63815.png +../../data/yoloGtold1/train/63816.png +../../data/yoloGtold1/train/63817.png +../../data/yoloGtold1/train/63818.png +../../data/yoloGtold1/train/63819.png +../../data/yoloGtold1/train/63820.png +../../data/yoloGtold1/train/63821.png +../../data/yoloGtold1/train/63822.png +../../data/yoloGtold1/train/63823.png +../../data/yoloGtold1/train/63824.png +../../data/yoloGtold1/train/63825.png +../../data/yoloGtold1/train/63826.png +../../data/yoloGtold1/train/63827.png +../../data/yoloGtold1/train/63828.png +../../data/yoloGtold1/train/63829.png +../../data/yoloGtold1/train/63830.png +../../data/yoloGtold1/train/63831.png +../../data/yoloGtold1/train/63832.png +../../data/yoloGtold1/train/63833.png +../../data/yoloGtold1/train/63834.png +../../data/yoloGtold1/train/63835.png +../../data/yoloGtold1/train/63836.png +../../data/yoloGtold1/train/63837.png +../../data/yoloGtold1/train/63838.png +../../data/yoloGtold1/train/63839.png +../../data/yoloGtold1/train/63840.png +../../data/yoloGtold1/train/63841.png +../../data/yoloGtold1/train/63842.png +../../data/yoloGtold1/train/63843.png +../../data/yoloGtold1/train/63844.png +../../data/yoloGtold1/train/63845.png +../../data/yoloGtold1/train/63846.png +../../data/yoloGtold1/train/63847.png +../../data/yoloGtold1/train/63848.png +../../data/yoloGtold1/train/63849.png +../../data/yoloGtold1/train/63850.png +../../data/yoloGtold1/train/63851.png +../../data/yoloGtold1/train/63852.png +../../data/yoloGtold1/train/63853.png +../../data/yoloGtold1/train/63854.png +../../data/yoloGtold1/train/63855.png +../../data/yoloGtold1/train/63856.png +../../data/yoloGtold1/train/63857.png +../../data/yoloGtold1/train/63858.png +../../data/yoloGtold1/train/63859.png +../../data/yoloGtold1/train/63860.png +../../data/yoloGtold1/train/63861.png +../../data/yoloGtold1/train/63862.png +../../data/yoloGtold1/train/63863.png +../../data/yoloGtold1/train/63864.png +../../data/yoloGtold1/train/63865.png +../../data/yoloGtold1/train/63866.png +../../data/yoloGtold1/train/63867.png +../../data/yoloGtold1/train/63868.png +../../data/yoloGtold1/train/63869.png +../../data/yoloGtold1/train/63870.png +../../data/yoloGtold1/train/63871.png +../../data/yoloGtold1/train/63872.png +../../data/yoloGtold1/train/63873.png +../../data/yoloGtold1/train/63874.png +../../data/yoloGtold1/train/63875.png +../../data/yoloGtold1/train/63876.png +../../data/yoloGtold1/train/63877.png +../../data/yoloGtold1/train/63878.png +../../data/yoloGtold1/train/63879.png +../../data/yoloGtold1/train/63880.png +../../data/yoloGtold1/train/63881.png +../../data/yoloGtold1/train/63882.png +../../data/yoloGtold1/train/63883.png +../../data/yoloGtold1/train/63884.png +../../data/yoloGtold1/train/63885.png +../../data/yoloGtold1/train/63886.png +../../data/yoloGtold1/train/63887.png +../../data/yoloGtold1/train/63888.png +../../data/yoloGtold1/train/63889.png +../../data/yoloGtold1/train/63890.png +../../data/yoloGtold1/train/63891.png +../../data/yoloGtold1/train/63892.png +../../data/yoloGtold1/train/63893.png +../../data/yoloGtold1/train/63894.png +../../data/yoloGtold1/train/63895.png +../../data/yoloGtold1/train/63896.png +../../data/yoloGtold1/train/63897.png +../../data/yoloGtold1/train/63898.png +../../data/yoloGtold1/train/63899.png +../../data/yoloGtold1/train/63900.png +../../data/yoloGtold1/train/63901.png +../../data/yoloGtold1/train/63902.png +../../data/yoloGtold1/train/63903.png +../../data/yoloGtold1/train/63904.png +../../data/yoloGtold1/train/63905.png +../../data/yoloGtold1/train/63906.png +../../data/yoloGtold1/train/63907.png +../../data/yoloGtold1/train/63908.png +../../data/yoloGtold1/train/63909.png +../../data/yoloGtold1/train/63910.png +../../data/yoloGtold1/train/63911.png +../../data/yoloGtold1/train/63912.png +../../data/yoloGtold1/train/63913.png +../../data/yoloGtold1/train/63914.png +../../data/yoloGtold1/train/63915.png +../../data/yoloGtold1/train/63916.png +../../data/yoloGtold1/train/63917.png +../../data/yoloGtold1/train/63918.png +../../data/yoloGtold1/train/63919.png +../../data/yoloGtold1/train/63920.png +../../data/yoloGtold1/train/63921.png +../../data/yoloGtold1/train/63922.png +../../data/yoloGtold1/train/63923.png +../../data/yoloGtold1/train/63924.png +../../data/yoloGtold1/train/63925.png +../../data/yoloGtold1/train/63926.png +../../data/yoloGtold1/train/63927.png +../../data/yoloGtold1/train/63928.png +../../data/yoloGtold1/train/63929.png +../../data/yoloGtold1/train/63930.png +../../data/yoloGtold1/train/63931.png +../../data/yoloGtold1/train/63932.png +../../data/yoloGtold1/train/63933.png +../../data/yoloGtold1/train/63934.png +../../data/yoloGtold1/train/63935.png +../../data/yoloGtold1/train/63936.png +../../data/yoloGtold1/train/63937.png +../../data/yoloGtold1/train/63938.png +../../data/yoloGtold1/train/63939.png +../../data/yoloGtold1/train/63940.png +../../data/yoloGtold1/train/63941.png +../../data/yoloGtold1/train/63942.png +../../data/yoloGtold1/train/63943.png +../../data/yoloGtold1/train/63944.png +../../data/yoloGtold1/train/63945.png +../../data/yoloGtold1/train/63946.png +../../data/yoloGtold1/train/63947.png +../../data/yoloGtold1/train/63948.png +../../data/yoloGtold1/train/63949.png +../../data/yoloGtold1/train/63950.png +../../data/yoloGtold1/train/63951.png +../../data/yoloGtold1/train/63952.png +../../data/yoloGtold1/train/63953.png +../../data/yoloGtold1/train/63954.png +../../data/yoloGtold1/train/63955.png +../../data/yoloGtold1/train/63956.png +../../data/yoloGtold1/train/63957.png +../../data/yoloGtold1/train/63958.png +../../data/yoloGtold1/train/63959.png +../../data/yoloGtold1/train/63960.png +../../data/yoloGtold1/train/63961.png +../../data/yoloGtold1/train/63962.png +../../data/yoloGtold1/train/63963.png +../../data/yoloGtold1/train/63964.png +../../data/yoloGtold1/train/63965.png +../../data/yoloGtold1/train/63966.png +../../data/yoloGtold1/train/63967.png +../../data/yoloGtold1/train/63968.png +../../data/yoloGtold1/train/63969.png +../../data/yoloGtold1/train/63970.png +../../data/yoloGtold1/train/63971.png +../../data/yoloGtold1/train/63972.png +../../data/yoloGtold1/train/63973.png +../../data/yoloGtold1/train/63974.png +../../data/yoloGtold1/train/63975.png +../../data/yoloGtold1/train/63976.png +../../data/yoloGtold1/train/63977.png +../../data/yoloGtold1/train/63978.png +../../data/yoloGtold1/train/63979.png +../../data/yoloGtold1/train/63980.png +../../data/yoloGtold1/train/63981.png +../../data/yoloGtold1/train/63982.png +../../data/yoloGtold1/train/63983.png +../../data/yoloGtold1/train/63984.png +../../data/yoloGtold1/train/63985.png +../../data/yoloGtold1/train/63986.png +../../data/yoloGtold1/train/63987.png +../../data/yoloGtold1/train/63988.png +../../data/yoloGtold1/train/63989.png +../../data/yoloGtold1/train/63990.png +../../data/yoloGtold1/train/63991.png +../../data/yoloGtold1/train/63992.png +../../data/yoloGtold1/train/63993.png +../../data/yoloGtold1/train/63994.png +../../data/yoloGtold1/train/63995.png +../../data/yoloGtold1/train/63996.png +../../data/yoloGtold1/train/63997.png +../../data/yoloGtold1/train/63998.png +../../data/yoloGtold1/train/63999.png +../../data/yoloGtold1/train/64000.png +../../data/yoloGtold1/train/64001.png +../../data/yoloGtold1/train/64002.png +../../data/yoloGtold1/train/64003.png +../../data/yoloGtold1/train/64004.png +../../data/yoloGtold1/train/64005.png +../../data/yoloGtold1/train/64006.png +../../data/yoloGtold1/train/64007.png +../../data/yoloGtold1/train/64008.png +../../data/yoloGtold1/train/64009.png +../../data/yoloGtold1/train/64010.png +../../data/yoloGtold1/train/64011.png +../../data/yoloGtold1/train/64012.png +../../data/yoloGtold1/train/64013.png +../../data/yoloGtold1/train/64014.png +../../data/yoloGtold1/train/64015.png +../../data/yoloGtold1/train/64016.png +../../data/yoloGtold1/train/64017.png +../../data/yoloGtold1/train/64018.png +../../data/yoloGtold1/train/64019.png +../../data/yoloGtold1/train/64020.png +../../data/yoloGtold1/train/64021.png +../../data/yoloGtold1/train/64022.png +../../data/yoloGtold1/train/64023.png +../../data/yoloGtold1/train/64024.png +../../data/yoloGtold1/train/64025.png +../../data/yoloGtold1/train/64026.png +../../data/yoloGtold1/train/64027.png +../../data/yoloGtold1/train/64028.png +../../data/yoloGtold1/train/64029.png +../../data/yoloGtold1/train/64030.png +../../data/yoloGtold1/train/64031.png +../../data/yoloGtold1/train/64032.png +../../data/yoloGtold1/train/64033.png +../../data/yoloGtold1/train/64034.png +../../data/yoloGtold1/train/64035.png +../../data/yoloGtold1/train/64036.png +../../data/yoloGtold1/train/64037.png +../../data/yoloGtold1/train/64038.png +../../data/yoloGtold1/train/64039.png +../../data/yoloGtold1/train/64040.png +../../data/yoloGtold1/train/64041.png +../../data/yoloGtold1/train/64042.png +../../data/yoloGtold1/train/64043.png +../../data/yoloGtold1/train/64044.png +../../data/yoloGtold1/train/64045.png +../../data/yoloGtold1/train/64046.png +../../data/yoloGtold1/train/64047.png +../../data/yoloGtold1/train/64048.png +../../data/yoloGtold1/train/64049.png +../../data/yoloGtold1/train/64050.png +../../data/yoloGtold1/train/64051.png +../../data/yoloGtold1/train/64052.png +../../data/yoloGtold1/train/64053.png +../../data/yoloGtold1/train/64054.png +../../data/yoloGtold1/train/64055.png +../../data/yoloGtold1/train/64056.png +../../data/yoloGtold1/train/64057.png +../../data/yoloGtold1/train/64058.png +../../data/yoloGtold1/train/64059.png +../../data/yoloGtold1/train/64060.png +../../data/yoloGtold1/train/64061.png +../../data/yoloGtold1/train/64062.png +../../data/yoloGtold1/train/64063.png +../../data/yoloGtold1/train/64064.png +../../data/yoloGtold1/train/64065.png +../../data/yoloGtold1/train/64066.png +../../data/yoloGtold1/train/64067.png +../../data/yoloGtold1/train/64068.png +../../data/yoloGtold1/train/64069.png +../../data/yoloGtold1/train/64070.png +../../data/yoloGtold1/train/64071.png +../../data/yoloGtold1/train/64072.png +../../data/yoloGtold1/train/64073.png +../../data/yoloGtold1/train/64074.png +../../data/yoloGtold1/train/64075.png +../../data/yoloGtold1/train/64076.png +../../data/yoloGtold1/train/64077.png +../../data/yoloGtold1/train/64078.png +../../data/yoloGtold1/train/64079.png +../../data/yoloGtold1/train/64080.png +../../data/yoloGtold1/train/64081.png +../../data/yoloGtold1/train/64082.png +../../data/yoloGtold1/train/64083.png +../../data/yoloGtold1/train/64084.png +../../data/yoloGtold1/train/64085.png +../../data/yoloGtold1/train/64086.png +../../data/yoloGtold1/train/64087.png +../../data/yoloGtold1/train/64088.png +../../data/yoloGtold1/train/64089.png +../../data/yoloGtold1/train/64090.png +../../data/yoloGtold1/train/64091.png +../../data/yoloGtold1/train/64092.png +../../data/yoloGtold1/train/64093.png +../../data/yoloGtold1/train/64094.png +../../data/yoloGtold1/train/64095.png +../../data/yoloGtold1/train/64096.png +../../data/yoloGtold1/train/64097.png +../../data/yoloGtold1/train/64098.png +../../data/yoloGtold1/train/64099.png +../../data/yoloGtold1/train/64100.png +../../data/yoloGtold1/train/64101.png +../../data/yoloGtold1/train/64102.png +../../data/yoloGtold1/train/64103.png +../../data/yoloGtold1/train/64104.png +../../data/yoloGtold1/train/64105.png +../../data/yoloGtold1/train/64106.png +../../data/yoloGtold1/train/64107.png +../../data/yoloGtold1/train/64108.png +../../data/yoloGtold1/train/64109.png +../../data/yoloGtold1/train/64110.png +../../data/yoloGtold1/train/64111.png +../../data/yoloGtold1/train/64112.png +../../data/yoloGtold1/train/64113.png +../../data/yoloGtold1/train/64114.png +../../data/yoloGtold1/train/64115.png +../../data/yoloGtold1/train/64116.png +../../data/yoloGtold1/train/64117.png +../../data/yoloGtold1/train/64118.png +../../data/yoloGtold1/train/64119.png +../../data/yoloGtold1/train/64120.png +../../data/yoloGtold1/train/64121.png +../../data/yoloGtold1/train/64122.png +../../data/yoloGtold1/train/64123.png +../../data/yoloGtold1/train/64124.png +../../data/yoloGtold1/train/64125.png +../../data/yoloGtold1/train/64126.png +../../data/yoloGtold1/train/64127.png +../../data/yoloGtold1/train/64128.png +../../data/yoloGtold1/train/64129.png +../../data/yoloGtold1/train/64130.png +../../data/yoloGtold1/train/64131.png +../../data/yoloGtold1/train/64132.png +../../data/yoloGtold1/train/64133.png +../../data/yoloGtold1/train/64134.png +../../data/yoloGtold1/train/64135.png +../../data/yoloGtold1/train/64136.png +../../data/yoloGtold1/train/64137.png +../../data/yoloGtold1/train/64138.png +../../data/yoloGtold1/train/64139.png +../../data/yoloGtold1/train/64140.png +../../data/yoloGtold1/train/64141.png +../../data/yoloGtold1/train/64142.png +../../data/yoloGtold1/train/64143.png +../../data/yoloGtold1/train/64144.png +../../data/yoloGtold1/train/64145.png +../../data/yoloGtold1/train/64146.png +../../data/yoloGtold1/train/64147.png +../../data/yoloGtold1/train/64148.png +../../data/yoloGtold1/train/64149.png +../../data/yoloGtold1/train/64150.png +../../data/yoloGtold1/train/64151.png +../../data/yoloGtold1/train/64152.png +../../data/yoloGtold1/train/64153.png +../../data/yoloGtold1/train/64154.png +../../data/yoloGtold1/train/64155.png +../../data/yoloGtold1/train/64156.png +../../data/yoloGtold1/train/64157.png +../../data/yoloGtold1/train/64158.png +../../data/yoloGtold1/train/64159.png +../../data/yoloGtold1/train/64160.png +../../data/yoloGtold1/train/64161.png +../../data/yoloGtold1/train/64162.png +../../data/yoloGtold1/train/64163.png +../../data/yoloGtold1/train/64164.png +../../data/yoloGtold1/train/64165.png +../../data/yoloGtold1/train/64166.png +../../data/yoloGtold1/train/64167.png +../../data/yoloGtold1/train/64168.png +../../data/yoloGtold1/train/64169.png +../../data/yoloGtold1/train/64170.png +../../data/yoloGtold1/train/64171.png +../../data/yoloGtold1/train/64172.png +../../data/yoloGtold1/train/64173.png +../../data/yoloGtold1/train/64174.png +../../data/yoloGtold1/train/64175.png +../../data/yoloGtold1/train/64176.png +../../data/yoloGtold1/train/64177.png +../../data/yoloGtold1/train/64178.png +../../data/yoloGtold1/train/64179.png +../../data/yoloGtold1/train/64180.png +../../data/yoloGtold1/train/64181.png +../../data/yoloGtold1/train/64182.png +../../data/yoloGtold1/train/64183.png +../../data/yoloGtold1/train/64184.png +../../data/yoloGtold1/train/64185.png +../../data/yoloGtold1/train/64186.png +../../data/yoloGtold1/train/64187.png +../../data/yoloGtold1/train/64188.png +../../data/yoloGtold1/train/64189.png +../../data/yoloGtold1/train/64190.png +../../data/yoloGtold1/train/64191.png +../../data/yoloGtold1/train/64192.png +../../data/yoloGtold1/train/64193.png +../../data/yoloGtold1/train/64194.png +../../data/yoloGtold1/train/64195.png +../../data/yoloGtold1/train/64196.png +../../data/yoloGtold1/train/64197.png +../../data/yoloGtold1/train/64198.png +../../data/yoloGtold1/train/64199.png +../../data/yoloGtold1/train/64200.png +../../data/yoloGtold1/train/64201.png +../../data/yoloGtold1/train/64202.png +../../data/yoloGtold1/train/64203.png +../../data/yoloGtold1/train/64204.png +../../data/yoloGtold1/train/64205.png +../../data/yoloGtold1/train/64206.png +../../data/yoloGtold1/train/64207.png +../../data/yoloGtold1/train/64208.png +../../data/yoloGtold1/train/64209.png +../../data/yoloGtold1/train/64210.png +../../data/yoloGtold1/train/64211.png +../../data/yoloGtold1/train/64212.png +../../data/yoloGtold1/train/64213.png +../../data/yoloGtold1/train/64214.png +../../data/yoloGtold1/train/64215.png +../../data/yoloGtold1/train/64216.png +../../data/yoloGtold1/train/64217.png +../../data/yoloGtold1/train/64218.png +../../data/yoloGtold1/train/64219.png +../../data/yoloGtold1/train/64220.png +../../data/yoloGtold1/train/64221.png +../../data/yoloGtold1/train/64222.png +../../data/yoloGtold1/train/64223.png +../../data/yoloGtold1/train/64224.png +../../data/yoloGtold1/train/64225.png +../../data/yoloGtold1/train/64226.png +../../data/yoloGtold1/train/64227.png +../../data/yoloGtold1/train/64228.png +../../data/yoloGtold1/train/64229.png +../../data/yoloGtold1/train/64230.png +../../data/yoloGtold1/train/64231.png +../../data/yoloGtold1/train/64232.png +../../data/yoloGtold1/train/64233.png +../../data/yoloGtold1/train/64234.png +../../data/yoloGtold1/train/64235.png +../../data/yoloGtold1/train/64236.png +../../data/yoloGtold1/train/64237.png +../../data/yoloGtold1/train/64238.png +../../data/yoloGtold1/train/64239.png +../../data/yoloGtold1/train/64240.png +../../data/yoloGtold1/train/64241.png +../../data/yoloGtold1/train/64242.png +../../data/yoloGtold1/train/64243.png +../../data/yoloGtold1/train/64244.png +../../data/yoloGtold1/train/64245.png +../../data/yoloGtold1/train/64246.png +../../data/yoloGtold1/train/64247.png +../../data/yoloGtold1/train/64248.png +../../data/yoloGtold1/train/64249.png +../../data/yoloGtold1/train/64250.png +../../data/yoloGtold1/train/64251.png +../../data/yoloGtold1/train/64252.png +../../data/yoloGtold1/train/64253.png +../../data/yoloGtold1/train/64254.png +../../data/yoloGtold1/train/64255.png +../../data/yoloGtold1/train/64256.png +../../data/yoloGtold1/train/64257.png +../../data/yoloGtold1/train/64258.png +../../data/yoloGtold1/train/64259.png +../../data/yoloGtold1/train/64260.png +../../data/yoloGtold1/train/64261.png +../../data/yoloGtold1/train/64262.png +../../data/yoloGtold1/train/64263.png +../../data/yoloGtold1/train/64264.png +../../data/yoloGtold1/train/64265.png +../../data/yoloGtold1/train/64266.png +../../data/yoloGtold1/train/64267.png +../../data/yoloGtold1/train/64268.png +../../data/yoloGtold1/train/64269.png +../../data/yoloGtold1/train/64270.png +../../data/yoloGtold1/train/64271.png +../../data/yoloGtold1/train/64272.png +../../data/yoloGtold1/train/64273.png +../../data/yoloGtold1/train/64274.png +../../data/yoloGtold1/train/64275.png +../../data/yoloGtold1/train/64276.png +../../data/yoloGtold1/train/64277.png +../../data/yoloGtold1/train/64278.png +../../data/yoloGtold1/train/64279.png +../../data/yoloGtold1/train/64280.png +../../data/yoloGtold1/train/64281.png +../../data/yoloGtold1/train/64282.png +../../data/yoloGtold1/train/64283.png +../../data/yoloGtold1/train/64284.png +../../data/yoloGtold1/train/64285.png +../../data/yoloGtold1/train/64286.png +../../data/yoloGtold1/train/64287.png +../../data/yoloGtold1/train/64288.png +../../data/yoloGtold1/train/64289.png +../../data/yoloGtold1/train/64290.png +../../data/yoloGtold1/train/64291.png +../../data/yoloGtold1/train/64292.png +../../data/yoloGtold1/train/64293.png +../../data/yoloGtold1/train/64294.png +../../data/yoloGtold1/train/64295.png +../../data/yoloGtold1/train/64296.png +../../data/yoloGtold1/train/64297.png +../../data/yoloGtold1/train/64298.png +../../data/yoloGtold1/train/64299.png +../../data/yoloGtold1/train/64300.png +../../data/yoloGtold1/train/64301.png +../../data/yoloGtold1/train/64302.png +../../data/yoloGtold1/train/64303.png +../../data/yoloGtold1/train/64304.png +../../data/yoloGtold1/train/64305.png +../../data/yoloGtold1/train/64306.png +../../data/yoloGtold1/train/64307.png +../../data/yoloGtold1/train/64308.png +../../data/yoloGtold1/train/64309.png +../../data/yoloGtold1/train/64310.png +../../data/yoloGtold1/train/64311.png +../../data/yoloGtold1/train/64312.png +../../data/yoloGtold1/train/64313.png +../../data/yoloGtold1/train/64314.png +../../data/yoloGtold1/train/64315.png +../../data/yoloGtold1/train/64316.png +../../data/yoloGtold1/train/64317.png +../../data/yoloGtold1/train/64318.png +../../data/yoloGtold1/train/64319.png +../../data/yoloGtold1/train/64320.png +../../data/yoloGtold1/train/64321.png +../../data/yoloGtold1/train/64322.png +../../data/yoloGtold1/train/64323.png +../../data/yoloGtold1/train/64324.png +../../data/yoloGtold1/train/64325.png +../../data/yoloGtold1/train/64326.png +../../data/yoloGtold1/train/64327.png +../../data/yoloGtold1/train/64328.png +../../data/yoloGtold1/train/64329.png +../../data/yoloGtold1/train/64330.png +../../data/yoloGtold1/train/64331.png +../../data/yoloGtold1/train/64332.png +../../data/yoloGtold1/train/64333.png +../../data/yoloGtold1/train/64334.png +../../data/yoloGtold1/train/64335.png +../../data/yoloGtold1/train/64336.png +../../data/yoloGtold1/train/64337.png +../../data/yoloGtold1/train/64338.png +../../data/yoloGtold1/train/64339.png +../../data/yoloGtold1/train/64340.png +../../data/yoloGtold1/train/64341.png +../../data/yoloGtold1/train/64342.png +../../data/yoloGtold1/train/64343.png +../../data/yoloGtold1/train/64344.png +../../data/yoloGtold1/train/64345.png +../../data/yoloGtold1/train/64346.png +../../data/yoloGtold1/train/64347.png +../../data/yoloGtold1/train/64348.png +../../data/yoloGtold1/train/64349.png +../../data/yoloGtold1/train/64350.png +../../data/yoloGtold1/train/64351.png +../../data/yoloGtold1/train/64352.png +../../data/yoloGtold1/train/64353.png +../../data/yoloGtold1/train/64354.png +../../data/yoloGtold1/train/64355.png +../../data/yoloGtold1/train/64356.png +../../data/yoloGtold1/train/64357.png +../../data/yoloGtold1/train/64358.png +../../data/yoloGtold1/train/64359.png +../../data/yoloGtold1/train/64360.png +../../data/yoloGtold1/train/64361.png +../../data/yoloGtold1/train/64362.png +../../data/yoloGtold1/train/64363.png +../../data/yoloGtold1/train/64364.png +../../data/yoloGtold1/train/64365.png +../../data/yoloGtold1/train/64366.png +../../data/yoloGtold1/train/64367.png +../../data/yoloGtold1/train/64368.png +../../data/yoloGtold1/train/64369.png +../../data/yoloGtold1/train/64370.png +../../data/yoloGtold1/train/64371.png +../../data/yoloGtold1/train/64372.png +../../data/yoloGtold1/train/64373.png +../../data/yoloGtold1/train/64374.png +../../data/yoloGtold1/train/64375.png +../../data/yoloGtold1/train/64376.png +../../data/yoloGtold1/train/64377.png +../../data/yoloGtold1/train/64378.png +../../data/yoloGtold1/train/64379.png +../../data/yoloGtold1/train/64380.png +../../data/yoloGtold1/train/64381.png +../../data/yoloGtold1/train/64382.png +../../data/yoloGtold1/train/64383.png +../../data/yoloGtold1/train/64384.png +../../data/yoloGtold1/train/64385.png +../../data/yoloGtold1/train/64386.png +../../data/yoloGtold1/train/64387.png +../../data/yoloGtold1/train/64388.png +../../data/yoloGtold1/train/64389.png +../../data/yoloGtold1/train/64390.png +../../data/yoloGtold1/train/64391.png +../../data/yoloGtold1/train/64392.png +../../data/yoloGtold1/train/64393.png +../../data/yoloGtold1/train/64394.png +../../data/yoloGtold1/train/64395.png +../../data/yoloGtold1/train/64396.png +../../data/yoloGtold1/train/64397.png +../../data/yoloGtold1/train/64398.png +../../data/yoloGtold1/train/64399.png +../../data/yoloGtold1/train/64400.png +../../data/yoloGtold1/train/64401.png +../../data/yoloGtold1/train/64402.png +../../data/yoloGtold1/train/64403.png +../../data/yoloGtold1/train/64404.png +../../data/yoloGtold1/train/64405.png +../../data/yoloGtold1/train/64406.png +../../data/yoloGtold1/train/64407.png +../../data/yoloGtold1/train/64408.png +../../data/yoloGtold1/train/64409.png +../../data/yoloGtold1/train/64410.png +../../data/yoloGtold1/train/64411.png +../../data/yoloGtold1/train/64412.png +../../data/yoloGtold1/train/64413.png +../../data/yoloGtold1/train/64414.png +../../data/yoloGtold1/train/64415.png +../../data/yoloGtold1/train/64416.png +../../data/yoloGtold1/train/64417.png +../../data/yoloGtold1/train/64418.png +../../data/yoloGtold1/train/64419.png +../../data/yoloGtold1/train/64420.png +../../data/yoloGtold1/train/64421.png +../../data/yoloGtold1/train/64422.png +../../data/yoloGtold1/train/64423.png +../../data/yoloGtold1/train/64424.png +../../data/yoloGtold1/train/64425.png +../../data/yoloGtold1/train/64426.png +../../data/yoloGtold1/train/64427.png +../../data/yoloGtold1/train/64428.png +../../data/yoloGtold1/train/64429.png +../../data/yoloGtold1/train/64430.png +../../data/yoloGtold1/train/64431.png +../../data/yoloGtold1/train/64432.png +../../data/yoloGtold1/train/64433.png +../../data/yoloGtold1/train/64434.png +../../data/yoloGtold1/train/64435.png +../../data/yoloGtold1/train/64436.png +../../data/yoloGtold1/train/64437.png +../../data/yoloGtold1/train/64438.png +../../data/yoloGtold1/train/64439.png +../../data/yoloGtold1/train/64440.png +../../data/yoloGtold1/train/64441.png +../../data/yoloGtold1/train/64442.png +../../data/yoloGtold1/train/64443.png +../../data/yoloGtold1/train/64444.png +../../data/yoloGtold1/train/64445.png +../../data/yoloGtold1/train/64446.png +../../data/yoloGtold1/train/64447.png +../../data/yoloGtold1/train/64448.png +../../data/yoloGtold1/train/64449.png +../../data/yoloGtold1/train/64450.png +../../data/yoloGtold1/train/64451.png +../../data/yoloGtold1/train/64452.png +../../data/yoloGtold1/train/64453.png +../../data/yoloGtold1/train/64454.png +../../data/yoloGtold1/train/64455.png +../../data/yoloGtold1/train/64456.png +../../data/yoloGtold1/train/64457.png +../../data/yoloGtold1/train/64458.png +../../data/yoloGtold1/train/64459.png +../../data/yoloGtold1/train/64460.png +../../data/yoloGtold1/train/64461.png +../../data/yoloGtold1/train/64462.png +../../data/yoloGtold1/train/64463.png +../../data/yoloGtold1/train/64464.png +../../data/yoloGtold1/train/64465.png +../../data/yoloGtold1/train/64466.png +../../data/yoloGtold1/train/64467.png +../../data/yoloGtold1/train/64468.png +../../data/yoloGtold1/train/64469.png +../../data/yoloGtold1/train/64470.png +../../data/yoloGtold1/train/64471.png +../../data/yoloGtold1/train/64472.png +../../data/yoloGtold1/train/64473.png +../../data/yoloGtold1/train/64474.png +../../data/yoloGtold1/train/64475.png +../../data/yoloGtold1/train/64476.png +../../data/yoloGtold1/train/64477.png +../../data/yoloGtold1/train/64478.png +../../data/yoloGtold1/train/64479.png +../../data/yoloGtold1/train/64480.png +../../data/yoloGtold1/train/64481.png +../../data/yoloGtold1/train/64482.png +../../data/yoloGtold1/train/64483.png +../../data/yoloGtold1/train/64484.png +../../data/yoloGtold1/train/64485.png +../../data/yoloGtold1/train/64486.png +../../data/yoloGtold1/train/64487.png +../../data/yoloGtold1/train/64488.png +../../data/yoloGtold1/train/64489.png +../../data/yoloGtold1/train/64490.png +../../data/yoloGtold1/train/64491.png +../../data/yoloGtold1/train/64492.png +../../data/yoloGtold1/train/64493.png +../../data/yoloGtold1/train/64494.png +../../data/yoloGtold1/train/64495.png +../../data/yoloGtold1/train/64496.png +../../data/yoloGtold1/train/64497.png +../../data/yoloGtold1/train/64498.png +../../data/yoloGtold1/train/64499.png +../../data/yoloGtold1/train/64500.png +../../data/yoloGtold1/train/64501.png +../../data/yoloGtold1/train/64502.png +../../data/yoloGtold1/train/64503.png +../../data/yoloGtold1/train/64504.png +../../data/yoloGtold1/train/64505.png +../../data/yoloGtold1/train/64506.png +../../data/yoloGtold1/train/64507.png +../../data/yoloGtold1/train/64508.png +../../data/yoloGtold1/train/64509.png +../../data/yoloGtold1/train/64510.png +../../data/yoloGtold1/train/64511.png +../../data/yoloGtold1/train/64512.png +../../data/yoloGtold1/train/64513.png +../../data/yoloGtold1/train/64514.png +../../data/yoloGtold1/train/64515.png +../../data/yoloGtold1/train/64516.png +../../data/yoloGtold1/train/64517.png +../../data/yoloGtold1/train/64518.png +../../data/yoloGtold1/train/64519.png +../../data/yoloGtold1/train/64520.png +../../data/yoloGtold1/train/64521.png +../../data/yoloGtold1/train/64522.png +../../data/yoloGtold1/train/64523.png +../../data/yoloGtold1/train/64524.png +../../data/yoloGtold1/train/64525.png +../../data/yoloGtold1/train/64526.png +../../data/yoloGtold1/train/64527.png +../../data/yoloGtold1/train/64528.png +../../data/yoloGtold1/train/64529.png +../../data/yoloGtold1/train/64530.png +../../data/yoloGtold1/train/64531.png +../../data/yoloGtold1/train/64532.png +../../data/yoloGtold1/train/64533.png +../../data/yoloGtold1/train/64534.png +../../data/yoloGtold1/train/64535.png +../../data/yoloGtold1/train/64536.png +../../data/yoloGtold1/train/64537.png +../../data/yoloGtold1/train/64538.png +../../data/yoloGtold1/train/64539.png +../../data/yoloGtold1/train/64540.png +../../data/yoloGtold1/train/64541.png +../../data/yoloGtold1/train/64542.png +../../data/yoloGtold1/train/64543.png +../../data/yoloGtold1/train/64544.png +../../data/yoloGtold1/train/64545.png +../../data/yoloGtold1/train/64546.png +../../data/yoloGtold1/train/64547.png +../../data/yoloGtold1/train/64548.png +../../data/yoloGtold1/train/64549.png +../../data/yoloGtold1/train/64550.png +../../data/yoloGtold1/train/64551.png +../../data/yoloGtold1/train/64552.png +../../data/yoloGtold1/train/64553.png +../../data/yoloGtold1/train/64554.png +../../data/yoloGtold1/train/64555.png +../../data/yoloGtold1/train/64556.png +../../data/yoloGtold1/train/64557.png +../../data/yoloGtold1/train/64558.png +../../data/yoloGtold1/train/64559.png +../../data/yoloGtold1/train/64560.png +../../data/yoloGtold1/train/64561.png +../../data/yoloGtold1/train/64562.png +../../data/yoloGtold1/train/64563.png +../../data/yoloGtold1/train/64564.png +../../data/yoloGtold1/train/64565.png +../../data/yoloGtold1/train/64566.png +../../data/yoloGtold1/train/64567.png +../../data/yoloGtold1/train/64568.png +../../data/yoloGtold1/train/64569.png +../../data/yoloGtold1/train/64570.png +../../data/yoloGtold1/train/64571.png +../../data/yoloGtold1/train/64572.png +../../data/yoloGtold1/train/64573.png +../../data/yoloGtold1/train/64574.png +../../data/yoloGtold1/train/64575.png +../../data/yoloGtold1/train/64576.png +../../data/yoloGtold1/train/64577.png +../../data/yoloGtold1/train/64578.png +../../data/yoloGtold1/train/64579.png +../../data/yoloGtold1/train/64580.png +../../data/yoloGtold1/train/64581.png +../../data/yoloGtold1/train/64582.png +../../data/yoloGtold1/train/64583.png +../../data/yoloGtold1/train/64584.png +../../data/yoloGtold1/train/64585.png +../../data/yoloGtold1/train/64586.png +../../data/yoloGtold1/train/64587.png +../../data/yoloGtold1/train/64588.png +../../data/yoloGtold1/train/64589.png +../../data/yoloGtold1/train/64590.png +../../data/yoloGtold1/train/64591.png +../../data/yoloGtold1/train/64592.png +../../data/yoloGtold1/train/64593.png +../../data/yoloGtold1/train/64594.png +../../data/yoloGtold1/train/64595.png +../../data/yoloGtold1/train/64596.png +../../data/yoloGtold1/train/64597.png +../../data/yoloGtold1/train/64598.png +../../data/yoloGtold1/train/64599.png +../../data/yoloGtold1/train/64600.png +../../data/yoloGtold1/train/64601.png +../../data/yoloGtold1/train/64602.png +../../data/yoloGtold1/train/64603.png +../../data/yoloGtold1/train/64604.png +../../data/yoloGtold1/train/64605.png +../../data/yoloGtold1/train/64606.png +../../data/yoloGtold1/train/64607.png +../../data/yoloGtold1/train/64608.png +../../data/yoloGtold1/train/64609.png +../../data/yoloGtold1/train/64610.png +../../data/yoloGtold1/train/64611.png +../../data/yoloGtold1/train/64612.png +../../data/yoloGtold1/train/64613.png +../../data/yoloGtold1/train/64614.png +../../data/yoloGtold1/train/64615.png +../../data/yoloGtold1/train/64616.png +../../data/yoloGtold1/train/64617.png +../../data/yoloGtold1/train/64618.png +../../data/yoloGtold1/train/64619.png +../../data/yoloGtold1/train/64620.png +../../data/yoloGtold1/train/64621.png +../../data/yoloGtold1/train/64622.png +../../data/yoloGtold1/train/64623.png +../../data/yoloGtold1/train/64624.png +../../data/yoloGtold1/train/64625.png +../../data/yoloGtold1/train/64626.png +../../data/yoloGtold1/train/64627.png +../../data/yoloGtold1/train/64628.png +../../data/yoloGtold1/train/64629.png +../../data/yoloGtold1/train/64630.png +../../data/yoloGtold1/train/64631.png +../../data/yoloGtold1/train/64632.png +../../data/yoloGtold1/train/64633.png +../../data/yoloGtold1/train/64634.png +../../data/yoloGtold1/train/64635.png +../../data/yoloGtold1/train/64636.png +../../data/yoloGtold1/train/64637.png +../../data/yoloGtold1/train/64638.png +../../data/yoloGtold1/train/64639.png +../../data/yoloGtold1/train/64640.png +../../data/yoloGtold1/train/64641.png +../../data/yoloGtold1/train/64642.png +../../data/yoloGtold1/train/64643.png +../../data/yoloGtold1/train/64644.png +../../data/yoloGtold1/train/64645.png +../../data/yoloGtold1/train/64646.png +../../data/yoloGtold1/train/64647.png +../../data/yoloGtold1/train/64648.png +../../data/yoloGtold1/train/64649.png +../../data/yoloGtold1/train/64650.png +../../data/yoloGtold1/train/64651.png +../../data/yoloGtold1/train/64652.png +../../data/yoloGtold1/train/64653.png +../../data/yoloGtold1/train/64654.png +../../data/yoloGtold1/train/64655.png +../../data/yoloGtold1/train/64656.png +../../data/yoloGtold1/train/64657.png +../../data/yoloGtold1/train/64658.png +../../data/yoloGtold1/train/64659.png +../../data/yoloGtold1/train/64660.png +../../data/yoloGtold1/train/64661.png +../../data/yoloGtold1/train/64662.png +../../data/yoloGtold1/train/64663.png +../../data/yoloGtold1/train/64664.png +../../data/yoloGtold1/train/64665.png +../../data/yoloGtold1/train/64666.png +../../data/yoloGtold1/train/64667.png +../../data/yoloGtold1/train/64668.png +../../data/yoloGtold1/train/64669.png +../../data/yoloGtold1/train/64670.png +../../data/yoloGtold1/train/64671.png +../../data/yoloGtold1/train/64672.png +../../data/yoloGtold1/train/64673.png +../../data/yoloGtold1/train/64674.png +../../data/yoloGtold1/train/64675.png +../../data/yoloGtold1/train/64676.png +../../data/yoloGtold1/train/64677.png +../../data/yoloGtold1/train/64678.png +../../data/yoloGtold1/train/64679.png +../../data/yoloGtold1/train/64680.png +../../data/yoloGtold1/train/64681.png +../../data/yoloGtold1/train/64682.png +../../data/yoloGtold1/train/64683.png +../../data/yoloGtold1/train/64684.png +../../data/yoloGtold1/train/64685.png +../../data/yoloGtold1/train/64686.png +../../data/yoloGtold1/train/64687.png +../../data/yoloGtold1/train/64688.png +../../data/yoloGtold1/train/64689.png +../../data/yoloGtold1/train/64690.png +../../data/yoloGtold1/train/64691.png +../../data/yoloGtold1/train/64692.png +../../data/yoloGtold1/train/64693.png +../../data/yoloGtold1/train/64694.png +../../data/yoloGtold1/train/64695.png +../../data/yoloGtold1/train/64696.png +../../data/yoloGtold1/train/64697.png +../../data/yoloGtold1/train/64698.png +../../data/yoloGtold1/train/64699.png +../../data/yoloGtold1/train/64700.png +../../data/yoloGtold1/train/64701.png +../../data/yoloGtold1/train/64702.png +../../data/yoloGtold1/train/64703.png +../../data/yoloGtold1/train/64704.png +../../data/yoloGtold1/train/64705.png +../../data/yoloGtold1/train/64706.png +../../data/yoloGtold1/train/64707.png +../../data/yoloGtold1/train/64708.png +../../data/yoloGtold1/train/64709.png +../../data/yoloGtold1/train/64710.png +../../data/yoloGtold1/train/64711.png +../../data/yoloGtold1/train/64712.png +../../data/yoloGtold1/train/64713.png +../../data/yoloGtold1/train/64714.png +../../data/yoloGtold1/train/64715.png +../../data/yoloGtold1/train/64716.png +../../data/yoloGtold1/train/64717.png +../../data/yoloGtold1/train/64718.png +../../data/yoloGtold1/train/64719.png +../../data/yoloGtold1/train/64720.png +../../data/yoloGtold1/train/64721.png +../../data/yoloGtold1/train/64722.png +../../data/yoloGtold1/train/64723.png +../../data/yoloGtold1/train/64724.png +../../data/yoloGtold1/train/64725.png +../../data/yoloGtold1/train/64726.png +../../data/yoloGtold1/train/64727.png +../../data/yoloGtold1/train/64728.png +../../data/yoloGtold1/train/64729.png +../../data/yoloGtold1/train/64730.png +../../data/yoloGtold1/train/64731.png +../../data/yoloGtold1/train/64732.png +../../data/yoloGtold1/train/64733.png +../../data/yoloGtold1/train/64734.png +../../data/yoloGtold1/train/64735.png +../../data/yoloGtold1/train/64736.png +../../data/yoloGtold1/train/64737.png +../../data/yoloGtold1/train/64738.png +../../data/yoloGtold1/train/64739.png +../../data/yoloGtold1/train/64740.png +../../data/yoloGtold1/train/64741.png +../../data/yoloGtold1/train/64742.png +../../data/yoloGtold1/train/64743.png +../../data/yoloGtold1/train/64744.png +../../data/yoloGtold1/train/64745.png +../../data/yoloGtold1/train/64746.png +../../data/yoloGtold1/train/64747.png +../../data/yoloGtold1/train/64748.png +../../data/yoloGtold1/train/64749.png +../../data/yoloGtold1/train/64750.png +../../data/yoloGtold1/train/64751.png +../../data/yoloGtold1/train/64752.png +../../data/yoloGtold1/train/64753.png +../../data/yoloGtold1/train/64754.png +../../data/yoloGtold1/train/64755.png +../../data/yoloGtold1/train/64756.png +../../data/yoloGtold1/train/64757.png +../../data/yoloGtold1/train/64758.png +../../data/yoloGtold1/train/64759.png +../../data/yoloGtold1/train/64760.png +../../data/yoloGtold1/train/64761.png +../../data/yoloGtold1/train/64762.png +../../data/yoloGtold1/train/64763.png +../../data/yoloGtold1/train/64764.png +../../data/yoloGtold1/train/64765.png +../../data/yoloGtold1/train/64766.png +../../data/yoloGtold1/train/64767.png +../../data/yoloGtold1/train/64768.png +../../data/yoloGtold1/train/64769.png +../../data/yoloGtold1/train/64770.png +../../data/yoloGtold1/train/64771.png +../../data/yoloGtold1/train/64772.png +../../data/yoloGtold1/train/64773.png +../../data/yoloGtold1/train/64774.png +../../data/yoloGtold1/train/64775.png +../../data/yoloGtold1/train/64776.png +../../data/yoloGtold1/train/64777.png +../../data/yoloGtold1/train/64778.png +../../data/yoloGtold1/train/64779.png +../../data/yoloGtold1/train/64780.png +../../data/yoloGtold1/train/64781.png +../../data/yoloGtold1/train/64782.png +../../data/yoloGtold1/train/64783.png +../../data/yoloGtold1/train/64784.png +../../data/yoloGtold1/train/64785.png +../../data/yoloGtold1/train/64786.png +../../data/yoloGtold1/train/64787.png +../../data/yoloGtold1/train/64788.png +../../data/yoloGtold1/train/64789.png +../../data/yoloGtold1/train/64790.png +../../data/yoloGtold1/train/64791.png +../../data/yoloGtold1/train/64792.png +../../data/yoloGtold1/train/64793.png +../../data/yoloGtold1/train/64794.png +../../data/yoloGtold1/train/64795.png +../../data/yoloGtold1/train/64796.png +../../data/yoloGtold1/train/64797.png +../../data/yoloGtold1/train/64798.png +../../data/yoloGtold1/train/64799.png +../../data/yoloGtold1/train/64800.png +../../data/yoloGtold1/train/64801.png +../../data/yoloGtold1/train/64802.png +../../data/yoloGtold1/train/64803.png +../../data/yoloGtold1/train/64804.png +../../data/yoloGtold1/train/64805.png +../../data/yoloGtold1/train/64806.png +../../data/yoloGtold1/train/64807.png +../../data/yoloGtold1/train/64808.png +../../data/yoloGtold1/train/64809.png +../../data/yoloGtold1/train/64810.png +../../data/yoloGtold1/train/64811.png +../../data/yoloGtold1/train/64812.png +../../data/yoloGtold1/train/64813.png +../../data/yoloGtold1/train/64814.png +../../data/yoloGtold1/train/64815.png +../../data/yoloGtold1/train/64816.png +../../data/yoloGtold1/train/64817.png +../../data/yoloGtold1/train/64818.png +../../data/yoloGtold1/train/64819.png +../../data/yoloGtold1/train/64820.png +../../data/yoloGtold1/train/64821.png +../../data/yoloGtold1/train/64822.png +../../data/yoloGtold1/train/64823.png +../../data/yoloGtold1/train/64824.png +../../data/yoloGtold1/train/64825.png +../../data/yoloGtold1/train/64826.png +../../data/yoloGtold1/train/64827.png +../../data/yoloGtold1/train/64828.png +../../data/yoloGtold1/train/64829.png +../../data/yoloGtold1/train/64830.png +../../data/yoloGtold1/train/64831.png +../../data/yoloGtold1/train/64832.png +../../data/yoloGtold1/train/64833.png +../../data/yoloGtold1/train/64834.png +../../data/yoloGtold1/train/64835.png +../../data/yoloGtold1/train/64836.png +../../data/yoloGtold1/train/64837.png +../../data/yoloGtold1/train/64838.png +../../data/yoloGtold1/train/64839.png +../../data/yoloGtold1/train/64840.png +../../data/yoloGtold1/train/64841.png +../../data/yoloGtold1/train/64842.png +../../data/yoloGtold1/train/64843.png +../../data/yoloGtold1/train/64844.png +../../data/yoloGtold1/train/64845.png +../../data/yoloGtold1/train/64846.png +../../data/yoloGtold1/train/64847.png +../../data/yoloGtold1/train/64848.png +../../data/yoloGtold1/train/64849.png +../../data/yoloGtold1/train/64850.png +../../data/yoloGtold1/train/64851.png +../../data/yoloGtold1/train/64852.png +../../data/yoloGtold1/train/64853.png +../../data/yoloGtold1/train/64854.png +../../data/yoloGtold1/train/64855.png +../../data/yoloGtold1/train/64856.png +../../data/yoloGtold1/train/64857.png +../../data/yoloGtold1/train/64858.png +../../data/yoloGtold1/train/64859.png +../../data/yoloGtold1/train/64860.png +../../data/yoloGtold1/train/64861.png +../../data/yoloGtold1/train/64862.png +../../data/yoloGtold1/train/64863.png +../../data/yoloGtold1/train/64864.png +../../data/yoloGtold1/train/64865.png +../../data/yoloGtold1/train/64866.png +../../data/yoloGtold1/train/64867.png +../../data/yoloGtold1/train/64868.png +../../data/yoloGtold1/train/64869.png +../../data/yoloGtold1/train/64870.png +../../data/yoloGtold1/train/64871.png +../../data/yoloGtold1/train/64872.png +../../data/yoloGtold1/train/64873.png +../../data/yoloGtold1/train/64874.png +../../data/yoloGtold1/train/64875.png +../../data/yoloGtold1/train/64876.png +../../data/yoloGtold1/train/64877.png +../../data/yoloGtold1/train/64878.png +../../data/yoloGtold1/train/64879.png +../../data/yoloGtold1/train/64880.png +../../data/yoloGtold1/train/64881.png +../../data/yoloGtold1/train/64882.png +../../data/yoloGtold1/train/64883.png +../../data/yoloGtold1/train/64884.png +../../data/yoloGtold1/train/64885.png +../../data/yoloGtold1/train/64886.png +../../data/yoloGtold1/train/64887.png +../../data/yoloGtold1/train/64888.png +../../data/yoloGtold1/train/64889.png +../../data/yoloGtold1/train/64890.png +../../data/yoloGtold1/train/64891.png +../../data/yoloGtold1/train/64892.png +../../data/yoloGtold1/train/64893.png +../../data/yoloGtold1/train/64894.png +../../data/yoloGtold1/train/64895.png +../../data/yoloGtold1/train/64896.png +../../data/yoloGtold1/train/64897.png +../../data/yoloGtold1/train/64898.png +../../data/yoloGtold1/train/64899.png +../../data/yoloGtold1/train/64900.png +../../data/yoloGtold1/train/64901.png +../../data/yoloGtold1/train/64902.png +../../data/yoloGtold1/train/64903.png +../../data/yoloGtold1/train/64904.png +../../data/yoloGtold1/train/64905.png +../../data/yoloGtold1/train/64906.png +../../data/yoloGtold1/train/64907.png +../../data/yoloGtold1/train/64908.png +../../data/yoloGtold1/train/64909.png +../../data/yoloGtold1/train/64910.png +../../data/yoloGtold1/train/64911.png +../../data/yoloGtold1/train/64912.png +../../data/yoloGtold1/train/64913.png +../../data/yoloGtold1/train/64914.png +../../data/yoloGtold1/train/64915.png +../../data/yoloGtold1/train/64916.png +../../data/yoloGtold1/train/64917.png +../../data/yoloGtold1/train/64918.png +../../data/yoloGtold1/train/64919.png +../../data/yoloGtold1/train/64920.png +../../data/yoloGtold1/train/64921.png +../../data/yoloGtold1/train/64922.png +../../data/yoloGtold1/train/64923.png +../../data/yoloGtold1/train/64924.png +../../data/yoloGtold1/train/64925.png +../../data/yoloGtold1/train/64926.png +../../data/yoloGtold1/train/64927.png +../../data/yoloGtold1/train/64928.png +../../data/yoloGtold1/train/64929.png +../../data/yoloGtold1/train/64930.png +../../data/yoloGtold1/train/64931.png +../../data/yoloGtold1/train/64932.png +../../data/yoloGtold1/train/64933.png +../../data/yoloGtold1/train/64934.png +../../data/yoloGtold1/train/64935.png +../../data/yoloGtold1/train/64936.png +../../data/yoloGtold1/train/64937.png +../../data/yoloGtold1/train/64938.png +../../data/yoloGtold1/train/64939.png +../../data/yoloGtold1/train/64940.png +../../data/yoloGtold1/train/64941.png +../../data/yoloGtold1/train/64942.png +../../data/yoloGtold1/train/64943.png +../../data/yoloGtold1/train/64944.png +../../data/yoloGtold1/train/64945.png +../../data/yoloGtold1/train/64946.png +../../data/yoloGtold1/train/64947.png +../../data/yoloGtold1/train/64948.png +../../data/yoloGtold1/train/64949.png +../../data/yoloGtold1/train/64950.png +../../data/yoloGtold1/train/64951.png +../../data/yoloGtold1/train/64952.png +../../data/yoloGtold1/train/64953.png +../../data/yoloGtold1/train/64954.png +../../data/yoloGtold1/train/64955.png +../../data/yoloGtold1/train/64956.png +../../data/yoloGtold1/train/64957.png +../../data/yoloGtold1/train/64958.png +../../data/yoloGtold1/train/64959.png +../../data/yoloGtold1/train/64960.png +../../data/yoloGtold1/train/64961.png +../../data/yoloGtold1/train/64962.png +../../data/yoloGtold1/train/64963.png +../../data/yoloGtold1/train/64964.png +../../data/yoloGtold1/train/64965.png +../../data/yoloGtold1/train/64966.png +../../data/yoloGtold1/train/64967.png +../../data/yoloGtold1/train/64968.png +../../data/yoloGtold1/train/64969.png +../../data/yoloGtold1/train/64970.png +../../data/yoloGtold1/train/64971.png +../../data/yoloGtold1/train/64972.png +../../data/yoloGtold1/train/64973.png +../../data/yoloGtold1/train/64974.png +../../data/yoloGtold1/train/64975.png +../../data/yoloGtold1/train/64976.png +../../data/yoloGtold1/train/64977.png +../../data/yoloGtold1/train/64978.png +../../data/yoloGtold1/train/64979.png +../../data/yoloGtold1/train/64980.png +../../data/yoloGtold1/train/64981.png +../../data/yoloGtold1/train/64982.png +../../data/yoloGtold1/train/64983.png +../../data/yoloGtold1/train/64984.png +../../data/yoloGtold1/train/64985.png +../../data/yoloGtold1/train/64986.png +../../data/yoloGtold1/train/64987.png +../../data/yoloGtold1/train/64988.png +../../data/yoloGtold1/train/64989.png +../../data/yoloGtold1/train/64990.png +../../data/yoloGtold1/train/64991.png +../../data/yoloGtold1/train/64992.png +../../data/yoloGtold1/train/64993.png +../../data/yoloGtold1/train/64994.png +../../data/yoloGtold1/train/64995.png +../../data/yoloGtold1/train/64996.png +../../data/yoloGtold1/train/64997.png +../../data/yoloGtold1/train/64998.png +../../data/yoloGtold1/train/64999.png +../../data/yoloGtold1/train/65000.png +../../data/yoloGtold1/train/65001.png +../../data/yoloGtold1/train/65002.png +../../data/yoloGtold1/train/65003.png +../../data/yoloGtold1/train/65004.png +../../data/yoloGtold1/train/65005.png +../../data/yoloGtold1/train/65006.png +../../data/yoloGtold1/train/65007.png +../../data/yoloGtold1/train/65008.png +../../data/yoloGtold1/train/65009.png +../../data/yoloGtold1/train/65010.png +../../data/yoloGtold1/train/65011.png +../../data/yoloGtold1/train/65012.png +../../data/yoloGtold1/train/65013.png +../../data/yoloGtold1/train/65014.png +../../data/yoloGtold1/train/65015.png +../../data/yoloGtold1/train/65016.png +../../data/yoloGtold1/train/65017.png +../../data/yoloGtold1/train/65018.png +../../data/yoloGtold1/train/65019.png +../../data/yoloGtold1/train/65020.png +../../data/yoloGtold1/train/65021.png +../../data/yoloGtold1/train/65022.png +../../data/yoloGtold1/train/65023.png +../../data/yoloGtold1/train/65024.png +../../data/yoloGtold1/train/65025.png +../../data/yoloGtold1/train/65026.png +../../data/yoloGtold1/train/65027.png +../../data/yoloGtold1/train/65028.png +../../data/yoloGtold1/train/65029.png +../../data/yoloGtold1/train/65030.png +../../data/yoloGtold1/train/65031.png +../../data/yoloGtold1/train/65032.png +../../data/yoloGtold1/train/65033.png +../../data/yoloGtold1/train/65034.png +../../data/yoloGtold1/train/65035.png +../../data/yoloGtold1/train/65036.png +../../data/yoloGtold1/train/65037.png +../../data/yoloGtold1/train/65038.png +../../data/yoloGtold1/train/65039.png +../../data/yoloGtold1/train/65040.png +../../data/yoloGtold1/train/65041.png +../../data/yoloGtold1/train/65042.png +../../data/yoloGtold1/train/65043.png +../../data/yoloGtold1/train/65044.png +../../data/yoloGtold1/train/65045.png +../../data/yoloGtold1/train/65046.png +../../data/yoloGtold1/train/65047.png +../../data/yoloGtold1/train/65048.png +../../data/yoloGtold1/train/65049.png +../../data/yoloGtold1/train/65050.png +../../data/yoloGtold1/train/65051.png +../../data/yoloGtold1/train/65052.png +../../data/yoloGtold1/train/65053.png +../../data/yoloGtold1/train/65054.png +../../data/yoloGtold1/train/65055.png +../../data/yoloGtold1/train/65056.png +../../data/yoloGtold1/train/65057.png +../../data/yoloGtold1/train/65058.png +../../data/yoloGtold1/train/65059.png +../../data/yoloGtold1/train/65060.png +../../data/yoloGtold1/train/65061.png +../../data/yoloGtold1/train/65062.png +../../data/yoloGtold1/train/65063.png +../../data/yoloGtold1/train/65064.png +../../data/yoloGtold1/train/65065.png +../../data/yoloGtold1/train/65066.png +../../data/yoloGtold1/train/65067.png +../../data/yoloGtold1/train/65068.png +../../data/yoloGtold1/train/65069.png +../../data/yoloGtold1/train/65070.png +../../data/yoloGtold1/train/65071.png +../../data/yoloGtold1/train/65072.png +../../data/yoloGtold1/train/65073.png +../../data/yoloGtold1/train/65074.png +../../data/yoloGtold1/train/65075.png +../../data/yoloGtold1/train/65076.png +../../data/yoloGtold1/train/65077.png +../../data/yoloGtold1/train/65078.png +../../data/yoloGtold1/train/65079.png +../../data/yoloGtold1/train/65080.png +../../data/yoloGtold1/train/65081.png +../../data/yoloGtold1/train/65082.png +../../data/yoloGtold1/train/65083.png +../../data/yoloGtold1/train/65084.png +../../data/yoloGtold1/train/65085.png +../../data/yoloGtold1/train/65086.png +../../data/yoloGtold1/train/65087.png +../../data/yoloGtold1/train/65088.png +../../data/yoloGtold1/train/65089.png +../../data/yoloGtold1/train/65090.png +../../data/yoloGtold1/train/65091.png +../../data/yoloGtold1/train/65092.png +../../data/yoloGtold1/train/65093.png +../../data/yoloGtold1/train/65094.png +../../data/yoloGtold1/train/65095.png +../../data/yoloGtold1/train/65096.png +../../data/yoloGtold1/train/65097.png +../../data/yoloGtold1/train/65098.png +../../data/yoloGtold1/train/65099.png +../../data/yoloGtold1/train/65100.png +../../data/yoloGtold1/train/65101.png +../../data/yoloGtold1/train/65102.png +../../data/yoloGtold1/train/65103.png +../../data/yoloGtold1/train/65104.png +../../data/yoloGtold1/train/65105.png +../../data/yoloGtold1/train/65106.png +../../data/yoloGtold1/train/65107.png +../../data/yoloGtold1/train/65108.png +../../data/yoloGtold1/train/65109.png +../../data/yoloGtold1/train/65110.png +../../data/yoloGtold1/train/65111.png +../../data/yoloGtold1/train/65112.png +../../data/yoloGtold1/train/65113.png +../../data/yoloGtold1/train/65114.png +../../data/yoloGtold1/train/65115.png +../../data/yoloGtold1/train/65116.png +../../data/yoloGtold1/train/65117.png +../../data/yoloGtold1/train/65118.png +../../data/yoloGtold1/train/65119.png +../../data/yoloGtold1/train/65120.png +../../data/yoloGtold1/train/65121.png +../../data/yoloGtold1/train/65122.png +../../data/yoloGtold1/train/65123.png +../../data/yoloGtold1/train/65124.png +../../data/yoloGtold1/train/65125.png +../../data/yoloGtold1/train/65126.png +../../data/yoloGtold1/train/65127.png +../../data/yoloGtold1/train/65128.png +../../data/yoloGtold1/train/65129.png +../../data/yoloGtold1/train/65130.png +../../data/yoloGtold1/train/65131.png +../../data/yoloGtold1/train/65132.png +../../data/yoloGtold1/train/65133.png +../../data/yoloGtold1/train/65134.png +../../data/yoloGtold1/train/65135.png +../../data/yoloGtold1/train/65136.png +../../data/yoloGtold1/train/65137.png +../../data/yoloGtold1/train/65138.png +../../data/yoloGtold1/train/65139.png +../../data/yoloGtold1/train/65140.png +../../data/yoloGtold1/train/65141.png +../../data/yoloGtold1/train/65142.png +../../data/yoloGtold1/train/65143.png +../../data/yoloGtold1/train/65144.png +../../data/yoloGtold1/train/65145.png +../../data/yoloGtold1/train/65146.png +../../data/yoloGtold1/train/65147.png +../../data/yoloGtold1/train/65148.png +../../data/yoloGtold1/train/65149.png +../../data/yoloGtold1/train/65150.png +../../data/yoloGtold1/train/65151.png +../../data/yoloGtold1/train/65152.png +../../data/yoloGtold1/train/65153.png +../../data/yoloGtold1/train/65154.png +../../data/yoloGtold1/train/65155.png +../../data/yoloGtold1/train/65156.png +../../data/yoloGtold1/train/65157.png +../../data/yoloGtold1/train/65158.png +../../data/yoloGtold1/train/65159.png +../../data/yoloGtold1/train/65160.png +../../data/yoloGtold1/train/65161.png +../../data/yoloGtold1/train/65162.png +../../data/yoloGtold1/train/65163.png +../../data/yoloGtold1/train/65164.png +../../data/yoloGtold1/train/65165.png +../../data/yoloGtold1/train/65166.png +../../data/yoloGtold1/train/65167.png +../../data/yoloGtold1/train/65168.png +../../data/yoloGtold1/train/65169.png +../../data/yoloGtold1/train/65170.png +../../data/yoloGtold1/train/65171.png +../../data/yoloGtold1/train/65172.png +../../data/yoloGtold1/train/65173.png +../../data/yoloGtold1/train/65174.png +../../data/yoloGtold1/train/65175.png +../../data/yoloGtold1/train/65176.png +../../data/yoloGtold1/train/65177.png +../../data/yoloGtold1/train/65178.png +../../data/yoloGtold1/train/65179.png +../../data/yoloGtold1/train/65180.png +../../data/yoloGtold1/train/65181.png +../../data/yoloGtold1/train/65182.png +../../data/yoloGtold1/train/65183.png +../../data/yoloGtold1/train/65184.png +../../data/yoloGtold1/train/65185.png +../../data/yoloGtold1/train/65186.png +../../data/yoloGtold1/train/65187.png +../../data/yoloGtold1/train/65188.png +../../data/yoloGtold1/train/65189.png +../../data/yoloGtold1/train/65190.png +../../data/yoloGtold1/train/65191.png +../../data/yoloGtold1/train/65192.png +../../data/yoloGtold1/train/65193.png +../../data/yoloGtold1/train/65194.png +../../data/yoloGtold1/train/65195.png +../../data/yoloGtold1/train/65196.png +../../data/yoloGtold1/train/65197.png +../../data/yoloGtold1/train/65198.png +../../data/yoloGtold1/train/65199.png +../../data/yoloGtold1/train/65200.png +../../data/yoloGtold1/train/65201.png +../../data/yoloGtold1/train/65202.png +../../data/yoloGtold1/train/65203.png +../../data/yoloGtold1/train/65204.png +../../data/yoloGtold1/train/65205.png +../../data/yoloGtold1/train/65206.png +../../data/yoloGtold1/train/65207.png +../../data/yoloGtold1/train/65208.png +../../data/yoloGtold1/train/65209.png +../../data/yoloGtold1/train/65210.png +../../data/yoloGtold1/train/65211.png +../../data/yoloGtold1/train/65212.png +../../data/yoloGtold1/train/65213.png +../../data/yoloGtold1/train/65214.png +../../data/yoloGtold1/train/65215.png +../../data/yoloGtold1/train/65216.png +../../data/yoloGtold1/train/65217.png +../../data/yoloGtold1/train/65218.png +../../data/yoloGtold1/train/65219.png +../../data/yoloGtold1/train/65220.png +../../data/yoloGtold1/train/65221.png +../../data/yoloGtold1/train/65222.png +../../data/yoloGtold1/train/65223.png +../../data/yoloGtold1/train/65224.png +../../data/yoloGtold1/train/65225.png +../../data/yoloGtold1/train/65226.png +../../data/yoloGtold1/train/65227.png +../../data/yoloGtold1/train/65228.png +../../data/yoloGtold1/train/65229.png +../../data/yoloGtold1/train/65230.png +../../data/yoloGtold1/train/65231.png +../../data/yoloGtold1/train/65232.png +../../data/yoloGtold1/train/65233.png +../../data/yoloGtold1/train/65234.png +../../data/yoloGtold1/train/65235.png +../../data/yoloGtold1/train/65236.png +../../data/yoloGtold1/train/65237.png +../../data/yoloGtold1/train/65238.png +../../data/yoloGtold1/train/65239.png +../../data/yoloGtold1/train/65240.png +../../data/yoloGtold1/train/65241.png +../../data/yoloGtold1/train/65242.png +../../data/yoloGtold1/train/65243.png +../../data/yoloGtold1/train/65244.png +../../data/yoloGtold1/train/65245.png +../../data/yoloGtold1/train/65246.png +../../data/yoloGtold1/train/65247.png +../../data/yoloGtold1/train/65248.png +../../data/yoloGtold1/train/65249.png +../../data/yoloGtold1/train/65250.png +../../data/yoloGtold1/train/65251.png +../../data/yoloGtold1/train/65252.png +../../data/yoloGtold1/train/65253.png +../../data/yoloGtold1/train/65254.png +../../data/yoloGtold1/train/65255.png +../../data/yoloGtold1/train/65256.png +../../data/yoloGtold1/train/65257.png +../../data/yoloGtold1/train/65258.png +../../data/yoloGtold1/train/65259.png +../../data/yoloGtold1/train/65260.png +../../data/yoloGtold1/train/65261.png +../../data/yoloGtold1/train/65262.png +../../data/yoloGtold1/train/65263.png +../../data/yoloGtold1/train/65264.png +../../data/yoloGtold1/train/65265.png +../../data/yoloGtold1/train/65266.png +../../data/yoloGtold1/train/65267.png +../../data/yoloGtold1/train/65268.png +../../data/yoloGtold1/train/65269.png +../../data/yoloGtold1/train/65270.png +../../data/yoloGtold1/train/65271.png +../../data/yoloGtold1/train/65272.png +../../data/yoloGtold1/train/65273.png +../../data/yoloGtold1/train/65274.png +../../data/yoloGtold1/train/65275.png +../../data/yoloGtold1/train/65276.png +../../data/yoloGtold1/train/65277.png +../../data/yoloGtold1/train/65278.png +../../data/yoloGtold1/train/65279.png +../../data/yoloGtold1/train/65280.png +../../data/yoloGtold1/train/65281.png +../../data/yoloGtold1/train/65282.png +../../data/yoloGtold1/train/65283.png +../../data/yoloGtold1/train/65284.png +../../data/yoloGtold1/train/65285.png +../../data/yoloGtold1/train/65286.png +../../data/yoloGtold1/train/65287.png +../../data/yoloGtold1/train/65288.png +../../data/yoloGtold1/train/65289.png +../../data/yoloGtold1/train/65290.png +../../data/yoloGtold1/train/65291.png +../../data/yoloGtold1/train/65292.png +../../data/yoloGtold1/train/65293.png +../../data/yoloGtold1/train/65294.png +../../data/yoloGtold1/train/65295.png +../../data/yoloGtold1/train/65296.png +../../data/yoloGtold1/train/65297.png +../../data/yoloGtold1/train/65298.png +../../data/yoloGtold1/train/65299.png +../../data/yoloGtold1/train/65300.png +../../data/yoloGtold1/train/65301.png +../../data/yoloGtold1/train/65302.png +../../data/yoloGtold1/train/65303.png +../../data/yoloGtold1/train/65304.png +../../data/yoloGtold1/train/65305.png +../../data/yoloGtold1/train/65306.png +../../data/yoloGtold1/train/65307.png +../../data/yoloGtold1/train/65308.png +../../data/yoloGtold1/train/65309.png +../../data/yoloGtold1/train/65310.png +../../data/yoloGtold1/train/65311.png +../../data/yoloGtold1/train/65312.png +../../data/yoloGtold1/train/65313.png +../../data/yoloGtold1/train/65314.png +../../data/yoloGtold1/train/65315.png +../../data/yoloGtold1/train/65316.png +../../data/yoloGtold1/train/65317.png +../../data/yoloGtold1/train/65318.png +../../data/yoloGtold1/train/65319.png +../../data/yoloGtold1/train/65320.png +../../data/yoloGtold1/train/65321.png +../../data/yoloGtold1/train/65322.png +../../data/yoloGtold1/train/65323.png +../../data/yoloGtold1/train/65324.png +../../data/yoloGtold1/train/65325.png +../../data/yoloGtold1/train/65326.png +../../data/yoloGtold1/train/65327.png +../../data/yoloGtold1/train/65328.png +../../data/yoloGtold1/train/65329.png +../../data/yoloGtold1/train/65330.png +../../data/yoloGtold1/train/65331.png +../../data/yoloGtold1/train/65332.png +../../data/yoloGtold1/train/65333.png +../../data/yoloGtold1/train/65334.png +../../data/yoloGtold1/train/65335.png +../../data/yoloGtold1/train/65336.png +../../data/yoloGtold1/train/65337.png +../../data/yoloGtold1/train/65338.png +../../data/yoloGtold1/train/65339.png +../../data/yoloGtold1/train/65340.png +../../data/yoloGtold1/train/65341.png +../../data/yoloGtold1/train/65342.png +../../data/yoloGtold1/train/65343.png +../../data/yoloGtold1/train/65344.png +../../data/yoloGtold1/train/65345.png +../../data/yoloGtold1/train/65346.png +../../data/yoloGtold1/train/65347.png +../../data/yoloGtold1/train/65348.png +../../data/yoloGtold1/train/65349.png +../../data/yoloGtold1/train/65350.png +../../data/yoloGtold1/train/65351.png +../../data/yoloGtold1/train/65352.png +../../data/yoloGtold1/train/65353.png +../../data/yoloGtold1/train/65354.png +../../data/yoloGtold1/train/65355.png +../../data/yoloGtold1/train/65356.png +../../data/yoloGtold1/train/65357.png +../../data/yoloGtold1/train/65358.png +../../data/yoloGtold1/train/65359.png +../../data/yoloGtold1/train/65360.png +../../data/yoloGtold1/train/65361.png +../../data/yoloGtold1/train/65362.png +../../data/yoloGtold1/train/65363.png +../../data/yoloGtold1/train/65364.png +../../data/yoloGtold1/train/65365.png +../../data/yoloGtold1/train/65366.png +../../data/yoloGtold1/train/65367.png +../../data/yoloGtold1/train/65368.png +../../data/yoloGtold1/train/65369.png +../../data/yoloGtold1/train/65370.png +../../data/yoloGtold1/train/65371.png +../../data/yoloGtold1/train/65372.png +../../data/yoloGtold1/train/65373.png +../../data/yoloGtold1/train/65374.png +../../data/yoloGtold1/train/65375.png +../../data/yoloGtold1/train/65376.png +../../data/yoloGtold1/train/65377.png +../../data/yoloGtold1/train/65378.png +../../data/yoloGtold1/train/65379.png +../../data/yoloGtold1/train/65380.png +../../data/yoloGtold1/train/65381.png +../../data/yoloGtold1/train/65382.png +../../data/yoloGtold1/train/65383.png +../../data/yoloGtold1/train/65384.png +../../data/yoloGtold1/train/65385.png +../../data/yoloGtold1/train/65386.png +../../data/yoloGtold1/train/65387.png +../../data/yoloGtold1/train/65388.png +../../data/yoloGtold1/train/65389.png +../../data/yoloGtold1/train/65390.png +../../data/yoloGtold1/train/65391.png +../../data/yoloGtold1/train/65392.png +../../data/yoloGtold1/train/65393.png +../../data/yoloGtold1/train/65394.png +../../data/yoloGtold1/train/65395.png +../../data/yoloGtold1/train/65396.png +../../data/yoloGtold1/train/65397.png +../../data/yoloGtold1/train/65398.png +../../data/yoloGtold1/train/65399.png +../../data/yoloGtold1/train/65400.png +../../data/yoloGtold1/train/65401.png +../../data/yoloGtold1/train/65402.png +../../data/yoloGtold1/train/65403.png +../../data/yoloGtold1/train/65404.png +../../data/yoloGtold1/train/65405.png +../../data/yoloGtold1/train/65406.png +../../data/yoloGtold1/train/65407.png +../../data/yoloGtold1/train/65408.png +../../data/yoloGtold1/train/65409.png +../../data/yoloGtold1/train/65410.png +../../data/yoloGtold1/train/65411.png +../../data/yoloGtold1/train/65412.png +../../data/yoloGtold1/train/65413.png +../../data/yoloGtold1/train/65414.png +../../data/yoloGtold1/train/65415.png +../../data/yoloGtold1/train/65416.png +../../data/yoloGtold1/train/65417.png +../../data/yoloGtold1/train/65418.png +../../data/yoloGtold1/train/65419.png +../../data/yoloGtold1/train/65420.png +../../data/yoloGtold1/train/65421.png +../../data/yoloGtold1/train/65422.png +../../data/yoloGtold1/train/65423.png +../../data/yoloGtold1/train/65424.png +../../data/yoloGtold1/train/65425.png +../../data/yoloGtold1/train/65426.png +../../data/yoloGtold1/train/65427.png +../../data/yoloGtold1/train/65428.png +../../data/yoloGtold1/train/65429.png +../../data/yoloGtold1/train/65430.png +../../data/yoloGtold1/train/65431.png +../../data/yoloGtold1/train/65432.png +../../data/yoloGtold1/train/65433.png +../../data/yoloGtold1/train/65434.png +../../data/yoloGtold1/train/65435.png +../../data/yoloGtold1/train/65436.png +../../data/yoloGtold1/train/65437.png +../../data/yoloGtold1/train/65438.png +../../data/yoloGtold1/train/65439.png +../../data/yoloGtold1/train/65440.png +../../data/yoloGtold1/train/65441.png +../../data/yoloGtold1/train/65442.png +../../data/yoloGtold1/train/65443.png +../../data/yoloGtold1/train/65444.png +../../data/yoloGtold1/train/65445.png +../../data/yoloGtold1/train/65446.png +../../data/yoloGtold1/train/65447.png +../../data/yoloGtold1/train/65448.png +../../data/yoloGtold1/train/65449.png +../../data/yoloGtold1/train/65450.png +../../data/yoloGtold1/train/65451.png +../../data/yoloGtold1/train/65452.png +../../data/yoloGtold1/train/65453.png +../../data/yoloGtold1/train/65454.png +../../data/yoloGtold1/train/65455.png +../../data/yoloGtold1/train/65456.png +../../data/yoloGtold1/train/65457.png +../../data/yoloGtold1/train/65458.png +../../data/yoloGtold1/train/65459.png +../../data/yoloGtold1/train/65460.png +../../data/yoloGtold1/train/65461.png +../../data/yoloGtold1/train/65462.png +../../data/yoloGtold1/train/65463.png +../../data/yoloGtold1/train/65464.png +../../data/yoloGtold1/train/65465.png +../../data/yoloGtold1/train/65466.png +../../data/yoloGtold1/train/65467.png +../../data/yoloGtold1/train/65468.png +../../data/yoloGtold1/train/65469.png +../../data/yoloGtold1/train/65470.png +../../data/yoloGtold1/train/65471.png +../../data/yoloGtold1/train/65472.png +../../data/yoloGtold1/train/65473.png +../../data/yoloGtold1/train/65474.png +../../data/yoloGtold1/train/65475.png +../../data/yoloGtold1/train/65476.png +../../data/yoloGtold1/train/65477.png +../../data/yoloGtold1/train/65478.png +../../data/yoloGtold1/train/65479.png +../../data/yoloGtold1/train/65480.png +../../data/yoloGtold1/train/65481.png +../../data/yoloGtold1/train/65482.png +../../data/yoloGtold1/train/65483.png +../../data/yoloGtold1/train/65484.png +../../data/yoloGtold1/train/65485.png +../../data/yoloGtold1/train/65486.png +../../data/yoloGtold1/train/65487.png +../../data/yoloGtold1/train/65488.png +../../data/yoloGtold1/train/65489.png +../../data/yoloGtold1/train/65490.png +../../data/yoloGtold1/train/65491.png +../../data/yoloGtold1/train/65492.png +../../data/yoloGtold1/train/65493.png +../../data/yoloGtold1/train/65494.png +../../data/yoloGtold1/train/65495.png +../../data/yoloGtold1/train/65496.png +../../data/yoloGtold1/train/65497.png +../../data/yoloGtold1/train/65498.png +../../data/yoloGtold1/train/65499.png +../../data/yoloGtold1/train/65500.png +../../data/yoloGtold1/train/65501.png +../../data/yoloGtold1/train/65502.png +../../data/yoloGtold1/train/65503.png +../../data/yoloGtold1/train/65504.png +../../data/yoloGtold1/train/65505.png +../../data/yoloGtold1/train/65506.png +../../data/yoloGtold1/train/65507.png +../../data/yoloGtold1/train/65508.png +../../data/yoloGtold1/train/65509.png +../../data/yoloGtold1/train/65510.png +../../data/yoloGtold1/train/65511.png +../../data/yoloGtold1/train/65512.png +../../data/yoloGtold1/train/65513.png +../../data/yoloGtold1/train/65514.png +../../data/yoloGtold1/train/65515.png +../../data/yoloGtold1/train/65516.png +../../data/yoloGtold1/train/65517.png +../../data/yoloGtold1/train/65518.png +../../data/yoloGtold1/train/65519.png +../../data/yoloGtold1/train/65520.png +../../data/yoloGtold1/train/65521.png +../../data/yoloGtold1/train/65522.png +../../data/yoloGtold1/train/65523.png +../../data/yoloGtold1/train/65524.png +../../data/yoloGtold1/train/65525.png +../../data/yoloGtold1/train/65526.png +../../data/yoloGtold1/train/65527.png +../../data/yoloGtold1/train/65528.png +../../data/yoloGtold1/train/65529.png +../../data/yoloGtold1/train/65530.png +../../data/yoloGtold1/train/65531.png +../../data/yoloGtold1/train/65532.png +../../data/yoloGtold1/train/65533.png +../../data/yoloGtold1/train/65534.png +../../data/yoloGtold1/train/65535.png +../../data/yoloGtold1/train/65536.png +../../data/yoloGtold1/train/65537.png +../../data/yoloGtold1/train/65538.png +../../data/yoloGtold1/train/65539.png +../../data/yoloGtold1/train/65540.png +../../data/yoloGtold1/train/65541.png +../../data/yoloGtold1/train/65542.png +../../data/yoloGtold1/train/65543.png +../../data/yoloGtold1/train/65544.png +../../data/yoloGtold1/train/65545.png +../../data/yoloGtold1/train/65546.png +../../data/yoloGtold1/train/65547.png +../../data/yoloGtold1/train/65548.png +../../data/yoloGtold1/train/65549.png +../../data/yoloGtold1/train/65550.png +../../data/yoloGtold1/train/65551.png +../../data/yoloGtold1/train/65552.png +../../data/yoloGtold1/train/65553.png +../../data/yoloGtold1/train/65554.png +../../data/yoloGtold1/train/65555.png +../../data/yoloGtold1/train/65556.png +../../data/yoloGtold1/train/65557.png +../../data/yoloGtold1/train/65558.png +../../data/yoloGtold1/train/65559.png +../../data/yoloGtold1/train/65560.png +../../data/yoloGtold1/train/65561.png +../../data/yoloGtold1/train/65562.png +../../data/yoloGtold1/train/65563.png +../../data/yoloGtold1/train/65564.png +../../data/yoloGtold1/train/65565.png +../../data/yoloGtold1/train/65566.png +../../data/yoloGtold1/train/65567.png +../../data/yoloGtold1/train/65568.png +../../data/yoloGtold1/train/65569.png +../../data/yoloGtold1/train/65570.png +../../data/yoloGtold1/train/65571.png +../../data/yoloGtold1/train/65572.png +../../data/yoloGtold1/train/65573.png +../../data/yoloGtold1/train/65574.png +../../data/yoloGtold1/train/65575.png +../../data/yoloGtold1/train/65576.png +../../data/yoloGtold1/train/65577.png +../../data/yoloGtold1/train/65578.png +../../data/yoloGtold1/train/65579.png +../../data/yoloGtold1/train/65580.png +../../data/yoloGtold1/train/65581.png +../../data/yoloGtold1/train/65582.png +../../data/yoloGtold1/train/65583.png +../../data/yoloGtold1/train/65584.png +../../data/yoloGtold1/train/65585.png +../../data/yoloGtold1/train/65586.png +../../data/yoloGtold1/train/65587.png +../../data/yoloGtold1/train/65588.png +../../data/yoloGtold1/train/65589.png +../../data/yoloGtold1/train/65590.png +../../data/yoloGtold1/train/65591.png +../../data/yoloGtold1/train/65592.png +../../data/yoloGtold1/train/65593.png +../../data/yoloGtold1/train/65594.png +../../data/yoloGtold1/train/65595.png +../../data/yoloGtold1/train/65596.png +../../data/yoloGtold1/train/65597.png +../../data/yoloGtold1/train/65598.png +../../data/yoloGtold1/train/65599.png +../../data/yoloGtold1/train/65600.png +../../data/yoloGtold1/train/65601.png +../../data/yoloGtold1/train/65602.png +../../data/yoloGtold1/train/65603.png +../../data/yoloGtold1/train/65604.png +../../data/yoloGtold1/train/65605.png +../../data/yoloGtold1/train/65606.png +../../data/yoloGtold1/train/65607.png +../../data/yoloGtold1/train/65608.png +../../data/yoloGtold1/train/65609.png +../../data/yoloGtold1/train/65610.png +../../data/yoloGtold1/train/65611.png +../../data/yoloGtold1/train/65612.png +../../data/yoloGtold1/train/65613.png +../../data/yoloGtold1/train/65614.png +../../data/yoloGtold1/train/65615.png +../../data/yoloGtold1/train/65616.png +../../data/yoloGtold1/train/65617.png +../../data/yoloGtold1/train/65618.png +../../data/yoloGtold1/train/65619.png +../../data/yoloGtold1/train/65620.png +../../data/yoloGtold1/train/65621.png +../../data/yoloGtold1/train/65622.png +../../data/yoloGtold1/train/65623.png +../../data/yoloGtold1/train/65624.png +../../data/yoloGtold1/train/65625.png +../../data/yoloGtold1/train/65626.png +../../data/yoloGtold1/train/65627.png +../../data/yoloGtold1/train/65628.png +../../data/yoloGtold1/train/65629.png +../../data/yoloGtold1/train/65630.png +../../data/yoloGtold1/train/65631.png +../../data/yoloGtold1/train/65632.png +../../data/yoloGtold1/train/65633.png +../../data/yoloGtold1/train/65634.png +../../data/yoloGtold1/train/65635.png +../../data/yoloGtold1/train/65636.png +../../data/yoloGtold1/train/65637.png +../../data/yoloGtold1/train/65638.png +../../data/yoloGtold1/train/65639.png +../../data/yoloGtold1/train/65640.png +../../data/yoloGtold1/train/65641.png +../../data/yoloGtold1/train/65642.png +../../data/yoloGtold1/train/65643.png +../../data/yoloGtold1/train/65644.png +../../data/yoloGtold1/train/65645.png +../../data/yoloGtold1/train/65646.png +../../data/yoloGtold1/train/65647.png +../../data/yoloGtold1/train/65648.png +../../data/yoloGtold1/train/65649.png +../../data/yoloGtold1/train/65650.png +../../data/yoloGtold1/train/65651.png +../../data/yoloGtold1/train/65652.png +../../data/yoloGtold1/train/65653.png +../../data/yoloGtold1/train/65654.png +../../data/yoloGtold1/train/65655.png +../../data/yoloGtold1/train/65656.png +../../data/yoloGtold1/train/65657.png +../../data/yoloGtold1/train/65658.png +../../data/yoloGtold1/train/65659.png +../../data/yoloGtold1/train/65660.png +../../data/yoloGtold1/train/65661.png +../../data/yoloGtold1/train/65662.png +../../data/yoloGtold1/train/65663.png +../../data/yoloGtold1/train/65664.png +../../data/yoloGtold1/train/65665.png +../../data/yoloGtold1/train/65666.png +../../data/yoloGtold1/train/65667.png +../../data/yoloGtold1/train/65668.png +../../data/yoloGtold1/train/65669.png +../../data/yoloGtold1/train/65670.png +../../data/yoloGtold1/train/65671.png +../../data/yoloGtold1/train/65672.png +../../data/yoloGtold1/train/65673.png +../../data/yoloGtold1/train/65674.png +../../data/yoloGtold1/train/65675.png +../../data/yoloGtold1/train/65676.png +../../data/yoloGtold1/train/65677.png +../../data/yoloGtold1/train/65678.png +../../data/yoloGtold1/train/65679.png +../../data/yoloGtold1/train/65680.png +../../data/yoloGtold1/train/65681.png +../../data/yoloGtold1/train/65682.png +../../data/yoloGtold1/train/65683.png +../../data/yoloGtold1/train/65684.png +../../data/yoloGtold1/train/65685.png +../../data/yoloGtold1/train/65686.png +../../data/yoloGtold1/train/65687.png +../../data/yoloGtold1/train/65688.png +../../data/yoloGtold1/train/65689.png +../../data/yoloGtold1/train/65690.png +../../data/yoloGtold1/train/65691.png +../../data/yoloGtold1/train/65692.png +../../data/yoloGtold1/train/65693.png +../../data/yoloGtold1/train/65694.png +../../data/yoloGtold1/train/65695.png +../../data/yoloGtold1/train/65696.png +../../data/yoloGtold1/train/65697.png +../../data/yoloGtold1/train/65698.png +../../data/yoloGtold1/train/65699.png +../../data/yoloGtold1/train/65700.png +../../data/yoloGtold1/train/65701.png +../../data/yoloGtold1/train/65702.png +../../data/yoloGtold1/train/65703.png +../../data/yoloGtold1/train/65704.png +../../data/yoloGtold1/train/65705.png +../../data/yoloGtold1/train/65706.png +../../data/yoloGtold1/train/65707.png +../../data/yoloGtold1/train/65708.png +../../data/yoloGtold1/train/65709.png +../../data/yoloGtold1/train/65710.png +../../data/yoloGtold1/train/65711.png +../../data/yoloGtold1/train/65712.png +../../data/yoloGtold1/train/65713.png +../../data/yoloGtold1/train/65714.png +../../data/yoloGtold1/train/65715.png +../../data/yoloGtold1/train/65716.png +../../data/yoloGtold1/train/65717.png +../../data/yoloGtold1/train/65718.png +../../data/yoloGtold1/train/65719.png +../../data/yoloGtold1/train/65720.png +../../data/yoloGtold1/train/65721.png +../../data/yoloGtold1/train/65722.png +../../data/yoloGtold1/train/65723.png +../../data/yoloGtold1/train/65724.png +../../data/yoloGtold1/train/65725.png +../../data/yoloGtold1/train/65726.png +../../data/yoloGtold1/train/65727.png +../../data/yoloGtold1/train/65728.png +../../data/yoloGtold1/train/65729.png +../../data/yoloGtold1/train/65730.png +../../data/yoloGtold1/train/65731.png +../../data/yoloGtold1/train/65732.png +../../data/yoloGtold1/train/65733.png +../../data/yoloGtold1/train/65734.png +../../data/yoloGtold1/train/65735.png +../../data/yoloGtold1/train/65736.png +../../data/yoloGtold1/train/65737.png +../../data/yoloGtold1/train/65738.png +../../data/yoloGtold1/train/65739.png +../../data/yoloGtold1/train/65740.png +../../data/yoloGtold1/train/65741.png +../../data/yoloGtold1/train/65742.png +../../data/yoloGtold1/train/65743.png +../../data/yoloGtold1/train/65744.png +../../data/yoloGtold1/train/65745.png +../../data/yoloGtold1/train/65746.png +../../data/yoloGtold1/train/65747.png +../../data/yoloGtold1/train/65748.png +../../data/yoloGtold1/train/65749.png +../../data/yoloGtold1/train/65750.png +../../data/yoloGtold1/train/65751.png +../../data/yoloGtold1/train/65752.png +../../data/yoloGtold1/train/65753.png +../../data/yoloGtold1/train/65754.png +../../data/yoloGtold1/train/65755.png +../../data/yoloGtold1/train/65756.png +../../data/yoloGtold1/train/65757.png +../../data/yoloGtold1/train/65758.png +../../data/yoloGtold1/train/65759.png +../../data/yoloGtold1/train/65760.png +../../data/yoloGtold1/train/65761.png +../../data/yoloGtold1/train/65762.png +../../data/yoloGtold1/train/65763.png +../../data/yoloGtold1/train/65764.png +../../data/yoloGtold1/train/65765.png +../../data/yoloGtold1/train/65766.png +../../data/yoloGtold1/train/65767.png +../../data/yoloGtold1/train/65768.png +../../data/yoloGtold1/train/65769.png +../../data/yoloGtold1/train/65770.png +../../data/yoloGtold1/train/65771.png +../../data/yoloGtold1/train/65772.png +../../data/yoloGtold1/train/65773.png +../../data/yoloGtold1/train/65774.png +../../data/yoloGtold1/train/65775.png +../../data/yoloGtold1/train/65776.png +../../data/yoloGtold1/train/65777.png +../../data/yoloGtold1/train/65778.png +../../data/yoloGtold1/train/65779.png +../../data/yoloGtold1/train/65780.png +../../data/yoloGtold1/train/65781.png +../../data/yoloGtold1/train/65782.png +../../data/yoloGtold1/train/65783.png +../../data/yoloGtold1/train/65784.png +../../data/yoloGtold1/train/65785.png +../../data/yoloGtold1/train/65786.png +../../data/yoloGtold1/train/65787.png +../../data/yoloGtold1/train/65788.png +../../data/yoloGtold1/train/65789.png +../../data/yoloGtold1/train/65790.png +../../data/yoloGtold1/train/65791.png +../../data/yoloGtold1/train/65792.png +../../data/yoloGtold1/train/65793.png +../../data/yoloGtold1/train/65794.png +../../data/yoloGtold1/train/65795.png +../../data/yoloGtold1/train/65796.png +../../data/yoloGtold1/train/65797.png +../../data/yoloGtold1/train/65798.png +../../data/yoloGtold1/train/65799.png +../../data/yoloGtold1/train/65800.png +../../data/yoloGtold1/train/65801.png +../../data/yoloGtold1/train/65802.png +../../data/yoloGtold1/train/65803.png +../../data/yoloGtold1/train/65804.png +../../data/yoloGtold1/train/65805.png +../../data/yoloGtold1/train/65806.png +../../data/yoloGtold1/train/65807.png +../../data/yoloGtold1/train/65808.png +../../data/yoloGtold1/train/65809.png +../../data/yoloGtold1/train/65810.png +../../data/yoloGtold1/train/65811.png +../../data/yoloGtold1/train/65812.png +../../data/yoloGtold1/train/65813.png +../../data/yoloGtold1/train/65814.png +../../data/yoloGtold1/train/65815.png +../../data/yoloGtold1/train/65816.png +../../data/yoloGtold1/train/65817.png +../../data/yoloGtold1/train/65818.png +../../data/yoloGtold1/train/65819.png +../../data/yoloGtold1/train/65820.png +../../data/yoloGtold1/train/65821.png +../../data/yoloGtold1/train/65822.png +../../data/yoloGtold1/train/65823.png +../../data/yoloGtold1/train/65824.png +../../data/yoloGtold1/train/65825.png +../../data/yoloGtold1/train/65826.png +../../data/yoloGtold1/train/65827.png +../../data/yoloGtold1/train/65828.png +../../data/yoloGtold1/train/65829.png +../../data/yoloGtold1/train/65830.png +../../data/yoloGtold1/train/65831.png +../../data/yoloGtold1/train/65832.png +../../data/yoloGtold1/train/65833.png +../../data/yoloGtold1/train/65834.png +../../data/yoloGtold1/train/65835.png +../../data/yoloGtold1/train/65836.png +../../data/yoloGtold1/train/65837.png +../../data/yoloGtold1/train/65838.png +../../data/yoloGtold1/train/65839.png +../../data/yoloGtold1/train/65840.png +../../data/yoloGtold1/train/65841.png +../../data/yoloGtold1/train/65842.png +../../data/yoloGtold1/train/65843.png +../../data/yoloGtold1/train/65844.png +../../data/yoloGtold1/train/65845.png +../../data/yoloGtold1/train/65846.png +../../data/yoloGtold1/train/65847.png +../../data/yoloGtold1/train/65848.png +../../data/yoloGtold1/train/65849.png +../../data/yoloGtold1/train/65850.png +../../data/yoloGtold1/train/65851.png +../../data/yoloGtold1/train/65852.png +../../data/yoloGtold1/train/65853.png +../../data/yoloGtold1/train/65854.png +../../data/yoloGtold1/train/65855.png +../../data/yoloGtold1/train/65856.png +../../data/yoloGtold1/train/65857.png +../../data/yoloGtold1/train/65858.png +../../data/yoloGtold1/train/65859.png +../../data/yoloGtold1/train/65860.png +../../data/yoloGtold1/train/65861.png +../../data/yoloGtold1/train/65862.png +../../data/yoloGtold1/train/65863.png +../../data/yoloGtold1/train/65864.png +../../data/yoloGtold1/train/65865.png +../../data/yoloGtold1/train/65866.png +../../data/yoloGtold1/train/65867.png +../../data/yoloGtold1/train/65868.png +../../data/yoloGtold1/train/65869.png +../../data/yoloGtold1/train/65870.png +../../data/yoloGtold1/train/65871.png +../../data/yoloGtold1/train/65872.png +../../data/yoloGtold1/train/65873.png +../../data/yoloGtold1/train/65874.png +../../data/yoloGtold1/train/65875.png +../../data/yoloGtold1/train/65876.png +../../data/yoloGtold1/train/65877.png +../../data/yoloGtold1/train/65878.png +../../data/yoloGtold1/train/65879.png +../../data/yoloGtold1/train/65880.png +../../data/yoloGtold1/train/65881.png +../../data/yoloGtold1/train/65882.png +../../data/yoloGtold1/train/65883.png +../../data/yoloGtold1/train/65884.png +../../data/yoloGtold1/train/65885.png +../../data/yoloGtold1/train/65886.png +../../data/yoloGtold1/train/65887.png +../../data/yoloGtold1/train/65888.png +../../data/yoloGtold1/train/65889.png +../../data/yoloGtold1/train/65890.png +../../data/yoloGtold1/train/65891.png +../../data/yoloGtold1/train/65892.png +../../data/yoloGtold1/train/65893.png +../../data/yoloGtold1/train/65894.png +../../data/yoloGtold1/train/65895.png +../../data/yoloGtold1/train/65896.png +../../data/yoloGtold1/train/65897.png +../../data/yoloGtold1/train/65898.png +../../data/yoloGtold1/train/65899.png +../../data/yoloGtold1/train/65900.png +../../data/yoloGtold1/train/65901.png +../../data/yoloGtold1/train/65902.png +../../data/yoloGtold1/train/65903.png +../../data/yoloGtold1/train/65904.png +../../data/yoloGtold1/train/65905.png +../../data/yoloGtold1/train/65906.png +../../data/yoloGtold1/train/65907.png +../../data/yoloGtold1/train/65908.png +../../data/yoloGtold1/train/65909.png +../../data/yoloGtold1/train/65910.png +../../data/yoloGtold1/train/65911.png +../../data/yoloGtold1/train/65912.png +../../data/yoloGtold1/train/65913.png +../../data/yoloGtold1/train/65914.png +../../data/yoloGtold1/train/65915.png +../../data/yoloGtold1/train/65916.png +../../data/yoloGtold1/train/65917.png +../../data/yoloGtold1/train/65918.png +../../data/yoloGtold1/train/65919.png +../../data/yoloGtold1/train/65920.png +../../data/yoloGtold1/train/65921.png +../../data/yoloGtold1/train/65922.png +../../data/yoloGtold1/train/65923.png +../../data/yoloGtold1/train/65924.png +../../data/yoloGtold1/train/65925.png +../../data/yoloGtold1/train/65926.png +../../data/yoloGtold1/train/65927.png +../../data/yoloGtold1/train/65928.png +../../data/yoloGtold1/train/65929.png +../../data/yoloGtold1/train/65930.png +../../data/yoloGtold1/train/65931.png +../../data/yoloGtold1/train/65932.png +../../data/yoloGtold1/train/65933.png +../../data/yoloGtold1/train/65934.png +../../data/yoloGtold1/train/65935.png +../../data/yoloGtold1/train/65936.png +../../data/yoloGtold1/train/65937.png +../../data/yoloGtold1/train/65938.png +../../data/yoloGtold1/train/65939.png +../../data/yoloGtold1/train/65940.png +../../data/yoloGtold1/train/65941.png +../../data/yoloGtold1/train/65942.png +../../data/yoloGtold1/train/65943.png +../../data/yoloGtold1/train/65944.png +../../data/yoloGtold1/train/65945.png +../../data/yoloGtold1/train/65946.png +../../data/yoloGtold1/train/65947.png +../../data/yoloGtold1/train/65948.png +../../data/yoloGtold1/train/65949.png +../../data/yoloGtold1/train/65950.png +../../data/yoloGtold1/train/65951.png +../../data/yoloGtold1/train/65952.png +../../data/yoloGtold1/train/65953.png +../../data/yoloGtold1/train/65954.png +../../data/yoloGtold1/train/65955.png +../../data/yoloGtold1/train/65956.png +../../data/yoloGtold1/train/65957.png +../../data/yoloGtold1/train/65958.png +../../data/yoloGtold1/train/65959.png +../../data/yoloGtold1/train/65960.png +../../data/yoloGtold1/train/65961.png +../../data/yoloGtold1/train/65962.png +../../data/yoloGtold1/train/65963.png +../../data/yoloGtold1/train/65964.png +../../data/yoloGtold1/train/65965.png +../../data/yoloGtold1/train/65966.png +../../data/yoloGtold1/train/65967.png +../../data/yoloGtold1/train/65968.png +../../data/yoloGtold1/train/65969.png +../../data/yoloGtold1/train/65970.png +../../data/yoloGtold1/train/65971.png +../../data/yoloGtold1/train/65972.png +../../data/yoloGtold1/train/65973.png +../../data/yoloGtold1/train/65974.png +../../data/yoloGtold1/train/65975.png +../../data/yoloGtold1/train/65976.png +../../data/yoloGtold1/train/65977.png +../../data/yoloGtold1/train/65978.png +../../data/yoloGtold1/train/65979.png +../../data/yoloGtold1/train/65980.png +../../data/yoloGtold1/train/65981.png +../../data/yoloGtold1/train/65982.png +../../data/yoloGtold1/train/65983.png +../../data/yoloGtold1/train/65984.png +../../data/yoloGtold1/train/65985.png +../../data/yoloGtold1/train/65986.png +../../data/yoloGtold1/train/65987.png +../../data/yoloGtold1/train/65988.png +../../data/yoloGtold1/train/65989.png +../../data/yoloGtold1/train/65990.png +../../data/yoloGtold1/train/65991.png +../../data/yoloGtold1/train/65992.png +../../data/yoloGtold1/train/65993.png +../../data/yoloGtold1/train/65994.png +../../data/yoloGtold1/train/65995.png +../../data/yoloGtold1/train/65996.png +../../data/yoloGtold1/train/65997.png +../../data/yoloGtold1/train/65998.png +../../data/yoloGtold1/train/65999.png +../../data/yoloGtold1/train/66000.png +../../data/yoloGtold1/train/66001.png +../../data/yoloGtold1/train/66002.png +../../data/yoloGtold1/train/66003.png +../../data/yoloGtold1/train/66004.png +../../data/yoloGtold1/train/66005.png +../../data/yoloGtold1/train/66006.png +../../data/yoloGtold1/train/66007.png +../../data/yoloGtold1/train/66008.png +../../data/yoloGtold1/train/66009.png +../../data/yoloGtold1/train/66010.png +../../data/yoloGtold1/train/66011.png +../../data/yoloGtold1/train/66012.png +../../data/yoloGtold1/train/66013.png +../../data/yoloGtold1/train/66014.png +../../data/yoloGtold1/train/66015.png +../../data/yoloGtold1/train/66016.png +../../data/yoloGtold1/train/66017.png +../../data/yoloGtold1/train/66018.png +../../data/yoloGtold1/train/66019.png +../../data/yoloGtold1/train/66020.png +../../data/yoloGtold1/train/66021.png +../../data/yoloGtold1/train/66022.png +../../data/yoloGtold1/train/66023.png +../../data/yoloGtold1/train/66024.png +../../data/yoloGtold1/train/66025.png +../../data/yoloGtold1/train/66026.png +../../data/yoloGtold1/train/66027.png +../../data/yoloGtold1/train/66028.png +../../data/yoloGtold1/train/66029.png +../../data/yoloGtold1/train/66030.png +../../data/yoloGtold1/train/66031.png +../../data/yoloGtold1/train/66032.png +../../data/yoloGtold1/train/66033.png +../../data/yoloGtold1/train/66034.png +../../data/yoloGtold1/train/66035.png +../../data/yoloGtold1/train/66036.png +../../data/yoloGtold1/train/66037.png +../../data/yoloGtold1/train/66038.png +../../data/yoloGtold1/train/66039.png +../../data/yoloGtold1/train/66040.png +../../data/yoloGtold1/train/66041.png +../../data/yoloGtold1/train/66042.png +../../data/yoloGtold1/train/66043.png +../../data/yoloGtold1/train/66044.png +../../data/yoloGtold1/train/66045.png +../../data/yoloGtold1/train/66046.png +../../data/yoloGtold1/train/66047.png +../../data/yoloGtold1/train/66048.png +../../data/yoloGtold1/train/66049.png +../../data/yoloGtold1/train/66050.png +../../data/yoloGtold1/train/66051.png +../../data/yoloGtold1/train/66052.png +../../data/yoloGtold1/train/66053.png +../../data/yoloGtold1/train/66054.png +../../data/yoloGtold1/train/66055.png +../../data/yoloGtold1/train/66056.png +../../data/yoloGtold1/train/66057.png +../../data/yoloGtold1/train/66058.png +../../data/yoloGtold1/train/66059.png +../../data/yoloGtold1/train/66060.png +../../data/yoloGtold1/train/66061.png +../../data/yoloGtold1/train/66062.png +../../data/yoloGtold1/train/66063.png +../../data/yoloGtold1/train/66064.png +../../data/yoloGtold1/train/66065.png +../../data/yoloGtold1/train/66066.png +../../data/yoloGtold1/train/66067.png +../../data/yoloGtold1/train/66068.png +../../data/yoloGtold1/train/66069.png +../../data/yoloGtold1/train/66070.png +../../data/yoloGtold1/train/66071.png +../../data/yoloGtold1/train/66072.png +../../data/yoloGtold1/train/66073.png +../../data/yoloGtold1/train/66074.png +../../data/yoloGtold1/train/66075.png +../../data/yoloGtold1/train/66076.png +../../data/yoloGtold1/train/66077.png +../../data/yoloGtold1/train/66078.png +../../data/yoloGtold1/train/66079.png +../../data/yoloGtold1/train/66080.png +../../data/yoloGtold1/train/66081.png +../../data/yoloGtold1/train/66082.png +../../data/yoloGtold1/train/66083.png +../../data/yoloGtold1/train/66084.png +../../data/yoloGtold1/train/66085.png +../../data/yoloGtold1/train/66086.png +../../data/yoloGtold1/train/66087.png +../../data/yoloGtold1/train/66088.png +../../data/yoloGtold1/train/66089.png +../../data/yoloGtold1/train/66090.png +../../data/yoloGtold1/train/66091.png +../../data/yoloGtold1/train/66092.png +../../data/yoloGtold1/train/66093.png +../../data/yoloGtold1/train/66094.png +../../data/yoloGtold1/train/66095.png +../../data/yoloGtold1/train/66096.png +../../data/yoloGtold1/train/66097.png +../../data/yoloGtold1/train/66098.png +../../data/yoloGtold1/train/66099.png +../../data/yoloGtold1/train/66100.png +../../data/yoloGtold1/train/66101.png +../../data/yoloGtold1/train/66102.png +../../data/yoloGtold1/train/66103.png +../../data/yoloGtold1/train/66104.png +../../data/yoloGtold1/train/66105.png +../../data/yoloGtold1/train/66106.png +../../data/yoloGtold1/train/66107.png +../../data/yoloGtold1/train/66108.png +../../data/yoloGtold1/train/66109.png +../../data/yoloGtold1/train/66110.png +../../data/yoloGtold1/train/66111.png +../../data/yoloGtold1/train/66112.png +../../data/yoloGtold1/train/66113.png +../../data/yoloGtold1/train/66114.png +../../data/yoloGtold1/train/66115.png +../../data/yoloGtold1/train/66116.png +../../data/yoloGtold1/train/66117.png +../../data/yoloGtold1/train/66118.png +../../data/yoloGtold1/train/66119.png +../../data/yoloGtold1/train/66120.png +../../data/yoloGtold1/train/66121.png +../../data/yoloGtold1/train/66122.png +../../data/yoloGtold1/train/66123.png +../../data/yoloGtold1/train/66124.png +../../data/yoloGtold1/train/66125.png +../../data/yoloGtold1/train/66126.png +../../data/yoloGtold1/train/66127.png +../../data/yoloGtold1/train/66128.png +../../data/yoloGtold1/train/66129.png +../../data/yoloGtold1/train/66130.png +../../data/yoloGtold1/train/66131.png +../../data/yoloGtold1/train/66132.png +../../data/yoloGtold1/train/66133.png +../../data/yoloGtold1/train/66134.png +../../data/yoloGtold1/train/66135.png +../../data/yoloGtold1/train/66136.png +../../data/yoloGtold1/train/66137.png +../../data/yoloGtold1/train/66138.png +../../data/yoloGtold1/train/66139.png +../../data/yoloGtold1/train/66140.png +../../data/yoloGtold1/train/66141.png +../../data/yoloGtold1/train/66142.png +../../data/yoloGtold1/train/66143.png +../../data/yoloGtold1/train/66144.png +../../data/yoloGtold1/train/66145.png +../../data/yoloGtold1/train/66146.png +../../data/yoloGtold1/train/66147.png +../../data/yoloGtold1/train/66148.png +../../data/yoloGtold1/train/66149.png +../../data/yoloGtold1/train/66150.png +../../data/yoloGtold1/train/66151.png +../../data/yoloGtold1/train/66152.png +../../data/yoloGtold1/train/66153.png +../../data/yoloGtold1/train/66154.png +../../data/yoloGtold1/train/66155.png +../../data/yoloGtold1/train/66156.png +../../data/yoloGtold1/train/66157.png +../../data/yoloGtold1/train/66158.png +../../data/yoloGtold1/train/66159.png +../../data/yoloGtold1/train/66160.png +../../data/yoloGtold1/train/66161.png +../../data/yoloGtold1/train/66162.png +../../data/yoloGtold1/train/66163.png +../../data/yoloGtold1/train/66164.png +../../data/yoloGtold1/train/66165.png +../../data/yoloGtold1/train/66166.png +../../data/yoloGtold1/train/66167.png +../../data/yoloGtold1/train/66168.png +../../data/yoloGtold1/train/66169.png +../../data/yoloGtold1/train/66170.png +../../data/yoloGtold1/train/66171.png +../../data/yoloGtold1/train/66172.png +../../data/yoloGtold1/train/66173.png +../../data/yoloGtold1/train/66174.png +../../data/yoloGtold1/train/66175.png +../../data/yoloGtold1/train/66176.png +../../data/yoloGtold1/train/66177.png +../../data/yoloGtold1/train/66178.png +../../data/yoloGtold1/train/66179.png +../../data/yoloGtold1/train/66180.png +../../data/yoloGtold1/train/66181.png +../../data/yoloGtold1/train/66182.png +../../data/yoloGtold1/train/66183.png +../../data/yoloGtold1/train/66184.png +../../data/yoloGtold1/train/66185.png +../../data/yoloGtold1/train/66186.png +../../data/yoloGtold1/train/66187.png +../../data/yoloGtold1/train/66188.png +../../data/yoloGtold1/train/66189.png +../../data/yoloGtold1/train/66190.png +../../data/yoloGtold1/train/66191.png +../../data/yoloGtold1/train/66192.png +../../data/yoloGtold1/train/66193.png +../../data/yoloGtold1/train/66194.png +../../data/yoloGtold1/train/66195.png +../../data/yoloGtold1/train/66196.png +../../data/yoloGtold1/train/66197.png +../../data/yoloGtold1/train/66198.png +../../data/yoloGtold1/train/66199.png +../../data/yoloGtold1/train/66200.png +../../data/yoloGtold1/train/66201.png +../../data/yoloGtold1/train/66202.png +../../data/yoloGtold1/train/66203.png +../../data/yoloGtold1/train/66204.png +../../data/yoloGtold1/train/66205.png +../../data/yoloGtold1/train/66206.png +../../data/yoloGtold1/train/66207.png +../../data/yoloGtold1/train/66208.png +../../data/yoloGtold1/train/66209.png +../../data/yoloGtold1/train/66210.png +../../data/yoloGtold1/train/66211.png +../../data/yoloGtold1/train/66212.png +../../data/yoloGtold1/train/66213.png +../../data/yoloGtold1/train/66214.png +../../data/yoloGtold1/train/66215.png +../../data/yoloGtold1/train/66216.png +../../data/yoloGtold1/train/66217.png +../../data/yoloGtold1/train/66218.png +../../data/yoloGtold1/train/66219.png +../../data/yoloGtold1/train/66220.png +../../data/yoloGtold1/train/66221.png +../../data/yoloGtold1/train/66222.png +../../data/yoloGtold1/train/66223.png +../../data/yoloGtold1/train/66224.png +../../data/yoloGtold1/train/66225.png +../../data/yoloGtold1/train/66226.png +../../data/yoloGtold1/train/66227.png +../../data/yoloGtold1/train/66228.png +../../data/yoloGtold1/train/66229.png +../../data/yoloGtold1/train/66230.png +../../data/yoloGtold1/train/66231.png +../../data/yoloGtold1/train/66232.png +../../data/yoloGtold1/train/66233.png +../../data/yoloGtold1/train/66234.png +../../data/yoloGtold1/train/66235.png +../../data/yoloGtold1/train/66236.png +../../data/yoloGtold1/train/66237.png +../../data/yoloGtold1/train/66238.png +../../data/yoloGtold1/train/66239.png +../../data/yoloGtold1/train/66240.png +../../data/yoloGtold1/train/66241.png +../../data/yoloGtold1/train/66242.png +../../data/yoloGtold1/train/66243.png +../../data/yoloGtold1/train/66244.png +../../data/yoloGtold1/train/66245.png +../../data/yoloGtold1/train/66246.png +../../data/yoloGtold1/train/66247.png +../../data/yoloGtold1/train/66248.png +../../data/yoloGtold1/train/66249.png +../../data/yoloGtold1/train/66250.png +../../data/yoloGtold1/train/66251.png +../../data/yoloGtold1/train/66252.png +../../data/yoloGtold1/train/66253.png +../../data/yoloGtold1/train/66254.png +../../data/yoloGtold1/train/66255.png +../../data/yoloGtold1/train/66256.png +../../data/yoloGtold1/train/66257.png +../../data/yoloGtold1/train/66258.png +../../data/yoloGtold1/train/66259.png +../../data/yoloGtold1/train/66260.png +../../data/yoloGtold1/train/66261.png +../../data/yoloGtold1/train/66262.png +../../data/yoloGtold1/train/66263.png +../../data/yoloGtold1/train/66264.png +../../data/yoloGtold1/train/66265.png +../../data/yoloGtold1/train/66266.png +../../data/yoloGtold1/train/66267.png +../../data/yoloGtold1/train/66268.png +../../data/yoloGtold1/train/66269.png +../../data/yoloGtold1/train/66270.png +../../data/yoloGtold1/train/66271.png +../../data/yoloGtold1/train/66272.png +../../data/yoloGtold1/train/66273.png +../../data/yoloGtold1/train/66274.png +../../data/yoloGtold1/train/66275.png +../../data/yoloGtold1/train/66276.png +../../data/yoloGtold1/train/66277.png +../../data/yoloGtold1/train/66278.png +../../data/yoloGtold1/train/66279.png +../../data/yoloGtold1/train/66280.png +../../data/yoloGtold1/train/66281.png +../../data/yoloGtold1/train/66282.png +../../data/yoloGtold1/train/66283.png +../../data/yoloGtold1/train/66284.png +../../data/yoloGtold1/train/66285.png +../../data/yoloGtold1/train/66286.png +../../data/yoloGtold1/train/66287.png +../../data/yoloGtold1/train/66288.png +../../data/yoloGtold1/train/66289.png +../../data/yoloGtold1/train/66290.png +../../data/yoloGtold1/train/66291.png +../../data/yoloGtold1/train/66292.png +../../data/yoloGtold1/train/66293.png +../../data/yoloGtold1/train/66294.png +../../data/yoloGtold1/train/66295.png +../../data/yoloGtold1/train/66296.png +../../data/yoloGtold1/train/66297.png +../../data/yoloGtold1/train/66298.png +../../data/yoloGtold1/train/66299.png +../../data/yoloGtold1/train/66300.png +../../data/yoloGtold1/train/66301.png +../../data/yoloGtold1/train/66302.png +../../data/yoloGtold1/train/66303.png +../../data/yoloGtold1/train/66304.png +../../data/yoloGtold1/train/66305.png +../../data/yoloGtold1/train/66306.png +../../data/yoloGtold1/train/66307.png +../../data/yoloGtold1/train/66308.png +../../data/yoloGtold1/train/66309.png +../../data/yoloGtold1/train/66310.png +../../data/yoloGtold1/train/66311.png +../../data/yoloGtold1/train/66312.png +../../data/yoloGtold1/train/66313.png +../../data/yoloGtold1/train/66314.png +../../data/yoloGtold1/train/66315.png +../../data/yoloGtold1/train/66316.png +../../data/yoloGtold1/train/66317.png +../../data/yoloGtold1/train/66318.png +../../data/yoloGtold1/train/66319.png +../../data/yoloGtold1/train/66320.png +../../data/yoloGtold1/train/66321.png +../../data/yoloGtold1/train/66322.png +../../data/yoloGtold1/train/66323.png +../../data/yoloGtold1/train/66324.png +../../data/yoloGtold1/train/66325.png +../../data/yoloGtold1/train/66326.png +../../data/yoloGtold1/train/66327.png +../../data/yoloGtold1/train/66328.png +../../data/yoloGtold1/train/66329.png +../../data/yoloGtold1/train/66330.png +../../data/yoloGtold1/train/66331.png +../../data/yoloGtold1/train/66332.png +../../data/yoloGtold1/train/66333.png +../../data/yoloGtold1/train/66334.png +../../data/yoloGtold1/train/66335.png +../../data/yoloGtold1/train/66336.png +../../data/yoloGtold1/train/66337.png +../../data/yoloGtold1/train/66338.png +../../data/yoloGtold1/train/66339.png +../../data/yoloGtold1/train/66340.png +../../data/yoloGtold1/train/66341.png +../../data/yoloGtold1/train/66342.png +../../data/yoloGtold1/train/66343.png +../../data/yoloGtold1/train/66344.png +../../data/yoloGtold1/train/66345.png +../../data/yoloGtold1/train/66346.png +../../data/yoloGtold1/train/66347.png +../../data/yoloGtold1/train/66348.png +../../data/yoloGtold1/train/66349.png +../../data/yoloGtold1/train/66350.png +../../data/yoloGtold1/train/66351.png +../../data/yoloGtold1/train/66352.png +../../data/yoloGtold1/train/66353.png +../../data/yoloGtold1/train/66354.png +../../data/yoloGtold1/train/66355.png +../../data/yoloGtold1/train/66356.png +../../data/yoloGtold1/train/66357.png +../../data/yoloGtold1/train/66358.png +../../data/yoloGtold1/train/66359.png +../../data/yoloGtold1/train/66360.png +../../data/yoloGtold1/train/66361.png +../../data/yoloGtold1/train/66362.png +../../data/yoloGtold1/train/66363.png +../../data/yoloGtold1/train/66364.png +../../data/yoloGtold1/train/66365.png +../../data/yoloGtold1/train/66366.png +../../data/yoloGtold1/train/66367.png +../../data/yoloGtold1/train/66368.png +../../data/yoloGtold1/train/66369.png +../../data/yoloGtold1/train/66370.png +../../data/yoloGtold1/train/66371.png +../../data/yoloGtold1/train/66372.png +../../data/yoloGtold1/train/66373.png +../../data/yoloGtold1/train/66374.png +../../data/yoloGtold1/train/66375.png +../../data/yoloGtold1/train/66376.png +../../data/yoloGtold1/train/66377.png +../../data/yoloGtold1/train/66378.png +../../data/yoloGtold1/train/66379.png +../../data/yoloGtold1/train/66380.png +../../data/yoloGtold1/train/66381.png +../../data/yoloGtold1/train/66382.png +../../data/yoloGtold1/train/66383.png +../../data/yoloGtold1/train/66384.png +../../data/yoloGtold1/train/66385.png +../../data/yoloGtold1/train/66386.png +../../data/yoloGtold1/train/66387.png +../../data/yoloGtold1/train/66388.png +../../data/yoloGtold1/train/66389.png +../../data/yoloGtold1/train/66390.png +../../data/yoloGtold1/train/66391.png +../../data/yoloGtold1/train/66392.png +../../data/yoloGtold1/train/66393.png +../../data/yoloGtold1/train/66394.png +../../data/yoloGtold1/train/66395.png +../../data/yoloGtold1/train/66396.png +../../data/yoloGtold1/train/66397.png +../../data/yoloGtold1/train/66398.png +../../data/yoloGtold1/train/66399.png +../../data/yoloGtold1/train/66400.png +../../data/yoloGtold1/train/66401.png +../../data/yoloGtold1/train/66402.png +../../data/yoloGtold1/train/66403.png +../../data/yoloGtold1/train/66404.png +../../data/yoloGtold1/train/66405.png +../../data/yoloGtold1/train/66406.png +../../data/yoloGtold1/train/66407.png +../../data/yoloGtold1/train/66408.png +../../data/yoloGtold1/train/66409.png +../../data/yoloGtold1/train/66410.png +../../data/yoloGtold1/train/66411.png +../../data/yoloGtold1/train/66412.png +../../data/yoloGtold1/train/66413.png +../../data/yoloGtold1/train/66414.png +../../data/yoloGtold1/train/66415.png +../../data/yoloGtold1/train/66416.png +../../data/yoloGtold1/train/66417.png +../../data/yoloGtold1/train/66418.png +../../data/yoloGtold1/train/66419.png +../../data/yoloGtold1/train/66420.png +../../data/yoloGtold1/train/66421.png +../../data/yoloGtold1/train/66422.png +../../data/yoloGtold1/train/66423.png +../../data/yoloGtold1/train/66424.png +../../data/yoloGtold1/train/66425.png +../../data/yoloGtold1/train/66426.png +../../data/yoloGtold1/train/66427.png +../../data/yoloGtold1/train/66428.png +../../data/yoloGtold1/train/66429.png +../../data/yoloGtold1/train/66430.png +../../data/yoloGtold1/train/66431.png +../../data/yoloGtold1/train/66432.png +../../data/yoloGtold1/train/66433.png +../../data/yoloGtold1/train/66434.png +../../data/yoloGtold1/train/66435.png +../../data/yoloGtold1/train/66436.png +../../data/yoloGtold1/train/66437.png +../../data/yoloGtold1/train/66438.png +../../data/yoloGtold1/train/66439.png +../../data/yoloGtold1/train/66440.png +../../data/yoloGtold1/train/66441.png +../../data/yoloGtold1/train/66442.png +../../data/yoloGtold1/train/66443.png +../../data/yoloGtold1/train/66444.png +../../data/yoloGtold1/train/66445.png +../../data/yoloGtold1/train/66446.png +../../data/yoloGtold1/train/66447.png +../../data/yoloGtold1/train/66448.png +../../data/yoloGtold1/train/66449.png +../../data/yoloGtold1/train/66450.png +../../data/yoloGtold1/train/66451.png +../../data/yoloGtold1/train/66452.png +../../data/yoloGtold1/train/66453.png +../../data/yoloGtold1/train/66454.png +../../data/yoloGtold1/train/66455.png +../../data/yoloGtold1/train/66456.png +../../data/yoloGtold1/train/66457.png +../../data/yoloGtold1/train/66458.png +../../data/yoloGtold1/train/66459.png +../../data/yoloGtold1/train/66460.png +../../data/yoloGtold1/train/66461.png +../../data/yoloGtold1/train/66462.png +../../data/yoloGtold1/train/66463.png +../../data/yoloGtold1/train/66464.png +../../data/yoloGtold1/train/66465.png +../../data/yoloGtold1/train/66466.png +../../data/yoloGtold1/train/66467.png +../../data/yoloGtold1/train/66468.png +../../data/yoloGtold1/train/66469.png +../../data/yoloGtold1/train/66470.png +../../data/yoloGtold1/train/66471.png +../../data/yoloGtold1/train/66472.png +../../data/yoloGtold1/train/66473.png +../../data/yoloGtold1/train/66474.png +../../data/yoloGtold1/train/66475.png +../../data/yoloGtold1/train/66476.png +../../data/yoloGtold1/train/66477.png +../../data/yoloGtold1/train/66478.png +../../data/yoloGtold1/train/66479.png +../../data/yoloGtold1/train/66480.png +../../data/yoloGtold1/train/66481.png +../../data/yoloGtold1/train/66482.png +../../data/yoloGtold1/train/66483.png +../../data/yoloGtold1/train/66484.png +../../data/yoloGtold1/train/66485.png +../../data/yoloGtold1/train/66486.png +../../data/yoloGtold1/train/66487.png +../../data/yoloGtold1/train/66488.png +../../data/yoloGtold1/train/66489.png +../../data/yoloGtold1/train/66490.png +../../data/yoloGtold1/train/66491.png +../../data/yoloGtold1/train/66492.png +../../data/yoloGtold1/train/66493.png +../../data/yoloGtold1/train/66494.png +../../data/yoloGtold1/train/66495.png +../../data/yoloGtold1/train/66496.png +../../data/yoloGtold1/train/66497.png +../../data/yoloGtold1/train/66498.png +../../data/yoloGtold1/train/66499.png +../../data/yoloGtold1/train/66500.png +../../data/yoloGtold1/train/66501.png +../../data/yoloGtold1/train/66502.png +../../data/yoloGtold1/train/66503.png +../../data/yoloGtold1/train/66504.png +../../data/yoloGtold1/train/66505.png +../../data/yoloGtold1/train/66506.png +../../data/yoloGtold1/train/66507.png +../../data/yoloGtold1/train/66508.png +../../data/yoloGtold1/train/66509.png +../../data/yoloGtold1/train/66510.png +../../data/yoloGtold1/train/66511.png +../../data/yoloGtold1/train/66512.png +../../data/yoloGtold1/train/66513.png +../../data/yoloGtold1/train/66514.png +../../data/yoloGtold1/train/66515.png +../../data/yoloGtold1/train/66516.png +../../data/yoloGtold1/train/66517.png +../../data/yoloGtold1/train/66518.png +../../data/yoloGtold1/train/66519.png +../../data/yoloGtold1/train/66520.png +../../data/yoloGtold1/train/66521.png +../../data/yoloGtold1/train/66522.png +../../data/yoloGtold1/train/66523.png +../../data/yoloGtold1/train/66524.png +../../data/yoloGtold1/train/66525.png +../../data/yoloGtold1/train/66526.png +../../data/yoloGtold1/train/66527.png +../../data/yoloGtold1/train/66528.png +../../data/yoloGtold1/train/66529.png +../../data/yoloGtold1/train/66530.png +../../data/yoloGtold1/train/66531.png +../../data/yoloGtold1/train/66532.png +../../data/yoloGtold1/train/66533.png +../../data/yoloGtold1/train/66534.png +../../data/yoloGtold1/train/66535.png +../../data/yoloGtold1/train/66536.png +../../data/yoloGtold1/train/66537.png +../../data/yoloGtold1/train/66538.png +../../data/yoloGtold1/train/66539.png +../../data/yoloGtold1/train/66540.png +../../data/yoloGtold1/train/66541.png +../../data/yoloGtold1/train/66542.png +../../data/yoloGtold1/train/66543.png +../../data/yoloGtold1/train/66544.png +../../data/yoloGtold1/train/66545.png +../../data/yoloGtold1/train/66546.png +../../data/yoloGtold1/train/66547.png +../../data/yoloGtold1/train/66548.png +../../data/yoloGtold1/train/66549.png +../../data/yoloGtold1/train/66550.png +../../data/yoloGtold1/train/66551.png +../../data/yoloGtold1/train/66552.png +../../data/yoloGtold1/train/66553.png +../../data/yoloGtold1/train/66554.png +../../data/yoloGtold1/train/66555.png +../../data/yoloGtold1/train/66556.png +../../data/yoloGtold1/train/66557.png +../../data/yoloGtold1/train/66558.png +../../data/yoloGtold1/train/66559.png +../../data/yoloGtold1/train/66560.png +../../data/yoloGtold1/train/66561.png +../../data/yoloGtold1/train/66562.png +../../data/yoloGtold1/train/66563.png +../../data/yoloGtold1/train/66564.png +../../data/yoloGtold1/train/66565.png +../../data/yoloGtold1/train/66566.png +../../data/yoloGtold1/train/66567.png +../../data/yoloGtold1/train/66568.png +../../data/yoloGtold1/train/66569.png +../../data/yoloGtold1/train/66570.png +../../data/yoloGtold1/train/66571.png +../../data/yoloGtold1/train/66572.png +../../data/yoloGtold1/train/66573.png +../../data/yoloGtold1/train/66574.png +../../data/yoloGtold1/train/66575.png +../../data/yoloGtold1/train/66576.png +../../data/yoloGtold1/train/66577.png +../../data/yoloGtold1/train/66578.png +../../data/yoloGtold1/train/66579.png +../../data/yoloGtold1/train/66580.png +../../data/yoloGtold1/train/66581.png +../../data/yoloGtold1/train/66582.png +../../data/yoloGtold1/train/66583.png +../../data/yoloGtold1/train/66584.png +../../data/yoloGtold1/train/66585.png +../../data/yoloGtold1/train/66586.png +../../data/yoloGtold1/train/66587.png +../../data/yoloGtold1/train/66588.png +../../data/yoloGtold1/train/66589.png +../../data/yoloGtold1/train/66590.png +../../data/yoloGtold1/train/66591.png +../../data/yoloGtold1/train/66592.png +../../data/yoloGtold1/train/66593.png +../../data/yoloGtold1/train/66594.png +../../data/yoloGtold1/train/66595.png +../../data/yoloGtold1/train/66596.png +../../data/yoloGtold1/train/66597.png +../../data/yoloGtold1/train/66598.png +../../data/yoloGtold1/train/66599.png +../../data/yoloGtold1/train/66600.png +../../data/yoloGtold1/train/66601.png +../../data/yoloGtold1/train/66602.png +../../data/yoloGtold1/train/66603.png +../../data/yoloGtold1/train/66604.png +../../data/yoloGtold1/train/66605.png +../../data/yoloGtold1/train/66606.png +../../data/yoloGtold1/train/66607.png +../../data/yoloGtold1/train/66608.png +../../data/yoloGtold1/train/66609.png +../../data/yoloGtold1/train/66610.png +../../data/yoloGtold1/train/66611.png +../../data/yoloGtold1/train/66612.png +../../data/yoloGtold1/train/66613.png +../../data/yoloGtold1/train/66614.png +../../data/yoloGtold1/train/66615.png +../../data/yoloGtold1/train/66616.png +../../data/yoloGtold1/train/66617.png +../../data/yoloGtold1/train/66618.png +../../data/yoloGtold1/train/66619.png +../../data/yoloGtold1/train/66620.png +../../data/yoloGtold1/train/66621.png +../../data/yoloGtold1/train/66622.png +../../data/yoloGtold1/train/66623.png +../../data/yoloGtold1/train/66624.png +../../data/yoloGtold1/train/66625.png +../../data/yoloGtold1/train/66626.png +../../data/yoloGtold1/train/66627.png +../../data/yoloGtold1/train/66628.png +../../data/yoloGtold1/train/66629.png +../../data/yoloGtold1/train/66630.png +../../data/yoloGtold1/train/66631.png +../../data/yoloGtold1/train/66632.png +../../data/yoloGtold1/train/66633.png +../../data/yoloGtold1/train/66634.png +../../data/yoloGtold1/train/66635.png +../../data/yoloGtold1/train/66636.png +../../data/yoloGtold1/train/66637.png +../../data/yoloGtold1/train/66638.png +../../data/yoloGtold1/train/66639.png +../../data/yoloGtold1/train/66640.png +../../data/yoloGtold1/train/66641.png +../../data/yoloGtold1/train/66642.png +../../data/yoloGtold1/train/66643.png +../../data/yoloGtold1/train/66644.png +../../data/yoloGtold1/train/66645.png +../../data/yoloGtold1/train/66646.png +../../data/yoloGtold1/train/66647.png +../../data/yoloGtold1/train/66648.png +../../data/yoloGtold1/train/66649.png +../../data/yoloGtold1/train/66650.png +../../data/yoloGtold1/train/66651.png +../../data/yoloGtold1/train/66652.png +../../data/yoloGtold1/train/66653.png +../../data/yoloGtold1/train/66654.png +../../data/yoloGtold1/train/66655.png +../../data/yoloGtold1/train/66656.png +../../data/yoloGtold1/train/66657.png +../../data/yoloGtold1/train/66658.png +../../data/yoloGtold1/train/66659.png +../../data/yoloGtold1/train/66660.png +../../data/yoloGtold1/train/66661.png +../../data/yoloGtold1/train/66662.png +../../data/yoloGtold1/train/66663.png +../../data/yoloGtold1/train/66664.png +../../data/yoloGtold1/train/66665.png +../../data/yoloGtold1/train/66666.png +../../data/yoloGtold1/train/66667.png +../../data/yoloGtold1/train/66668.png +../../data/yoloGtold1/train/66669.png +../../data/yoloGtold1/train/66670.png +../../data/yoloGtold1/train/66671.png +../../data/yoloGtold1/train/66672.png +../../data/yoloGtold1/train/66673.png +../../data/yoloGtold1/train/66674.png +../../data/yoloGtold1/train/66675.png +../../data/yoloGtold1/train/66676.png +../../data/yoloGtold1/train/66677.png +../../data/yoloGtold1/train/66678.png +../../data/yoloGtold1/train/66679.png +../../data/yoloGtold1/train/66680.png +../../data/yoloGtold1/train/66681.png +../../data/yoloGtold1/train/66682.png +../../data/yoloGtold1/train/66683.png +../../data/yoloGtold1/train/66684.png +../../data/yoloGtold1/train/66685.png +../../data/yoloGtold1/train/66686.png +../../data/yoloGtold1/train/66687.png +../../data/yoloGtold1/train/66688.png +../../data/yoloGtold1/train/66689.png +../../data/yoloGtold1/train/66690.png +../../data/yoloGtold1/train/66691.png +../../data/yoloGtold1/train/66692.png +../../data/yoloGtold1/train/66693.png +../../data/yoloGtold1/train/66694.png +../../data/yoloGtold1/train/66695.png +../../data/yoloGtold1/train/66696.png +../../data/yoloGtold1/train/66697.png +../../data/yoloGtold1/train/66698.png +../../data/yoloGtold1/train/66699.png +../../data/yoloGtold1/train/66700.png +../../data/yoloGtold1/train/66701.png +../../data/yoloGtold1/train/66702.png +../../data/yoloGtold1/train/66703.png +../../data/yoloGtold1/train/66704.png +../../data/yoloGtold1/train/66705.png +../../data/yoloGtold1/train/66706.png +../../data/yoloGtold1/train/66707.png +../../data/yoloGtold1/train/66708.png +../../data/yoloGtold1/train/66709.png +../../data/yoloGtold1/train/66710.png +../../data/yoloGtold1/train/66711.png +../../data/yoloGtold1/train/66712.png +../../data/yoloGtold1/train/66713.png +../../data/yoloGtold1/train/66714.png +../../data/yoloGtold1/train/66715.png +../../data/yoloGtold1/train/66716.png +../../data/yoloGtold1/train/66717.png +../../data/yoloGtold1/train/66718.png +../../data/yoloGtold1/train/66719.png +../../data/yoloGtold1/train/66720.png +../../data/yoloGtold1/train/66721.png +../../data/yoloGtold1/train/66722.png +../../data/yoloGtold1/train/66723.png +../../data/yoloGtold1/train/66724.png +../../data/yoloGtold1/train/66725.png +../../data/yoloGtold1/train/66726.png +../../data/yoloGtold1/train/66727.png +../../data/yoloGtold1/train/66728.png +../../data/yoloGtold1/train/66729.png +../../data/yoloGtold1/train/66730.png +../../data/yoloGtold1/train/66731.png +../../data/yoloGtold1/train/66732.png +../../data/yoloGtold1/train/66733.png +../../data/yoloGtold1/train/66734.png +../../data/yoloGtold1/train/66735.png +../../data/yoloGtold1/train/66736.png +../../data/yoloGtold1/train/66737.png +../../data/yoloGtold1/train/66738.png +../../data/yoloGtold1/train/66739.png +../../data/yoloGtold1/train/66740.png +../../data/yoloGtold1/train/66741.png +../../data/yoloGtold1/train/66742.png +../../data/yoloGtold1/train/66743.png +../../data/yoloGtold1/train/66744.png +../../data/yoloGtold1/train/66745.png +../../data/yoloGtold1/train/66746.png +../../data/yoloGtold1/train/66747.png +../../data/yoloGtold1/train/66748.png +../../data/yoloGtold1/train/66749.png +../../data/yoloGtold1/train/66750.png +../../data/yoloGtold1/train/66751.png +../../data/yoloGtold1/train/66752.png +../../data/yoloGtold1/train/66753.png +../../data/yoloGtold1/train/66754.png +../../data/yoloGtold1/train/66755.png +../../data/yoloGtold1/train/66756.png +../../data/yoloGtold1/train/66757.png +../../data/yoloGtold1/train/66758.png +../../data/yoloGtold1/train/66759.png +../../data/yoloGtold1/train/66760.png +../../data/yoloGtold1/train/66761.png +../../data/yoloGtold1/train/66762.png +../../data/yoloGtold1/train/66763.png +../../data/yoloGtold1/train/66764.png +../../data/yoloGtold1/train/66765.png +../../data/yoloGtold1/train/66766.png +../../data/yoloGtold1/train/66767.png +../../data/yoloGtold1/train/66768.png +../../data/yoloGtold1/train/66769.png +../../data/yoloGtold1/train/66770.png +../../data/yoloGtold1/train/66771.png +../../data/yoloGtold1/train/66772.png +../../data/yoloGtold1/train/66773.png +../../data/yoloGtold1/train/66774.png +../../data/yoloGtold1/train/66775.png +../../data/yoloGtold1/train/66776.png +../../data/yoloGtold1/train/66777.png +../../data/yoloGtold1/train/66778.png +../../data/yoloGtold1/train/66779.png +../../data/yoloGtold1/train/66780.png +../../data/yoloGtold1/train/66781.png +../../data/yoloGtold1/train/66782.png +../../data/yoloGtold1/train/66783.png +../../data/yoloGtold1/train/66784.png +../../data/yoloGtold1/train/66785.png +../../data/yoloGtold1/train/66786.png +../../data/yoloGtold1/train/66787.png +../../data/yoloGtold1/train/66788.png +../../data/yoloGtold1/train/66789.png +../../data/yoloGtold1/train/66790.png +../../data/yoloGtold1/train/66791.png +../../data/yoloGtold1/train/66792.png +../../data/yoloGtold1/train/66793.png +../../data/yoloGtold1/train/66794.png +../../data/yoloGtold1/train/66795.png +../../data/yoloGtold1/train/66796.png +../../data/yoloGtold1/train/66797.png +../../data/yoloGtold1/train/66798.png +../../data/yoloGtold1/train/66799.png +../../data/yoloGtold1/train/66800.png +../../data/yoloGtold1/train/66801.png +../../data/yoloGtold1/train/66802.png +../../data/yoloGtold1/train/66803.png +../../data/yoloGtold1/train/66804.png +../../data/yoloGtold1/train/66805.png +../../data/yoloGtold1/train/66806.png +../../data/yoloGtold1/train/66807.png +../../data/yoloGtold1/train/66808.png +../../data/yoloGtold1/train/66809.png +../../data/yoloGtold1/train/66810.png +../../data/yoloGtold1/train/66811.png +../../data/yoloGtold1/train/66812.png +../../data/yoloGtold1/train/66813.png +../../data/yoloGtold1/train/66814.png +../../data/yoloGtold1/train/66815.png +../../data/yoloGtold1/train/66816.png +../../data/yoloGtold1/train/66817.png +../../data/yoloGtold1/train/66818.png +../../data/yoloGtold1/train/66819.png +../../data/yoloGtold1/train/66820.png +../../data/yoloGtold1/train/66821.png +../../data/yoloGtold1/train/66822.png +../../data/yoloGtold1/train/66823.png +../../data/yoloGtold1/train/66824.png +../../data/yoloGtold1/train/66825.png +../../data/yoloGtold1/train/66826.png +../../data/yoloGtold1/train/66827.png +../../data/yoloGtold1/train/66828.png +../../data/yoloGtold1/train/66829.png +../../data/yoloGtold1/train/66830.png +../../data/yoloGtold1/train/66831.png +../../data/yoloGtold1/train/66832.png +../../data/yoloGtold1/train/66833.png +../../data/yoloGtold1/train/66834.png +../../data/yoloGtold1/train/66835.png +../../data/yoloGtold1/train/66836.png +../../data/yoloGtold1/train/66837.png +../../data/yoloGtold1/train/66838.png +../../data/yoloGtold1/train/66839.png +../../data/yoloGtold1/train/66840.png +../../data/yoloGtold1/train/66841.png +../../data/yoloGtold1/train/66842.png +../../data/yoloGtold1/train/66843.png +../../data/yoloGtold1/train/66844.png +../../data/yoloGtold1/train/66845.png +../../data/yoloGtold1/train/66846.png +../../data/yoloGtold1/train/66847.png +../../data/yoloGtold1/train/66848.png +../../data/yoloGtold1/train/66849.png +../../data/yoloGtold1/train/66850.png +../../data/yoloGtold1/train/66851.png +../../data/yoloGtold1/train/66852.png +../../data/yoloGtold1/train/66853.png +../../data/yoloGtold1/train/66854.png +../../data/yoloGtold1/train/66855.png +../../data/yoloGtold1/train/66856.png +../../data/yoloGtold1/train/66857.png +../../data/yoloGtold1/train/66858.png +../../data/yoloGtold1/train/66859.png +../../data/yoloGtold1/train/66860.png +../../data/yoloGtold1/train/66861.png +../../data/yoloGtold1/train/66862.png +../../data/yoloGtold1/train/66863.png +../../data/yoloGtold1/train/66864.png +../../data/yoloGtold1/train/66865.png +../../data/yoloGtold1/train/66866.png +../../data/yoloGtold1/train/66867.png +../../data/yoloGtold1/train/66868.png +../../data/yoloGtold1/train/66869.png +../../data/yoloGtold1/train/66870.png +../../data/yoloGtold1/train/66871.png +../../data/yoloGtold1/train/66872.png +../../data/yoloGtold1/train/66873.png +../../data/yoloGtold1/train/66874.png +../../data/yoloGtold1/train/66875.png +../../data/yoloGtold1/train/66876.png +../../data/yoloGtold1/train/66877.png +../../data/yoloGtold1/train/66878.png +../../data/yoloGtold1/train/66879.png +../../data/yoloGtold1/train/66880.png +../../data/yoloGtold1/train/66881.png +../../data/yoloGtold1/train/66882.png +../../data/yoloGtold1/train/66883.png +../../data/yoloGtold1/train/66884.png +../../data/yoloGtold1/train/66885.png +../../data/yoloGtold1/train/66886.png +../../data/yoloGtold1/train/66887.png +../../data/yoloGtold1/train/66888.png +../../data/yoloGtold1/train/66889.png +../../data/yoloGtold1/train/66890.png +../../data/yoloGtold1/train/66891.png +../../data/yoloGtold1/train/66892.png +../../data/yoloGtold1/train/66893.png +../../data/yoloGtold1/train/66894.png +../../data/yoloGtold1/train/66895.png +../../data/yoloGtold1/train/66896.png +../../data/yoloGtold1/train/66897.png +../../data/yoloGtold1/train/66898.png +../../data/yoloGtold1/train/66899.png +../../data/yoloGtold1/train/66900.png +../../data/yoloGtold1/train/66901.png +../../data/yoloGtold1/train/66902.png +../../data/yoloGtold1/train/66903.png +../../data/yoloGtold1/train/66904.png +../../data/yoloGtold1/train/66905.png +../../data/yoloGtold1/train/66906.png +../../data/yoloGtold1/train/66907.png +../../data/yoloGtold1/train/66908.png +../../data/yoloGtold1/train/66909.png +../../data/yoloGtold1/train/66910.png +../../data/yoloGtold1/train/66911.png +../../data/yoloGtold1/train/66912.png +../../data/yoloGtold1/train/66913.png +../../data/yoloGtold1/train/66914.png +../../data/yoloGtold1/train/66915.png +../../data/yoloGtold1/train/66916.png +../../data/yoloGtold1/train/66917.png +../../data/yoloGtold1/train/66918.png +../../data/yoloGtold1/train/66919.png +../../data/yoloGtold1/train/66920.png +../../data/yoloGtold1/train/66921.png +../../data/yoloGtold1/train/66922.png +../../data/yoloGtold1/train/66923.png +../../data/yoloGtold1/train/66924.png +../../data/yoloGtold1/train/66925.png +../../data/yoloGtold1/train/66926.png +../../data/yoloGtold1/train/66927.png +../../data/yoloGtold1/train/66928.png +../../data/yoloGtold1/train/66929.png +../../data/yoloGtold1/train/66930.png +../../data/yoloGtold1/train/66931.png +../../data/yoloGtold1/train/66932.png +../../data/yoloGtold1/train/66933.png +../../data/yoloGtold1/train/66934.png +../../data/yoloGtold1/train/66935.png +../../data/yoloGtold1/train/66936.png +../../data/yoloGtold1/train/66937.png +../../data/yoloGtold1/train/66938.png +../../data/yoloGtold1/train/66939.png +../../data/yoloGtold1/train/66940.png +../../data/yoloGtold1/train/66941.png +../../data/yoloGtold1/train/66942.png +../../data/yoloGtold1/train/66943.png +../../data/yoloGtold1/train/66944.png +../../data/yoloGtold1/train/66945.png +../../data/yoloGtold1/train/66946.png +../../data/yoloGtold1/train/66947.png +../../data/yoloGtold1/train/66948.png +../../data/yoloGtold1/train/66949.png +../../data/yoloGtold1/train/66950.png +../../data/yoloGtold1/train/66951.png +../../data/yoloGtold1/train/66952.png +../../data/yoloGtold1/train/66953.png +../../data/yoloGtold1/train/66954.png +../../data/yoloGtold1/train/66955.png +../../data/yoloGtold1/train/66956.png +../../data/yoloGtold1/train/66957.png +../../data/yoloGtold1/train/66958.png +../../data/yoloGtold1/train/66959.png +../../data/yoloGtold1/train/66960.png +../../data/yoloGtold1/train/66961.png +../../data/yoloGtold1/train/66962.png +../../data/yoloGtold1/train/66963.png +../../data/yoloGtold1/train/66964.png +../../data/yoloGtold1/train/66965.png +../../data/yoloGtold1/train/66966.png +../../data/yoloGtold1/train/66967.png +../../data/yoloGtold1/train/66968.png +../../data/yoloGtold1/train/66969.png +../../data/yoloGtold1/train/66970.png +../../data/yoloGtold1/train/66971.png +../../data/yoloGtold1/train/66972.png +../../data/yoloGtold1/train/66973.png +../../data/yoloGtold1/train/66974.png +../../data/yoloGtold1/train/66975.png +../../data/yoloGtold1/train/66976.png +../../data/yoloGtold1/train/66977.png +../../data/yoloGtold1/train/66978.png +../../data/yoloGtold1/train/66979.png +../../data/yoloGtold1/train/66980.png +../../data/yoloGtold1/train/66981.png +../../data/yoloGtold1/train/66982.png +../../data/yoloGtold1/train/66983.png +../../data/yoloGtold1/train/66984.png +../../data/yoloGtold1/train/66985.png +../../data/yoloGtold1/train/66986.png +../../data/yoloGtold1/train/66987.png +../../data/yoloGtold1/train/66988.png +../../data/yoloGtold1/train/66989.png +../../data/yoloGtold1/train/66990.png +../../data/yoloGtold1/train/66991.png +../../data/yoloGtold1/train/66992.png +../../data/yoloGtold1/train/66993.png +../../data/yoloGtold1/train/66994.png +../../data/yoloGtold1/train/66995.png +../../data/yoloGtold1/train/66996.png +../../data/yoloGtold1/train/66997.png +../../data/yoloGtold1/train/66998.png +../../data/yoloGtold1/train/66999.png +../../data/yoloGtold1/train/67000.png +../../data/yoloGtold1/train/67001.png +../../data/yoloGtold1/train/67002.png +../../data/yoloGtold1/train/67003.png +../../data/yoloGtold1/train/67004.png +../../data/yoloGtold1/train/67005.png +../../data/yoloGtold1/train/67006.png +../../data/yoloGtold1/train/67007.png +../../data/yoloGtold1/train/67008.png +../../data/yoloGtold1/train/67009.png +../../data/yoloGtold1/train/67010.png +../../data/yoloGtold1/train/67011.png +../../data/yoloGtold1/train/67012.png +../../data/yoloGtold1/train/67013.png +../../data/yoloGtold1/train/67014.png +../../data/yoloGtold1/train/67015.png +../../data/yoloGtold1/train/67016.png +../../data/yoloGtold1/train/67017.png +../../data/yoloGtold1/train/67018.png +../../data/yoloGtold1/train/67019.png +../../data/yoloGtold1/train/67020.png +../../data/yoloGtold1/train/67021.png +../../data/yoloGtold1/train/67022.png +../../data/yoloGtold1/train/67023.png +../../data/yoloGtold1/train/67024.png +../../data/yoloGtold1/train/67025.png +../../data/yoloGtold1/train/67026.png +../../data/yoloGtold1/train/67027.png +../../data/yoloGtold1/train/67028.png +../../data/yoloGtold1/train/67029.png +../../data/yoloGtold1/train/67030.png +../../data/yoloGtold1/train/67031.png +../../data/yoloGtold1/train/67032.png +../../data/yoloGtold1/train/67033.png +../../data/yoloGtold1/train/67034.png +../../data/yoloGtold1/train/67035.png +../../data/yoloGtold1/train/67036.png +../../data/yoloGtold1/train/67037.png +../../data/yoloGtold1/train/67038.png +../../data/yoloGtold1/train/67039.png +../../data/yoloGtold1/train/67040.png +../../data/yoloGtold1/train/67041.png +../../data/yoloGtold1/train/67042.png +../../data/yoloGtold1/train/67043.png +../../data/yoloGtold1/train/67044.png +../../data/yoloGtold1/train/67045.png +../../data/yoloGtold1/train/67046.png +../../data/yoloGtold1/train/67047.png +../../data/yoloGtold1/train/67048.png +../../data/yoloGtold1/train/67049.png +../../data/yoloGtold1/train/67050.png +../../data/yoloGtold1/train/67051.png +../../data/yoloGtold1/train/67052.png +../../data/yoloGtold1/train/67053.png +../../data/yoloGtold1/train/67054.png +../../data/yoloGtold1/train/67055.png +../../data/yoloGtold1/train/67056.png +../../data/yoloGtold1/train/67057.png +../../data/yoloGtold1/train/67058.png +../../data/yoloGtold1/train/67059.png +../../data/yoloGtold1/train/67060.png +../../data/yoloGtold1/train/67061.png +../../data/yoloGtold1/train/67062.png +../../data/yoloGtold1/train/67063.png +../../data/yoloGtold1/train/67064.png +../../data/yoloGtold1/train/67065.png +../../data/yoloGtold1/train/67066.png +../../data/yoloGtold1/train/67067.png +../../data/yoloGtold1/train/67068.png +../../data/yoloGtold1/train/67069.png +../../data/yoloGtold1/train/67070.png +../../data/yoloGtold1/train/67071.png +../../data/yoloGtold1/train/67072.png +../../data/yoloGtold1/train/67073.png +../../data/yoloGtold1/train/67074.png +../../data/yoloGtold1/train/67075.png +../../data/yoloGtold1/train/67076.png +../../data/yoloGtold1/train/67077.png +../../data/yoloGtold1/train/67078.png +../../data/yoloGtold1/train/67079.png +../../data/yoloGtold1/train/67080.png +../../data/yoloGtold1/train/67081.png +../../data/yoloGtold1/train/67082.png +../../data/yoloGtold1/train/67083.png +../../data/yoloGtold1/train/67084.png +../../data/yoloGtold1/train/67085.png +../../data/yoloGtold1/train/67086.png +../../data/yoloGtold1/train/67087.png +../../data/yoloGtold1/train/67088.png +../../data/yoloGtold1/train/67089.png +../../data/yoloGtold1/train/67090.png +../../data/yoloGtold1/train/67091.png +../../data/yoloGtold1/train/67092.png +../../data/yoloGtold1/train/67093.png +../../data/yoloGtold1/train/67094.png +../../data/yoloGtold1/train/67095.png +../../data/yoloGtold1/train/67096.png +../../data/yoloGtold1/train/67097.png +../../data/yoloGtold1/train/67098.png +../../data/yoloGtold1/train/67099.png +../../data/yoloGtold1/train/67100.png +../../data/yoloGtold1/train/67101.png +../../data/yoloGtold1/train/67102.png +../../data/yoloGtold1/train/67103.png +../../data/yoloGtold1/train/67104.png +../../data/yoloGtold1/train/67105.png +../../data/yoloGtold1/train/67106.png +../../data/yoloGtold1/train/67107.png +../../data/yoloGtold1/train/67108.png +../../data/yoloGtold1/train/67109.png +../../data/yoloGtold1/train/67110.png +../../data/yoloGtold1/train/67111.png +../../data/yoloGtold1/train/67112.png +../../data/yoloGtold1/train/67113.png +../../data/yoloGtold1/train/67114.png +../../data/yoloGtold1/train/67115.png +../../data/yoloGtold1/train/67116.png +../../data/yoloGtold1/train/67117.png +../../data/yoloGtold1/train/67118.png +../../data/yoloGtold1/train/67119.png +../../data/yoloGtold1/train/67120.png +../../data/yoloGtold1/train/67121.png +../../data/yoloGtold1/train/67122.png +../../data/yoloGtold1/train/67123.png +../../data/yoloGtold1/train/67124.png +../../data/yoloGtold1/train/67125.png +../../data/yoloGtold1/train/67126.png +../../data/yoloGtold1/train/67127.png +../../data/yoloGtold1/train/67128.png +../../data/yoloGtold1/train/67129.png +../../data/yoloGtold1/train/67130.png +../../data/yoloGtold1/train/67131.png +../../data/yoloGtold1/train/67132.png +../../data/yoloGtold1/train/67133.png +../../data/yoloGtold1/train/67134.png +../../data/yoloGtold1/train/67135.png +../../data/yoloGtold1/train/67136.png +../../data/yoloGtold1/train/67137.png +../../data/yoloGtold1/train/67138.png +../../data/yoloGtold1/train/67139.png +../../data/yoloGtold1/train/67140.png +../../data/yoloGtold1/train/67141.png +../../data/yoloGtold1/train/67142.png +../../data/yoloGtold1/train/67143.png +../../data/yoloGtold1/train/67144.png +../../data/yoloGtold1/train/67145.png +../../data/yoloGtold1/train/67146.png +../../data/yoloGtold1/train/67147.png +../../data/yoloGtold1/train/67148.png +../../data/yoloGtold1/train/67149.png +../../data/yoloGtold1/train/67150.png +../../data/yoloGtold1/train/67151.png +../../data/yoloGtold1/train/67152.png +../../data/yoloGtold1/train/67153.png +../../data/yoloGtold1/train/67154.png +../../data/yoloGtold1/train/67155.png +../../data/yoloGtold1/train/67156.png +../../data/yoloGtold1/train/67157.png +../../data/yoloGtold1/train/67158.png +../../data/yoloGtold1/train/67159.png +../../data/yoloGtold1/train/67160.png +../../data/yoloGtold1/train/67161.png +../../data/yoloGtold1/train/67162.png +../../data/yoloGtold1/train/67163.png +../../data/yoloGtold1/train/67164.png +../../data/yoloGtold1/train/67165.png +../../data/yoloGtold1/train/67166.png +../../data/yoloGtold1/train/67167.png +../../data/yoloGtold1/train/67168.png +../../data/yoloGtold1/train/67169.png +../../data/yoloGtold1/train/67170.png +../../data/yoloGtold1/train/67171.png +../../data/yoloGtold1/train/67172.png +../../data/yoloGtold1/train/67173.png +../../data/yoloGtold1/train/67174.png +../../data/yoloGtold1/train/67175.png +../../data/yoloGtold1/train/67176.png +../../data/yoloGtold1/train/67177.png +../../data/yoloGtold1/train/67178.png +../../data/yoloGtold1/train/67179.png +../../data/yoloGtold1/train/67180.png +../../data/yoloGtold1/train/67181.png +../../data/yoloGtold1/train/67182.png +../../data/yoloGtold1/train/67183.png +../../data/yoloGtold1/train/67184.png +../../data/yoloGtold1/train/67185.png +../../data/yoloGtold1/train/67186.png +../../data/yoloGtold1/train/67187.png +../../data/yoloGtold1/train/67188.png +../../data/yoloGtold1/train/67189.png +../../data/yoloGtold1/train/67190.png +../../data/yoloGtold1/train/67191.png +../../data/yoloGtold1/train/67192.png +../../data/yoloGtold1/train/67193.png +../../data/yoloGtold1/train/67194.png +../../data/yoloGtold1/train/67195.png +../../data/yoloGtold1/train/67196.png +../../data/yoloGtold1/train/67197.png +../../data/yoloGtold1/train/67198.png +../../data/yoloGtold1/train/67199.png +../../data/yoloGtold1/train/67200.png +../../data/yoloGtold1/train/67201.png +../../data/yoloGtold1/train/67202.png +../../data/yoloGtold1/train/67203.png +../../data/yoloGtold1/train/67204.png +../../data/yoloGtold1/train/67205.png +../../data/yoloGtold1/train/67206.png +../../data/yoloGtold1/train/67207.png +../../data/yoloGtold1/train/67208.png +../../data/yoloGtold1/train/67209.png +../../data/yoloGtold1/train/67210.png +../../data/yoloGtold1/train/67211.png +../../data/yoloGtold1/train/67212.png +../../data/yoloGtold1/train/67213.png +../../data/yoloGtold1/train/67214.png +../../data/yoloGtold1/train/67215.png +../../data/yoloGtold1/train/67216.png +../../data/yoloGtold1/train/67217.png +../../data/yoloGtold1/train/67218.png +../../data/yoloGtold1/train/67219.png +../../data/yoloGtold1/train/67220.png +../../data/yoloGtold1/train/67221.png +../../data/yoloGtold1/train/67222.png +../../data/yoloGtold1/train/67223.png +../../data/yoloGtold1/train/67224.png +../../data/yoloGtold1/train/67225.png +../../data/yoloGtold1/train/67226.png +../../data/yoloGtold1/train/67227.png +../../data/yoloGtold1/train/67228.png +../../data/yoloGtold1/train/67229.png +../../data/yoloGtold1/train/67230.png +../../data/yoloGtold1/train/67231.png +../../data/yoloGtold1/train/67232.png +../../data/yoloGtold1/train/67233.png +../../data/yoloGtold1/train/67234.png +../../data/yoloGtold1/train/67235.png +../../data/yoloGtold1/train/67236.png +../../data/yoloGtold1/train/67237.png +../../data/yoloGtold1/train/67238.png +../../data/yoloGtold1/train/67239.png +../../data/yoloGtold1/train/67240.png +../../data/yoloGtold1/train/67241.png +../../data/yoloGtold1/train/67242.png +../../data/yoloGtold1/train/67243.png +../../data/yoloGtold1/train/67244.png +../../data/yoloGtold1/train/67245.png +../../data/yoloGtold1/train/67246.png +../../data/yoloGtold1/train/67247.png +../../data/yoloGtold1/train/67248.png +../../data/yoloGtold1/train/67249.png +../../data/yoloGtold1/train/67250.png +../../data/yoloGtold1/train/67251.png +../../data/yoloGtold1/train/67252.png +../../data/yoloGtold1/train/67253.png +../../data/yoloGtold1/train/67254.png +../../data/yoloGtold1/train/67255.png +../../data/yoloGtold1/train/67256.png +../../data/yoloGtold1/train/67257.png +../../data/yoloGtold1/train/67258.png +../../data/yoloGtold1/train/67259.png +../../data/yoloGtold1/train/67260.png +../../data/yoloGtold1/train/67261.png +../../data/yoloGtold1/train/67262.png +../../data/yoloGtold1/train/67263.png +../../data/yoloGtold1/train/67264.png +../../data/yoloGtold1/train/67265.png +../../data/yoloGtold1/train/67266.png +../../data/yoloGtold1/train/67267.png +../../data/yoloGtold1/train/67268.png +../../data/yoloGtold1/train/67269.png +../../data/yoloGtold1/train/67270.png +../../data/yoloGtold1/train/67271.png +../../data/yoloGtold1/train/67272.png +../../data/yoloGtold1/train/67273.png +../../data/yoloGtold1/train/67274.png +../../data/yoloGtold1/train/67275.png +../../data/yoloGtold1/train/67276.png +../../data/yoloGtold1/train/67277.png +../../data/yoloGtold1/train/67278.png +../../data/yoloGtold1/train/67279.png +../../data/yoloGtold1/train/67280.png +../../data/yoloGtold1/train/67281.png +../../data/yoloGtold1/train/67282.png +../../data/yoloGtold1/train/67283.png +../../data/yoloGtold1/train/67284.png +../../data/yoloGtold1/train/67285.png +../../data/yoloGtold1/train/67286.png +../../data/yoloGtold1/train/67287.png +../../data/yoloGtold1/train/67288.png +../../data/yoloGtold1/train/67289.png +../../data/yoloGtold1/train/67290.png +../../data/yoloGtold1/train/67291.png +../../data/yoloGtold1/train/67292.png +../../data/yoloGtold1/train/67293.png +../../data/yoloGtold1/train/67294.png +../../data/yoloGtold1/train/67295.png +../../data/yoloGtold1/train/67296.png +../../data/yoloGtold1/train/67297.png +../../data/yoloGtold1/train/67298.png +../../data/yoloGtold1/train/67299.png +../../data/yoloGtold1/train/67300.png +../../data/yoloGtold1/train/67301.png +../../data/yoloGtold1/train/67302.png +../../data/yoloGtold1/train/67303.png +../../data/yoloGtold1/train/67304.png +../../data/yoloGtold1/train/67305.png +../../data/yoloGtold1/train/67306.png +../../data/yoloGtold1/train/67307.png +../../data/yoloGtold1/train/67308.png +../../data/yoloGtold1/train/67309.png +../../data/yoloGtold1/train/67310.png +../../data/yoloGtold1/train/67311.png +../../data/yoloGtold1/train/67312.png +../../data/yoloGtold1/train/67313.png +../../data/yoloGtold1/train/67314.png +../../data/yoloGtold1/train/67315.png +../../data/yoloGtold1/train/67316.png +../../data/yoloGtold1/train/67317.png +../../data/yoloGtold1/train/67318.png +../../data/yoloGtold1/train/67319.png +../../data/yoloGtold1/train/67320.png +../../data/yoloGtold1/train/67321.png +../../data/yoloGtold1/train/67322.png +../../data/yoloGtold1/train/67323.png +../../data/yoloGtold1/train/67324.png +../../data/yoloGtold1/train/67325.png +../../data/yoloGtold1/train/67326.png +../../data/yoloGtold1/train/67327.png +../../data/yoloGtold1/train/67328.png +../../data/yoloGtold1/train/67329.png +../../data/yoloGtold1/train/67330.png +../../data/yoloGtold1/train/67331.png +../../data/yoloGtold1/train/67332.png +../../data/yoloGtold1/train/67333.png +../../data/yoloGtold1/train/67334.png +../../data/yoloGtold1/train/67335.png +../../data/yoloGtold1/train/67336.png +../../data/yoloGtold1/train/67337.png +../../data/yoloGtold1/train/67338.png +../../data/yoloGtold1/train/67339.png +../../data/yoloGtold1/train/67340.png +../../data/yoloGtold1/train/67341.png +../../data/yoloGtold1/train/67342.png +../../data/yoloGtold1/train/67343.png +../../data/yoloGtold1/train/67344.png +../../data/yoloGtold1/train/67345.png +../../data/yoloGtold1/train/67346.png +../../data/yoloGtold1/train/67347.png +../../data/yoloGtold1/train/67348.png +../../data/yoloGtold1/train/67349.png +../../data/yoloGtold1/train/67350.png +../../data/yoloGtold1/train/67351.png +../../data/yoloGtold1/train/67352.png +../../data/yoloGtold1/train/67353.png +../../data/yoloGtold1/train/67354.png +../../data/yoloGtold1/train/67355.png +../../data/yoloGtold1/train/67356.png +../../data/yoloGtold1/train/67357.png +../../data/yoloGtold1/train/67358.png +../../data/yoloGtold1/train/67359.png +../../data/yoloGtold1/train/67360.png +../../data/yoloGtold1/train/67361.png +../../data/yoloGtold1/train/67362.png +../../data/yoloGtold1/train/67363.png +../../data/yoloGtold1/train/67364.png +../../data/yoloGtold1/train/67365.png +../../data/yoloGtold1/train/67366.png +../../data/yoloGtold1/train/67367.png +../../data/yoloGtold1/train/67368.png +../../data/yoloGtold1/train/67369.png +../../data/yoloGtold1/train/67370.png +../../data/yoloGtold1/train/67371.png +../../data/yoloGtold1/train/67372.png +../../data/yoloGtold1/train/67373.png +../../data/yoloGtold1/train/67374.png +../../data/yoloGtold1/train/67375.png +../../data/yoloGtold1/train/67376.png +../../data/yoloGtold1/train/67377.png +../../data/yoloGtold1/train/67378.png +../../data/yoloGtold1/train/67379.png +../../data/yoloGtold1/train/67380.png +../../data/yoloGtold1/train/67381.png +../../data/yoloGtold1/train/67382.png +../../data/yoloGtold1/train/67383.png +../../data/yoloGtold1/train/67384.png +../../data/yoloGtold1/train/67385.png +../../data/yoloGtold1/train/67386.png +../../data/yoloGtold1/train/67387.png +../../data/yoloGtold1/train/67388.png +../../data/yoloGtold1/train/67389.png +../../data/yoloGtold1/train/67390.png +../../data/yoloGtold1/train/67391.png +../../data/yoloGtold1/train/67392.png +../../data/yoloGtold1/train/67393.png +../../data/yoloGtold1/train/67394.png +../../data/yoloGtold1/train/67395.png +../../data/yoloGtold1/train/67396.png +../../data/yoloGtold1/train/67397.png +../../data/yoloGtold1/train/67398.png +../../data/yoloGtold1/train/67399.png +../../data/yoloGtold1/train/67400.png +../../data/yoloGtold1/train/67401.png +../../data/yoloGtold1/train/67402.png +../../data/yoloGtold1/train/67403.png +../../data/yoloGtold1/train/67404.png +../../data/yoloGtold1/train/67405.png +../../data/yoloGtold1/train/67406.png +../../data/yoloGtold1/train/67407.png +../../data/yoloGtold1/train/67408.png +../../data/yoloGtold1/train/67409.png +../../data/yoloGtold1/train/67410.png +../../data/yoloGtold1/train/67411.png +../../data/yoloGtold1/train/67412.png +../../data/yoloGtold1/train/67413.png +../../data/yoloGtold1/train/67414.png +../../data/yoloGtold1/train/67415.png +../../data/yoloGtold1/train/67416.png +../../data/yoloGtold1/train/67417.png +../../data/yoloGtold1/train/67418.png +../../data/yoloGtold1/train/67419.png +../../data/yoloGtold1/train/67420.png +../../data/yoloGtold1/train/67421.png +../../data/yoloGtold1/train/67422.png +../../data/yoloGtold1/train/67423.png +../../data/yoloGtold1/train/67424.png +../../data/yoloGtold1/train/67425.png +../../data/yoloGtold1/train/67426.png +../../data/yoloGtold1/train/67427.png +../../data/yoloGtold1/train/67428.png +../../data/yoloGtold1/train/67429.png +../../data/yoloGtold1/train/67430.png +../../data/yoloGtold1/train/67431.png +../../data/yoloGtold1/train/67432.png +../../data/yoloGtold1/train/67433.png +../../data/yoloGtold1/train/67434.png +../../data/yoloGtold1/train/67435.png +../../data/yoloGtold1/train/67436.png +../../data/yoloGtold1/train/67437.png +../../data/yoloGtold1/train/67438.png +../../data/yoloGtold1/train/67439.png +../../data/yoloGtold1/train/67440.png +../../data/yoloGtold1/train/67441.png +../../data/yoloGtold1/train/67442.png +../../data/yoloGtold1/train/67443.png +../../data/yoloGtold1/train/67444.png +../../data/yoloGtold1/train/67445.png +../../data/yoloGtold1/train/67446.png +../../data/yoloGtold1/train/67447.png +../../data/yoloGtold1/train/67448.png +../../data/yoloGtold1/train/67449.png +../../data/yoloGtold1/train/67450.png +../../data/yoloGtold1/train/67451.png +../../data/yoloGtold1/train/67452.png +../../data/yoloGtold1/train/67453.png +../../data/yoloGtold1/train/67454.png +../../data/yoloGtold1/train/67455.png +../../data/yoloGtold1/train/67456.png +../../data/yoloGtold1/train/67457.png +../../data/yoloGtold1/train/67458.png +../../data/yoloGtold1/train/67459.png +../../data/yoloGtold1/train/67460.png +../../data/yoloGtold1/train/67461.png +../../data/yoloGtold1/train/67462.png +../../data/yoloGtold1/train/67463.png +../../data/yoloGtold1/train/67464.png +../../data/yoloGtold1/train/67465.png +../../data/yoloGtold1/train/67466.png +../../data/yoloGtold1/train/67467.png +../../data/yoloGtold1/train/67468.png +../../data/yoloGtold1/train/67469.png +../../data/yoloGtold1/train/67470.png +../../data/yoloGtold1/train/67471.png +../../data/yoloGtold1/train/67472.png +../../data/yoloGtold1/train/67473.png +../../data/yoloGtold1/train/67474.png +../../data/yoloGtold1/train/67475.png +../../data/yoloGtold1/train/67476.png +../../data/yoloGtold1/train/67477.png +../../data/yoloGtold1/train/67478.png +../../data/yoloGtold1/train/67479.png +../../data/yoloGtold1/train/67480.png +../../data/yoloGtold1/train/67481.png +../../data/yoloGtold1/train/67482.png +../../data/yoloGtold1/train/67483.png +../../data/yoloGtold1/train/67484.png +../../data/yoloGtold1/train/67485.png +../../data/yoloGtold1/train/67486.png +../../data/yoloGtold1/train/67487.png +../../data/yoloGtold1/train/67488.png +../../data/yoloGtold1/train/67489.png +../../data/yoloGtold1/train/67490.png +../../data/yoloGtold1/train/67491.png +../../data/yoloGtold1/train/67492.png +../../data/yoloGtold1/train/67493.png +../../data/yoloGtold1/train/67494.png +../../data/yoloGtold1/train/67495.png +../../data/yoloGtold1/train/67496.png +../../data/yoloGtold1/train/67497.png +../../data/yoloGtold1/train/67498.png +../../data/yoloGtold1/train/67499.png +../../data/yoloGtold1/train/67500.png +../../data/yoloGtold1/train/67501.png +../../data/yoloGtold1/train/67502.png +../../data/yoloGtold1/train/67503.png +../../data/yoloGtold1/train/67504.png +../../data/yoloGtold1/train/67505.png +../../data/yoloGtold1/train/67506.png +../../data/yoloGtold1/train/67507.png +../../data/yoloGtold1/train/67508.png +../../data/yoloGtold1/train/67509.png +../../data/yoloGtold1/train/67510.png +../../data/yoloGtold1/train/67511.png +../../data/yoloGtold1/train/67512.png +../../data/yoloGtold1/train/67513.png +../../data/yoloGtold1/train/67514.png +../../data/yoloGtold1/train/67515.png +../../data/yoloGtold1/train/67516.png +../../data/yoloGtold1/train/67517.png +../../data/yoloGtold1/train/67518.png +../../data/yoloGtold1/train/67519.png +../../data/yoloGtold1/train/67520.png +../../data/yoloGtold1/train/67521.png +../../data/yoloGtold1/train/67522.png +../../data/yoloGtold1/train/67523.png +../../data/yoloGtold1/train/67524.png +../../data/yoloGtold1/train/67525.png +../../data/yoloGtold1/train/67526.png +../../data/yoloGtold1/train/67527.png +../../data/yoloGtold1/train/67528.png +../../data/yoloGtold1/train/67529.png +../../data/yoloGtold1/train/67530.png +../../data/yoloGtold1/train/67531.png +../../data/yoloGtold1/train/67532.png +../../data/yoloGtold1/train/67533.png +../../data/yoloGtold1/train/67534.png +../../data/yoloGtold1/train/67535.png +../../data/yoloGtold1/train/67536.png +../../data/yoloGtold1/train/67537.png +../../data/yoloGtold1/train/67538.png +../../data/yoloGtold1/train/67539.png +../../data/yoloGtold1/train/67540.png +../../data/yoloGtold1/train/67541.png +../../data/yoloGtold1/train/67542.png +../../data/yoloGtold1/train/67543.png +../../data/yoloGtold1/train/67544.png +../../data/yoloGtold1/train/67545.png +../../data/yoloGtold1/train/67546.png +../../data/yoloGtold1/train/67547.png +../../data/yoloGtold1/train/67548.png +../../data/yoloGtold1/train/67549.png +../../data/yoloGtold1/train/67550.png +../../data/yoloGtold1/train/67551.png +../../data/yoloGtold1/train/67552.png +../../data/yoloGtold1/train/67553.png +../../data/yoloGtold1/train/67554.png +../../data/yoloGtold1/train/67555.png +../../data/yoloGtold1/train/67556.png +../../data/yoloGtold1/train/67557.png +../../data/yoloGtold1/train/67558.png +../../data/yoloGtold1/train/67559.png +../../data/yoloGtold1/train/67560.png +../../data/yoloGtold1/train/67561.png +../../data/yoloGtold1/train/67562.png +../../data/yoloGtold1/train/67563.png +../../data/yoloGtold1/train/67564.png +../../data/yoloGtold1/train/67565.png +../../data/yoloGtold1/train/67566.png +../../data/yoloGtold1/train/67567.png +../../data/yoloGtold1/train/67568.png +../../data/yoloGtold1/train/67569.png +../../data/yoloGtold1/train/67570.png +../../data/yoloGtold1/train/67571.png +../../data/yoloGtold1/train/67572.png +../../data/yoloGtold1/train/67573.png +../../data/yoloGtold1/train/67574.png +../../data/yoloGtold1/train/67575.png +../../data/yoloGtold1/train/67576.png +../../data/yoloGtold1/train/67577.png +../../data/yoloGtold1/train/67578.png +../../data/yoloGtold1/train/67579.png +../../data/yoloGtold1/train/67580.png +../../data/yoloGtold1/train/67581.png +../../data/yoloGtold1/train/67582.png +../../data/yoloGtold1/train/67583.png +../../data/yoloGtold1/train/67584.png +../../data/yoloGtold1/train/67585.png +../../data/yoloGtold1/train/67586.png +../../data/yoloGtold1/train/67587.png +../../data/yoloGtold1/train/67588.png +../../data/yoloGtold1/train/67589.png +../../data/yoloGtold1/train/67590.png +../../data/yoloGtold1/train/67591.png +../../data/yoloGtold1/train/67592.png +../../data/yoloGtold1/train/67593.png +../../data/yoloGtold1/train/67594.png +../../data/yoloGtold1/train/67595.png +../../data/yoloGtold1/train/67596.png +../../data/yoloGtold1/train/67597.png +../../data/yoloGtold1/train/67598.png +../../data/yoloGtold1/train/67599.png +../../data/yoloGtold1/train/67600.png +../../data/yoloGtold1/train/67601.png +../../data/yoloGtold1/train/67602.png +../../data/yoloGtold1/train/67603.png +../../data/yoloGtold1/train/67604.png +../../data/yoloGtold1/train/67605.png +../../data/yoloGtold1/train/67606.png +../../data/yoloGtold1/train/67607.png +../../data/yoloGtold1/train/67608.png +../../data/yoloGtold1/train/67609.png +../../data/yoloGtold1/train/67610.png +../../data/yoloGtold1/train/67611.png +../../data/yoloGtold1/train/67612.png +../../data/yoloGtold1/train/67613.png +../../data/yoloGtold1/train/67614.png +../../data/yoloGtold1/train/67615.png +../../data/yoloGtold1/train/67616.png +../../data/yoloGtold1/train/67617.png +../../data/yoloGtold1/train/67618.png +../../data/yoloGtold1/train/67619.png +../../data/yoloGtold1/train/67620.png +../../data/yoloGtold1/train/67621.png +../../data/yoloGtold1/train/67622.png +../../data/yoloGtold1/train/67623.png +../../data/yoloGtold1/train/67624.png +../../data/yoloGtold1/train/67625.png +../../data/yoloGtold1/train/67626.png +../../data/yoloGtold1/train/67627.png +../../data/yoloGtold1/train/67628.png +../../data/yoloGtold1/train/67629.png +../../data/yoloGtold1/train/67630.png +../../data/yoloGtold1/train/67631.png +../../data/yoloGtold1/train/67632.png +../../data/yoloGtold1/train/67633.png +../../data/yoloGtold1/train/67634.png +../../data/yoloGtold1/train/67635.png +../../data/yoloGtold1/train/67636.png +../../data/yoloGtold1/train/67637.png +../../data/yoloGtold1/train/67638.png +../../data/yoloGtold1/train/67639.png +../../data/yoloGtold1/train/67640.png +../../data/yoloGtold1/train/67641.png +../../data/yoloGtold1/train/67642.png +../../data/yoloGtold1/train/67643.png +../../data/yoloGtold1/train/67644.png +../../data/yoloGtold1/train/67645.png +../../data/yoloGtold1/train/67646.png +../../data/yoloGtold1/train/67647.png +../../data/yoloGtold1/train/67648.png +../../data/yoloGtold1/train/67649.png +../../data/yoloGtold1/train/67650.png +../../data/yoloGtold1/train/67651.png +../../data/yoloGtold1/train/67652.png +../../data/yoloGtold1/train/67653.png +../../data/yoloGtold1/train/67654.png +../../data/yoloGtold1/train/67655.png +../../data/yoloGtold1/train/67656.png +../../data/yoloGtold1/train/67657.png +../../data/yoloGtold1/train/67658.png +../../data/yoloGtold1/train/67659.png +../../data/yoloGtold1/train/67660.png +../../data/yoloGtold1/train/67661.png +../../data/yoloGtold1/train/67662.png +../../data/yoloGtold1/train/67663.png +../../data/yoloGtold1/train/67664.png +../../data/yoloGtold1/train/67665.png +../../data/yoloGtold1/train/67666.png +../../data/yoloGtold1/train/67667.png +../../data/yoloGtold1/train/67668.png +../../data/yoloGtold1/train/67669.png +../../data/yoloGtold1/train/67670.png +../../data/yoloGtold1/train/67671.png +../../data/yoloGtold1/train/67672.png +../../data/yoloGtold1/train/67673.png +../../data/yoloGtold1/train/67674.png +../../data/yoloGtold1/train/67675.png +../../data/yoloGtold1/train/67676.png +../../data/yoloGtold1/train/67677.png +../../data/yoloGtold1/train/67678.png +../../data/yoloGtold1/train/67679.png +../../data/yoloGtold1/train/67680.png +../../data/yoloGtold1/train/67681.png +../../data/yoloGtold1/train/67682.png +../../data/yoloGtold1/train/67683.png +../../data/yoloGtold1/train/67684.png +../../data/yoloGtold1/train/67685.png +../../data/yoloGtold1/train/67686.png +../../data/yoloGtold1/train/67687.png +../../data/yoloGtold1/train/67688.png +../../data/yoloGtold1/train/67689.png +../../data/yoloGtold1/train/67690.png +../../data/yoloGtold1/train/67691.png +../../data/yoloGtold1/train/67692.png +../../data/yoloGtold1/train/67693.png +../../data/yoloGtold1/train/67694.png +../../data/yoloGtold1/train/67695.png +../../data/yoloGtold1/train/67696.png +../../data/yoloGtold1/train/67697.png +../../data/yoloGtold1/train/67698.png +../../data/yoloGtold1/train/67699.png +../../data/yoloGtold1/train/67700.png +../../data/yoloGtold1/train/67701.png +../../data/yoloGtold1/train/67702.png +../../data/yoloGtold1/train/67703.png +../../data/yoloGtold1/train/67704.png +../../data/yoloGtold1/train/67705.png +../../data/yoloGtold1/train/67706.png +../../data/yoloGtold1/train/67707.png +../../data/yoloGtold1/train/67708.png +../../data/yoloGtold1/train/67709.png +../../data/yoloGtold1/train/67710.png +../../data/yoloGtold1/train/67711.png +../../data/yoloGtold1/train/67712.png +../../data/yoloGtold1/train/67713.png +../../data/yoloGtold1/train/67714.png +../../data/yoloGtold1/train/67715.png +../../data/yoloGtold1/train/67716.png +../../data/yoloGtold1/train/67717.png +../../data/yoloGtold1/train/67718.png +../../data/yoloGtold1/train/67719.png +../../data/yoloGtold1/train/67720.png +../../data/yoloGtold1/train/67721.png +../../data/yoloGtold1/train/67722.png +../../data/yoloGtold1/train/67723.png +../../data/yoloGtold1/train/67724.png +../../data/yoloGtold1/train/67725.png +../../data/yoloGtold1/train/67726.png +../../data/yoloGtold1/train/67727.png +../../data/yoloGtold1/train/67728.png +../../data/yoloGtold1/train/67729.png +../../data/yoloGtold1/train/67730.png +../../data/yoloGtold1/train/67731.png +../../data/yoloGtold1/train/67732.png +../../data/yoloGtold1/train/67733.png +../../data/yoloGtold1/train/67734.png +../../data/yoloGtold1/train/67735.png +../../data/yoloGtold1/train/67736.png +../../data/yoloGtold1/train/67737.png +../../data/yoloGtold1/train/67738.png +../../data/yoloGtold1/train/67739.png +../../data/yoloGtold1/train/67740.png +../../data/yoloGtold1/train/67741.png +../../data/yoloGtold1/train/67742.png +../../data/yoloGtold1/train/67743.png +../../data/yoloGtold1/train/67744.png +../../data/yoloGtold1/train/67745.png +../../data/yoloGtold1/train/67746.png +../../data/yoloGtold1/train/67747.png +../../data/yoloGtold1/train/67748.png +../../data/yoloGtold1/train/67749.png +../../data/yoloGtold1/train/67750.png +../../data/yoloGtold1/train/67751.png +../../data/yoloGtold1/train/67752.png +../../data/yoloGtold1/train/67753.png +../../data/yoloGtold1/train/67754.png +../../data/yoloGtold1/train/67755.png +../../data/yoloGtold1/train/67756.png +../../data/yoloGtold1/train/67757.png +../../data/yoloGtold1/train/67758.png +../../data/yoloGtold1/train/67759.png +../../data/yoloGtold1/train/67760.png +../../data/yoloGtold1/train/67761.png +../../data/yoloGtold1/train/67762.png +../../data/yoloGtold1/train/67763.png +../../data/yoloGtold1/train/67764.png +../../data/yoloGtold1/train/67765.png +../../data/yoloGtold1/train/67766.png +../../data/yoloGtold1/train/67767.png +../../data/yoloGtold1/train/67768.png +../../data/yoloGtold1/train/67769.png +../../data/yoloGtold1/train/67770.png +../../data/yoloGtold1/train/67771.png +../../data/yoloGtold1/train/67772.png +../../data/yoloGtold1/train/67773.png +../../data/yoloGtold1/train/67774.png +../../data/yoloGtold1/train/67775.png +../../data/yoloGtold1/train/67776.png +../../data/yoloGtold1/train/67777.png +../../data/yoloGtold1/train/67778.png +../../data/yoloGtold1/train/67779.png +../../data/yoloGtold1/train/67780.png +../../data/yoloGtold1/train/67781.png +../../data/yoloGtold1/train/67782.png +../../data/yoloGtold1/train/67783.png +../../data/yoloGtold1/train/67784.png +../../data/yoloGtold1/train/67785.png +../../data/yoloGtold1/train/67786.png +../../data/yoloGtold1/train/67787.png +../../data/yoloGtold1/train/67788.png +../../data/yoloGtold1/train/67789.png +../../data/yoloGtold1/train/67790.png +../../data/yoloGtold1/train/67791.png +../../data/yoloGtold1/train/67792.png +../../data/yoloGtold1/train/67793.png +../../data/yoloGtold1/train/67794.png +../../data/yoloGtold1/train/67795.png +../../data/yoloGtold1/train/67796.png +../../data/yoloGtold1/train/67797.png +../../data/yoloGtold1/train/67798.png +../../data/yoloGtold1/train/67799.png +../../data/yoloGtold1/train/67800.png +../../data/yoloGtold1/train/67801.png +../../data/yoloGtold1/train/67802.png +../../data/yoloGtold1/train/67803.png +../../data/yoloGtold1/train/67804.png +../../data/yoloGtold1/train/67805.png +../../data/yoloGtold1/train/67806.png +../../data/yoloGtold1/train/67807.png +../../data/yoloGtold1/train/67808.png +../../data/yoloGtold1/train/67809.png +../../data/yoloGtold1/train/67810.png +../../data/yoloGtold1/train/67811.png +../../data/yoloGtold1/train/67812.png +../../data/yoloGtold1/train/67813.png +../../data/yoloGtold1/train/67814.png +../../data/yoloGtold1/train/67815.png +../../data/yoloGtold1/train/67816.png +../../data/yoloGtold1/train/67817.png +../../data/yoloGtold1/train/67818.png +../../data/yoloGtold1/train/67819.png +../../data/yoloGtold1/train/67820.png +../../data/yoloGtold1/train/67821.png +../../data/yoloGtold1/train/67822.png +../../data/yoloGtold1/train/67823.png +../../data/yoloGtold1/train/67824.png +../../data/yoloGtold1/train/67825.png +../../data/yoloGtold1/train/67826.png +../../data/yoloGtold1/train/67827.png +../../data/yoloGtold1/train/67828.png +../../data/yoloGtold1/train/67829.png +../../data/yoloGtold1/train/67830.png +../../data/yoloGtold1/train/67831.png +../../data/yoloGtold1/train/67832.png +../../data/yoloGtold1/train/67833.png +../../data/yoloGtold1/train/67834.png +../../data/yoloGtold1/train/67835.png +../../data/yoloGtold1/train/67836.png +../../data/yoloGtold1/train/67837.png +../../data/yoloGtold1/train/67838.png +../../data/yoloGtold1/train/67839.png +../../data/yoloGtold1/train/67840.png +../../data/yoloGtold1/train/67841.png +../../data/yoloGtold1/train/67842.png +../../data/yoloGtold1/train/67843.png +../../data/yoloGtold1/train/67844.png +../../data/yoloGtold1/train/67845.png +../../data/yoloGtold1/train/67846.png +../../data/yoloGtold1/train/67847.png +../../data/yoloGtold1/train/67848.png +../../data/yoloGtold1/train/67849.png +../../data/yoloGtold1/train/67850.png +../../data/yoloGtold1/train/67851.png +../../data/yoloGtold1/train/67852.png +../../data/yoloGtold1/train/67853.png +../../data/yoloGtold1/train/67854.png +../../data/yoloGtold1/train/67855.png +../../data/yoloGtold1/train/67856.png +../../data/yoloGtold1/train/67857.png +../../data/yoloGtold1/train/67858.png +../../data/yoloGtold1/train/67859.png +../../data/yoloGtold1/train/67860.png +../../data/yoloGtold1/train/67861.png +../../data/yoloGtold1/train/67862.png +../../data/yoloGtold1/train/67863.png +../../data/yoloGtold1/train/67864.png +../../data/yoloGtold1/train/67865.png +../../data/yoloGtold1/train/67866.png +../../data/yoloGtold1/train/67867.png +../../data/yoloGtold1/train/67868.png +../../data/yoloGtold1/train/67869.png +../../data/yoloGtold1/train/67870.png +../../data/yoloGtold1/train/67871.png +../../data/yoloGtold1/train/67872.png +../../data/yoloGtold1/train/67873.png +../../data/yoloGtold1/train/67874.png +../../data/yoloGtold1/train/67875.png +../../data/yoloGtold1/train/67876.png +../../data/yoloGtold1/train/67877.png +../../data/yoloGtold1/train/67878.png +../../data/yoloGtold1/train/67879.png +../../data/yoloGtold1/train/67880.png +../../data/yoloGtold1/train/67881.png +../../data/yoloGtold1/train/67882.png +../../data/yoloGtold1/train/67883.png +../../data/yoloGtold1/train/67884.png +../../data/yoloGtold1/train/67885.png +../../data/yoloGtold1/train/67886.png +../../data/yoloGtold1/train/67887.png +../../data/yoloGtold1/train/67888.png +../../data/yoloGtold1/train/67889.png +../../data/yoloGtold1/train/67890.png +../../data/yoloGtold1/train/67891.png +../../data/yoloGtold1/train/67892.png +../../data/yoloGtold1/train/67893.png +../../data/yoloGtold1/train/67894.png +../../data/yoloGtold1/train/67895.png +../../data/yoloGtold1/train/67896.png +../../data/yoloGtold1/train/67897.png +../../data/yoloGtold1/train/67898.png +../../data/yoloGtold1/train/67899.png +../../data/yoloGtold1/train/67900.png +../../data/yoloGtold1/train/67901.png +../../data/yoloGtold1/train/67902.png +../../data/yoloGtold1/train/67903.png +../../data/yoloGtold1/train/67904.png +../../data/yoloGtold1/train/67905.png +../../data/yoloGtold1/train/67906.png +../../data/yoloGtold1/train/67907.png +../../data/yoloGtold1/train/67908.png +../../data/yoloGtold1/train/67909.png +../../data/yoloGtold1/train/67910.png +../../data/yoloGtold1/train/67911.png +../../data/yoloGtold1/train/67912.png +../../data/yoloGtold1/train/67913.png +../../data/yoloGtold1/train/67914.png +../../data/yoloGtold1/train/67915.png +../../data/yoloGtold1/train/67916.png +../../data/yoloGtold1/train/67917.png +../../data/yoloGtold1/train/67918.png +../../data/yoloGtold1/train/67919.png +../../data/yoloGtold1/train/67920.png +../../data/yoloGtold1/train/67921.png +../../data/yoloGtold1/train/67922.png +../../data/yoloGtold1/train/67923.png +../../data/yoloGtold1/train/67924.png +../../data/yoloGtold1/train/67925.png +../../data/yoloGtold1/train/67926.png +../../data/yoloGtold1/train/67927.png +../../data/yoloGtold1/train/67928.png +../../data/yoloGtold1/train/67929.png +../../data/yoloGtold1/train/67930.png +../../data/yoloGtold1/train/67931.png +../../data/yoloGtold1/train/67932.png +../../data/yoloGtold1/train/67933.png +../../data/yoloGtold1/train/67934.png +../../data/yoloGtold1/train/67935.png +../../data/yoloGtold1/train/67936.png +../../data/yoloGtold1/train/67937.png +../../data/yoloGtold1/train/67938.png +../../data/yoloGtold1/train/67939.png +../../data/yoloGtold1/train/67940.png +../../data/yoloGtold1/train/67941.png +../../data/yoloGtold1/train/67942.png +../../data/yoloGtold1/train/67943.png +../../data/yoloGtold1/train/67944.png +../../data/yoloGtold1/train/67945.png +../../data/yoloGtold1/train/67946.png +../../data/yoloGtold1/train/67947.png +../../data/yoloGtold1/train/67948.png +../../data/yoloGtold1/train/67949.png +../../data/yoloGtold1/train/67950.png +../../data/yoloGtold1/train/67951.png +../../data/yoloGtold1/train/67952.png +../../data/yoloGtold1/train/67953.png +../../data/yoloGtold1/train/67954.png +../../data/yoloGtold1/train/67955.png +../../data/yoloGtold1/train/67956.png +../../data/yoloGtold1/train/67957.png +../../data/yoloGtold1/train/67958.png +../../data/yoloGtold1/train/67959.png +../../data/yoloGtold1/train/67960.png +../../data/yoloGtold1/train/67961.png +../../data/yoloGtold1/train/67962.png +../../data/yoloGtold1/train/67963.png +../../data/yoloGtold1/train/67964.png +../../data/yoloGtold1/train/67965.png +../../data/yoloGtold1/train/67966.png +../../data/yoloGtold1/train/67967.png +../../data/yoloGtold1/train/67968.png +../../data/yoloGtold1/train/67969.png +../../data/yoloGtold1/train/67970.png +../../data/yoloGtold1/train/67971.png +../../data/yoloGtold1/train/67972.png +../../data/yoloGtold1/train/67973.png +../../data/yoloGtold1/train/67974.png +../../data/yoloGtold1/train/67975.png +../../data/yoloGtold1/train/67976.png +../../data/yoloGtold1/train/67977.png +../../data/yoloGtold1/train/67978.png +../../data/yoloGtold1/train/67979.png +../../data/yoloGtold1/train/67980.png +../../data/yoloGtold1/train/67981.png +../../data/yoloGtold1/train/67982.png +../../data/yoloGtold1/train/67983.png +../../data/yoloGtold1/train/67984.png +../../data/yoloGtold1/train/67985.png +../../data/yoloGtold1/train/67986.png +../../data/yoloGtold1/train/67987.png +../../data/yoloGtold1/train/67988.png +../../data/yoloGtold1/train/67989.png +../../data/yoloGtold1/train/67990.png +../../data/yoloGtold1/train/67991.png +../../data/yoloGtold1/train/67992.png +../../data/yoloGtold1/train/67993.png +../../data/yoloGtold1/train/67994.png +../../data/yoloGtold1/train/67995.png +../../data/yoloGtold1/train/67996.png +../../data/yoloGtold1/train/67997.png +../../data/yoloGtold1/train/67998.png +../../data/yoloGtold1/train/67999.png +../../data/yoloGtold1/train/68000.png +../../data/yoloGtold1/train/68001.png +../../data/yoloGtold1/train/68002.png +../../data/yoloGtold1/train/68003.png +../../data/yoloGtold1/train/68004.png +../../data/yoloGtold1/train/68005.png +../../data/yoloGtold1/train/68006.png +../../data/yoloGtold1/train/68007.png +../../data/yoloGtold1/train/68008.png +../../data/yoloGtold1/train/68009.png +../../data/yoloGtold1/train/68010.png +../../data/yoloGtold1/train/68011.png +../../data/yoloGtold1/train/68012.png +../../data/yoloGtold1/train/68013.png +../../data/yoloGtold1/train/68014.png +../../data/yoloGtold1/train/68015.png +../../data/yoloGtold1/train/68016.png +../../data/yoloGtold1/train/68017.png +../../data/yoloGtold1/train/68018.png +../../data/yoloGtold1/train/68019.png +../../data/yoloGtold1/train/68020.png +../../data/yoloGtold1/train/68021.png +../../data/yoloGtold1/train/68022.png +../../data/yoloGtold1/train/68023.png +../../data/yoloGtold1/train/68024.png +../../data/yoloGtold1/train/68025.png +../../data/yoloGtold1/train/68026.png +../../data/yoloGtold1/train/68027.png +../../data/yoloGtold1/train/68028.png +../../data/yoloGtold1/train/68029.png +../../data/yoloGtold1/train/68030.png +../../data/yoloGtold1/train/68031.png +../../data/yoloGtold1/train/68032.png +../../data/yoloGtold1/train/68033.png +../../data/yoloGtold1/train/68034.png +../../data/yoloGtold1/train/68035.png +../../data/yoloGtold1/train/68036.png +../../data/yoloGtold1/train/68037.png +../../data/yoloGtold1/train/68038.png +../../data/yoloGtold1/train/68039.png +../../data/yoloGtold1/train/68040.png +../../data/yoloGtold1/train/68041.png +../../data/yoloGtold1/train/68042.png +../../data/yoloGtold1/train/68043.png +../../data/yoloGtold1/train/68044.png +../../data/yoloGtold1/train/68045.png +../../data/yoloGtold1/train/68046.png +../../data/yoloGtold1/train/68047.png +../../data/yoloGtold1/train/68048.png +../../data/yoloGtold1/train/68049.png +../../data/yoloGtold1/train/68050.png +../../data/yoloGtold1/train/68051.png +../../data/yoloGtold1/train/68052.png +../../data/yoloGtold1/train/68053.png +../../data/yoloGtold1/train/68054.png +../../data/yoloGtold1/train/68055.png +../../data/yoloGtold1/train/68056.png +../../data/yoloGtold1/train/68057.png +../../data/yoloGtold1/train/68058.png +../../data/yoloGtold1/train/68059.png +../../data/yoloGtold1/train/68060.png +../../data/yoloGtold1/train/68061.png +../../data/yoloGtold1/train/68062.png +../../data/yoloGtold1/train/68063.png +../../data/yoloGtold1/train/68064.png +../../data/yoloGtold1/train/68065.png +../../data/yoloGtold1/train/68066.png +../../data/yoloGtold1/train/68067.png +../../data/yoloGtold1/train/68068.png +../../data/yoloGtold1/train/68069.png +../../data/yoloGtold1/train/68070.png +../../data/yoloGtold1/train/68071.png +../../data/yoloGtold1/train/68072.png +../../data/yoloGtold1/train/68073.png +../../data/yoloGtold1/train/68074.png +../../data/yoloGtold1/train/68075.png +../../data/yoloGtold1/train/68076.png +../../data/yoloGtold1/train/68077.png +../../data/yoloGtold1/train/68078.png +../../data/yoloGtold1/train/68079.png +../../data/yoloGtold1/train/68080.png +../../data/yoloGtold1/train/68081.png +../../data/yoloGtold1/train/68082.png +../../data/yoloGtold1/train/68083.png +../../data/yoloGtold1/train/68084.png +../../data/yoloGtold1/train/68085.png +../../data/yoloGtold1/train/68086.png +../../data/yoloGtold1/train/68087.png +../../data/yoloGtold1/train/68088.png +../../data/yoloGtold1/train/68089.png +../../data/yoloGtold1/train/68090.png +../../data/yoloGtold1/train/68091.png +../../data/yoloGtold1/train/68092.png +../../data/yoloGtold1/train/68093.png +../../data/yoloGtold1/train/68094.png +../../data/yoloGtold1/train/68095.png +../../data/yoloGtold1/train/68096.png +../../data/yoloGtold1/train/68097.png +../../data/yoloGtold1/train/68098.png +../../data/yoloGtold1/train/68099.png +../../data/yoloGtold1/train/68100.png +../../data/yoloGtold1/train/68101.png +../../data/yoloGtold1/train/68102.png +../../data/yoloGtold1/train/68103.png +../../data/yoloGtold1/train/68104.png +../../data/yoloGtold1/train/68105.png +../../data/yoloGtold1/train/68106.png +../../data/yoloGtold1/train/68107.png +../../data/yoloGtold1/train/68108.png +../../data/yoloGtold1/train/68109.png +../../data/yoloGtold1/train/68110.png +../../data/yoloGtold1/train/68111.png +../../data/yoloGtold1/train/68112.png +../../data/yoloGtold1/train/68113.png +../../data/yoloGtold1/train/68114.png +../../data/yoloGtold1/train/68115.png +../../data/yoloGtold1/train/68116.png +../../data/yoloGtold1/train/68117.png +../../data/yoloGtold1/train/68118.png +../../data/yoloGtold1/train/68119.png +../../data/yoloGtold1/train/68120.png +../../data/yoloGtold1/train/68121.png +../../data/yoloGtold1/train/68122.png +../../data/yoloGtold1/train/68123.png +../../data/yoloGtold1/train/68124.png +../../data/yoloGtold1/train/68125.png +../../data/yoloGtold1/train/68126.png +../../data/yoloGtold1/train/68127.png +../../data/yoloGtold1/train/68128.png +../../data/yoloGtold1/train/68129.png +../../data/yoloGtold1/train/68130.png +../../data/yoloGtold1/train/68131.png +../../data/yoloGtold1/train/68132.png +../../data/yoloGtold1/train/68133.png +../../data/yoloGtold1/train/68134.png +../../data/yoloGtold1/train/68135.png +../../data/yoloGtold1/train/68136.png +../../data/yoloGtold1/train/68137.png +../../data/yoloGtold1/train/68138.png +../../data/yoloGtold1/train/68139.png +../../data/yoloGtold1/train/68140.png +../../data/yoloGtold1/train/68141.png +../../data/yoloGtold1/train/68142.png +../../data/yoloGtold1/train/68143.png +../../data/yoloGtold1/train/68144.png +../../data/yoloGtold1/train/68145.png +../../data/yoloGtold1/train/68146.png +../../data/yoloGtold1/train/68147.png +../../data/yoloGtold1/train/68148.png +../../data/yoloGtold1/train/68149.png +../../data/yoloGtold1/train/68150.png +../../data/yoloGtold1/train/68151.png +../../data/yoloGtold1/train/68152.png +../../data/yoloGtold1/train/68153.png +../../data/yoloGtold1/train/68154.png +../../data/yoloGtold1/train/68155.png +../../data/yoloGtold1/train/68156.png +../../data/yoloGtold1/train/68157.png +../../data/yoloGtold1/train/68158.png +../../data/yoloGtold1/train/68159.png +../../data/yoloGtold1/train/68160.png +../../data/yoloGtold1/train/68161.png +../../data/yoloGtold1/train/68162.png +../../data/yoloGtold1/train/68163.png +../../data/yoloGtold1/train/68164.png +../../data/yoloGtold1/train/68165.png +../../data/yoloGtold1/train/68166.png +../../data/yoloGtold1/train/68167.png +../../data/yoloGtold1/train/68168.png +../../data/yoloGtold1/train/68169.png +../../data/yoloGtold1/train/68170.png +../../data/yoloGtold1/train/68171.png +../../data/yoloGtold1/train/68172.png +../../data/yoloGtold1/train/68173.png +../../data/yoloGtold1/train/68174.png +../../data/yoloGtold1/train/68175.png +../../data/yoloGtold1/train/68176.png +../../data/yoloGtold1/train/68177.png +../../data/yoloGtold1/train/68178.png +../../data/yoloGtold1/train/68179.png +../../data/yoloGtold1/train/68180.png +../../data/yoloGtold1/train/68181.png +../../data/yoloGtold1/train/68182.png +../../data/yoloGtold1/train/68183.png +../../data/yoloGtold1/train/68184.png +../../data/yoloGtold1/train/68185.png +../../data/yoloGtold1/train/68186.png +../../data/yoloGtold1/train/68187.png +../../data/yoloGtold1/train/68188.png +../../data/yoloGtold1/train/68189.png +../../data/yoloGtold1/train/68190.png +../../data/yoloGtold1/train/68191.png +../../data/yoloGtold1/train/68192.png +../../data/yoloGtold1/train/68193.png +../../data/yoloGtold1/train/68194.png +../../data/yoloGtold1/train/68195.png +../../data/yoloGtold1/train/68196.png +../../data/yoloGtold1/train/68197.png +../../data/yoloGtold1/train/68198.png +../../data/yoloGtold1/train/68199.png +../../data/yoloGtold1/train/68200.png +../../data/yoloGtold1/train/68201.png +../../data/yoloGtold1/train/68202.png +../../data/yoloGtold1/train/68203.png +../../data/yoloGtold1/train/68204.png +../../data/yoloGtold1/train/68205.png +../../data/yoloGtold1/train/68206.png +../../data/yoloGtold1/train/68207.png +../../data/yoloGtold1/train/68208.png +../../data/yoloGtold1/train/68209.png +../../data/yoloGtold1/train/68210.png +../../data/yoloGtold1/train/68211.png +../../data/yoloGtold1/train/68212.png +../../data/yoloGtold1/train/68213.png +../../data/yoloGtold1/train/68214.png +../../data/yoloGtold1/train/68215.png +../../data/yoloGtold1/train/68216.png +../../data/yoloGtold1/train/68217.png +../../data/yoloGtold1/train/68218.png +../../data/yoloGtold1/train/68219.png +../../data/yoloGtold1/train/68220.png +../../data/yoloGtold1/train/68221.png +../../data/yoloGtold1/train/68222.png +../../data/yoloGtold1/train/68223.png +../../data/yoloGtold1/train/68224.png +../../data/yoloGtold1/train/68225.png +../../data/yoloGtold1/train/68226.png +../../data/yoloGtold1/train/68227.png +../../data/yoloGtold1/train/68228.png +../../data/yoloGtold1/train/68229.png +../../data/yoloGtold1/train/68230.png +../../data/yoloGtold1/train/68231.png +../../data/yoloGtold1/train/68232.png +../../data/yoloGtold1/train/68233.png +../../data/yoloGtold1/train/68234.png +../../data/yoloGtold1/train/68235.png +../../data/yoloGtold1/train/68236.png +../../data/yoloGtold1/train/68237.png +../../data/yoloGtold1/train/68238.png +../../data/yoloGtold1/train/68239.png +../../data/yoloGtold1/train/68240.png +../../data/yoloGtold1/train/68241.png +../../data/yoloGtold1/train/68242.png +../../data/yoloGtold1/train/68243.png +../../data/yoloGtold1/train/68244.png +../../data/yoloGtold1/train/68245.png +../../data/yoloGtold1/train/68246.png +../../data/yoloGtold1/train/68247.png +../../data/yoloGtold1/train/68248.png +../../data/yoloGtold1/train/68249.png +../../data/yoloGtold1/train/68250.png +../../data/yoloGtold1/train/68251.png +../../data/yoloGtold1/train/68252.png +../../data/yoloGtold1/train/68253.png +../../data/yoloGtold1/train/68254.png +../../data/yoloGtold1/train/68255.png +../../data/yoloGtold1/train/68256.png +../../data/yoloGtold1/train/68257.png +../../data/yoloGtold1/train/68258.png +../../data/yoloGtold1/train/68259.png +../../data/yoloGtold1/train/68260.png +../../data/yoloGtold1/train/68261.png +../../data/yoloGtold1/train/68262.png +../../data/yoloGtold1/train/68263.png +../../data/yoloGtold1/train/68264.png +../../data/yoloGtold1/train/68265.png +../../data/yoloGtold1/train/68266.png +../../data/yoloGtold1/train/68267.png +../../data/yoloGtold1/train/68268.png +../../data/yoloGtold1/train/68269.png +../../data/yoloGtold1/train/68270.png +../../data/yoloGtold1/train/68271.png +../../data/yoloGtold1/train/68272.png +../../data/yoloGtold1/train/68273.png +../../data/yoloGtold1/train/68274.png +../../data/yoloGtold1/train/68275.png +../../data/yoloGtold1/train/68276.png +../../data/yoloGtold1/train/68277.png +../../data/yoloGtold1/train/68278.png +../../data/yoloGtold1/train/68279.png +../../data/yoloGtold1/train/68280.png +../../data/yoloGtold1/train/68281.png +../../data/yoloGtold1/train/68282.png +../../data/yoloGtold1/train/68283.png +../../data/yoloGtold1/train/68284.png +../../data/yoloGtold1/train/68285.png +../../data/yoloGtold1/train/68286.png +../../data/yoloGtold1/train/68287.png +../../data/yoloGtold1/train/68288.png +../../data/yoloGtold1/train/68289.png +../../data/yoloGtold1/train/68290.png +../../data/yoloGtold1/train/68291.png +../../data/yoloGtold1/train/68292.png +../../data/yoloGtold1/train/68293.png +../../data/yoloGtold1/train/68294.png +../../data/yoloGtold1/train/68295.png +../../data/yoloGtold1/train/68296.png +../../data/yoloGtold1/train/68297.png +../../data/yoloGtold1/train/68298.png +../../data/yoloGtold1/train/68299.png +../../data/yoloGtold1/train/68300.png +../../data/yoloGtold1/train/68301.png +../../data/yoloGtold1/train/68302.png +../../data/yoloGtold1/train/68303.png +../../data/yoloGtold1/train/68304.png +../../data/yoloGtold1/train/68305.png +../../data/yoloGtold1/train/68306.png +../../data/yoloGtold1/train/68307.png +../../data/yoloGtold1/train/68308.png +../../data/yoloGtold1/train/68309.png +../../data/yoloGtold1/train/68310.png +../../data/yoloGtold1/train/68311.png +../../data/yoloGtold1/train/68312.png +../../data/yoloGtold1/train/68313.png +../../data/yoloGtold1/train/68314.png +../../data/yoloGtold1/train/68315.png +../../data/yoloGtold1/train/68316.png +../../data/yoloGtold1/train/68317.png +../../data/yoloGtold1/train/68318.png +../../data/yoloGtold1/train/68319.png +../../data/yoloGtold1/train/68320.png +../../data/yoloGtold1/train/68321.png +../../data/yoloGtold1/train/68322.png +../../data/yoloGtold1/train/68323.png +../../data/yoloGtold1/train/68324.png +../../data/yoloGtold1/train/68325.png +../../data/yoloGtold1/train/68326.png +../../data/yoloGtold1/train/68327.png +../../data/yoloGtold1/train/68328.png +../../data/yoloGtold1/train/68329.png +../../data/yoloGtold1/train/68330.png +../../data/yoloGtold1/train/68331.png +../../data/yoloGtold1/train/68332.png +../../data/yoloGtold1/train/68333.png +../../data/yoloGtold1/train/68334.png +../../data/yoloGtold1/train/68335.png +../../data/yoloGtold1/train/68336.png +../../data/yoloGtold1/train/68337.png +../../data/yoloGtold1/train/68338.png +../../data/yoloGtold1/train/68339.png +../../data/yoloGtold1/train/68340.png +../../data/yoloGtold1/train/68341.png +../../data/yoloGtold1/train/68342.png +../../data/yoloGtold1/train/68343.png +../../data/yoloGtold1/train/68344.png +../../data/yoloGtold1/train/68345.png +../../data/yoloGtold1/train/68346.png +../../data/yoloGtold1/train/68347.png +../../data/yoloGtold1/train/68348.png +../../data/yoloGtold1/train/68349.png +../../data/yoloGtold1/train/68350.png +../../data/yoloGtold1/train/68351.png +../../data/yoloGtold1/train/68352.png +../../data/yoloGtold1/train/68353.png +../../data/yoloGtold1/train/68354.png +../../data/yoloGtold1/train/68355.png +../../data/yoloGtold1/train/68356.png +../../data/yoloGtold1/train/68357.png +../../data/yoloGtold1/train/68358.png +../../data/yoloGtold1/train/68359.png +../../data/yoloGtold1/train/68360.png +../../data/yoloGtold1/train/68361.png +../../data/yoloGtold1/train/68362.png +../../data/yoloGtold1/train/68363.png +../../data/yoloGtold1/train/68364.png +../../data/yoloGtold1/train/68365.png +../../data/yoloGtold1/train/68366.png +../../data/yoloGtold1/train/68367.png +../../data/yoloGtold1/train/68368.png +../../data/yoloGtold1/train/68369.png +../../data/yoloGtold1/train/68370.png +../../data/yoloGtold1/train/68371.png +../../data/yoloGtold1/train/68372.png +../../data/yoloGtold1/train/68373.png +../../data/yoloGtold1/train/68374.png +../../data/yoloGtold1/train/68375.png +../../data/yoloGtold1/train/68376.png +../../data/yoloGtold1/train/68377.png +../../data/yoloGtold1/train/68378.png +../../data/yoloGtold1/train/68379.png +../../data/yoloGtold1/train/68380.png +../../data/yoloGtold1/train/68381.png +../../data/yoloGtold1/train/68382.png +../../data/yoloGtold1/train/68383.png +../../data/yoloGtold1/train/68384.png +../../data/yoloGtold1/train/68385.png +../../data/yoloGtold1/train/68386.png +../../data/yoloGtold1/train/68387.png +../../data/yoloGtold1/train/68388.png +../../data/yoloGtold1/train/68389.png +../../data/yoloGtold1/train/68390.png +../../data/yoloGtold1/train/68391.png +../../data/yoloGtold1/train/68392.png +../../data/yoloGtold1/train/68393.png +../../data/yoloGtold1/train/68394.png +../../data/yoloGtold1/train/68395.png +../../data/yoloGtold1/train/68396.png +../../data/yoloGtold1/train/68397.png +../../data/yoloGtold1/train/68398.png +../../data/yoloGtold1/train/68399.png +../../data/yoloGtold1/train/68400.png +../../data/yoloGtold1/train/68401.png +../../data/yoloGtold1/train/68402.png +../../data/yoloGtold1/train/68403.png +../../data/yoloGtold1/train/68404.png +../../data/yoloGtold1/train/68405.png +../../data/yoloGtold1/train/68406.png +../../data/yoloGtold1/train/68407.png +../../data/yoloGtold1/train/68408.png +../../data/yoloGtold1/train/68409.png +../../data/yoloGtold1/train/68410.png +../../data/yoloGtold1/train/68411.png +../../data/yoloGtold1/train/68412.png +../../data/yoloGtold1/train/68413.png +../../data/yoloGtold1/train/68414.png +../../data/yoloGtold1/train/68415.png +../../data/yoloGtold1/train/68416.png +../../data/yoloGtold1/train/68417.png +../../data/yoloGtold1/train/68418.png +../../data/yoloGtold1/train/68419.png +../../data/yoloGtold1/train/68420.png +../../data/yoloGtold1/train/68421.png +../../data/yoloGtold1/train/68422.png +../../data/yoloGtold1/train/68423.png +../../data/yoloGtold1/train/68424.png +../../data/yoloGtold1/train/68425.png +../../data/yoloGtold1/train/68426.png +../../data/yoloGtold1/train/68427.png +../../data/yoloGtold1/train/68428.png +../../data/yoloGtold1/train/68429.png +../../data/yoloGtold1/train/68430.png +../../data/yoloGtold1/train/68431.png +../../data/yoloGtold1/train/68432.png +../../data/yoloGtold1/train/68433.png +../../data/yoloGtold1/train/68434.png +../../data/yoloGtold1/train/68435.png +../../data/yoloGtold1/train/68436.png +../../data/yoloGtold1/train/68437.png +../../data/yoloGtold1/train/68438.png +../../data/yoloGtold1/train/68439.png +../../data/yoloGtold1/train/68440.png +../../data/yoloGtold1/train/68441.png +../../data/yoloGtold1/train/68442.png +../../data/yoloGtold1/train/68443.png +../../data/yoloGtold1/train/68444.png +../../data/yoloGtold1/train/68445.png +../../data/yoloGtold1/train/68446.png +../../data/yoloGtold1/train/68447.png +../../data/yoloGtold1/train/68448.png +../../data/yoloGtold1/train/68449.png +../../data/yoloGtold1/train/68450.png +../../data/yoloGtold1/train/68451.png +../../data/yoloGtold1/train/68452.png +../../data/yoloGtold1/train/68453.png +../../data/yoloGtold1/train/68454.png +../../data/yoloGtold1/train/68455.png +../../data/yoloGtold1/train/68456.png +../../data/yoloGtold1/train/68457.png +../../data/yoloGtold1/train/68458.png +../../data/yoloGtold1/train/68459.png +../../data/yoloGtold1/train/68460.png +../../data/yoloGtold1/train/68461.png +../../data/yoloGtold1/train/68462.png +../../data/yoloGtold1/train/68463.png +../../data/yoloGtold1/train/68464.png +../../data/yoloGtold1/train/68465.png +../../data/yoloGtold1/train/68466.png +../../data/yoloGtold1/train/68467.png +../../data/yoloGtold1/train/68468.png +../../data/yoloGtold1/train/68469.png +../../data/yoloGtold1/train/68470.png +../../data/yoloGtold1/train/68471.png +../../data/yoloGtold1/train/68472.png +../../data/yoloGtold1/train/68473.png +../../data/yoloGtold1/train/68474.png +../../data/yoloGtold1/train/68475.png +../../data/yoloGtold1/train/68476.png +../../data/yoloGtold1/train/68477.png +../../data/yoloGtold1/train/68478.png +../../data/yoloGtold1/train/68479.png +../../data/yoloGtold1/train/68480.png +../../data/yoloGtold1/train/68481.png +../../data/yoloGtold1/train/68482.png +../../data/yoloGtold1/train/68483.png +../../data/yoloGtold1/train/68484.png +../../data/yoloGtold1/train/68485.png +../../data/yoloGtold1/train/68486.png +../../data/yoloGtold1/train/68487.png +../../data/yoloGtold1/train/68488.png +../../data/yoloGtold1/train/68489.png +../../data/yoloGtold1/train/68490.png +../../data/yoloGtold1/train/68491.png +../../data/yoloGtold1/train/68492.png +../../data/yoloGtold1/train/68493.png +../../data/yoloGtold1/train/68494.png +../../data/yoloGtold1/train/68495.png +../../data/yoloGtold1/train/68496.png +../../data/yoloGtold1/train/68497.png +../../data/yoloGtold1/train/68498.png +../../data/yoloGtold1/train/68499.png +../../data/yoloGtold1/train/68500.png +../../data/yoloGtold1/train/68501.png +../../data/yoloGtold1/train/68502.png +../../data/yoloGtold1/train/68503.png +../../data/yoloGtold1/train/68504.png +../../data/yoloGtold1/train/68505.png +../../data/yoloGtold1/train/68506.png +../../data/yoloGtold1/train/68507.png +../../data/yoloGtold1/train/68508.png +../../data/yoloGtold1/train/68509.png +../../data/yoloGtold1/train/68510.png +../../data/yoloGtold1/train/68511.png +../../data/yoloGtold1/train/68512.png +../../data/yoloGtold1/train/68513.png +../../data/yoloGtold1/train/68514.png +../../data/yoloGtold1/train/68515.png +../../data/yoloGtold1/train/68516.png +../../data/yoloGtold1/train/68517.png +../../data/yoloGtold1/train/68518.png +../../data/yoloGtold1/train/68519.png +../../data/yoloGtold1/train/68520.png +../../data/yoloGtold1/train/68521.png +../../data/yoloGtold1/train/68522.png +../../data/yoloGtold1/train/68523.png +../../data/yoloGtold1/train/68524.png +../../data/yoloGtold1/train/68525.png +../../data/yoloGtold1/train/68526.png +../../data/yoloGtold1/train/68527.png +../../data/yoloGtold1/train/68528.png +../../data/yoloGtold1/train/68529.png +../../data/yoloGtold1/train/68530.png +../../data/yoloGtold1/train/68531.png +../../data/yoloGtold1/train/68532.png +../../data/yoloGtold1/train/68533.png +../../data/yoloGtold1/train/68534.png +../../data/yoloGtold1/train/68535.png +../../data/yoloGtold1/train/68536.png +../../data/yoloGtold1/train/68537.png +../../data/yoloGtold1/train/68538.png +../../data/yoloGtold1/train/68539.png +../../data/yoloGtold1/train/68540.png +../../data/yoloGtold1/train/68541.png +../../data/yoloGtold1/train/68542.png +../../data/yoloGtold1/train/68543.png +../../data/yoloGtold1/train/68544.png +../../data/yoloGtold1/train/68545.png +../../data/yoloGtold1/train/68546.png +../../data/yoloGtold1/train/68547.png +../../data/yoloGtold1/train/68548.png +../../data/yoloGtold1/train/68549.png +../../data/yoloGtold1/train/68550.png +../../data/yoloGtold1/train/68551.png +../../data/yoloGtold1/train/68552.png +../../data/yoloGtold1/train/68553.png +../../data/yoloGtold1/train/68554.png +../../data/yoloGtold1/train/68555.png +../../data/yoloGtold1/train/68556.png +../../data/yoloGtold1/train/68557.png +../../data/yoloGtold1/train/68558.png +../../data/yoloGtold1/train/68559.png +../../data/yoloGtold1/train/68560.png +../../data/yoloGtold1/train/68561.png +../../data/yoloGtold1/train/68562.png +../../data/yoloGtold1/train/68563.png +../../data/yoloGtold1/train/68564.png +../../data/yoloGtold1/train/68565.png +../../data/yoloGtold1/train/68566.png +../../data/yoloGtold1/train/68567.png +../../data/yoloGtold1/train/68568.png +../../data/yoloGtold1/train/68569.png +../../data/yoloGtold1/train/68570.png +../../data/yoloGtold1/train/68571.png +../../data/yoloGtold1/train/68572.png +../../data/yoloGtold1/train/68573.png +../../data/yoloGtold1/train/68574.png +../../data/yoloGtold1/train/68575.png +../../data/yoloGtold1/train/68576.png +../../data/yoloGtold1/train/68577.png +../../data/yoloGtold1/train/68578.png +../../data/yoloGtold1/train/68579.png +../../data/yoloGtold1/train/68580.png +../../data/yoloGtold1/train/68581.png +../../data/yoloGtold1/train/68582.png +../../data/yoloGtold1/train/68583.png +../../data/yoloGtold1/train/68584.png +../../data/yoloGtold1/train/68585.png +../../data/yoloGtold1/train/68586.png +../../data/yoloGtold1/train/68587.png +../../data/yoloGtold1/train/68588.png +../../data/yoloGtold1/train/68589.png +../../data/yoloGtold1/train/68590.png +../../data/yoloGtold1/train/68591.png +../../data/yoloGtold1/train/68592.png +../../data/yoloGtold1/train/68593.png +../../data/yoloGtold1/train/68594.png +../../data/yoloGtold1/train/68595.png +../../data/yoloGtold1/train/68596.png +../../data/yoloGtold1/train/68597.png +../../data/yoloGtold1/train/68598.png +../../data/yoloGtold1/train/68599.png +../../data/yoloGtold1/train/68600.png +../../data/yoloGtold1/train/68601.png +../../data/yoloGtold1/train/68602.png +../../data/yoloGtold1/train/68603.png +../../data/yoloGtold1/train/68604.png +../../data/yoloGtold1/train/68605.png +../../data/yoloGtold1/train/68606.png +../../data/yoloGtold1/train/68607.png +../../data/yoloGtold1/train/68608.png +../../data/yoloGtold1/train/68609.png +../../data/yoloGtold1/train/68610.png +../../data/yoloGtold1/train/68611.png +../../data/yoloGtold1/train/68612.png +../../data/yoloGtold1/train/68613.png +../../data/yoloGtold1/train/68614.png +../../data/yoloGtold1/train/68615.png +../../data/yoloGtold1/train/68616.png +../../data/yoloGtold1/train/68617.png +../../data/yoloGtold1/train/68618.png +../../data/yoloGtold1/train/68619.png +../../data/yoloGtold1/train/68620.png +../../data/yoloGtold1/train/68621.png +../../data/yoloGtold1/train/68622.png +../../data/yoloGtold1/train/68623.png +../../data/yoloGtold1/train/68624.png +../../data/yoloGtold1/train/68625.png +../../data/yoloGtold1/train/68626.png +../../data/yoloGtold1/train/68627.png +../../data/yoloGtold1/train/68628.png +../../data/yoloGtold1/train/68629.png +../../data/yoloGtold1/train/68630.png +../../data/yoloGtold1/train/68631.png +../../data/yoloGtold1/train/68632.png +../../data/yoloGtold1/train/68633.png +../../data/yoloGtold1/train/68634.png +../../data/yoloGtold1/train/68635.png +../../data/yoloGtold1/train/68636.png +../../data/yoloGtold1/train/68637.png +../../data/yoloGtold1/train/68638.png +../../data/yoloGtold1/train/68639.png +../../data/yoloGtold1/train/68640.png +../../data/yoloGtold1/train/68641.png +../../data/yoloGtold1/train/68642.png +../../data/yoloGtold1/train/68643.png +../../data/yoloGtold1/train/68644.png +../../data/yoloGtold1/train/68645.png +../../data/yoloGtold1/train/68646.png +../../data/yoloGtold1/train/68647.png +../../data/yoloGtold1/train/68648.png +../../data/yoloGtold1/train/68649.png +../../data/yoloGtold1/train/68650.png +../../data/yoloGtold1/train/68651.png +../../data/yoloGtold1/train/68652.png +../../data/yoloGtold1/train/68653.png +../../data/yoloGtold1/train/68654.png +../../data/yoloGtold1/train/68655.png +../../data/yoloGtold1/train/68656.png +../../data/yoloGtold1/train/68657.png +../../data/yoloGtold1/train/68658.png +../../data/yoloGtold1/train/68659.png +../../data/yoloGtold1/train/68660.png +../../data/yoloGtold1/train/68661.png +../../data/yoloGtold1/train/68662.png +../../data/yoloGtold1/train/68663.png +../../data/yoloGtold1/train/68664.png +../../data/yoloGtold1/train/68665.png +../../data/yoloGtold1/train/68666.png +../../data/yoloGtold1/train/68667.png +../../data/yoloGtold1/train/68668.png +../../data/yoloGtold1/train/68669.png +../../data/yoloGtold1/train/68670.png +../../data/yoloGtold1/train/68671.png +../../data/yoloGtold1/train/68672.png +../../data/yoloGtold1/train/68673.png +../../data/yoloGtold1/train/68674.png +../../data/yoloGtold1/train/68675.png +../../data/yoloGtold1/train/68676.png +../../data/yoloGtold1/train/68677.png +../../data/yoloGtold1/train/68678.png +../../data/yoloGtold1/train/68679.png +../../data/yoloGtold1/train/68680.png +../../data/yoloGtold1/train/68681.png +../../data/yoloGtold1/train/68682.png +../../data/yoloGtold1/train/68683.png +../../data/yoloGtold1/train/68684.png +../../data/yoloGtold1/train/68685.png +../../data/yoloGtold1/train/68686.png +../../data/yoloGtold1/train/68687.png +../../data/yoloGtold1/train/68688.png +../../data/yoloGtold1/train/68689.png +../../data/yoloGtold1/train/68690.png +../../data/yoloGtold1/train/68691.png +../../data/yoloGtold1/train/68692.png +../../data/yoloGtold1/train/68693.png +../../data/yoloGtold1/train/68694.png +../../data/yoloGtold1/train/68695.png +../../data/yoloGtold1/train/68696.png +../../data/yoloGtold1/train/68697.png +../../data/yoloGtold1/train/68698.png +../../data/yoloGtold1/train/68699.png +../../data/yoloGtold1/train/68700.png +../../data/yoloGtold1/train/68701.png +../../data/yoloGtold1/train/68702.png +../../data/yoloGtold1/train/68703.png +../../data/yoloGtold1/train/68704.png +../../data/yoloGtold1/train/68705.png +../../data/yoloGtold1/train/68706.png +../../data/yoloGtold1/train/68707.png +../../data/yoloGtold1/train/68708.png +../../data/yoloGtold1/train/68709.png +../../data/yoloGtold1/train/68710.png +../../data/yoloGtold1/train/68711.png +../../data/yoloGtold1/train/68712.png +../../data/yoloGtold1/train/68713.png +../../data/yoloGtold1/train/68714.png +../../data/yoloGtold1/train/68715.png +../../data/yoloGtold1/train/68716.png +../../data/yoloGtold1/train/68717.png +../../data/yoloGtold1/train/68718.png +../../data/yoloGtold1/train/68719.png +../../data/yoloGtold1/train/68720.png +../../data/yoloGtold1/train/68721.png +../../data/yoloGtold1/train/68722.png +../../data/yoloGtold1/train/68723.png +../../data/yoloGtold1/train/68724.png +../../data/yoloGtold1/train/68725.png +../../data/yoloGtold1/train/68726.png +../../data/yoloGtold1/train/68727.png +../../data/yoloGtold1/train/68728.png +../../data/yoloGtold1/train/68729.png +../../data/yoloGtold1/train/68730.png +../../data/yoloGtold1/train/68731.png +../../data/yoloGtold1/train/68732.png +../../data/yoloGtold1/train/68733.png +../../data/yoloGtold1/train/68734.png +../../data/yoloGtold1/train/68735.png +../../data/yoloGtold1/train/68736.png +../../data/yoloGtold1/train/68737.png +../../data/yoloGtold1/train/68738.png +../../data/yoloGtold1/train/68739.png +../../data/yoloGtold1/train/68740.png +../../data/yoloGtold1/train/68741.png +../../data/yoloGtold1/train/68742.png +../../data/yoloGtold1/train/68743.png +../../data/yoloGtold1/train/68744.png +../../data/yoloGtold1/train/68745.png +../../data/yoloGtold1/train/68746.png +../../data/yoloGtold1/train/68747.png +../../data/yoloGtold1/train/68748.png +../../data/yoloGtold1/train/68749.png +../../data/yoloGtold1/train/68750.png +../../data/yoloGtold1/train/68751.png +../../data/yoloGtold1/train/68752.png +../../data/yoloGtold1/train/68753.png +../../data/yoloGtold1/train/68754.png +../../data/yoloGtold1/train/68755.png +../../data/yoloGtold1/train/68756.png +../../data/yoloGtold1/train/68757.png +../../data/yoloGtold1/train/68758.png +../../data/yoloGtold1/train/68759.png +../../data/yoloGtold1/train/68760.png +../../data/yoloGtold1/train/68761.png +../../data/yoloGtold1/train/68762.png +../../data/yoloGtold1/train/68763.png +../../data/yoloGtold1/train/68764.png +../../data/yoloGtold1/train/68765.png +../../data/yoloGtold1/train/68766.png +../../data/yoloGtold1/train/68767.png +../../data/yoloGtold1/train/68768.png +../../data/yoloGtold1/train/68769.png +../../data/yoloGtold1/train/68770.png +../../data/yoloGtold1/train/68771.png +../../data/yoloGtold1/train/68772.png +../../data/yoloGtold1/train/68773.png +../../data/yoloGtold1/train/68774.png +../../data/yoloGtold1/train/68775.png +../../data/yoloGtold1/train/68776.png +../../data/yoloGtold1/train/68777.png +../../data/yoloGtold1/train/68778.png +../../data/yoloGtold1/train/68779.png +../../data/yoloGtold1/train/68780.png +../../data/yoloGtold1/train/68781.png +../../data/yoloGtold1/train/68782.png +../../data/yoloGtold1/train/68783.png +../../data/yoloGtold1/train/68784.png +../../data/yoloGtold1/train/68785.png +../../data/yoloGtold1/train/68786.png +../../data/yoloGtold1/train/68787.png +../../data/yoloGtold1/train/68788.png +../../data/yoloGtold1/train/68789.png +../../data/yoloGtold1/train/68790.png +../../data/yoloGtold1/train/68791.png +../../data/yoloGtold1/train/68792.png +../../data/yoloGtold1/train/68793.png +../../data/yoloGtold1/train/68794.png +../../data/yoloGtold1/train/68795.png +../../data/yoloGtold1/train/68796.png +../../data/yoloGtold1/train/68797.png +../../data/yoloGtold1/train/68798.png +../../data/yoloGtold1/train/68799.png +../../data/yoloGtold1/train/68800.png +../../data/yoloGtold1/train/68801.png +../../data/yoloGtold1/train/68802.png +../../data/yoloGtold1/train/68803.png +../../data/yoloGtold1/train/68804.png +../../data/yoloGtold1/train/68805.png +../../data/yoloGtold1/train/68806.png +../../data/yoloGtold1/train/68807.png +../../data/yoloGtold1/train/68808.png +../../data/yoloGtold1/train/68809.png +../../data/yoloGtold1/train/68810.png +../../data/yoloGtold1/train/68811.png +../../data/yoloGtold1/train/68812.png +../../data/yoloGtold1/train/68813.png +../../data/yoloGtold1/train/68814.png +../../data/yoloGtold1/train/68815.png +../../data/yoloGtold1/train/68816.png +../../data/yoloGtold1/train/68817.png +../../data/yoloGtold1/train/68818.png +../../data/yoloGtold1/train/68819.png +../../data/yoloGtold1/train/68820.png +../../data/yoloGtold1/train/68821.png +../../data/yoloGtold1/train/68822.png +../../data/yoloGtold1/train/68823.png +../../data/yoloGtold1/train/68824.png +../../data/yoloGtold1/train/68825.png +../../data/yoloGtold1/train/68826.png +../../data/yoloGtold1/train/68827.png +../../data/yoloGtold1/train/68828.png +../../data/yoloGtold1/train/68829.png +../../data/yoloGtold1/train/68830.png +../../data/yoloGtold1/train/68831.png +../../data/yoloGtold1/train/68832.png +../../data/yoloGtold1/train/68833.png +../../data/yoloGtold1/train/68834.png +../../data/yoloGtold1/train/68835.png +../../data/yoloGtold1/train/68836.png +../../data/yoloGtold1/train/68837.png +../../data/yoloGtold1/train/68838.png +../../data/yoloGtold1/train/68839.png +../../data/yoloGtold1/train/68840.png +../../data/yoloGtold1/train/68841.png +../../data/yoloGtold1/train/68842.png +../../data/yoloGtold1/train/68843.png +../../data/yoloGtold1/train/68844.png +../../data/yoloGtold1/train/68845.png +../../data/yoloGtold1/train/68846.png +../../data/yoloGtold1/train/68847.png +../../data/yoloGtold1/train/68848.png +../../data/yoloGtold1/train/68849.png +../../data/yoloGtold1/train/68850.png +../../data/yoloGtold1/train/68851.png +../../data/yoloGtold1/train/68852.png +../../data/yoloGtold1/train/68853.png +../../data/yoloGtold1/train/68854.png +../../data/yoloGtold1/train/68855.png +../../data/yoloGtold1/train/68856.png +../../data/yoloGtold1/train/68857.png +../../data/yoloGtold1/train/68858.png +../../data/yoloGtold1/train/68859.png +../../data/yoloGtold1/train/68860.png +../../data/yoloGtold1/train/68861.png +../../data/yoloGtold1/train/68862.png +../../data/yoloGtold1/train/68863.png +../../data/yoloGtold1/train/68864.png +../../data/yoloGtold1/train/68865.png +../../data/yoloGtold1/train/68866.png +../../data/yoloGtold1/train/68867.png +../../data/yoloGtold1/train/68868.png +../../data/yoloGtold1/train/68869.png +../../data/yoloGtold1/train/68870.png +../../data/yoloGtold1/train/68871.png +../../data/yoloGtold1/train/68872.png +../../data/yoloGtold1/train/68873.png +../../data/yoloGtold1/train/68874.png +../../data/yoloGtold1/train/68875.png +../../data/yoloGtold1/train/68876.png +../../data/yoloGtold1/train/68877.png +../../data/yoloGtold1/train/68878.png +../../data/yoloGtold1/train/68879.png +../../data/yoloGtold1/train/68880.png +../../data/yoloGtold1/train/68881.png +../../data/yoloGtold1/train/68882.png +../../data/yoloGtold1/train/68883.png +../../data/yoloGtold1/train/68884.png +../../data/yoloGtold1/train/68885.png +../../data/yoloGtold1/train/68886.png +../../data/yoloGtold1/train/68887.png +../../data/yoloGtold1/train/68888.png +../../data/yoloGtold1/train/68889.png +../../data/yoloGtold1/train/68890.png +../../data/yoloGtold1/train/68891.png +../../data/yoloGtold1/train/68892.png +../../data/yoloGtold1/train/68893.png +../../data/yoloGtold1/train/68894.png +../../data/yoloGtold1/train/68895.png +../../data/yoloGtold1/train/68896.png +../../data/yoloGtold1/train/68897.png +../../data/yoloGtold1/train/68898.png +../../data/yoloGtold1/train/68899.png +../../data/yoloGtold1/train/68900.png +../../data/yoloGtold1/train/68901.png +../../data/yoloGtold1/train/68902.png +../../data/yoloGtold1/train/68903.png +../../data/yoloGtold1/train/68904.png +../../data/yoloGtold1/train/68905.png +../../data/yoloGtold1/train/68906.png +../../data/yoloGtold1/train/68907.png +../../data/yoloGtold1/train/68908.png +../../data/yoloGtold1/train/68909.png +../../data/yoloGtold1/train/68910.png +../../data/yoloGtold1/train/68911.png +../../data/yoloGtold1/train/68912.png +../../data/yoloGtold1/train/68913.png +../../data/yoloGtold1/train/68914.png +../../data/yoloGtold1/train/68915.png +../../data/yoloGtold1/train/68916.png +../../data/yoloGtold1/train/68917.png +../../data/yoloGtold1/train/68918.png +../../data/yoloGtold1/train/68919.png +../../data/yoloGtold1/train/68920.png +../../data/yoloGtold1/train/68921.png +../../data/yoloGtold1/train/68922.png +../../data/yoloGtold1/train/68923.png +../../data/yoloGtold1/train/68924.png +../../data/yoloGtold1/train/68925.png +../../data/yoloGtold1/train/68926.png +../../data/yoloGtold1/train/68927.png +../../data/yoloGtold1/train/68928.png +../../data/yoloGtold1/train/68929.png +../../data/yoloGtold1/train/68930.png +../../data/yoloGtold1/train/68931.png +../../data/yoloGtold1/train/68932.png +../../data/yoloGtold1/train/68933.png +../../data/yoloGtold1/train/68934.png +../../data/yoloGtold1/train/68935.png +../../data/yoloGtold1/train/68936.png +../../data/yoloGtold1/train/68937.png +../../data/yoloGtold1/train/68938.png +../../data/yoloGtold1/train/68939.png +../../data/yoloGtold1/train/68940.png +../../data/yoloGtold1/train/68941.png +../../data/yoloGtold1/train/68942.png +../../data/yoloGtold1/train/68943.png +../../data/yoloGtold1/train/68944.png +../../data/yoloGtold1/train/68945.png +../../data/yoloGtold1/train/68946.png +../../data/yoloGtold1/train/68947.png +../../data/yoloGtold1/train/68948.png +../../data/yoloGtold1/train/68949.png +../../data/yoloGtold1/train/68950.png +../../data/yoloGtold1/train/68951.png +../../data/yoloGtold1/train/68952.png +../../data/yoloGtold1/train/68953.png +../../data/yoloGtold1/train/68954.png +../../data/yoloGtold1/train/68955.png +../../data/yoloGtold1/train/68956.png +../../data/yoloGtold1/train/68957.png +../../data/yoloGtold1/train/68958.png +../../data/yoloGtold1/train/68959.png +../../data/yoloGtold1/train/68960.png +../../data/yoloGtold1/train/68961.png +../../data/yoloGtold1/train/68962.png +../../data/yoloGtold1/train/68963.png +../../data/yoloGtold1/train/68964.png +../../data/yoloGtold1/train/68965.png +../../data/yoloGtold1/train/68966.png +../../data/yoloGtold1/train/68967.png +../../data/yoloGtold1/train/68968.png +../../data/yoloGtold1/train/68969.png +../../data/yoloGtold1/train/68970.png +../../data/yoloGtold1/train/68971.png +../../data/yoloGtold1/train/68972.png +../../data/yoloGtold1/train/68973.png +../../data/yoloGtold1/train/68974.png +../../data/yoloGtold1/train/68975.png +../../data/yoloGtold1/train/68976.png +../../data/yoloGtold1/train/68977.png +../../data/yoloGtold1/train/68978.png +../../data/yoloGtold1/train/68979.png +../../data/yoloGtold1/train/68980.png +../../data/yoloGtold1/train/68981.png +../../data/yoloGtold1/train/68982.png +../../data/yoloGtold1/train/68983.png +../../data/yoloGtold1/train/68984.png +../../data/yoloGtold1/train/68985.png +../../data/yoloGtold1/train/68986.png +../../data/yoloGtold1/train/68987.png +../../data/yoloGtold1/train/68988.png +../../data/yoloGtold1/train/68989.png +../../data/yoloGtold1/train/68990.png +../../data/yoloGtold1/train/68991.png +../../data/yoloGtold1/train/68992.png +../../data/yoloGtold1/train/68993.png +../../data/yoloGtold1/train/68994.png +../../data/yoloGtold1/train/68995.png +../../data/yoloGtold1/train/68996.png +../../data/yoloGtold1/train/68997.png +../../data/yoloGtold1/train/68998.png +../../data/yoloGtold1/train/68999.png +../../data/yoloGtold1/train/69000.png +../../data/yoloGtold1/train/69001.png +../../data/yoloGtold1/train/69002.png +../../data/yoloGtold1/train/69003.png +../../data/yoloGtold1/train/69004.png +../../data/yoloGtold1/train/69005.png +../../data/yoloGtold1/train/69006.png +../../data/yoloGtold1/train/69007.png +../../data/yoloGtold1/train/69008.png +../../data/yoloGtold1/train/69009.png +../../data/yoloGtold1/train/69010.png +../../data/yoloGtold1/train/69011.png +../../data/yoloGtold1/train/69012.png +../../data/yoloGtold1/train/69013.png +../../data/yoloGtold1/train/69014.png +../../data/yoloGtold1/train/69015.png +../../data/yoloGtold1/train/69016.png +../../data/yoloGtold1/train/69017.png +../../data/yoloGtold1/train/69018.png +../../data/yoloGtold1/train/69019.png +../../data/yoloGtold1/train/69020.png +../../data/yoloGtold1/train/69021.png +../../data/yoloGtold1/train/69022.png +../../data/yoloGtold1/train/69023.png +../../data/yoloGtold1/train/69024.png +../../data/yoloGtold1/train/69025.png +../../data/yoloGtold1/train/69026.png +../../data/yoloGtold1/train/69027.png +../../data/yoloGtold1/train/69028.png +../../data/yoloGtold1/train/69029.png +../../data/yoloGtold1/train/69030.png +../../data/yoloGtold1/train/69031.png +../../data/yoloGtold1/train/69032.png +../../data/yoloGtold1/train/69033.png +../../data/yoloGtold1/train/69034.png +../../data/yoloGtold1/train/69035.png +../../data/yoloGtold1/train/69036.png +../../data/yoloGtold1/train/69037.png +../../data/yoloGtold1/train/69038.png +../../data/yoloGtold1/train/69039.png +../../data/yoloGtold1/train/69040.png +../../data/yoloGtold1/train/69041.png +../../data/yoloGtold1/train/69042.png +../../data/yoloGtold1/train/69043.png +../../data/yoloGtold1/train/69044.png +../../data/yoloGtold1/train/69045.png +../../data/yoloGtold1/train/69046.png +../../data/yoloGtold1/train/69047.png +../../data/yoloGtold1/train/69048.png +../../data/yoloGtold1/train/69049.png +../../data/yoloGtold1/train/69050.png +../../data/yoloGtold1/train/69051.png +../../data/yoloGtold1/train/69052.png +../../data/yoloGtold1/train/69053.png +../../data/yoloGtold1/train/69054.png +../../data/yoloGtold1/train/69055.png +../../data/yoloGtold1/train/69056.png +../../data/yoloGtold1/train/69057.png +../../data/yoloGtold1/train/69058.png +../../data/yoloGtold1/train/69059.png +../../data/yoloGtold1/train/69060.png +../../data/yoloGtold1/train/69061.png +../../data/yoloGtold1/train/69062.png +../../data/yoloGtold1/train/69063.png +../../data/yoloGtold1/train/69064.png +../../data/yoloGtold1/train/69065.png +../../data/yoloGtold1/train/69066.png +../../data/yoloGtold1/train/69067.png +../../data/yoloGtold1/train/69068.png +../../data/yoloGtold1/train/69069.png +../../data/yoloGtold1/train/69070.png +../../data/yoloGtold1/train/69071.png +../../data/yoloGtold1/train/69072.png +../../data/yoloGtold1/train/69073.png +../../data/yoloGtold1/train/69074.png +../../data/yoloGtold1/train/69075.png +../../data/yoloGtold1/train/69076.png +../../data/yoloGtold1/train/69077.png +../../data/yoloGtold1/train/69078.png +../../data/yoloGtold1/train/69079.png +../../data/yoloGtold1/train/69080.png +../../data/yoloGtold1/train/69081.png +../../data/yoloGtold1/train/69082.png +../../data/yoloGtold1/train/69083.png +../../data/yoloGtold1/train/69084.png +../../data/yoloGtold1/train/69085.png +../../data/yoloGtold1/train/69086.png +../../data/yoloGtold1/train/69087.png +../../data/yoloGtold1/train/69088.png +../../data/yoloGtold1/train/69089.png +../../data/yoloGtold1/train/69090.png +../../data/yoloGtold1/train/69091.png +../../data/yoloGtold1/train/69092.png +../../data/yoloGtold1/train/69093.png +../../data/yoloGtold1/train/69094.png +../../data/yoloGtold1/train/69095.png +../../data/yoloGtold1/train/69096.png +../../data/yoloGtold1/train/69097.png +../../data/yoloGtold1/train/69098.png +../../data/yoloGtold1/train/69099.png +../../data/yoloGtold1/train/69100.png +../../data/yoloGtold1/train/69101.png +../../data/yoloGtold1/train/69102.png +../../data/yoloGtold1/train/69103.png +../../data/yoloGtold1/train/69104.png +../../data/yoloGtold1/train/69105.png +../../data/yoloGtold1/train/69106.png +../../data/yoloGtold1/train/69107.png +../../data/yoloGtold1/train/69108.png +../../data/yoloGtold1/train/69109.png +../../data/yoloGtold1/train/69110.png +../../data/yoloGtold1/train/69111.png +../../data/yoloGtold1/train/69112.png +../../data/yoloGtold1/train/69113.png +../../data/yoloGtold1/train/69114.png +../../data/yoloGtold1/train/69115.png +../../data/yoloGtold1/train/69116.png +../../data/yoloGtold1/train/69117.png +../../data/yoloGtold1/train/69118.png +../../data/yoloGtold1/train/69119.png +../../data/yoloGtold1/train/69120.png +../../data/yoloGtold1/train/69121.png +../../data/yoloGtold1/train/69122.png +../../data/yoloGtold1/train/69123.png +../../data/yoloGtold1/train/69124.png +../../data/yoloGtold1/train/69125.png +../../data/yoloGtold1/train/69126.png +../../data/yoloGtold1/train/69127.png +../../data/yoloGtold1/train/69128.png +../../data/yoloGtold1/train/69129.png +../../data/yoloGtold1/train/69130.png +../../data/yoloGtold1/train/69131.png +../../data/yoloGtold1/train/69132.png +../../data/yoloGtold1/train/69133.png +../../data/yoloGtold1/train/69134.png +../../data/yoloGtold1/train/69135.png +../../data/yoloGtold1/train/69136.png +../../data/yoloGtold1/train/69137.png +../../data/yoloGtold1/train/69138.png +../../data/yoloGtold1/train/69139.png +../../data/yoloGtold1/train/69140.png +../../data/yoloGtold1/train/69141.png +../../data/yoloGtold1/train/69142.png +../../data/yoloGtold1/train/69143.png +../../data/yoloGtold1/train/69144.png +../../data/yoloGtold1/train/69145.png +../../data/yoloGtold1/train/69146.png +../../data/yoloGtold1/train/69147.png +../../data/yoloGtold1/train/69148.png +../../data/yoloGtold1/train/69149.png +../../data/yoloGtold1/train/69150.png +../../data/yoloGtold1/train/69151.png +../../data/yoloGtold1/train/69152.png +../../data/yoloGtold1/train/69153.png +../../data/yoloGtold1/train/69154.png +../../data/yoloGtold1/train/69155.png +../../data/yoloGtold1/train/69156.png +../../data/yoloGtold1/train/69157.png +../../data/yoloGtold1/train/69158.png +../../data/yoloGtold1/train/69159.png +../../data/yoloGtold1/train/69160.png +../../data/yoloGtold1/train/69161.png +../../data/yoloGtold1/train/69162.png +../../data/yoloGtold1/train/69163.png +../../data/yoloGtold1/train/69164.png +../../data/yoloGtold1/train/69165.png +../../data/yoloGtold1/train/69166.png +../../data/yoloGtold1/train/69167.png +../../data/yoloGtold1/train/69168.png +../../data/yoloGtold1/train/69169.png +../../data/yoloGtold1/train/69170.png +../../data/yoloGtold1/train/69171.png +../../data/yoloGtold1/train/69172.png +../../data/yoloGtold1/train/69173.png +../../data/yoloGtold1/train/69174.png +../../data/yoloGtold1/train/69175.png +../../data/yoloGtold1/train/69176.png +../../data/yoloGtold1/train/69177.png +../../data/yoloGtold1/train/69178.png +../../data/yoloGtold1/train/69179.png +../../data/yoloGtold1/train/69180.png +../../data/yoloGtold1/train/69181.png +../../data/yoloGtold1/train/69182.png +../../data/yoloGtold1/train/69183.png +../../data/yoloGtold1/train/69184.png +../../data/yoloGtold1/train/69185.png +../../data/yoloGtold1/train/69186.png +../../data/yoloGtold1/train/69187.png +../../data/yoloGtold1/train/69188.png +../../data/yoloGtold1/train/69189.png +../../data/yoloGtold1/train/69190.png +../../data/yoloGtold1/train/69191.png +../../data/yoloGtold1/train/69192.png +../../data/yoloGtold1/train/69193.png +../../data/yoloGtold1/train/69194.png +../../data/yoloGtold1/train/69195.png +../../data/yoloGtold1/train/69196.png +../../data/yoloGtold1/train/69197.png +../../data/yoloGtold1/train/69198.png +../../data/yoloGtold1/train/69199.png +../../data/yoloGtold1/train/69200.png +../../data/yoloGtold1/train/69201.png +../../data/yoloGtold1/train/69202.png +../../data/yoloGtold1/train/69203.png +../../data/yoloGtold1/train/69204.png +../../data/yoloGtold1/train/69205.png +../../data/yoloGtold1/train/69206.png +../../data/yoloGtold1/train/69207.png +../../data/yoloGtold1/train/69208.png +../../data/yoloGtold1/train/69209.png +../../data/yoloGtold1/train/69210.png +../../data/yoloGtold1/train/69211.png +../../data/yoloGtold1/train/69212.png +../../data/yoloGtold1/train/69213.png +../../data/yoloGtold1/train/69214.png +../../data/yoloGtold1/train/69215.png +../../data/yoloGtold1/train/69216.png +../../data/yoloGtold1/train/69217.png +../../data/yoloGtold1/train/69218.png +../../data/yoloGtold1/train/69219.png +../../data/yoloGtold1/train/69220.png +../../data/yoloGtold1/train/69221.png +../../data/yoloGtold1/train/69222.png +../../data/yoloGtold1/train/69223.png +../../data/yoloGtold1/train/69224.png +../../data/yoloGtold1/train/69225.png +../../data/yoloGtold1/train/69226.png +../../data/yoloGtold1/train/69227.png +../../data/yoloGtold1/train/69228.png +../../data/yoloGtold1/train/69229.png +../../data/yoloGtold1/train/69230.png +../../data/yoloGtold1/train/69231.png +../../data/yoloGtold1/train/69232.png +../../data/yoloGtold1/train/69233.png +../../data/yoloGtold1/train/69234.png +../../data/yoloGtold1/train/69235.png +../../data/yoloGtold1/train/69236.png +../../data/yoloGtold1/train/69237.png +../../data/yoloGtold1/train/69238.png +../../data/yoloGtold1/train/69239.png +../../data/yoloGtold1/train/69240.png +../../data/yoloGtold1/train/69241.png +../../data/yoloGtold1/train/69242.png +../../data/yoloGtold1/train/69243.png +../../data/yoloGtold1/train/69244.png +../../data/yoloGtold1/train/69245.png +../../data/yoloGtold1/train/69246.png +../../data/yoloGtold1/train/69247.png +../../data/yoloGtold1/train/69248.png +../../data/yoloGtold1/train/69249.png +../../data/yoloGtold1/train/69250.png +../../data/yoloGtold1/train/69251.png +../../data/yoloGtold1/train/69252.png +../../data/yoloGtold1/train/69253.png +../../data/yoloGtold1/train/69254.png +../../data/yoloGtold1/train/69255.png +../../data/yoloGtold1/train/69256.png +../../data/yoloGtold1/train/69257.png +../../data/yoloGtold1/train/69258.png +../../data/yoloGtold1/train/69259.png +../../data/yoloGtold1/train/69260.png +../../data/yoloGtold1/train/69261.png +../../data/yoloGtold1/train/69262.png +../../data/yoloGtold1/train/69263.png +../../data/yoloGtold1/train/69264.png +../../data/yoloGtold1/train/69265.png +../../data/yoloGtold1/train/69266.png +../../data/yoloGtold1/train/69267.png +../../data/yoloGtold1/train/69268.png +../../data/yoloGtold1/train/69269.png +../../data/yoloGtold1/train/69270.png +../../data/yoloGtold1/train/69271.png +../../data/yoloGtold1/train/69272.png +../../data/yoloGtold1/train/69273.png +../../data/yoloGtold1/train/69274.png +../../data/yoloGtold1/train/69275.png +../../data/yoloGtold1/train/69276.png +../../data/yoloGtold1/train/69277.png +../../data/yoloGtold1/train/69278.png +../../data/yoloGtold1/train/69279.png +../../data/yoloGtold1/train/69280.png +../../data/yoloGtold1/train/69281.png +../../data/yoloGtold1/train/69282.png +../../data/yoloGtold1/train/69283.png +../../data/yoloGtold1/train/69284.png +../../data/yoloGtold1/train/69285.png +../../data/yoloGtold1/train/69286.png +../../data/yoloGtold1/train/69287.png +../../data/yoloGtold1/train/69288.png +../../data/yoloGtold1/train/69289.png +../../data/yoloGtold1/train/69290.png +../../data/yoloGtold1/train/69291.png +../../data/yoloGtold1/train/69292.png +../../data/yoloGtold1/train/69293.png +../../data/yoloGtold1/train/69294.png +../../data/yoloGtold1/train/69295.png +../../data/yoloGtold1/train/69296.png +../../data/yoloGtold1/train/69297.png +../../data/yoloGtold1/train/69298.png +../../data/yoloGtold1/train/69299.png +../../data/yoloGtold1/train/69300.png +../../data/yoloGtold1/train/69301.png +../../data/yoloGtold1/train/69302.png +../../data/yoloGtold1/train/69303.png +../../data/yoloGtold1/train/69304.png +../../data/yoloGtold1/train/69305.png +../../data/yoloGtold1/train/69306.png +../../data/yoloGtold1/train/69307.png +../../data/yoloGtold1/train/69308.png +../../data/yoloGtold1/train/69309.png +../../data/yoloGtold1/train/69310.png +../../data/yoloGtold1/train/69311.png +../../data/yoloGtold1/train/69312.png +../../data/yoloGtold1/train/69313.png +../../data/yoloGtold1/train/69314.png +../../data/yoloGtold1/train/69315.png +../../data/yoloGtold1/train/69316.png +../../data/yoloGtold1/train/69317.png +../../data/yoloGtold1/train/69318.png +../../data/yoloGtold1/train/69319.png +../../data/yoloGtold1/train/69320.png +../../data/yoloGtold1/train/69321.png +../../data/yoloGtold1/train/69322.png +../../data/yoloGtold1/train/69323.png +../../data/yoloGtold1/train/69324.png +../../data/yoloGtold1/train/69325.png +../../data/yoloGtold1/train/69326.png +../../data/yoloGtold1/train/69327.png +../../data/yoloGtold1/train/69328.png +../../data/yoloGtold1/train/69329.png +../../data/yoloGtold1/train/69330.png +../../data/yoloGtold1/train/69331.png +../../data/yoloGtold1/train/69332.png +../../data/yoloGtold1/train/69333.png +../../data/yoloGtold1/train/69334.png +../../data/yoloGtold1/train/69335.png +../../data/yoloGtold1/train/69336.png +../../data/yoloGtold1/train/69337.png +../../data/yoloGtold1/train/69338.png +../../data/yoloGtold1/train/69339.png +../../data/yoloGtold1/train/69340.png +../../data/yoloGtold1/train/69341.png +../../data/yoloGtold1/train/69342.png +../../data/yoloGtold1/train/69343.png +../../data/yoloGtold1/train/69344.png +../../data/yoloGtold1/train/69345.png +../../data/yoloGtold1/train/69346.png +../../data/yoloGtold1/train/69347.png +../../data/yoloGtold1/train/69348.png +../../data/yoloGtold1/train/69349.png +../../data/yoloGtold1/train/69350.png +../../data/yoloGtold1/train/69351.png +../../data/yoloGtold1/train/69352.png +../../data/yoloGtold1/train/69353.png +../../data/yoloGtold1/train/69354.png +../../data/yoloGtold1/train/69355.png +../../data/yoloGtold1/train/69356.png +../../data/yoloGtold1/train/69357.png +../../data/yoloGtold1/train/69358.png +../../data/yoloGtold1/train/69359.png +../../data/yoloGtold1/train/69360.png +../../data/yoloGtold1/train/69361.png +../../data/yoloGtold1/train/69362.png +../../data/yoloGtold1/train/69363.png +../../data/yoloGtold1/train/69364.png +../../data/yoloGtold1/train/69365.png +../../data/yoloGtold1/train/69366.png +../../data/yoloGtold1/train/69367.png +../../data/yoloGtold1/train/69368.png +../../data/yoloGtold1/train/69369.png +../../data/yoloGtold1/train/69370.png +../../data/yoloGtold1/train/69371.png +../../data/yoloGtold1/train/69372.png +../../data/yoloGtold1/train/69373.png +../../data/yoloGtold1/train/69374.png +../../data/yoloGtold1/train/69375.png +../../data/yoloGtold1/train/69376.png +../../data/yoloGtold1/train/69377.png +../../data/yoloGtold1/train/69378.png +../../data/yoloGtold1/train/69379.png +../../data/yoloGtold1/train/69380.png +../../data/yoloGtold1/train/69381.png +../../data/yoloGtold1/train/69382.png +../../data/yoloGtold1/train/69383.png +../../data/yoloGtold1/train/69384.png +../../data/yoloGtold1/train/69385.png +../../data/yoloGtold1/train/69386.png +../../data/yoloGtold1/train/69387.png +../../data/yoloGtold1/train/69388.png +../../data/yoloGtold1/train/69389.png +../../data/yoloGtold1/train/69390.png +../../data/yoloGtold1/train/69391.png +../../data/yoloGtold1/train/69392.png +../../data/yoloGtold1/train/69393.png +../../data/yoloGtold1/train/69394.png +../../data/yoloGtold1/train/69395.png +../../data/yoloGtold1/train/69396.png +../../data/yoloGtold1/train/69397.png +../../data/yoloGtold1/train/69398.png +../../data/yoloGtold1/train/69399.png +../../data/yoloGtold1/train/69400.png +../../data/yoloGtold1/train/69401.png +../../data/yoloGtold1/train/69402.png +../../data/yoloGtold1/train/69403.png +../../data/yoloGtold1/train/69404.png +../../data/yoloGtold1/train/69405.png +../../data/yoloGtold1/train/69406.png +../../data/yoloGtold1/train/69407.png +../../data/yoloGtold1/train/69408.png +../../data/yoloGtold1/train/69409.png +../../data/yoloGtold1/train/69410.png +../../data/yoloGtold1/train/69411.png +../../data/yoloGtold1/train/69412.png +../../data/yoloGtold1/train/69413.png +../../data/yoloGtold1/train/69414.png +../../data/yoloGtold1/train/69415.png +../../data/yoloGtold1/train/69416.png +../../data/yoloGtold1/train/69417.png +../../data/yoloGtold1/train/69418.png +../../data/yoloGtold1/train/69419.png +../../data/yoloGtold1/train/69420.png +../../data/yoloGtold1/train/69421.png +../../data/yoloGtold1/train/69422.png +../../data/yoloGtold1/train/69423.png +../../data/yoloGtold1/train/69424.png +../../data/yoloGtold1/train/69425.png +../../data/yoloGtold1/train/69426.png +../../data/yoloGtold1/train/69427.png +../../data/yoloGtold1/train/69428.png +../../data/yoloGtold1/train/69429.png +../../data/yoloGtold1/train/69430.png +../../data/yoloGtold1/train/69431.png +../../data/yoloGtold1/train/69432.png +../../data/yoloGtold1/train/69433.png +../../data/yoloGtold1/train/69434.png +../../data/yoloGtold1/train/69435.png +../../data/yoloGtold1/train/69436.png +../../data/yoloGtold1/train/69437.png +../../data/yoloGtold1/train/69438.png +../../data/yoloGtold1/train/69439.png +../../data/yoloGtold1/train/69440.png +../../data/yoloGtold1/train/69441.png +../../data/yoloGtold1/train/69442.png +../../data/yoloGtold1/train/69443.png +../../data/yoloGtold1/train/69444.png +../../data/yoloGtold1/train/69445.png +../../data/yoloGtold1/train/69446.png +../../data/yoloGtold1/train/69447.png +../../data/yoloGtold1/train/69448.png +../../data/yoloGtold1/train/69449.png +../../data/yoloGtold1/train/69450.png +../../data/yoloGtold1/train/69451.png +../../data/yoloGtold1/train/69452.png +../../data/yoloGtold1/train/69453.png +../../data/yoloGtold1/train/69454.png +../../data/yoloGtold1/train/69455.png +../../data/yoloGtold1/train/69456.png +../../data/yoloGtold1/train/69457.png +../../data/yoloGtold1/train/69458.png +../../data/yoloGtold1/train/69459.png +../../data/yoloGtold1/train/69460.png +../../data/yoloGtold1/train/69461.png +../../data/yoloGtold1/train/69462.png +../../data/yoloGtold1/train/69463.png +../../data/yoloGtold1/train/69464.png +../../data/yoloGtold1/train/69465.png +../../data/yoloGtold1/train/69466.png +../../data/yoloGtold1/train/69467.png +../../data/yoloGtold1/train/69468.png +../../data/yoloGtold1/train/69469.png +../../data/yoloGtold1/train/69470.png +../../data/yoloGtold1/train/69471.png +../../data/yoloGtold1/train/69472.png +../../data/yoloGtold1/train/69473.png +../../data/yoloGtold1/train/69474.png +../../data/yoloGtold1/train/69475.png +../../data/yoloGtold1/train/69476.png +../../data/yoloGtold1/train/69477.png +../../data/yoloGtold1/train/69478.png +../../data/yoloGtold1/train/69479.png +../../data/yoloGtold1/train/69480.png +../../data/yoloGtold1/train/69481.png +../../data/yoloGtold1/train/69482.png +../../data/yoloGtold1/train/69483.png +../../data/yoloGtold1/train/69484.png +../../data/yoloGtold1/train/69485.png +../../data/yoloGtold1/train/69486.png +../../data/yoloGtold1/train/69487.png +../../data/yoloGtold1/train/69488.png +../../data/yoloGtold1/train/69489.png +../../data/yoloGtold1/train/69490.png +../../data/yoloGtold1/train/69491.png +../../data/yoloGtold1/train/69492.png +../../data/yoloGtold1/train/69493.png +../../data/yoloGtold1/train/69494.png +../../data/yoloGtold1/train/69495.png +../../data/yoloGtold1/train/69496.png +../../data/yoloGtold1/train/69497.png +../../data/yoloGtold1/train/69498.png +../../data/yoloGtold1/train/69499.png +../../data/yoloGtold1/train/69500.png +../../data/yoloGtold1/train/69501.png +../../data/yoloGtold1/train/69502.png +../../data/yoloGtold1/train/69503.png +../../data/yoloGtold1/train/69504.png +../../data/yoloGtold1/train/69505.png +../../data/yoloGtold1/train/69506.png +../../data/yoloGtold1/train/69507.png +../../data/yoloGtold1/train/69508.png +../../data/yoloGtold1/train/69509.png +../../data/yoloGtold1/train/69510.png +../../data/yoloGtold1/train/69511.png +../../data/yoloGtold1/train/69512.png +../../data/yoloGtold1/train/69513.png +../../data/yoloGtold1/train/69514.png +../../data/yoloGtold1/train/69515.png +../../data/yoloGtold1/train/69516.png +../../data/yoloGtold1/train/69517.png +../../data/yoloGtold1/train/69518.png +../../data/yoloGtold1/train/69519.png +../../data/yoloGtold1/train/69520.png +../../data/yoloGtold1/train/69521.png +../../data/yoloGtold1/train/69522.png +../../data/yoloGtold1/train/69523.png +../../data/yoloGtold1/train/69524.png +../../data/yoloGtold1/train/69525.png +../../data/yoloGtold1/train/69526.png +../../data/yoloGtold1/train/69527.png +../../data/yoloGtold1/train/69528.png +../../data/yoloGtold1/train/69529.png +../../data/yoloGtold1/train/69530.png +../../data/yoloGtold1/train/69531.png +../../data/yoloGtold1/train/69532.png +../../data/yoloGtold1/train/69533.png +../../data/yoloGtold1/train/69534.png +../../data/yoloGtold1/train/69535.png +../../data/yoloGtold1/train/69536.png +../../data/yoloGtold1/train/69537.png +../../data/yoloGtold1/train/69538.png +../../data/yoloGtold1/train/69539.png +../../data/yoloGtold1/train/69540.png +../../data/yoloGtold1/train/69541.png +../../data/yoloGtold1/train/69542.png +../../data/yoloGtold1/train/69543.png +../../data/yoloGtold1/train/69544.png +../../data/yoloGtold1/train/69545.png +../../data/yoloGtold1/train/69546.png +../../data/yoloGtold1/train/69547.png +../../data/yoloGtold1/train/69548.png +../../data/yoloGtold1/train/69549.png +../../data/yoloGtold1/train/69550.png +../../data/yoloGtold1/train/69551.png +../../data/yoloGtold1/train/69552.png +../../data/yoloGtold1/train/69553.png +../../data/yoloGtold1/train/69554.png +../../data/yoloGtold1/train/69555.png +../../data/yoloGtold1/train/69556.png +../../data/yoloGtold1/train/69557.png +../../data/yoloGtold1/train/69558.png +../../data/yoloGtold1/train/69559.png +../../data/yoloGtold1/train/69560.png +../../data/yoloGtold1/train/69561.png +../../data/yoloGtold1/train/69562.png +../../data/yoloGtold1/train/69563.png +../../data/yoloGtold1/train/69564.png +../../data/yoloGtold1/train/69565.png +../../data/yoloGtold1/train/69566.png +../../data/yoloGtold1/train/69567.png +../../data/yoloGtold1/train/69568.png +../../data/yoloGtold1/train/69569.png +../../data/yoloGtold1/train/69570.png +../../data/yoloGtold1/train/69571.png +../../data/yoloGtold1/train/69572.png +../../data/yoloGtold1/train/69573.png +../../data/yoloGtold1/train/69574.png +../../data/yoloGtold1/train/69575.png +../../data/yoloGtold1/train/69576.png +../../data/yoloGtold1/train/69577.png +../../data/yoloGtold1/train/69578.png +../../data/yoloGtold1/train/69579.png +../../data/yoloGtold1/train/69580.png +../../data/yoloGtold1/train/69581.png +../../data/yoloGtold1/train/69582.png +../../data/yoloGtold1/train/69583.png +../../data/yoloGtold1/train/69584.png +../../data/yoloGtold1/train/69585.png +../../data/yoloGtold1/train/69586.png +../../data/yoloGtold1/train/69587.png +../../data/yoloGtold1/train/69588.png +../../data/yoloGtold1/train/69589.png +../../data/yoloGtold1/train/69590.png +../../data/yoloGtold1/train/69591.png +../../data/yoloGtold1/train/69592.png +../../data/yoloGtold1/train/69593.png +../../data/yoloGtold1/train/69594.png +../../data/yoloGtold1/train/69595.png +../../data/yoloGtold1/train/69596.png +../../data/yoloGtold1/train/69597.png +../../data/yoloGtold1/train/69598.png +../../data/yoloGtold1/train/69599.png +../../data/yoloGtold1/train/69600.png +../../data/yoloGtold1/train/69601.png +../../data/yoloGtold1/train/69602.png +../../data/yoloGtold1/train/69603.png +../../data/yoloGtold1/train/69604.png +../../data/yoloGtold1/train/69605.png +../../data/yoloGtold1/train/69606.png +../../data/yoloGtold1/train/69607.png +../../data/yoloGtold1/train/69608.png +../../data/yoloGtold1/train/69609.png +../../data/yoloGtold1/train/69610.png +../../data/yoloGtold1/train/69611.png +../../data/yoloGtold1/train/69612.png +../../data/yoloGtold1/train/69613.png +../../data/yoloGtold1/train/69614.png +../../data/yoloGtold1/train/69615.png +../../data/yoloGtold1/train/69616.png +../../data/yoloGtold1/train/69617.png +../../data/yoloGtold1/train/69618.png +../../data/yoloGtold1/train/69619.png +../../data/yoloGtold1/train/69620.png +../../data/yoloGtold1/train/69621.png +../../data/yoloGtold1/train/69622.png +../../data/yoloGtold1/train/69623.png +../../data/yoloGtold1/train/69624.png +../../data/yoloGtold1/train/69625.png +../../data/yoloGtold1/train/69626.png +../../data/yoloGtold1/train/69627.png +../../data/yoloGtold1/train/69628.png +../../data/yoloGtold1/train/69629.png +../../data/yoloGtold1/train/69630.png +../../data/yoloGtold1/train/69631.png +../../data/yoloGtold1/train/69632.png +../../data/yoloGtold1/train/69633.png +../../data/yoloGtold1/train/69634.png +../../data/yoloGtold1/train/69635.png +../../data/yoloGtold1/train/69636.png +../../data/yoloGtold1/train/69637.png +../../data/yoloGtold1/train/69638.png +../../data/yoloGtold1/train/69639.png +../../data/yoloGtold1/train/69640.png +../../data/yoloGtold1/train/69641.png +../../data/yoloGtold1/train/69642.png +../../data/yoloGtold1/train/69643.png +../../data/yoloGtold1/train/69644.png +../../data/yoloGtold1/train/69645.png +../../data/yoloGtold1/train/69646.png +../../data/yoloGtold1/train/69647.png +../../data/yoloGtold1/train/69648.png +../../data/yoloGtold1/train/69649.png +../../data/yoloGtold1/train/69650.png +../../data/yoloGtold1/train/69651.png +../../data/yoloGtold1/train/69652.png +../../data/yoloGtold1/train/69653.png +../../data/yoloGtold1/train/69654.png +../../data/yoloGtold1/train/69655.png +../../data/yoloGtold1/train/69656.png +../../data/yoloGtold1/train/69657.png +../../data/yoloGtold1/train/69658.png +../../data/yoloGtold1/train/69659.png +../../data/yoloGtold1/train/69660.png +../../data/yoloGtold1/train/69661.png +../../data/yoloGtold1/train/69662.png +../../data/yoloGtold1/train/69663.png +../../data/yoloGtold1/train/69664.png +../../data/yoloGtold1/train/69665.png +../../data/yoloGtold1/train/69666.png +../../data/yoloGtold1/train/69667.png +../../data/yoloGtold1/train/69668.png +../../data/yoloGtold1/train/69669.png +../../data/yoloGtold1/train/69670.png +../../data/yoloGtold1/train/69671.png +../../data/yoloGtold1/train/69672.png +../../data/yoloGtold1/train/69673.png +../../data/yoloGtold1/train/69674.png +../../data/yoloGtold1/train/69675.png +../../data/yoloGtold1/train/69676.png +../../data/yoloGtold1/train/69677.png +../../data/yoloGtold1/train/69678.png +../../data/yoloGtold1/train/69679.png +../../data/yoloGtold1/train/69680.png +../../data/yoloGtold1/train/69681.png +../../data/yoloGtold1/train/69682.png +../../data/yoloGtold1/train/69683.png +../../data/yoloGtold1/train/69684.png +../../data/yoloGtold1/train/69685.png +../../data/yoloGtold1/train/69686.png +../../data/yoloGtold1/train/69687.png +../../data/yoloGtold1/train/69688.png +../../data/yoloGtold1/train/69689.png +../../data/yoloGtold1/train/69690.png +../../data/yoloGtold1/train/69691.png +../../data/yoloGtold1/train/69692.png +../../data/yoloGtold1/train/69693.png +../../data/yoloGtold1/train/69694.png +../../data/yoloGtold1/train/69695.png +../../data/yoloGtold1/train/69696.png +../../data/yoloGtold1/train/69697.png +../../data/yoloGtold1/train/69698.png +../../data/yoloGtold1/train/69699.png +../../data/yoloGtold1/train/69700.png +../../data/yoloGtold1/train/69701.png +../../data/yoloGtold1/train/69702.png +../../data/yoloGtold1/train/69703.png +../../data/yoloGtold1/train/69704.png +../../data/yoloGtold1/train/69705.png +../../data/yoloGtold1/train/69706.png +../../data/yoloGtold1/train/69707.png +../../data/yoloGtold1/train/69708.png +../../data/yoloGtold1/train/69709.png +../../data/yoloGtold1/train/69710.png +../../data/yoloGtold1/train/69711.png +../../data/yoloGtold1/train/69712.png +../../data/yoloGtold1/train/69713.png +../../data/yoloGtold1/train/69714.png +../../data/yoloGtold1/train/69715.png +../../data/yoloGtold1/train/69716.png +../../data/yoloGtold1/train/69717.png +../../data/yoloGtold1/train/69718.png +../../data/yoloGtold1/train/69719.png +../../data/yoloGtold1/train/69720.png +../../data/yoloGtold1/train/69721.png +../../data/yoloGtold1/train/69722.png +../../data/yoloGtold1/train/69723.png +../../data/yoloGtold1/train/69724.png +../../data/yoloGtold1/train/69725.png +../../data/yoloGtold1/train/69726.png +../../data/yoloGtold1/train/69727.png +../../data/yoloGtold1/train/69728.png +../../data/yoloGtold1/train/69729.png +../../data/yoloGtold1/train/69730.png +../../data/yoloGtold1/train/69731.png +../../data/yoloGtold1/train/69732.png +../../data/yoloGtold1/train/69733.png +../../data/yoloGtold1/train/69734.png +../../data/yoloGtold1/train/69735.png +../../data/yoloGtold1/train/69736.png +../../data/yoloGtold1/train/69737.png +../../data/yoloGtold1/train/69738.png +../../data/yoloGtold1/train/69739.png +../../data/yoloGtold1/train/69740.png +../../data/yoloGtold1/train/69741.png +../../data/yoloGtold1/train/69742.png +../../data/yoloGtold1/train/69743.png +../../data/yoloGtold1/train/69744.png +../../data/yoloGtold1/train/69745.png +../../data/yoloGtold1/train/69746.png +../../data/yoloGtold1/train/69747.png +../../data/yoloGtold1/train/69748.png +../../data/yoloGtold1/train/69749.png +../../data/yoloGtold1/train/69750.png +../../data/yoloGtold1/train/69751.png +../../data/yoloGtold1/train/69752.png +../../data/yoloGtold1/train/69753.png +../../data/yoloGtold1/train/69754.png +../../data/yoloGtold1/train/69755.png +../../data/yoloGtold1/train/69756.png +../../data/yoloGtold1/train/69757.png +../../data/yoloGtold1/train/69758.png +../../data/yoloGtold1/train/69759.png +../../data/yoloGtold1/train/69760.png +../../data/yoloGtold1/train/69761.png +../../data/yoloGtold1/train/69762.png +../../data/yoloGtold1/train/69763.png +../../data/yoloGtold1/train/69764.png +../../data/yoloGtold1/train/69765.png +../../data/yoloGtold1/train/69766.png +../../data/yoloGtold1/train/69767.png +../../data/yoloGtold1/train/69768.png +../../data/yoloGtold1/train/69769.png +../../data/yoloGtold1/train/69770.png +../../data/yoloGtold1/train/69771.png +../../data/yoloGtold1/train/69772.png +../../data/yoloGtold1/train/69773.png +../../data/yoloGtold1/train/69774.png +../../data/yoloGtold1/train/69775.png +../../data/yoloGtold1/train/69776.png +../../data/yoloGtold1/train/69777.png +../../data/yoloGtold1/train/69778.png +../../data/yoloGtold1/train/69779.png +../../data/yoloGtold1/train/69780.png +../../data/yoloGtold1/train/69781.png +../../data/yoloGtold1/train/69782.png +../../data/yoloGtold1/train/69783.png +../../data/yoloGtold1/train/69784.png +../../data/yoloGtold1/train/69785.png +../../data/yoloGtold1/train/69786.png +../../data/yoloGtold1/train/69787.png +../../data/yoloGtold1/train/69788.png +../../data/yoloGtold1/train/69789.png +../../data/yoloGtold1/train/69790.png +../../data/yoloGtold1/train/69791.png +../../data/yoloGtold1/train/69792.png +../../data/yoloGtold1/train/69793.png +../../data/yoloGtold1/train/69794.png +../../data/yoloGtold1/train/69795.png +../../data/yoloGtold1/train/69796.png +../../data/yoloGtold1/train/69797.png +../../data/yoloGtold1/train/69798.png +../../data/yoloGtold1/train/69799.png +../../data/yoloGtold1/train/69800.png +../../data/yoloGtold1/train/69801.png +../../data/yoloGtold1/train/69802.png +../../data/yoloGtold1/train/69803.png +../../data/yoloGtold1/train/69804.png +../../data/yoloGtold1/train/69805.png +../../data/yoloGtold1/train/69806.png +../../data/yoloGtold1/train/69807.png +../../data/yoloGtold1/train/69808.png +../../data/yoloGtold1/train/69809.png +../../data/yoloGtold1/train/69810.png +../../data/yoloGtold1/train/69811.png +../../data/yoloGtold1/train/69812.png +../../data/yoloGtold1/train/69813.png +../../data/yoloGtold1/train/69814.png +../../data/yoloGtold1/train/69815.png +../../data/yoloGtold1/train/69816.png +../../data/yoloGtold1/train/69817.png +../../data/yoloGtold1/train/69818.png +../../data/yoloGtold1/train/69819.png +../../data/yoloGtold1/train/69820.png +../../data/yoloGtold1/train/69821.png +../../data/yoloGtold1/train/69822.png +../../data/yoloGtold1/train/69823.png +../../data/yoloGtold1/train/69824.png +../../data/yoloGtold1/train/69825.png +../../data/yoloGtold1/train/69826.png +../../data/yoloGtold1/train/69827.png +../../data/yoloGtold1/train/69828.png +../../data/yoloGtold1/train/69829.png +../../data/yoloGtold1/train/69830.png +../../data/yoloGtold1/train/69831.png +../../data/yoloGtold1/train/69832.png +../../data/yoloGtold1/train/69833.png +../../data/yoloGtold1/train/69834.png +../../data/yoloGtold1/train/69835.png +../../data/yoloGtold1/train/69836.png +../../data/yoloGtold1/train/69837.png +../../data/yoloGtold1/train/69838.png +../../data/yoloGtold1/train/69839.png +../../data/yoloGtold1/train/69840.png +../../data/yoloGtold1/train/69841.png +../../data/yoloGtold1/train/69842.png +../../data/yoloGtold1/train/69843.png +../../data/yoloGtold1/train/69844.png +../../data/yoloGtold1/train/69845.png +../../data/yoloGtold1/train/69846.png +../../data/yoloGtold1/train/69847.png +../../data/yoloGtold1/train/69848.png +../../data/yoloGtold1/train/69849.png +../../data/yoloGtold1/train/69850.png +../../data/yoloGtold1/train/69851.png +../../data/yoloGtold1/train/69852.png +../../data/yoloGtold1/train/69853.png +../../data/yoloGtold1/train/69854.png +../../data/yoloGtold1/train/69855.png +../../data/yoloGtold1/train/69856.png +../../data/yoloGtold1/train/69857.png +../../data/yoloGtold1/train/69858.png +../../data/yoloGtold1/train/69859.png +../../data/yoloGtold1/train/69860.png +../../data/yoloGtold1/train/69861.png +../../data/yoloGtold1/train/69862.png +../../data/yoloGtold1/train/69863.png +../../data/yoloGtold1/train/69864.png +../../data/yoloGtold1/train/69865.png +../../data/yoloGtold1/train/69866.png +../../data/yoloGtold1/train/69867.png +../../data/yoloGtold1/train/69868.png +../../data/yoloGtold1/train/69869.png +../../data/yoloGtold1/train/69870.png +../../data/yoloGtold1/train/69871.png +../../data/yoloGtold1/train/69872.png +../../data/yoloGtold1/train/69873.png +../../data/yoloGtold1/train/69874.png +../../data/yoloGtold1/train/69875.png +../../data/yoloGtold1/train/69876.png +../../data/yoloGtold1/train/69877.png +../../data/yoloGtold1/train/69878.png +../../data/yoloGtold1/train/69879.png +../../data/yoloGtold1/train/69880.png +../../data/yoloGtold1/train/69881.png +../../data/yoloGtold1/train/69882.png +../../data/yoloGtold1/train/69883.png +../../data/yoloGtold1/train/69884.png +../../data/yoloGtold1/train/69885.png +../../data/yoloGtold1/train/69886.png +../../data/yoloGtold1/train/69887.png +../../data/yoloGtold1/train/69888.png +../../data/yoloGtold1/train/69889.png +../../data/yoloGtold1/train/69890.png +../../data/yoloGtold1/train/69891.png +../../data/yoloGtold1/train/69892.png +../../data/yoloGtold1/train/69893.png +../../data/yoloGtold1/train/69894.png +../../data/yoloGtold1/train/69895.png +../../data/yoloGtold1/train/69896.png +../../data/yoloGtold1/train/69897.png +../../data/yoloGtold1/train/69898.png +../../data/yoloGtold1/train/69899.png +../../data/yoloGtold1/train/69900.png +../../data/yoloGtold1/train/69901.png +../../data/yoloGtold1/train/69902.png +../../data/yoloGtold1/train/69903.png +../../data/yoloGtold1/train/69904.png +../../data/yoloGtold1/train/69905.png +../../data/yoloGtold1/train/69906.png +../../data/yoloGtold1/train/69907.png +../../data/yoloGtold1/train/69908.png +../../data/yoloGtold1/train/69909.png +../../data/yoloGtold1/train/69910.png +../../data/yoloGtold1/train/69911.png +../../data/yoloGtold1/train/69912.png +../../data/yoloGtold1/train/69913.png +../../data/yoloGtold1/train/69914.png +../../data/yoloGtold1/train/69915.png +../../data/yoloGtold1/train/69916.png +../../data/yoloGtold1/train/69917.png +../../data/yoloGtold1/train/69918.png +../../data/yoloGtold1/train/69919.png +../../data/yoloGtold1/train/69920.png +../../data/yoloGtold1/train/69921.png +../../data/yoloGtold1/train/69922.png +../../data/yoloGtold1/train/69923.png +../../data/yoloGtold1/train/69924.png +../../data/yoloGtold1/train/69925.png +../../data/yoloGtold1/train/69926.png +../../data/yoloGtold1/train/69927.png +../../data/yoloGtold1/train/69928.png +../../data/yoloGtold1/train/69929.png +../../data/yoloGtold1/train/69930.png +../../data/yoloGtold1/train/69931.png +../../data/yoloGtold1/train/69932.png +../../data/yoloGtold1/train/69933.png +../../data/yoloGtold1/train/69934.png +../../data/yoloGtold1/train/69935.png +../../data/yoloGtold1/train/69936.png +../../data/yoloGtold1/train/69937.png +../../data/yoloGtold1/train/69938.png +../../data/yoloGtold1/train/69939.png +../../data/yoloGtold1/train/69940.png +../../data/yoloGtold1/train/69941.png +../../data/yoloGtold1/train/69942.png +../../data/yoloGtold1/train/69943.png +../../data/yoloGtold1/train/69944.png +../../data/yoloGtold1/train/69945.png +../../data/yoloGtold1/train/69946.png +../../data/yoloGtold1/train/69947.png +../../data/yoloGtold1/train/69948.png +../../data/yoloGtold1/train/69949.png +../../data/yoloGtold1/train/69950.png +../../data/yoloGtold1/train/69951.png +../../data/yoloGtold1/train/69952.png +../../data/yoloGtold1/train/69953.png +../../data/yoloGtold1/train/69954.png +../../data/yoloGtold1/train/69955.png +../../data/yoloGtold1/train/69956.png +../../data/yoloGtold1/train/69957.png +../../data/yoloGtold1/train/69958.png +../../data/yoloGtold1/train/69959.png +../../data/yoloGtold1/train/69960.png +../../data/yoloGtold1/train/69961.png +../../data/yoloGtold1/train/69962.png +../../data/yoloGtold1/train/69963.png +../../data/yoloGtold1/train/69964.png +../../data/yoloGtold1/train/69965.png +../../data/yoloGtold1/train/69966.png +../../data/yoloGtold1/train/69967.png +../../data/yoloGtold1/train/69968.png +../../data/yoloGtold1/train/69969.png +../../data/yoloGtold1/train/69970.png +../../data/yoloGtold1/train/69971.png +../../data/yoloGtold1/train/69972.png +../../data/yoloGtold1/train/69973.png +../../data/yoloGtold1/train/69974.png +../../data/yoloGtold1/train/69975.png +../../data/yoloGtold1/train/69976.png +../../data/yoloGtold1/train/69977.png +../../data/yoloGtold1/train/69978.png +../../data/yoloGtold1/train/69979.png +../../data/yoloGtold1/train/69980.png +../../data/yoloGtold1/train/69981.png +../../data/yoloGtold1/train/69982.png +../../data/yoloGtold1/train/69983.png +../../data/yoloGtold1/train/69984.png +../../data/yoloGtold1/train/69985.png +../../data/yoloGtold1/train/69986.png +../../data/yoloGtold1/train/69987.png +../../data/yoloGtold1/train/69988.png +../../data/yoloGtold1/train/69989.png +../../data/yoloGtold1/train/69990.png +../../data/yoloGtold1/train/69991.png +../../data/yoloGtold1/train/69992.png +../../data/yoloGtold1/train/69993.png +../../data/yoloGtold1/train/69994.png +../../data/yoloGtold1/train/69995.png +../../data/yoloGtold1/train/69996.png +../../data/yoloGtold1/train/69997.png +../../data/yoloGtold1/train/69998.png +../../data/yoloGtold1/train/69999.png +../../data/yoloGtold1/train/70000.png +../../data/yoloGtold1/train/70001.png +../../data/yoloGtold1/train/70002.png +../../data/yoloGtold1/train/70003.png +../../data/yoloGtold1/train/70004.png +../../data/yoloGtold1/train/70005.png +../../data/yoloGtold1/train/70006.png +../../data/yoloGtold1/train/70007.png +../../data/yoloGtold1/train/70008.png +../../data/yoloGtold1/train/70009.png +../../data/yoloGtold1/train/70010.png +../../data/yoloGtold1/train/70011.png +../../data/yoloGtold1/train/70012.png +../../data/yoloGtold1/train/70013.png +../../data/yoloGtold1/train/70014.png +../../data/yoloGtold1/train/70015.png +../../data/yoloGtold1/train/70016.png +../../data/yoloGtold1/train/70017.png +../../data/yoloGtold1/train/70018.png +../../data/yoloGtold1/train/70019.png +../../data/yoloGtold1/train/70020.png +../../data/yoloGtold1/train/70021.png +../../data/yoloGtold1/train/70022.png +../../data/yoloGtold1/train/70023.png +../../data/yoloGtold1/train/70024.png +../../data/yoloGtold1/train/70025.png +../../data/yoloGtold1/train/70026.png +../../data/yoloGtold1/train/70027.png +../../data/yoloGtold1/train/70028.png +../../data/yoloGtold1/train/70029.png +../../data/yoloGtold1/train/70030.png +../../data/yoloGtold1/train/70031.png +../../data/yoloGtold1/train/70032.png +../../data/yoloGtold1/train/70033.png +../../data/yoloGtold1/train/70034.png +../../data/yoloGtold1/train/70035.png +../../data/yoloGtold1/train/70036.png +../../data/yoloGtold1/train/70037.png +../../data/yoloGtold1/train/70038.png +../../data/yoloGtold1/train/70039.png +../../data/yoloGtold1/train/70040.png +../../data/yoloGtold1/train/70041.png +../../data/yoloGtold1/train/70042.png +../../data/yoloGtold1/train/70043.png +../../data/yoloGtold1/train/70044.png +../../data/yoloGtold1/train/70045.png +../../data/yoloGtold1/train/70046.png +../../data/yoloGtold1/train/70047.png +../../data/yoloGtold1/train/70048.png +../../data/yoloGtold1/train/70049.png +../../data/yoloGtold1/train/70050.png +../../data/yoloGtold1/train/70051.png +../../data/yoloGtold1/train/70052.png +../../data/yoloGtold1/train/70053.png +../../data/yoloGtold1/train/70054.png +../../data/yoloGtold1/train/70055.png +../../data/yoloGtold1/train/70056.png +../../data/yoloGtold1/train/70057.png +../../data/yoloGtold1/train/70058.png +../../data/yoloGtold1/train/70059.png +../../data/yoloGtold1/train/70060.png +../../data/yoloGtold1/train/70061.png +../../data/yoloGtold1/train/70062.png +../../data/yoloGtold1/train/70063.png +../../data/yoloGtold1/train/70064.png +../../data/yoloGtold1/train/70065.png +../../data/yoloGtold1/train/70066.png +../../data/yoloGtold1/train/70067.png +../../data/yoloGtold1/train/70068.png +../../data/yoloGtold1/train/70069.png +../../data/yoloGtold1/train/70070.png +../../data/yoloGtold1/train/70071.png +../../data/yoloGtold1/train/70072.png +../../data/yoloGtold1/train/70073.png +../../data/yoloGtold1/train/70074.png +../../data/yoloGtold1/train/70075.png +../../data/yoloGtold1/train/70076.png +../../data/yoloGtold1/train/70077.png +../../data/yoloGtold1/train/70078.png +../../data/yoloGtold1/train/70079.png +../../data/yoloGtold1/train/70080.png +../../data/yoloGtold1/train/70081.png +../../data/yoloGtold1/train/70082.png +../../data/yoloGtold1/train/70083.png +../../data/yoloGtold1/train/70084.png +../../data/yoloGtold1/train/70085.png +../../data/yoloGtold1/train/70086.png +../../data/yoloGtold1/train/70087.png +../../data/yoloGtold1/train/70088.png +../../data/yoloGtold1/train/70089.png +../../data/yoloGtold1/train/70090.png +../../data/yoloGtold1/train/70091.png +../../data/yoloGtold1/train/70092.png +../../data/yoloGtold1/train/70093.png +../../data/yoloGtold1/train/70094.png +../../data/yoloGtold1/train/70095.png +../../data/yoloGtold1/train/70096.png +../../data/yoloGtold1/train/70097.png +../../data/yoloGtold1/train/70098.png +../../data/yoloGtold1/train/70099.png +../../data/yoloGtold1/train/70100.png +../../data/yoloGtold1/train/70101.png +../../data/yoloGtold1/train/70102.png +../../data/yoloGtold1/train/70103.png +../../data/yoloGtold1/train/70104.png +../../data/yoloGtold1/train/70105.png +../../data/yoloGtold1/train/70106.png +../../data/yoloGtold1/train/70107.png +../../data/yoloGtold1/train/70108.png +../../data/yoloGtold1/train/70109.png +../../data/yoloGtold1/train/70110.png +../../data/yoloGtold1/train/70111.png +../../data/yoloGtold1/train/70112.png +../../data/yoloGtold1/train/70113.png +../../data/yoloGtold1/train/70114.png +../../data/yoloGtold1/train/70115.png +../../data/yoloGtold1/train/70116.png +../../data/yoloGtold1/train/70117.png +../../data/yoloGtold1/train/70118.png +../../data/yoloGtold1/train/70119.png +../../data/yoloGtold1/train/70120.png +../../data/yoloGtold1/train/70121.png +../../data/yoloGtold1/train/70122.png +../../data/yoloGtold1/train/70123.png +../../data/yoloGtold1/train/70124.png +../../data/yoloGtold1/train/70125.png +../../data/yoloGtold1/train/70126.png +../../data/yoloGtold1/train/70127.png +../../data/yoloGtold1/train/70128.png +../../data/yoloGtold1/train/70129.png +../../data/yoloGtold1/train/70130.png +../../data/yoloGtold1/train/70131.png +../../data/yoloGtold1/train/70132.png +../../data/yoloGtold1/train/70133.png +../../data/yoloGtold1/train/70134.png +../../data/yoloGtold1/train/70135.png +../../data/yoloGtold1/train/70136.png +../../data/yoloGtold1/train/70137.png +../../data/yoloGtold1/train/70138.png +../../data/yoloGtold1/train/70139.png +../../data/yoloGtold1/train/70140.png +../../data/yoloGtold1/train/70141.png +../../data/yoloGtold1/train/70142.png +../../data/yoloGtold1/train/70143.png +../../data/yoloGtold1/train/70144.png +../../data/yoloGtold1/train/70145.png +../../data/yoloGtold1/train/70146.png +../../data/yoloGtold1/train/70147.png +../../data/yoloGtold1/train/70148.png +../../data/yoloGtold1/train/70149.png +../../data/yoloGtold1/train/70150.png +../../data/yoloGtold1/train/70151.png +../../data/yoloGtold1/train/70152.png +../../data/yoloGtold1/train/70153.png +../../data/yoloGtold1/train/70154.png +../../data/yoloGtold1/train/70155.png +../../data/yoloGtold1/train/70156.png +../../data/yoloGtold1/train/70157.png +../../data/yoloGtold1/train/70158.png +../../data/yoloGtold1/train/70159.png +../../data/yoloGtold1/train/70160.png +../../data/yoloGtold1/train/70161.png +../../data/yoloGtold1/train/70162.png +../../data/yoloGtold1/train/70163.png +../../data/yoloGtold1/train/70164.png +../../data/yoloGtold1/train/70165.png +../../data/yoloGtold1/train/70166.png +../../data/yoloGtold1/train/70167.png +../../data/yoloGtold1/train/70168.png +../../data/yoloGtold1/train/70169.png +../../data/yoloGtold1/train/70170.png +../../data/yoloGtold1/train/70171.png +../../data/yoloGtold1/train/70172.png +../../data/yoloGtold1/train/70173.png +../../data/yoloGtold1/train/70174.png +../../data/yoloGtold1/train/70175.png +../../data/yoloGtold1/train/70176.png +../../data/yoloGtold1/train/70177.png +../../data/yoloGtold1/train/70178.png +../../data/yoloGtold1/train/70179.png +../../data/yoloGtold1/train/70180.png +../../data/yoloGtold1/train/70181.png +../../data/yoloGtold1/train/70182.png +../../data/yoloGtold1/train/70183.png +../../data/yoloGtold1/train/70184.png +../../data/yoloGtold1/train/70185.png +../../data/yoloGtold1/train/70186.png +../../data/yoloGtold1/train/70187.png +../../data/yoloGtold1/train/70188.png +../../data/yoloGtold1/train/70189.png +../../data/yoloGtold1/train/70190.png +../../data/yoloGtold1/train/70191.png +../../data/yoloGtold1/train/70192.png +../../data/yoloGtold1/train/70193.png +../../data/yoloGtold1/train/70194.png +../../data/yoloGtold1/train/70195.png +../../data/yoloGtold1/train/70196.png +../../data/yoloGtold1/train/70197.png +../../data/yoloGtold1/train/70198.png +../../data/yoloGtold1/train/70199.png +../../data/yoloGtold1/train/70200.png +../../data/yoloGtold1/train/70201.png +../../data/yoloGtold1/train/70202.png +../../data/yoloGtold1/train/70203.png +../../data/yoloGtold1/train/70204.png +../../data/yoloGtold1/train/70205.png +../../data/yoloGtold1/train/70206.png +../../data/yoloGtold1/train/70207.png +../../data/yoloGtold1/train/70208.png +../../data/yoloGtold1/train/70209.png +../../data/yoloGtold1/train/70210.png +../../data/yoloGtold1/train/70211.png +../../data/yoloGtold1/train/70212.png +../../data/yoloGtold1/train/70213.png +../../data/yoloGtold1/train/70214.png +../../data/yoloGtold1/train/70215.png +../../data/yoloGtold1/train/70216.png +../../data/yoloGtold1/train/70217.png +../../data/yoloGtold1/train/70218.png +../../data/yoloGtold1/train/70219.png +../../data/yoloGtold1/train/70220.png +../../data/yoloGtold1/train/70221.png +../../data/yoloGtold1/train/70222.png +../../data/yoloGtold1/train/70223.png +../../data/yoloGtold1/train/70224.png +../../data/yoloGtold1/train/70225.png +../../data/yoloGtold1/train/70226.png +../../data/yoloGtold1/train/70227.png +../../data/yoloGtold1/train/70228.png +../../data/yoloGtold1/train/70229.png +../../data/yoloGtold1/train/70230.png +../../data/yoloGtold1/train/70231.png +../../data/yoloGtold1/train/70232.png +../../data/yoloGtold1/train/70233.png +../../data/yoloGtold1/train/70234.png +../../data/yoloGtold1/train/70235.png +../../data/yoloGtold1/train/70236.png +../../data/yoloGtold1/train/70237.png +../../data/yoloGtold1/train/70238.png +../../data/yoloGtold1/train/70239.png +../../data/yoloGtold1/train/70240.png +../../data/yoloGtold1/train/70241.png +../../data/yoloGtold1/train/70242.png +../../data/yoloGtold1/train/70243.png +../../data/yoloGtold1/train/70244.png +../../data/yoloGtold1/train/70245.png +../../data/yoloGtold1/train/70246.png +../../data/yoloGtold1/train/70247.png +../../data/yoloGtold1/train/70248.png +../../data/yoloGtold1/train/70249.png +../../data/yoloGtold1/train/70250.png +../../data/yoloGtold1/train/70251.png +../../data/yoloGtold1/train/70252.png +../../data/yoloGtold1/train/70253.png +../../data/yoloGtold1/train/70254.png +../../data/yoloGtold1/train/70255.png +../../data/yoloGtold1/train/70256.png +../../data/yoloGtold1/train/70257.png +../../data/yoloGtold1/train/70258.png +../../data/yoloGtold1/train/70259.png +../../data/yoloGtold1/train/70260.png +../../data/yoloGtold1/train/70261.png +../../data/yoloGtold1/train/70262.png +../../data/yoloGtold1/train/70263.png +../../data/yoloGtold1/train/70264.png +../../data/yoloGtold1/train/70265.png +../../data/yoloGtold1/train/70266.png +../../data/yoloGtold1/train/70267.png +../../data/yoloGtold1/train/70268.png +../../data/yoloGtold1/train/70269.png +../../data/yoloGtold1/train/70270.png +../../data/yoloGtold1/train/70271.png +../../data/yoloGtold1/train/70272.png +../../data/yoloGtold1/train/70273.png +../../data/yoloGtold1/train/70274.png +../../data/yoloGtold1/train/70275.png +../../data/yoloGtold1/train/70276.png +../../data/yoloGtold1/train/70277.png +../../data/yoloGtold1/train/70278.png +../../data/yoloGtold1/train/70279.png +../../data/yoloGtold1/train/70280.png +../../data/yoloGtold1/train/70281.png +../../data/yoloGtold1/train/70282.png +../../data/yoloGtold1/train/70283.png +../../data/yoloGtold1/train/70284.png +../../data/yoloGtold1/train/70285.png +../../data/yoloGtold1/train/70286.png +../../data/yoloGtold1/train/70287.png +../../data/yoloGtold1/train/70288.png +../../data/yoloGtold1/train/70289.png +../../data/yoloGtold1/train/70290.png +../../data/yoloGtold1/train/70291.png +../../data/yoloGtold1/train/70292.png +../../data/yoloGtold1/train/70293.png +../../data/yoloGtold1/train/70294.png +../../data/yoloGtold1/train/70295.png +../../data/yoloGtold1/train/70296.png +../../data/yoloGtold1/train/70297.png +../../data/yoloGtold1/train/70298.png +../../data/yoloGtold1/train/70299.png +../../data/yoloGtold1/train/70300.png +../../data/yoloGtold1/train/70301.png +../../data/yoloGtold1/train/70302.png +../../data/yoloGtold1/train/70303.png +../../data/yoloGtold1/train/70304.png +../../data/yoloGtold1/train/70305.png +../../data/yoloGtold1/train/70306.png +../../data/yoloGtold1/train/70307.png +../../data/yoloGtold1/train/70308.png +../../data/yoloGtold1/train/70309.png +../../data/yoloGtold1/train/70310.png +../../data/yoloGtold1/train/70311.png +../../data/yoloGtold1/train/70312.png +../../data/yoloGtold1/train/70313.png +../../data/yoloGtold1/train/70314.png +../../data/yoloGtold1/train/70315.png +../../data/yoloGtold1/train/70316.png +../../data/yoloGtold1/train/70317.png +../../data/yoloGtold1/train/70318.png +../../data/yoloGtold1/train/70319.png +../../data/yoloGtold1/train/70320.png +../../data/yoloGtold1/train/70321.png +../../data/yoloGtold1/train/70322.png +../../data/yoloGtold1/train/70323.png +../../data/yoloGtold1/train/70324.png +../../data/yoloGtold1/train/70325.png +../../data/yoloGtold1/train/70326.png +../../data/yoloGtold1/train/70327.png +../../data/yoloGtold1/train/70328.png +../../data/yoloGtold1/train/70329.png +../../data/yoloGtold1/train/70330.png +../../data/yoloGtold1/train/70331.png +../../data/yoloGtold1/train/70332.png +../../data/yoloGtold1/train/70333.png +../../data/yoloGtold1/train/70334.png +../../data/yoloGtold1/train/70335.png +../../data/yoloGtold1/train/70336.png +../../data/yoloGtold1/train/70337.png +../../data/yoloGtold1/train/70338.png +../../data/yoloGtold1/train/70339.png +../../data/yoloGtold1/train/70340.png +../../data/yoloGtold1/train/70341.png +../../data/yoloGtold1/train/70342.png +../../data/yoloGtold1/train/70343.png +../../data/yoloGtold1/train/70344.png +../../data/yoloGtold1/train/70345.png +../../data/yoloGtold1/train/70346.png +../../data/yoloGtold1/train/70347.png +../../data/yoloGtold1/train/70348.png +../../data/yoloGtold1/train/70349.png +../../data/yoloGtold1/train/70350.png +../../data/yoloGtold1/train/70351.png +../../data/yoloGtold1/train/70352.png +../../data/yoloGtold1/train/70353.png +../../data/yoloGtold1/train/70354.png +../../data/yoloGtold1/train/70355.png +../../data/yoloGtold1/train/70356.png +../../data/yoloGtold1/train/70357.png +../../data/yoloGtold1/train/70358.png +../../data/yoloGtold1/train/70359.png +../../data/yoloGtold1/train/70360.png +../../data/yoloGtold1/train/70361.png +../../data/yoloGtold1/train/70362.png +../../data/yoloGtold1/train/70363.png +../../data/yoloGtold1/train/70364.png +../../data/yoloGtold1/train/70365.png +../../data/yoloGtold1/train/70366.png +../../data/yoloGtold1/train/70367.png +../../data/yoloGtold1/train/70368.png +../../data/yoloGtold1/train/70369.png +../../data/yoloGtold1/train/70370.png +../../data/yoloGtold1/train/70371.png +../../data/yoloGtold1/train/70372.png +../../data/yoloGtold1/train/70373.png +../../data/yoloGtold1/train/70374.png +../../data/yoloGtold1/train/70375.png +../../data/yoloGtold1/train/70376.png +../../data/yoloGtold1/train/70377.png +../../data/yoloGtold1/train/70378.png +../../data/yoloGtold1/train/70379.png +../../data/yoloGtold1/train/70380.png +../../data/yoloGtold1/train/70381.png +../../data/yoloGtold1/train/70382.png +../../data/yoloGtold1/train/70383.png +../../data/yoloGtold1/train/70384.png +../../data/yoloGtold1/train/70385.png +../../data/yoloGtold1/train/70386.png +../../data/yoloGtold1/train/70387.png +../../data/yoloGtold1/train/70388.png +../../data/yoloGtold1/train/70389.png +../../data/yoloGtold1/train/70390.png +../../data/yoloGtold1/train/70391.png +../../data/yoloGtold1/train/70392.png +../../data/yoloGtold1/train/70393.png +../../data/yoloGtold1/train/70394.png +../../data/yoloGtold1/train/70395.png +../../data/yoloGtold1/train/70396.png +../../data/yoloGtold1/train/70397.png +../../data/yoloGtold1/train/70398.png +../../data/yoloGtold1/train/70399.png +../../data/yoloGtold1/train/70400.png +../../data/yoloGtold1/train/70401.png +../../data/yoloGtold1/train/70402.png +../../data/yoloGtold1/train/70403.png +../../data/yoloGtold1/train/70404.png +../../data/yoloGtold1/train/70405.png +../../data/yoloGtold1/train/70406.png +../../data/yoloGtold1/train/70407.png +../../data/yoloGtold1/train/70408.png +../../data/yoloGtold1/train/70409.png +../../data/yoloGtold1/train/70410.png +../../data/yoloGtold1/train/70411.png +../../data/yoloGtold1/train/70412.png +../../data/yoloGtold1/train/70413.png +../../data/yoloGtold1/train/70414.png +../../data/yoloGtold1/train/70415.png +../../data/yoloGtold1/train/70416.png +../../data/yoloGtold1/train/70417.png +../../data/yoloGtold1/train/70418.png +../../data/yoloGtold1/train/70419.png +../../data/yoloGtold1/train/70420.png +../../data/yoloGtold1/train/70421.png +../../data/yoloGtold1/train/70422.png +../../data/yoloGtold1/train/70423.png +../../data/yoloGtold1/train/70424.png +../../data/yoloGtold1/train/70425.png +../../data/yoloGtold1/train/70426.png +../../data/yoloGtold1/train/70427.png +../../data/yoloGtold1/train/70428.png +../../data/yoloGtold1/train/70429.png +../../data/yoloGtold1/train/70430.png +../../data/yoloGtold1/train/70431.png +../../data/yoloGtold1/train/70432.png +../../data/yoloGtold1/train/70433.png +../../data/yoloGtold1/train/70434.png +../../data/yoloGtold1/train/70435.png +../../data/yoloGtold1/train/70436.png +../../data/yoloGtold1/train/70437.png +../../data/yoloGtold1/train/70438.png +../../data/yoloGtold1/train/70439.png +../../data/yoloGtold1/train/70440.png +../../data/yoloGtold1/train/70441.png +../../data/yoloGtold1/train/70442.png +../../data/yoloGtold1/train/70443.png +../../data/yoloGtold1/train/70444.png +../../data/yoloGtold1/train/70445.png +../../data/yoloGtold1/train/70446.png +../../data/yoloGtold1/train/70447.png +../../data/yoloGtold1/train/70448.png +../../data/yoloGtold1/train/70449.png +../../data/yoloGtold1/train/70450.png +../../data/yoloGtold1/train/70451.png +../../data/yoloGtold1/train/70452.png +../../data/yoloGtold1/train/70453.png +../../data/yoloGtold1/train/70454.png +../../data/yoloGtold1/train/70455.png +../../data/yoloGtold1/train/70456.png +../../data/yoloGtold1/train/70457.png +../../data/yoloGtold1/train/70458.png +../../data/yoloGtold1/train/70459.png +../../data/yoloGtold1/train/70460.png +../../data/yoloGtold1/train/70461.png +../../data/yoloGtold1/train/70462.png +../../data/yoloGtold1/train/70463.png +../../data/yoloGtold1/train/70464.png +../../data/yoloGtold1/train/70465.png +../../data/yoloGtold1/train/70466.png +../../data/yoloGtold1/train/70467.png +../../data/yoloGtold1/train/70468.png +../../data/yoloGtold1/train/70469.png +../../data/yoloGtold1/train/70470.png +../../data/yoloGtold1/train/70471.png +../../data/yoloGtold1/train/70472.png +../../data/yoloGtold1/train/70473.png +../../data/yoloGtold1/train/70474.png +../../data/yoloGtold1/train/70475.png +../../data/yoloGtold1/train/70476.png +../../data/yoloGtold1/train/70477.png +../../data/yoloGtold1/train/70478.png +../../data/yoloGtold1/train/70479.png +../../data/yoloGtold1/train/70480.png +../../data/yoloGtold1/train/70481.png +../../data/yoloGtold1/train/70482.png +../../data/yoloGtold1/train/70483.png +../../data/yoloGtold1/train/70484.png +../../data/yoloGtold1/train/70485.png +../../data/yoloGtold1/train/70486.png +../../data/yoloGtold1/train/70487.png +../../data/yoloGtold1/train/70488.png +../../data/yoloGtold1/train/70489.png +../../data/yoloGtold1/train/70490.png +../../data/yoloGtold1/train/70491.png +../../data/yoloGtold1/train/70492.png +../../data/yoloGtold1/train/70493.png +../../data/yoloGtold1/train/70494.png +../../data/yoloGtold1/train/70495.png +../../data/yoloGtold1/train/70496.png +../../data/yoloGtold1/train/70497.png +../../data/yoloGtold1/train/70498.png +../../data/yoloGtold1/train/70499.png +../../data/yoloGtold1/train/70500.png +../../data/yoloGtold1/train/70501.png +../../data/yoloGtold1/train/70502.png +../../data/yoloGtold1/train/70503.png +../../data/yoloGtold1/train/70504.png +../../data/yoloGtold1/train/70505.png +../../data/yoloGtold1/train/70506.png +../../data/yoloGtold1/train/70507.png +../../data/yoloGtold1/train/70508.png +../../data/yoloGtold1/train/70509.png +../../data/yoloGtold1/train/70510.png +../../data/yoloGtold1/train/70511.png +../../data/yoloGtold1/train/70512.png +../../data/yoloGtold1/train/70513.png +../../data/yoloGtold1/train/70514.png +../../data/yoloGtold1/train/70515.png +../../data/yoloGtold1/train/70516.png +../../data/yoloGtold1/train/70517.png +../../data/yoloGtold1/train/70518.png +../../data/yoloGtold1/train/70519.png +../../data/yoloGtold1/train/70520.png +../../data/yoloGtold1/train/70521.png +../../data/yoloGtold1/train/70522.png +../../data/yoloGtold1/train/70523.png +../../data/yoloGtold1/train/70524.png +../../data/yoloGtold1/train/70525.png +../../data/yoloGtold1/train/70526.png +../../data/yoloGtold1/train/70527.png +../../data/yoloGtold1/train/70528.png +../../data/yoloGtold1/train/70529.png +../../data/yoloGtold1/train/70530.png +../../data/yoloGtold1/train/70531.png +../../data/yoloGtold1/train/70532.png +../../data/yoloGtold1/train/70533.png +../../data/yoloGtold1/train/70534.png +../../data/yoloGtold1/train/70535.png +../../data/yoloGtold1/train/70536.png +../../data/yoloGtold1/train/70537.png +../../data/yoloGtold1/train/70538.png +../../data/yoloGtold1/train/70539.png +../../data/yoloGtold1/train/70540.png +../../data/yoloGtold1/train/70541.png +../../data/yoloGtold1/train/70542.png +../../data/yoloGtold1/train/70543.png +../../data/yoloGtold1/train/70544.png +../../data/yoloGtold1/train/70545.png +../../data/yoloGtold1/train/70546.png +../../data/yoloGtold1/train/70547.png +../../data/yoloGtold1/train/70548.png +../../data/yoloGtold1/train/70549.png +../../data/yoloGtold1/train/70550.png +../../data/yoloGtold1/train/70551.png +../../data/yoloGtold1/train/70552.png +../../data/yoloGtold1/train/70553.png +../../data/yoloGtold1/train/70554.png +../../data/yoloGtold1/train/70555.png +../../data/yoloGtold1/train/70556.png +../../data/yoloGtold1/train/70557.png +../../data/yoloGtold1/train/70558.png +../../data/yoloGtold1/train/70559.png +../../data/yoloGtold1/train/70560.png +../../data/yoloGtold1/train/70561.png +../../data/yoloGtold1/train/70562.png +../../data/yoloGtold1/train/70563.png +../../data/yoloGtold1/train/70564.png +../../data/yoloGtold1/train/70565.png +../../data/yoloGtold1/train/70566.png +../../data/yoloGtold1/train/70567.png +../../data/yoloGtold1/train/70568.png +../../data/yoloGtold1/train/70569.png +../../data/yoloGtold1/train/70570.png +../../data/yoloGtold1/train/70571.png +../../data/yoloGtold1/train/70572.png +../../data/yoloGtold1/train/70573.png +../../data/yoloGtold1/train/70574.png +../../data/yoloGtold1/train/70575.png +../../data/yoloGtold1/train/70576.png +../../data/yoloGtold1/train/70577.png +../../data/yoloGtold1/train/70578.png +../../data/yoloGtold1/train/70579.png +../../data/yoloGtold1/train/70580.png +../../data/yoloGtold1/train/70581.png +../../data/yoloGtold1/train/70582.png +../../data/yoloGtold1/train/70583.png +../../data/yoloGtold1/train/70584.png +../../data/yoloGtold1/train/70585.png +../../data/yoloGtold1/train/70586.png +../../data/yoloGtold1/train/70587.png +../../data/yoloGtold1/train/70588.png +../../data/yoloGtold1/train/70589.png +../../data/yoloGtold1/train/70590.png +../../data/yoloGtold1/train/70591.png +../../data/yoloGtold1/train/70592.png +../../data/yoloGtold1/train/70593.png +../../data/yoloGtold1/train/70594.png +../../data/yoloGtold1/train/70595.png +../../data/yoloGtold1/train/70596.png +../../data/yoloGtold1/train/70597.png +../../data/yoloGtold1/train/70598.png +../../data/yoloGtold1/train/70599.png +../../data/yoloGtold1/train/70600.png +../../data/yoloGtold1/train/70601.png +../../data/yoloGtold1/train/70602.png +../../data/yoloGtold1/train/70603.png +../../data/yoloGtold1/train/70604.png +../../data/yoloGtold1/train/70605.png +../../data/yoloGtold1/train/70606.png +../../data/yoloGtold1/train/70607.png +../../data/yoloGtold1/train/70608.png +../../data/yoloGtold1/train/70609.png +../../data/yoloGtold1/train/70610.png +../../data/yoloGtold1/train/70611.png +../../data/yoloGtold1/train/70612.png +../../data/yoloGtold1/train/70613.png +../../data/yoloGtold1/train/70614.png +../../data/yoloGtold1/train/70615.png +../../data/yoloGtold1/train/70616.png +../../data/yoloGtold1/train/70617.png +../../data/yoloGtold1/train/70618.png +../../data/yoloGtold1/train/70619.png +../../data/yoloGtold1/train/70620.png +../../data/yoloGtold1/train/70621.png +../../data/yoloGtold1/train/70622.png +../../data/yoloGtold1/train/70623.png +../../data/yoloGtold1/train/70624.png +../../data/yoloGtold1/train/70625.png +../../data/yoloGtold1/train/70626.png +../../data/yoloGtold1/train/70627.png +../../data/yoloGtold1/train/70628.png +../../data/yoloGtold1/train/70629.png +../../data/yoloGtold1/train/70630.png +../../data/yoloGtold1/train/70631.png +../../data/yoloGtold1/train/70632.png +../../data/yoloGtold1/train/70633.png +../../data/yoloGtold1/train/70634.png +../../data/yoloGtold1/train/70635.png +../../data/yoloGtold1/train/70636.png +../../data/yoloGtold1/train/70637.png +../../data/yoloGtold1/train/70638.png +../../data/yoloGtold1/train/70639.png +../../data/yoloGtold1/train/70640.png +../../data/yoloGtold1/train/70641.png +../../data/yoloGtold1/train/70642.png +../../data/yoloGtold1/train/70643.png +../../data/yoloGtold1/train/70644.png +../../data/yoloGtold1/train/70645.png +../../data/yoloGtold1/train/70646.png +../../data/yoloGtold1/train/70647.png +../../data/yoloGtold1/train/70648.png +../../data/yoloGtold1/train/70649.png +../../data/yoloGtold1/train/70650.png +../../data/yoloGtold1/train/70651.png +../../data/yoloGtold1/train/70652.png +../../data/yoloGtold1/train/70653.png +../../data/yoloGtold1/train/70654.png +../../data/yoloGtold1/train/70655.png +../../data/yoloGtold1/train/70656.png +../../data/yoloGtold1/train/70657.png +../../data/yoloGtold1/train/70658.png +../../data/yoloGtold1/train/70659.png +../../data/yoloGtold1/train/70660.png +../../data/yoloGtold1/train/70661.png +../../data/yoloGtold1/train/70662.png +../../data/yoloGtold1/train/70663.png +../../data/yoloGtold1/train/70664.png +../../data/yoloGtold1/train/70665.png +../../data/yoloGtold1/train/70666.png +../../data/yoloGtold1/train/70667.png +../../data/yoloGtold1/train/70668.png +../../data/yoloGtold1/train/70669.png +../../data/yoloGtold1/train/70670.png +../../data/yoloGtold1/train/70671.png +../../data/yoloGtold1/train/70672.png +../../data/yoloGtold1/train/70673.png +../../data/yoloGtold1/train/70674.png +../../data/yoloGtold1/train/70675.png +../../data/yoloGtold1/train/70676.png +../../data/yoloGtold1/train/70677.png +../../data/yoloGtold1/train/70678.png +../../data/yoloGtold1/train/70679.png +../../data/yoloGtold1/train/70680.png +../../data/yoloGtold1/train/70681.png +../../data/yoloGtold1/train/70682.png +../../data/yoloGtold1/train/70683.png +../../data/yoloGtold1/train/70684.png +../../data/yoloGtold1/train/70685.png +../../data/yoloGtold1/train/70686.png +../../data/yoloGtold1/train/70687.png +../../data/yoloGtold1/train/70688.png +../../data/yoloGtold1/train/70689.png +../../data/yoloGtold1/train/70690.png +../../data/yoloGtold1/train/70691.png +../../data/yoloGtold1/train/70692.png +../../data/yoloGtold1/train/70693.png +../../data/yoloGtold1/train/70694.png +../../data/yoloGtold1/train/70695.png +../../data/yoloGtold1/train/70696.png +../../data/yoloGtold1/train/70697.png +../../data/yoloGtold1/train/70698.png +../../data/yoloGtold1/train/70699.png +../../data/yoloGtold1/train/70700.png +../../data/yoloGtold1/train/70701.png +../../data/yoloGtold1/train/70702.png +../../data/yoloGtold1/train/70703.png +../../data/yoloGtold1/train/70704.png +../../data/yoloGtold1/train/70705.png +../../data/yoloGtold1/train/70706.png +../../data/yoloGtold1/train/70707.png +../../data/yoloGtold1/train/70708.png +../../data/yoloGtold1/train/70709.png +../../data/yoloGtold1/train/70710.png +../../data/yoloGtold1/train/70711.png +../../data/yoloGtold1/train/70712.png +../../data/yoloGtold1/train/70713.png +../../data/yoloGtold1/train/70714.png +../../data/yoloGtold1/train/70715.png +../../data/yoloGtold1/train/70716.png +../../data/yoloGtold1/train/70717.png +../../data/yoloGtold1/train/70718.png +../../data/yoloGtold1/train/70719.png +../../data/yoloGtold1/train/70720.png +../../data/yoloGtold1/train/70721.png +../../data/yoloGtold1/train/70722.png +../../data/yoloGtold1/train/70723.png +../../data/yoloGtold1/train/70724.png +../../data/yoloGtold1/train/70725.png +../../data/yoloGtold1/train/70726.png +../../data/yoloGtold1/train/70727.png +../../data/yoloGtold1/train/70728.png +../../data/yoloGtold1/train/70729.png +../../data/yoloGtold1/train/70730.png +../../data/yoloGtold1/train/70731.png +../../data/yoloGtold1/train/70732.png +../../data/yoloGtold1/train/70733.png +../../data/yoloGtold1/train/70734.png +../../data/yoloGtold1/train/70735.png +../../data/yoloGtold1/train/70736.png +../../data/yoloGtold1/train/70737.png +../../data/yoloGtold1/train/70738.png +../../data/yoloGtold1/train/70739.png +../../data/yoloGtold1/train/70740.png +../../data/yoloGtold1/train/70741.png +../../data/yoloGtold1/train/70742.png +../../data/yoloGtold1/train/70743.png +../../data/yoloGtold1/train/70744.png +../../data/yoloGtold1/train/70745.png +../../data/yoloGtold1/train/70746.png +../../data/yoloGtold1/train/70747.png +../../data/yoloGtold1/train/70748.png +../../data/yoloGtold1/train/70749.png +../../data/yoloGtold1/train/70750.png +../../data/yoloGtold1/train/70751.png +../../data/yoloGtold1/train/70752.png +../../data/yoloGtold1/train/70753.png +../../data/yoloGtold1/train/70754.png +../../data/yoloGtold1/train/70755.png +../../data/yoloGtold1/train/70756.png +../../data/yoloGtold1/train/70757.png +../../data/yoloGtold1/train/70758.png +../../data/yoloGtold1/train/70759.png +../../data/yoloGtold1/train/70760.png +../../data/yoloGtold1/train/70761.png +../../data/yoloGtold1/train/70762.png +../../data/yoloGtold1/train/70763.png +../../data/yoloGtold1/train/70764.png +../../data/yoloGtold1/train/70765.png +../../data/yoloGtold1/train/70766.png +../../data/yoloGtold1/train/70767.png +../../data/yoloGtold1/train/70768.png +../../data/yoloGtold1/train/70769.png +../../data/yoloGtold1/train/70770.png +../../data/yoloGtold1/train/70771.png +../../data/yoloGtold1/train/70772.png +../../data/yoloGtold1/train/70773.png +../../data/yoloGtold1/train/70774.png +../../data/yoloGtold1/train/70775.png +../../data/yoloGtold1/train/70776.png +../../data/yoloGtold1/train/70777.png +../../data/yoloGtold1/train/70778.png +../../data/yoloGtold1/train/70779.png +../../data/yoloGtold1/train/70780.png +../../data/yoloGtold1/train/70781.png +../../data/yoloGtold1/train/70782.png +../../data/yoloGtold1/train/70783.png +../../data/yoloGtold1/train/70784.png +../../data/yoloGtold1/train/70785.png +../../data/yoloGtold1/train/70786.png +../../data/yoloGtold1/train/70787.png +../../data/yoloGtold1/train/70788.png +../../data/yoloGtold1/train/70789.png +../../data/yoloGtold1/train/70790.png +../../data/yoloGtold1/train/70791.png +../../data/yoloGtold1/train/70792.png +../../data/yoloGtold1/train/70793.png +../../data/yoloGtold1/train/70794.png +../../data/yoloGtold1/train/70795.png +../../data/yoloGtold1/train/70796.png +../../data/yoloGtold1/train/70797.png +../../data/yoloGtold1/train/70798.png +../../data/yoloGtold1/train/70799.png +../../data/yoloGtold1/train/70800.png +../../data/yoloGtold1/train/70801.png +../../data/yoloGtold1/train/70802.png +../../data/yoloGtold1/train/70803.png +../../data/yoloGtold1/train/70804.png +../../data/yoloGtold1/train/70805.png +../../data/yoloGtold1/train/70806.png +../../data/yoloGtold1/train/70807.png +../../data/yoloGtold1/train/70808.png +../../data/yoloGtold1/train/70809.png +../../data/yoloGtold1/train/70810.png +../../data/yoloGtold1/train/70811.png +../../data/yoloGtold1/train/70812.png +../../data/yoloGtold1/train/70813.png +../../data/yoloGtold1/train/70814.png +../../data/yoloGtold1/train/70815.png +../../data/yoloGtold1/train/70816.png +../../data/yoloGtold1/train/70817.png +../../data/yoloGtold1/train/70818.png +../../data/yoloGtold1/train/70819.png +../../data/yoloGtold1/train/70820.png +../../data/yoloGtold1/train/70821.png +../../data/yoloGtold1/train/70822.png +../../data/yoloGtold1/train/70823.png +../../data/yoloGtold1/train/70824.png +../../data/yoloGtold1/train/70825.png +../../data/yoloGtold1/train/70826.png +../../data/yoloGtold1/train/70827.png +../../data/yoloGtold1/train/70828.png +../../data/yoloGtold1/train/70829.png +../../data/yoloGtold1/train/70830.png +../../data/yoloGtold1/train/70831.png +../../data/yoloGtold1/train/70832.png +../../data/yoloGtold1/train/70833.png +../../data/yoloGtold1/train/70834.png +../../data/yoloGtold1/train/70835.png +../../data/yoloGtold1/train/70836.png +../../data/yoloGtold1/train/70837.png +../../data/yoloGtold1/train/70838.png +../../data/yoloGtold1/train/70839.png +../../data/yoloGtold1/train/70840.png +../../data/yoloGtold1/train/70841.png +../../data/yoloGtold1/train/70842.png +../../data/yoloGtold1/train/70843.png +../../data/yoloGtold1/train/70844.png +../../data/yoloGtold1/train/70845.png +../../data/yoloGtold1/train/70846.png +../../data/yoloGtold1/train/70847.png +../../data/yoloGtold1/train/70848.png +../../data/yoloGtold1/train/70849.png +../../data/yoloGtold1/train/70850.png +../../data/yoloGtold1/train/70851.png +../../data/yoloGtold1/train/70852.png +../../data/yoloGtold1/train/70853.png +../../data/yoloGtold1/train/70854.png +../../data/yoloGtold1/train/70855.png +../../data/yoloGtold1/train/70856.png +../../data/yoloGtold1/train/70857.png +../../data/yoloGtold1/train/70858.png +../../data/yoloGtold1/train/70859.png +../../data/yoloGtold1/train/70860.png +../../data/yoloGtold1/train/70861.png +../../data/yoloGtold1/train/70862.png +../../data/yoloGtold1/train/70863.png +../../data/yoloGtold1/train/70864.png +../../data/yoloGtold1/train/70865.png +../../data/yoloGtold1/train/70866.png +../../data/yoloGtold1/train/70867.png +../../data/yoloGtold1/train/70868.png +../../data/yoloGtold1/train/70869.png +../../data/yoloGtold1/train/70870.png +../../data/yoloGtold1/train/70871.png +../../data/yoloGtold1/train/70872.png +../../data/yoloGtold1/train/70873.png +../../data/yoloGtold1/train/70874.png +../../data/yoloGtold1/train/70875.png +../../data/yoloGtold1/train/70876.png +../../data/yoloGtold1/train/70877.png +../../data/yoloGtold1/train/70878.png +../../data/yoloGtold1/train/70879.png +../../data/yoloGtold1/train/70880.png +../../data/yoloGtold1/train/70881.png +../../data/yoloGtold1/train/70882.png +../../data/yoloGtold1/train/70883.png +../../data/yoloGtold1/train/70884.png +../../data/yoloGtold1/train/70885.png +../../data/yoloGtold1/train/70886.png +../../data/yoloGtold1/train/70887.png +../../data/yoloGtold1/train/70888.png +../../data/yoloGtold1/train/70889.png +../../data/yoloGtold1/train/70890.png +../../data/yoloGtold1/train/70891.png +../../data/yoloGtold1/train/70892.png +../../data/yoloGtold1/train/70893.png +../../data/yoloGtold1/train/70894.png +../../data/yoloGtold1/train/70895.png +../../data/yoloGtold1/train/70896.png +../../data/yoloGtold1/train/70897.png +../../data/yoloGtold1/train/70898.png +../../data/yoloGtold1/train/70899.png +../../data/yoloGtold1/train/70900.png +../../data/yoloGtold1/train/70901.png +../../data/yoloGtold1/train/70902.png +../../data/yoloGtold1/train/70903.png +../../data/yoloGtold1/train/70904.png +../../data/yoloGtold1/train/70905.png +../../data/yoloGtold1/train/70906.png +../../data/yoloGtold1/train/70907.png +../../data/yoloGtold1/train/70908.png +../../data/yoloGtold1/train/70909.png +../../data/yoloGtold1/train/70910.png +../../data/yoloGtold1/train/70911.png +../../data/yoloGtold1/train/70912.png +../../data/yoloGtold1/train/70913.png +../../data/yoloGtold1/train/70914.png +../../data/yoloGtold1/train/70915.png +../../data/yoloGtold1/train/70916.png +../../data/yoloGtold1/train/70917.png +../../data/yoloGtold1/train/70918.png +../../data/yoloGtold1/train/70919.png +../../data/yoloGtold1/train/70920.png +../../data/yoloGtold1/train/70921.png +../../data/yoloGtold1/train/70922.png +../../data/yoloGtold1/train/70923.png +../../data/yoloGtold1/train/70924.png +../../data/yoloGtold1/train/70925.png +../../data/yoloGtold1/train/70926.png +../../data/yoloGtold1/train/70927.png +../../data/yoloGtold1/train/70928.png +../../data/yoloGtold1/train/70929.png +../../data/yoloGtold1/train/70930.png +../../data/yoloGtold1/train/70931.png +../../data/yoloGtold1/train/70932.png +../../data/yoloGtold1/train/70933.png +../../data/yoloGtold1/train/70934.png +../../data/yoloGtold1/train/70935.png +../../data/yoloGtold1/train/70936.png +../../data/yoloGtold1/train/70937.png +../../data/yoloGtold1/train/70938.png +../../data/yoloGtold1/train/70939.png +../../data/yoloGtold1/train/70940.png +../../data/yoloGtold1/train/70941.png +../../data/yoloGtold1/train/70942.png +../../data/yoloGtold1/train/70943.png +../../data/yoloGtold1/train/70944.png +../../data/yoloGtold1/train/70945.png +../../data/yoloGtold1/train/70946.png +../../data/yoloGtold1/train/70947.png +../../data/yoloGtold1/train/70948.png +../../data/yoloGtold1/train/70949.png +../../data/yoloGtold1/train/70950.png +../../data/yoloGtold1/train/70951.png +../../data/yoloGtold1/train/70952.png +../../data/yoloGtold1/train/70953.png +../../data/yoloGtold1/train/70954.png +../../data/yoloGtold1/train/70955.png +../../data/yoloGtold1/train/70956.png +../../data/yoloGtold1/train/70957.png +../../data/yoloGtold1/train/70958.png +../../data/yoloGtold1/train/70959.png +../../data/yoloGtold1/train/70960.png +../../data/yoloGtold1/train/70961.png +../../data/yoloGtold1/train/70962.png +../../data/yoloGtold1/train/70963.png +../../data/yoloGtold1/train/70964.png +../../data/yoloGtold1/train/70965.png +../../data/yoloGtold1/train/70966.png +../../data/yoloGtold1/train/70967.png +../../data/yoloGtold1/train/70968.png +../../data/yoloGtold1/train/70969.png +../../data/yoloGtold1/train/70970.png +../../data/yoloGtold1/train/70971.png +../../data/yoloGtold1/train/70972.png +../../data/yoloGtold1/train/70973.png +../../data/yoloGtold1/train/70974.png +../../data/yoloGtold1/train/70975.png +../../data/yoloGtold1/train/70976.png +../../data/yoloGtold1/train/70977.png +../../data/yoloGtold1/train/70978.png +../../data/yoloGtold1/train/70979.png +../../data/yoloGtold1/train/70980.png +../../data/yoloGtold1/train/70981.png +../../data/yoloGtold1/train/70982.png +../../data/yoloGtold1/train/70983.png +../../data/yoloGtold1/train/70984.png +../../data/yoloGtold1/train/70985.png +../../data/yoloGtold1/train/70986.png +../../data/yoloGtold1/train/70987.png +../../data/yoloGtold1/train/70988.png +../../data/yoloGtold1/train/70989.png +../../data/yoloGtold1/train/70990.png +../../data/yoloGtold1/train/70991.png +../../data/yoloGtold1/train/70992.png +../../data/yoloGtold1/train/70993.png +../../data/yoloGtold1/train/70994.png +../../data/yoloGtold1/train/70995.png +../../data/yoloGtold1/train/70996.png +../../data/yoloGtold1/train/70997.png +../../data/yoloGtold1/train/70998.png +../../data/yoloGtold1/train/70999.png +../../data/yoloGtold1/train/71000.png +../../data/yoloGtold1/train/71001.png +../../data/yoloGtold1/train/71002.png +../../data/yoloGtold1/train/71003.png +../../data/yoloGtold1/train/71004.png +../../data/yoloGtold1/train/71005.png +../../data/yoloGtold1/train/71006.png +../../data/yoloGtold1/train/71007.png +../../data/yoloGtold1/train/71008.png +../../data/yoloGtold1/train/71009.png +../../data/yoloGtold1/train/71010.png +../../data/yoloGtold1/train/71011.png +../../data/yoloGtold1/train/71012.png +../../data/yoloGtold1/train/71013.png +../../data/yoloGtold1/train/71014.png +../../data/yoloGtold1/train/71015.png +../../data/yoloGtold1/train/71016.png +../../data/yoloGtold1/train/71017.png +../../data/yoloGtold1/train/71018.png +../../data/yoloGtold1/train/71019.png +../../data/yoloGtold1/train/71020.png +../../data/yoloGtold1/train/71021.png +../../data/yoloGtold1/train/71022.png +../../data/yoloGtold1/train/71023.png +../../data/yoloGtold1/train/71024.png +../../data/yoloGtold1/train/71025.png +../../data/yoloGtold1/train/71026.png +../../data/yoloGtold1/train/71027.png +../../data/yoloGtold1/train/71028.png +../../data/yoloGtold1/train/71029.png +../../data/yoloGtold1/train/71030.png +../../data/yoloGtold1/train/71031.png +../../data/yoloGtold1/train/71032.png +../../data/yoloGtold1/train/71033.png +../../data/yoloGtold1/train/71034.png +../../data/yoloGtold1/train/71035.png +../../data/yoloGtold1/train/71036.png +../../data/yoloGtold1/train/71037.png +../../data/yoloGtold1/train/71038.png +../../data/yoloGtold1/train/71039.png +../../data/yoloGtold1/train/71040.png +../../data/yoloGtold1/train/71041.png +../../data/yoloGtold1/train/71042.png +../../data/yoloGtold1/train/71043.png +../../data/yoloGtold1/train/71044.png +../../data/yoloGtold1/train/71045.png +../../data/yoloGtold1/train/71046.png +../../data/yoloGtold1/train/71047.png +../../data/yoloGtold1/train/71048.png +../../data/yoloGtold1/train/71049.png +../../data/yoloGtold1/train/71050.png +../../data/yoloGtold1/train/71051.png +../../data/yoloGtold1/train/71052.png +../../data/yoloGtold1/train/71053.png +../../data/yoloGtold1/train/71054.png +../../data/yoloGtold1/train/71055.png +../../data/yoloGtold1/train/71056.png +../../data/yoloGtold1/train/71057.png +../../data/yoloGtold1/train/71058.png +../../data/yoloGtold1/train/71059.png +../../data/yoloGtold1/train/71060.png +../../data/yoloGtold1/train/71061.png +../../data/yoloGtold1/train/71062.png +../../data/yoloGtold1/train/71063.png +../../data/yoloGtold1/train/71064.png +../../data/yoloGtold1/train/71065.png +../../data/yoloGtold1/train/71066.png +../../data/yoloGtold1/train/71067.png +../../data/yoloGtold1/train/71068.png +../../data/yoloGtold1/train/71069.png +../../data/yoloGtold1/train/71070.png +../../data/yoloGtold1/train/71071.png +../../data/yoloGtold1/train/71072.png +../../data/yoloGtold1/train/71073.png +../../data/yoloGtold1/train/71074.png +../../data/yoloGtold1/train/71075.png +../../data/yoloGtold1/train/71076.png +../../data/yoloGtold1/train/71077.png +../../data/yoloGtold1/train/71078.png +../../data/yoloGtold1/train/71079.png +../../data/yoloGtold1/train/71080.png +../../data/yoloGtold1/train/71081.png +../../data/yoloGtold1/train/71082.png +../../data/yoloGtold1/train/71083.png +../../data/yoloGtold1/train/71084.png +../../data/yoloGtold1/train/71085.png +../../data/yoloGtold1/train/71086.png +../../data/yoloGtold1/train/71087.png +../../data/yoloGtold1/train/71088.png +../../data/yoloGtold1/train/71089.png +../../data/yoloGtold1/train/71090.png +../../data/yoloGtold1/train/71091.png +../../data/yoloGtold1/train/71092.png +../../data/yoloGtold1/train/71093.png +../../data/yoloGtold1/train/71094.png +../../data/yoloGtold1/train/71095.png +../../data/yoloGtold1/train/71096.png +../../data/yoloGtold1/train/71097.png +../../data/yoloGtold1/train/71098.png +../../data/yoloGtold1/train/71099.png +../../data/yoloGtold1/train/71100.png +../../data/yoloGtold1/train/71101.png +../../data/yoloGtold1/train/71102.png +../../data/yoloGtold1/train/71103.png +../../data/yoloGtold1/train/71104.png +../../data/yoloGtold1/train/71105.png +../../data/yoloGtold1/train/71106.png +../../data/yoloGtold1/train/71107.png +../../data/yoloGtold1/train/71108.png +../../data/yoloGtold1/train/71109.png +../../data/yoloGtold1/train/71110.png +../../data/yoloGtold1/train/71111.png +../../data/yoloGtold1/train/71112.png +../../data/yoloGtold1/train/71113.png +../../data/yoloGtold1/train/71114.png +../../data/yoloGtold1/train/71115.png +../../data/yoloGtold1/train/71116.png +../../data/yoloGtold1/train/71117.png +../../data/yoloGtold1/train/71118.png +../../data/yoloGtold1/train/71119.png +../../data/yoloGtold1/train/71120.png +../../data/yoloGtold1/train/71121.png +../../data/yoloGtold1/train/71122.png +../../data/yoloGtold1/train/71123.png +../../data/yoloGtold1/train/71124.png +../../data/yoloGtold1/train/71125.png +../../data/yoloGtold1/train/71126.png +../../data/yoloGtold1/train/71127.png +../../data/yoloGtold1/train/71128.png +../../data/yoloGtold1/train/71129.png +../../data/yoloGtold1/train/71130.png +../../data/yoloGtold1/train/71131.png +../../data/yoloGtold1/train/71132.png +../../data/yoloGtold1/train/71133.png +../../data/yoloGtold1/train/71134.png +../../data/yoloGtold1/train/71135.png +../../data/yoloGtold1/train/71136.png +../../data/yoloGtold1/train/71137.png +../../data/yoloGtold1/train/71138.png +../../data/yoloGtold1/train/71139.png +../../data/yoloGtold1/train/71140.png +../../data/yoloGtold1/train/71141.png +../../data/yoloGtold1/train/71142.png +../../data/yoloGtold1/train/71143.png +../../data/yoloGtold1/train/71144.png +../../data/yoloGtold1/train/71145.png +../../data/yoloGtold1/train/71146.png +../../data/yoloGtold1/train/71147.png +../../data/yoloGtold1/train/71148.png +../../data/yoloGtold1/train/71149.png +../../data/yoloGtold1/train/71150.png +../../data/yoloGtold1/train/71151.png +../../data/yoloGtold1/train/71152.png +../../data/yoloGtold1/train/71153.png +../../data/yoloGtold1/train/71154.png +../../data/yoloGtold1/train/71155.png +../../data/yoloGtold1/train/71156.png +../../data/yoloGtold1/train/71157.png +../../data/yoloGtold1/train/71158.png +../../data/yoloGtold1/train/71159.png +../../data/yoloGtold1/train/71160.png +../../data/yoloGtold1/train/71161.png +../../data/yoloGtold1/train/71162.png +../../data/yoloGtold1/train/71163.png +../../data/yoloGtold1/train/71164.png +../../data/yoloGtold1/train/71165.png +../../data/yoloGtold1/train/71166.png +../../data/yoloGtold1/train/71167.png +../../data/yoloGtold1/train/71168.png +../../data/yoloGtold1/train/71169.png +../../data/yoloGtold1/train/71170.png +../../data/yoloGtold1/train/71171.png +../../data/yoloGtold1/train/71172.png +../../data/yoloGtold1/train/71173.png +../../data/yoloGtold1/train/71174.png +../../data/yoloGtold1/train/71175.png +../../data/yoloGtold1/train/71176.png +../../data/yoloGtold1/train/71177.png +../../data/yoloGtold1/train/71178.png +../../data/yoloGtold1/train/71179.png +../../data/yoloGtold1/train/71180.png +../../data/yoloGtold1/train/71181.png +../../data/yoloGtold1/train/71182.png +../../data/yoloGtold1/train/71183.png +../../data/yoloGtold1/train/71184.png +../../data/yoloGtold1/train/71185.png +../../data/yoloGtold1/train/71186.png +../../data/yoloGtold1/train/71187.png +../../data/yoloGtold1/train/71188.png +../../data/yoloGtold1/train/71189.png +../../data/yoloGtold1/train/71190.png +../../data/yoloGtold1/train/71191.png +../../data/yoloGtold1/train/71192.png +../../data/yoloGtold1/train/71193.png +../../data/yoloGtold1/train/71194.png +../../data/yoloGtold1/train/71195.png +../../data/yoloGtold1/train/71196.png +../../data/yoloGtold1/train/71197.png +../../data/yoloGtold1/train/71198.png +../../data/yoloGtold1/train/71199.png +../../data/yoloGtold1/train/71200.png +../../data/yoloGtold1/train/71201.png +../../data/yoloGtold1/train/71202.png +../../data/yoloGtold1/train/71203.png +../../data/yoloGtold1/train/71204.png +../../data/yoloGtold1/train/71205.png +../../data/yoloGtold1/train/71206.png +../../data/yoloGtold1/train/71207.png +../../data/yoloGtold1/train/71208.png +../../data/yoloGtold1/train/71209.png +../../data/yoloGtold1/train/71210.png +../../data/yoloGtold1/train/71211.png +../../data/yoloGtold1/train/71212.png +../../data/yoloGtold1/train/71213.png +../../data/yoloGtold1/train/71214.png +../../data/yoloGtold1/train/71215.png +../../data/yoloGtold1/train/71216.png +../../data/yoloGtold1/train/71217.png +../../data/yoloGtold1/train/71218.png +../../data/yoloGtold1/train/71219.png +../../data/yoloGtold1/train/71220.png +../../data/yoloGtold1/train/71221.png +../../data/yoloGtold1/train/71222.png +../../data/yoloGtold1/train/71223.png +../../data/yoloGtold1/train/71224.png +../../data/yoloGtold1/train/71225.png +../../data/yoloGtold1/train/71226.png +../../data/yoloGtold1/train/71227.png +../../data/yoloGtold1/train/71228.png +../../data/yoloGtold1/train/71229.png +../../data/yoloGtold1/train/71230.png +../../data/yoloGtold1/train/71231.png +../../data/yoloGtold1/train/71232.png +../../data/yoloGtold1/train/71233.png +../../data/yoloGtold1/train/71234.png +../../data/yoloGtold1/train/71235.png +../../data/yoloGtold1/train/71236.png +../../data/yoloGtold1/train/71237.png +../../data/yoloGtold1/train/71238.png +../../data/yoloGtold1/train/71239.png +../../data/yoloGtold1/train/71240.png +../../data/yoloGtold1/train/71241.png +../../data/yoloGtold1/train/71242.png +../../data/yoloGtold1/train/71243.png +../../data/yoloGtold1/train/71244.png +../../data/yoloGtold1/train/71245.png +../../data/yoloGtold1/train/71246.png +../../data/yoloGtold1/train/71247.png +../../data/yoloGtold1/train/71248.png +../../data/yoloGtold1/train/71249.png +../../data/yoloGtold1/train/71250.png +../../data/yoloGtold1/train/71251.png +../../data/yoloGtold1/train/71252.png +../../data/yoloGtold1/train/71253.png +../../data/yoloGtold1/train/71254.png +../../data/yoloGtold1/train/71255.png +../../data/yoloGtold1/train/71256.png +../../data/yoloGtold1/train/71257.png +../../data/yoloGtold1/train/71258.png +../../data/yoloGtold1/train/71259.png +../../data/yoloGtold1/train/71260.png +../../data/yoloGtold1/train/71261.png +../../data/yoloGtold1/train/71262.png +../../data/yoloGtold1/train/71263.png +../../data/yoloGtold1/train/71264.png +../../data/yoloGtold1/train/71265.png +../../data/yoloGtold1/train/71266.png +../../data/yoloGtold1/train/71267.png +../../data/yoloGtold1/train/71268.png +../../data/yoloGtold1/train/71269.png +../../data/yoloGtold1/train/71270.png +../../data/yoloGtold1/train/71271.png +../../data/yoloGtold1/train/71272.png +../../data/yoloGtold1/train/71273.png +../../data/yoloGtold1/train/71274.png +../../data/yoloGtold1/train/71275.png +../../data/yoloGtold1/train/71276.png +../../data/yoloGtold1/train/71277.png +../../data/yoloGtold1/train/71278.png +../../data/yoloGtold1/train/71279.png +../../data/yoloGtold1/train/71280.png +../../data/yoloGtold1/train/71281.png +../../data/yoloGtold1/train/71282.png +../../data/yoloGtold1/train/71283.png +../../data/yoloGtold1/train/71284.png +../../data/yoloGtold1/train/71285.png +../../data/yoloGtold1/train/71286.png +../../data/yoloGtold1/train/71287.png +../../data/yoloGtold1/train/71288.png +../../data/yoloGtold1/train/71289.png +../../data/yoloGtold1/train/71290.png +../../data/yoloGtold1/train/71291.png +../../data/yoloGtold1/train/71292.png +../../data/yoloGtold1/train/71293.png +../../data/yoloGtold1/train/71294.png +../../data/yoloGtold1/train/71295.png +../../data/yoloGtold1/train/71296.png +../../data/yoloGtold1/train/71297.png +../../data/yoloGtold1/train/71298.png +../../data/yoloGtold1/train/71299.png +../../data/yoloGtold1/train/71300.png +../../data/yoloGtold1/train/71301.png +../../data/yoloGtold1/train/71302.png +../../data/yoloGtold1/train/71303.png +../../data/yoloGtold1/train/71304.png +../../data/yoloGtold1/train/71305.png +../../data/yoloGtold1/train/71306.png +../../data/yoloGtold1/train/71307.png +../../data/yoloGtold1/train/71308.png +../../data/yoloGtold1/train/71309.png +../../data/yoloGtold1/train/71310.png +../../data/yoloGtold1/train/71311.png +../../data/yoloGtold1/train/71312.png +../../data/yoloGtold1/train/71313.png +../../data/yoloGtold1/train/71314.png +../../data/yoloGtold1/train/71315.png +../../data/yoloGtold1/train/71316.png +../../data/yoloGtold1/train/71317.png +../../data/yoloGtold1/train/71318.png +../../data/yoloGtold1/train/71319.png +../../data/yoloGtold1/train/71320.png +../../data/yoloGtold1/train/71321.png +../../data/yoloGtold1/train/71322.png +../../data/yoloGtold1/train/71323.png +../../data/yoloGtold1/train/71324.png +../../data/yoloGtold1/train/71325.png +../../data/yoloGtold1/train/71326.png +../../data/yoloGtold1/train/71327.png +../../data/yoloGtold1/train/71328.png +../../data/yoloGtold1/train/71329.png +../../data/yoloGtold1/train/71330.png +../../data/yoloGtold1/train/71331.png +../../data/yoloGtold1/train/71332.png +../../data/yoloGtold1/train/71333.png +../../data/yoloGtold1/train/71334.png +../../data/yoloGtold1/train/71335.png +../../data/yoloGtold1/train/71336.png +../../data/yoloGtold1/train/71337.png +../../data/yoloGtold1/train/71338.png +../../data/yoloGtold1/train/71339.png +../../data/yoloGtold1/train/71340.png +../../data/yoloGtold1/train/71341.png +../../data/yoloGtold1/train/71342.png +../../data/yoloGtold1/train/71343.png +../../data/yoloGtold1/train/71344.png +../../data/yoloGtold1/train/71345.png +../../data/yoloGtold1/train/71346.png +../../data/yoloGtold1/train/71347.png +../../data/yoloGtold1/train/71348.png +../../data/yoloGtold1/train/71349.png +../../data/yoloGtold1/train/71350.png +../../data/yoloGtold1/train/71351.png +../../data/yoloGtold1/train/71352.png +../../data/yoloGtold1/train/71353.png +../../data/yoloGtold1/train/71354.png +../../data/yoloGtold1/train/71355.png +../../data/yoloGtold1/train/71356.png +../../data/yoloGtold1/train/71357.png +../../data/yoloGtold1/train/71358.png +../../data/yoloGtold1/train/71359.png +../../data/yoloGtold1/train/71360.png +../../data/yoloGtold1/train/71361.png +../../data/yoloGtold1/train/71362.png +../../data/yoloGtold1/train/71363.png +../../data/yoloGtold1/train/71364.png +../../data/yoloGtold1/train/71365.png +../../data/yoloGtold1/train/71366.png +../../data/yoloGtold1/train/71367.png +../../data/yoloGtold1/train/71368.png +../../data/yoloGtold1/train/71369.png +../../data/yoloGtold1/train/71370.png +../../data/yoloGtold1/train/71371.png +../../data/yoloGtold1/train/71372.png +../../data/yoloGtold1/train/71373.png +../../data/yoloGtold1/train/71374.png +../../data/yoloGtold1/train/71375.png +../../data/yoloGtold1/train/71376.png +../../data/yoloGtold1/train/71377.png +../../data/yoloGtold1/train/71378.png +../../data/yoloGtold1/train/71379.png +../../data/yoloGtold1/train/71380.png +../../data/yoloGtold1/train/71381.png +../../data/yoloGtold1/train/71382.png +../../data/yoloGtold1/train/71383.png +../../data/yoloGtold1/train/71384.png +../../data/yoloGtold1/train/71385.png +../../data/yoloGtold1/train/71386.png +../../data/yoloGtold1/train/71387.png +../../data/yoloGtold1/train/71388.png +../../data/yoloGtold1/train/71389.png +../../data/yoloGtold1/train/71390.png +../../data/yoloGtold1/train/71391.png +../../data/yoloGtold1/train/71392.png +../../data/yoloGtold1/train/71393.png +../../data/yoloGtold1/train/71394.png +../../data/yoloGtold1/train/71395.png +../../data/yoloGtold1/train/71396.png +../../data/yoloGtold1/train/71397.png +../../data/yoloGtold1/train/71398.png +../../data/yoloGtold1/train/71399.png +../../data/yoloGtold1/train/71400.png +../../data/yoloGtold1/train/71401.png +../../data/yoloGtold1/train/71402.png +../../data/yoloGtold1/train/71403.png +../../data/yoloGtold1/train/71404.png +../../data/yoloGtold1/train/71405.png +../../data/yoloGtold1/train/71406.png +../../data/yoloGtold1/train/71407.png +../../data/yoloGtold1/train/71408.png +../../data/yoloGtold1/train/71409.png +../../data/yoloGtold1/train/71410.png +../../data/yoloGtold1/train/71411.png +../../data/yoloGtold1/train/71412.png +../../data/yoloGtold1/train/71413.png +../../data/yoloGtold1/train/71414.png +../../data/yoloGtold1/train/71415.png +../../data/yoloGtold1/train/71416.png +../../data/yoloGtold1/train/71417.png +../../data/yoloGtold1/train/71418.png +../../data/yoloGtold1/train/71419.png +../../data/yoloGtold1/train/71420.png +../../data/yoloGtold1/train/71421.png +../../data/yoloGtold1/train/71422.png +../../data/yoloGtold1/train/71423.png +../../data/yoloGtold1/train/71424.png +../../data/yoloGtold1/train/71425.png +../../data/yoloGtold1/train/71426.png +../../data/yoloGtold1/train/71427.png +../../data/yoloGtold1/train/71428.png +../../data/yoloGtold1/train/71429.png +../../data/yoloGtold1/train/71430.png +../../data/yoloGtold1/train/71431.png +../../data/yoloGtold1/train/71432.png +../../data/yoloGtold1/train/71433.png +../../data/yoloGtold1/train/71434.png +../../data/yoloGtold1/train/71435.png +../../data/yoloGtold1/train/71436.png +../../data/yoloGtold1/train/71437.png +../../data/yoloGtold1/train/71438.png +../../data/yoloGtold1/train/71439.png +../../data/yoloGtold1/train/71440.png +../../data/yoloGtold1/train/71441.png +../../data/yoloGtold1/train/71442.png +../../data/yoloGtold1/train/71443.png +../../data/yoloGtold1/train/71444.png +../../data/yoloGtold1/train/71445.png +../../data/yoloGtold1/train/71446.png +../../data/yoloGtold1/train/71447.png +../../data/yoloGtold1/train/71448.png +../../data/yoloGtold1/train/71449.png +../../data/yoloGtold1/train/71450.png +../../data/yoloGtold1/train/71451.png +../../data/yoloGtold1/train/71452.png +../../data/yoloGtold1/train/71453.png +../../data/yoloGtold1/train/71454.png +../../data/yoloGtold1/train/71455.png +../../data/yoloGtold1/train/71456.png +../../data/yoloGtold1/train/71457.png +../../data/yoloGtold1/train/71458.png +../../data/yoloGtold1/train/71459.png +../../data/yoloGtold1/train/71460.png +../../data/yoloGtold1/train/71461.png +../../data/yoloGtold1/train/71462.png +../../data/yoloGtold1/train/71463.png +../../data/yoloGtold1/train/71464.png +../../data/yoloGtold1/train/71465.png +../../data/yoloGtold1/train/71466.png +../../data/yoloGtold1/train/71467.png +../../data/yoloGtold1/train/71468.png +../../data/yoloGtold1/train/71469.png +../../data/yoloGtold1/train/71470.png +../../data/yoloGtold1/train/71471.png +../../data/yoloGtold1/train/71472.png +../../data/yoloGtold1/train/71473.png +../../data/yoloGtold1/train/71474.png +../../data/yoloGtold1/train/71475.png +../../data/yoloGtold1/train/71476.png +../../data/yoloGtold1/train/71477.png +../../data/yoloGtold1/train/71478.png +../../data/yoloGtold1/train/71479.png +../../data/yoloGtold1/train/71480.png +../../data/yoloGtold1/train/71481.png +../../data/yoloGtold1/train/71482.png +../../data/yoloGtold1/train/71483.png +../../data/yoloGtold1/train/71484.png +../../data/yoloGtold1/train/71485.png +../../data/yoloGtold1/train/71486.png +../../data/yoloGtold1/train/71487.png +../../data/yoloGtold1/train/71488.png +../../data/yoloGtold1/train/71489.png +../../data/yoloGtold1/train/71490.png +../../data/yoloGtold1/train/71491.png +../../data/yoloGtold1/train/71492.png +../../data/yoloGtold1/train/71493.png +../../data/yoloGtold1/train/71494.png +../../data/yoloGtold1/train/71495.png +../../data/yoloGtold1/train/71496.png +../../data/yoloGtold1/train/71497.png +../../data/yoloGtold1/train/71498.png +../../data/yoloGtold1/train/71499.png +../../data/yoloGtold1/train/71500.png +../../data/yoloGtold1/train/71501.png +../../data/yoloGtold1/train/71502.png +../../data/yoloGtold1/train/71503.png +../../data/yoloGtold1/train/71504.png +../../data/yoloGtold1/train/71505.png +../../data/yoloGtold1/train/71506.png +../../data/yoloGtold1/train/71507.png +../../data/yoloGtold1/train/71508.png +../../data/yoloGtold1/train/71509.png +../../data/yoloGtold1/train/71510.png +../../data/yoloGtold1/train/71511.png +../../data/yoloGtold1/train/71512.png +../../data/yoloGtold1/train/71513.png +../../data/yoloGtold1/train/71514.png +../../data/yoloGtold1/train/71515.png +../../data/yoloGtold1/train/71516.png +../../data/yoloGtold1/train/71517.png +../../data/yoloGtold1/train/71518.png +../../data/yoloGtold1/train/71519.png +../../data/yoloGtold1/train/71520.png +../../data/yoloGtold1/train/71521.png +../../data/yoloGtold1/train/71522.png +../../data/yoloGtold1/train/71523.png +../../data/yoloGtold1/train/71524.png +../../data/yoloGtold1/train/71525.png +../../data/yoloGtold1/train/71526.png +../../data/yoloGtold1/train/71527.png +../../data/yoloGtold1/train/71528.png +../../data/yoloGtold1/train/71529.png +../../data/yoloGtold1/train/71530.png +../../data/yoloGtold1/train/71531.png +../../data/yoloGtold1/train/71532.png +../../data/yoloGtold1/train/71533.png +../../data/yoloGtold1/train/71534.png +../../data/yoloGtold1/train/71535.png +../../data/yoloGtold1/train/71536.png +../../data/yoloGtold1/train/71537.png +../../data/yoloGtold1/train/71538.png +../../data/yoloGtold1/train/71539.png +../../data/yoloGtold1/train/71540.png +../../data/yoloGtold1/train/71541.png +../../data/yoloGtold1/train/71542.png +../../data/yoloGtold1/train/71543.png +../../data/yoloGtold1/train/71544.png +../../data/yoloGtold1/train/71545.png +../../data/yoloGtold1/train/71546.png +../../data/yoloGtold1/train/71547.png +../../data/yoloGtold1/train/71548.png +../../data/yoloGtold1/train/71549.png +../../data/yoloGtold1/train/71550.png +../../data/yoloGtold1/train/71551.png +../../data/yoloGtold1/train/71552.png +../../data/yoloGtold1/train/71553.png +../../data/yoloGtold1/train/71554.png +../../data/yoloGtold1/train/71555.png +../../data/yoloGtold1/train/71556.png +../../data/yoloGtold1/train/71557.png +../../data/yoloGtold1/train/71558.png +../../data/yoloGtold1/train/71559.png +../../data/yoloGtold1/train/71560.png +../../data/yoloGtold1/train/71561.png +../../data/yoloGtold1/train/71562.png +../../data/yoloGtold1/train/71563.png +../../data/yoloGtold1/train/71564.png +../../data/yoloGtold1/train/71565.png +../../data/yoloGtold1/train/71566.png +../../data/yoloGtold1/train/71567.png +../../data/yoloGtold1/train/71568.png +../../data/yoloGtold1/train/71569.png +../../data/yoloGtold1/train/71570.png +../../data/yoloGtold1/train/71571.png +../../data/yoloGtold1/train/71572.png +../../data/yoloGtold1/train/71573.png +../../data/yoloGtold1/train/71574.png +../../data/yoloGtold1/train/71575.png +../../data/yoloGtold1/train/71576.png +../../data/yoloGtold1/train/71577.png +../../data/yoloGtold1/train/71578.png +../../data/yoloGtold1/train/71579.png +../../data/yoloGtold1/train/71580.png +../../data/yoloGtold1/train/71581.png +../../data/yoloGtold1/train/71582.png +../../data/yoloGtold1/train/71583.png +../../data/yoloGtold1/train/71584.png +../../data/yoloGtold1/train/71585.png +../../data/yoloGtold1/train/71586.png +../../data/yoloGtold1/train/71587.png +../../data/yoloGtold1/train/71588.png +../../data/yoloGtold1/train/71589.png +../../data/yoloGtold1/train/71590.png +../../data/yoloGtold1/train/71591.png +../../data/yoloGtold1/train/71592.png +../../data/yoloGtold1/train/71593.png +../../data/yoloGtold1/train/71594.png +../../data/yoloGtold1/train/71595.png +../../data/yoloGtold1/train/71596.png +../../data/yoloGtold1/train/71597.png +../../data/yoloGtold1/train/71598.png +../../data/yoloGtold1/train/71599.png +../../data/yoloGtold1/train/71600.png +../../data/yoloGtold1/train/71601.png +../../data/yoloGtold1/train/71602.png +../../data/yoloGtold1/train/71603.png +../../data/yoloGtold1/train/71604.png +../../data/yoloGtold1/train/71605.png +../../data/yoloGtold1/train/71606.png +../../data/yoloGtold1/train/71607.png +../../data/yoloGtold1/train/71608.png +../../data/yoloGtold1/train/71609.png +../../data/yoloGtold1/train/71610.png +../../data/yoloGtold1/train/71611.png +../../data/yoloGtold1/train/71612.png +../../data/yoloGtold1/train/71613.png +../../data/yoloGtold1/train/71614.png +../../data/yoloGtold1/train/71615.png +../../data/yoloGtold1/train/71616.png +../../data/yoloGtold1/train/71617.png +../../data/yoloGtold1/train/71618.png +../../data/yoloGtold1/train/71619.png +../../data/yoloGtold1/train/71620.png +../../data/yoloGtold1/train/71621.png +../../data/yoloGtold1/train/71622.png +../../data/yoloGtold1/train/71623.png +../../data/yoloGtold1/train/71624.png +../../data/yoloGtold1/train/71625.png +../../data/yoloGtold1/train/71626.png +../../data/yoloGtold1/train/71627.png +../../data/yoloGtold1/train/71628.png +../../data/yoloGtold1/train/71629.png +../../data/yoloGtold1/train/71630.png +../../data/yoloGtold1/train/71631.png +../../data/yoloGtold1/train/71632.png +../../data/yoloGtold1/train/71633.png +../../data/yoloGtold1/train/71634.png +../../data/yoloGtold1/train/71635.png +../../data/yoloGtold1/train/71636.png +../../data/yoloGtold1/train/71637.png +../../data/yoloGtold1/train/71638.png +../../data/yoloGtold1/train/71639.png +../../data/yoloGtold1/train/71640.png +../../data/yoloGtold1/train/71641.png +../../data/yoloGtold1/train/71642.png +../../data/yoloGtold1/train/71643.png +../../data/yoloGtold1/train/71644.png +../../data/yoloGtold1/train/71645.png +../../data/yoloGtold1/train/71646.png +../../data/yoloGtold1/train/71647.png +../../data/yoloGtold1/train/71648.png +../../data/yoloGtold1/train/71649.png +../../data/yoloGtold1/train/71650.png +../../data/yoloGtold1/train/71651.png +../../data/yoloGtold1/train/71652.png +../../data/yoloGtold1/train/71653.png +../../data/yoloGtold1/train/71654.png +../../data/yoloGtold1/train/71655.png +../../data/yoloGtold1/train/71656.png +../../data/yoloGtold1/train/71657.png +../../data/yoloGtold1/train/71658.png +../../data/yoloGtold1/train/71659.png +../../data/yoloGtold1/train/71660.png +../../data/yoloGtold1/train/71661.png +../../data/yoloGtold1/train/71662.png +../../data/yoloGtold1/train/71663.png +../../data/yoloGtold1/train/71664.png +../../data/yoloGtold1/train/71665.png +../../data/yoloGtold1/train/71666.png +../../data/yoloGtold1/train/71667.png +../../data/yoloGtold1/train/71668.png +../../data/yoloGtold1/train/71669.png +../../data/yoloGtold1/train/71670.png +../../data/yoloGtold1/train/71671.png +../../data/yoloGtold1/train/71672.png +../../data/yoloGtold1/train/71673.png +../../data/yoloGtold1/train/71674.png +../../data/yoloGtold1/train/71675.png +../../data/yoloGtold1/train/71676.png +../../data/yoloGtold1/train/71677.png +../../data/yoloGtold1/train/71678.png +../../data/yoloGtold1/train/71679.png +../../data/yoloGtold1/train/71680.png +../../data/yoloGtold1/train/71681.png +../../data/yoloGtold1/train/71682.png +../../data/yoloGtold1/train/71683.png +../../data/yoloGtold1/train/71684.png +../../data/yoloGtold1/train/71685.png +../../data/yoloGtold1/train/71686.png +../../data/yoloGtold1/train/71687.png +../../data/yoloGtold1/train/71688.png +../../data/yoloGtold1/train/71689.png +../../data/yoloGtold1/train/71690.png +../../data/yoloGtold1/train/71691.png +../../data/yoloGtold1/train/71692.png +../../data/yoloGtold1/train/71693.png +../../data/yoloGtold1/train/71694.png +../../data/yoloGtold1/train/71695.png +../../data/yoloGtold1/train/71696.png +../../data/yoloGtold1/train/71697.png +../../data/yoloGtold1/train/71698.png +../../data/yoloGtold1/train/71699.png +../../data/yoloGtold1/train/71700.png +../../data/yoloGtold1/train/71701.png +../../data/yoloGtold1/train/71702.png +../../data/yoloGtold1/train/71703.png +../../data/yoloGtold1/train/71704.png +../../data/yoloGtold1/train/71705.png +../../data/yoloGtold1/train/71706.png +../../data/yoloGtold1/train/71707.png +../../data/yoloGtold1/train/71708.png +../../data/yoloGtold1/train/71709.png +../../data/yoloGtold1/train/71710.png +../../data/yoloGtold1/train/71711.png +../../data/yoloGtold1/train/71712.png +../../data/yoloGtold1/train/71713.png +../../data/yoloGtold1/train/71714.png +../../data/yoloGtold1/train/71715.png +../../data/yoloGtold1/train/71716.png +../../data/yoloGtold1/train/71717.png +../../data/yoloGtold1/train/71718.png +../../data/yoloGtold1/train/71719.png +../../data/yoloGtold1/train/71720.png +../../data/yoloGtold1/train/71721.png +../../data/yoloGtold1/train/71722.png +../../data/yoloGtold1/train/71723.png +../../data/yoloGtold1/train/71724.png +../../data/yoloGtold1/train/71725.png +../../data/yoloGtold1/train/71726.png +../../data/yoloGtold1/train/71727.png +../../data/yoloGtold1/train/71728.png +../../data/yoloGtold1/train/71729.png +../../data/yoloGtold1/train/71730.png +../../data/yoloGtold1/train/71731.png +../../data/yoloGtold1/train/71732.png +../../data/yoloGtold1/train/71733.png +../../data/yoloGtold1/train/71734.png +../../data/yoloGtold1/train/71735.png +../../data/yoloGtold1/train/71736.png +../../data/yoloGtold1/train/71737.png +../../data/yoloGtold1/train/71738.png +../../data/yoloGtold1/train/71739.png +../../data/yoloGtold1/train/71740.png +../../data/yoloGtold1/train/71741.png +../../data/yoloGtold1/train/71742.png +../../data/yoloGtold1/train/71743.png +../../data/yoloGtold1/train/71744.png +../../data/yoloGtold1/train/71745.png +../../data/yoloGtold1/train/71746.png +../../data/yoloGtold1/train/71747.png +../../data/yoloGtold1/train/71748.png +../../data/yoloGtold1/train/71749.png +../../data/yoloGtold1/train/71750.png +../../data/yoloGtold1/train/71751.png +../../data/yoloGtold1/train/71752.png +../../data/yoloGtold1/train/71753.png +../../data/yoloGtold1/train/71754.png +../../data/yoloGtold1/train/71755.png +../../data/yoloGtold1/train/71756.png +../../data/yoloGtold1/train/71757.png +../../data/yoloGtold1/train/71758.png +../../data/yoloGtold1/train/71759.png +../../data/yoloGtold1/train/71760.png +../../data/yoloGtold1/train/71761.png +../../data/yoloGtold1/train/71762.png +../../data/yoloGtold1/train/71763.png +../../data/yoloGtold1/train/71764.png +../../data/yoloGtold1/train/71765.png +../../data/yoloGtold1/train/71766.png +../../data/yoloGtold1/train/71767.png +../../data/yoloGtold1/train/71768.png +../../data/yoloGtold1/train/71769.png +../../data/yoloGtold1/train/71770.png +../../data/yoloGtold1/train/71771.png +../../data/yoloGtold1/train/71772.png +../../data/yoloGtold1/train/71773.png +../../data/yoloGtold1/train/71774.png +../../data/yoloGtold1/train/71775.png +../../data/yoloGtold1/train/71776.png +../../data/yoloGtold1/train/71777.png +../../data/yoloGtold1/train/71778.png +../../data/yoloGtold1/train/71779.png +../../data/yoloGtold1/train/71780.png +../../data/yoloGtold1/train/71781.png +../../data/yoloGtold1/train/71782.png +../../data/yoloGtold1/train/71783.png +../../data/yoloGtold1/train/71784.png +../../data/yoloGtold1/train/71785.png +../../data/yoloGtold1/train/71786.png +../../data/yoloGtold1/train/71787.png +../../data/yoloGtold1/train/71788.png +../../data/yoloGtold1/train/71789.png +../../data/yoloGtold1/train/71790.png +../../data/yoloGtold1/train/71791.png +../../data/yoloGtold1/train/71792.png +../../data/yoloGtold1/train/71793.png +../../data/yoloGtold1/train/71794.png +../../data/yoloGtold1/train/71795.png +../../data/yoloGtold1/train/71796.png +../../data/yoloGtold1/train/71797.png +../../data/yoloGtold1/train/71798.png +../../data/yoloGtold1/train/71799.png +../../data/yoloGtold1/train/71800.png +../../data/yoloGtold1/train/71801.png +../../data/yoloGtold1/train/71802.png +../../data/yoloGtold1/train/71803.png +../../data/yoloGtold1/train/71804.png +../../data/yoloGtold1/train/71805.png +../../data/yoloGtold1/train/71806.png +../../data/yoloGtold1/train/71807.png +../../data/yoloGtold1/train/71808.png +../../data/yoloGtold1/train/71809.png +../../data/yoloGtold1/train/71810.png +../../data/yoloGtold1/train/71811.png +../../data/yoloGtold1/train/71812.png +../../data/yoloGtold1/train/71813.png +../../data/yoloGtold1/train/71814.png +../../data/yoloGtold1/train/71815.png +../../data/yoloGtold1/train/71816.png +../../data/yoloGtold1/train/71817.png +../../data/yoloGtold1/train/71818.png +../../data/yoloGtold1/train/71819.png +../../data/yoloGtold1/train/71820.png +../../data/yoloGtold1/train/71821.png +../../data/yoloGtold1/train/71822.png +../../data/yoloGtold1/train/71823.png +../../data/yoloGtold1/train/71824.png +../../data/yoloGtold1/train/71825.png +../../data/yoloGtold1/train/71826.png +../../data/yoloGtold1/train/71827.png +../../data/yoloGtold1/train/71828.png +../../data/yoloGtold1/train/71829.png +../../data/yoloGtold1/train/71830.png +../../data/yoloGtold1/train/71831.png +../../data/yoloGtold1/train/71832.png +../../data/yoloGtold1/train/71833.png +../../data/yoloGtold1/train/71834.png +../../data/yoloGtold1/train/71835.png +../../data/yoloGtold1/train/71836.png +../../data/yoloGtold1/train/71837.png +../../data/yoloGtold1/train/71838.png +../../data/yoloGtold1/train/71839.png +../../data/yoloGtold1/train/71840.png +../../data/yoloGtold1/train/71841.png +../../data/yoloGtold1/train/71842.png +../../data/yoloGtold1/train/71843.png +../../data/yoloGtold1/train/71844.png +../../data/yoloGtold1/train/71845.png +../../data/yoloGtold1/train/71846.png +../../data/yoloGtold1/train/71847.png +../../data/yoloGtold1/train/71848.png +../../data/yoloGtold1/train/71849.png +../../data/yoloGtold1/train/71850.png +../../data/yoloGtold1/train/71851.png +../../data/yoloGtold1/train/71852.png +../../data/yoloGtold1/train/71853.png +../../data/yoloGtold1/train/71854.png +../../data/yoloGtold1/train/71855.png +../../data/yoloGtold1/train/71856.png +../../data/yoloGtold1/train/71857.png +../../data/yoloGtold1/train/71858.png +../../data/yoloGtold1/train/71859.png +../../data/yoloGtold1/train/71860.png +../../data/yoloGtold1/train/71861.png +../../data/yoloGtold1/train/71862.png +../../data/yoloGtold1/train/71863.png +../../data/yoloGtold1/train/71864.png +../../data/yoloGtold1/train/71865.png +../../data/yoloGtold1/train/71866.png +../../data/yoloGtold1/train/71867.png +../../data/yoloGtold1/train/71868.png +../../data/yoloGtold1/train/71869.png +../../data/yoloGtold1/train/71870.png +../../data/yoloGtold1/train/71871.png +../../data/yoloGtold1/train/71872.png +../../data/yoloGtold1/train/71873.png +../../data/yoloGtold1/train/71874.png +../../data/yoloGtold1/train/71875.png +../../data/yoloGtold1/train/71876.png +../../data/yoloGtold1/train/71877.png +../../data/yoloGtold1/train/71878.png +../../data/yoloGtold1/train/71879.png +../../data/yoloGtold1/train/71880.png +../../data/yoloGtold1/train/71881.png +../../data/yoloGtold1/train/71882.png +../../data/yoloGtold1/train/71883.png +../../data/yoloGtold1/train/71884.png +../../data/yoloGtold1/train/71885.png +../../data/yoloGtold1/train/71886.png +../../data/yoloGtold1/train/71887.png +../../data/yoloGtold1/train/71888.png +../../data/yoloGtold1/train/71889.png +../../data/yoloGtold1/train/71890.png +../../data/yoloGtold1/train/71891.png +../../data/yoloGtold1/train/71892.png +../../data/yoloGtold1/train/71893.png +../../data/yoloGtold1/train/71894.png +../../data/yoloGtold1/train/71895.png +../../data/yoloGtold1/train/71896.png +../../data/yoloGtold1/train/71897.png +../../data/yoloGtold1/train/71898.png +../../data/yoloGtold1/train/71899.png +../../data/yoloGtold1/train/71900.png +../../data/yoloGtold1/train/71901.png +../../data/yoloGtold1/train/71902.png +../../data/yoloGtold1/train/71903.png +../../data/yoloGtold1/train/71904.png +../../data/yoloGtold1/train/71905.png +../../data/yoloGtold1/train/71906.png +../../data/yoloGtold1/train/71907.png +../../data/yoloGtold1/train/71908.png +../../data/yoloGtold1/train/71909.png +../../data/yoloGtold1/train/71910.png +../../data/yoloGtold1/train/71911.png +../../data/yoloGtold1/train/71912.png +../../data/yoloGtold1/train/71913.png +../../data/yoloGtold1/train/71914.png +../../data/yoloGtold1/train/71915.png +../../data/yoloGtold1/train/71916.png +../../data/yoloGtold1/train/71917.png +../../data/yoloGtold1/train/71918.png +../../data/yoloGtold1/train/71919.png +../../data/yoloGtold1/train/71920.png +../../data/yoloGtold1/train/71921.png +../../data/yoloGtold1/train/71922.png +../../data/yoloGtold1/train/71923.png +../../data/yoloGtold1/train/71924.png +../../data/yoloGtold1/train/71925.png +../../data/yoloGtold1/train/71926.png +../../data/yoloGtold1/train/71927.png +../../data/yoloGtold1/train/71928.png +../../data/yoloGtold1/train/71929.png +../../data/yoloGtold1/train/71930.png +../../data/yoloGtold1/train/71931.png +../../data/yoloGtold1/train/71932.png +../../data/yoloGtold1/train/71933.png +../../data/yoloGtold1/train/71934.png +../../data/yoloGtold1/train/71935.png +../../data/yoloGtold1/train/71936.png +../../data/yoloGtold1/train/71937.png +../../data/yoloGtold1/train/71938.png +../../data/yoloGtold1/train/71939.png +../../data/yoloGtold1/train/71940.png +../../data/yoloGtold1/train/71941.png +../../data/yoloGtold1/train/71942.png +../../data/yoloGtold1/train/71943.png +../../data/yoloGtold1/train/71944.png +../../data/yoloGtold1/train/71945.png +../../data/yoloGtold1/train/71946.png +../../data/yoloGtold1/train/71947.png +../../data/yoloGtold1/train/71948.png +../../data/yoloGtold1/train/71949.png +../../data/yoloGtold1/train/71950.png +../../data/yoloGtold1/train/71951.png +../../data/yoloGtold1/train/71952.png +../../data/yoloGtold1/train/71953.png +../../data/yoloGtold1/train/71954.png +../../data/yoloGtold1/train/71955.png +../../data/yoloGtold1/train/71956.png +../../data/yoloGtold1/train/71957.png +../../data/yoloGtold1/train/71958.png +../../data/yoloGtold1/train/71959.png +../../data/yoloGtold1/train/71960.png +../../data/yoloGtold1/train/71961.png +../../data/yoloGtold1/train/71962.png +../../data/yoloGtold1/train/71963.png +../../data/yoloGtold1/train/71964.png +../../data/yoloGtold1/train/71965.png +../../data/yoloGtold1/train/71966.png +../../data/yoloGtold1/train/71967.png +../../data/yoloGtold1/train/71968.png +../../data/yoloGtold1/train/71969.png +../../data/yoloGtold1/train/71970.png +../../data/yoloGtold1/train/71971.png +../../data/yoloGtold1/train/71972.png +../../data/yoloGtold1/train/71973.png +../../data/yoloGtold1/train/71974.png +../../data/yoloGtold1/train/71975.png +../../data/yoloGtold1/train/71976.png +../../data/yoloGtold1/train/71977.png +../../data/yoloGtold1/train/71978.png +../../data/yoloGtold1/train/71979.png +../../data/yoloGtold1/train/71980.png +../../data/yoloGtold1/train/71981.png +../../data/yoloGtold1/train/71982.png +../../data/yoloGtold1/train/71983.png +../../data/yoloGtold1/train/71984.png +../../data/yoloGtold1/train/71985.png +../../data/yoloGtold1/train/71986.png +../../data/yoloGtold1/train/71987.png +../../data/yoloGtold1/train/71988.png +../../data/yoloGtold1/train/71989.png +../../data/yoloGtold1/train/71990.png +../../data/yoloGtold1/train/71991.png +../../data/yoloGtold1/train/71992.png +../../data/yoloGtold1/train/71993.png +../../data/yoloGtold1/train/71994.png +../../data/yoloGtold1/train/71995.png +../../data/yoloGtold1/train/71996.png +../../data/yoloGtold1/train/71997.png +../../data/yoloGtold1/train/71998.png +../../data/yoloGtold1/train/71999.png +../../data/yoloGtold1/train/72000.png +../../data/yoloGtold1/train/72001.png +../../data/yoloGtold1/train/72002.png +../../data/yoloGtold1/train/72003.png +../../data/yoloGtold1/train/72004.png +../../data/yoloGtold1/train/72005.png +../../data/yoloGtold1/train/72006.png +../../data/yoloGtold1/train/72007.png +../../data/yoloGtold1/train/72008.png +../../data/yoloGtold1/train/72009.png +../../data/yoloGtold1/train/72010.png +../../data/yoloGtold1/train/72011.png +../../data/yoloGtold1/train/72012.png +../../data/yoloGtold1/train/72013.png +../../data/yoloGtold1/train/72014.png +../../data/yoloGtold1/train/72015.png +../../data/yoloGtold1/train/72016.png +../../data/yoloGtold1/train/72017.png +../../data/yoloGtold1/train/72018.png +../../data/yoloGtold1/train/72019.png +../../data/yoloGtold1/train/72020.png +../../data/yoloGtold1/train/72021.png +../../data/yoloGtold1/train/72022.png +../../data/yoloGtold1/train/72023.png +../../data/yoloGtold1/train/72024.png +../../data/yoloGtold1/train/72025.png +../../data/yoloGtold1/train/72026.png +../../data/yoloGtold1/train/72027.png +../../data/yoloGtold1/train/72028.png +../../data/yoloGtold1/train/72029.png +../../data/yoloGtold1/train/72030.png +../../data/yoloGtold1/train/72031.png +../../data/yoloGtold1/train/72032.png +../../data/yoloGtold1/train/72033.png +../../data/yoloGtold1/train/72034.png +../../data/yoloGtold1/train/72035.png +../../data/yoloGtold1/train/72036.png +../../data/yoloGtold1/train/72037.png +../../data/yoloGtold1/train/72038.png +../../data/yoloGtold1/train/72039.png +../../data/yoloGtold1/train/72040.png +../../data/yoloGtold1/train/72041.png +../../data/yoloGtold1/train/72042.png +../../data/yoloGtold1/train/72043.png +../../data/yoloGtold1/train/72044.png +../../data/yoloGtold1/train/72045.png +../../data/yoloGtold1/train/72046.png +../../data/yoloGtold1/train/72047.png +../../data/yoloGtold1/train/72048.png +../../data/yoloGtold1/train/72049.png +../../data/yoloGtold1/train/72050.png +../../data/yoloGtold1/train/72051.png +../../data/yoloGtold1/train/72052.png +../../data/yoloGtold1/train/72053.png +../../data/yoloGtold1/train/72054.png +../../data/yoloGtold1/train/72055.png +../../data/yoloGtold1/train/72056.png +../../data/yoloGtold1/train/72057.png +../../data/yoloGtold1/train/72058.png +../../data/yoloGtold1/train/72059.png +../../data/yoloGtold1/train/72060.png +../../data/yoloGtold1/train/72061.png +../../data/yoloGtold1/train/72062.png +../../data/yoloGtold1/train/72063.png +../../data/yoloGtold1/train/72064.png +../../data/yoloGtold1/train/72065.png +../../data/yoloGtold1/train/72066.png +../../data/yoloGtold1/train/72067.png +../../data/yoloGtold1/train/72068.png +../../data/yoloGtold1/train/72069.png +../../data/yoloGtold1/train/72070.png +../../data/yoloGtold1/train/72071.png +../../data/yoloGtold1/train/72072.png +../../data/yoloGtold1/train/72073.png +../../data/yoloGtold1/train/72074.png +../../data/yoloGtold1/train/72075.png +../../data/yoloGtold1/train/72076.png +../../data/yoloGtold1/train/72077.png +../../data/yoloGtold1/train/72078.png +../../data/yoloGtold1/train/72079.png +../../data/yoloGtold1/train/72080.png +../../data/yoloGtold1/train/72081.png +../../data/yoloGtold1/train/72082.png +../../data/yoloGtold1/train/72083.png +../../data/yoloGtold1/train/72084.png +../../data/yoloGtold1/train/72085.png +../../data/yoloGtold1/train/72086.png +../../data/yoloGtold1/train/72087.png +../../data/yoloGtold1/train/72088.png +../../data/yoloGtold1/train/72089.png +../../data/yoloGtold1/train/72090.png +../../data/yoloGtold1/train/72091.png +../../data/yoloGtold1/train/72092.png +../../data/yoloGtold1/train/72093.png +../../data/yoloGtold1/train/72094.png +../../data/yoloGtold1/train/72095.png +../../data/yoloGtold1/train/72096.png +../../data/yoloGtold1/train/72097.png +../../data/yoloGtold1/train/72098.png +../../data/yoloGtold1/train/72099.png +../../data/yoloGtold1/train/72100.png +../../data/yoloGtold1/train/72101.png +../../data/yoloGtold1/train/72102.png +../../data/yoloGtold1/train/72103.png +../../data/yoloGtold1/train/72104.png +../../data/yoloGtold1/train/72105.png +../../data/yoloGtold1/train/72106.png +../../data/yoloGtold1/train/72107.png +../../data/yoloGtold1/train/72108.png +../../data/yoloGtold1/train/72109.png +../../data/yoloGtold1/train/72110.png +../../data/yoloGtold1/train/72111.png +../../data/yoloGtold1/train/72112.png +../../data/yoloGtold1/train/72113.png +../../data/yoloGtold1/train/72114.png +../../data/yoloGtold1/train/72115.png +../../data/yoloGtold1/train/72116.png +../../data/yoloGtold1/train/72117.png +../../data/yoloGtold1/train/72118.png +../../data/yoloGtold1/train/72119.png +../../data/yoloGtold1/train/72120.png +../../data/yoloGtold1/train/72121.png +../../data/yoloGtold1/train/72122.png +../../data/yoloGtold1/train/72123.png +../../data/yoloGtold1/train/72124.png +../../data/yoloGtold1/train/72125.png +../../data/yoloGtold1/train/72126.png +../../data/yoloGtold1/train/72127.png +../../data/yoloGtold1/train/72128.png +../../data/yoloGtold1/train/72129.png +../../data/yoloGtold1/train/72130.png +../../data/yoloGtold1/train/72131.png +../../data/yoloGtold1/train/72132.png +../../data/yoloGtold1/train/72133.png +../../data/yoloGtold1/train/72134.png +../../data/yoloGtold1/train/72135.png +../../data/yoloGtold1/train/72136.png +../../data/yoloGtold1/train/72137.png +../../data/yoloGtold1/train/72138.png +../../data/yoloGtold1/train/72139.png +../../data/yoloGtold1/train/72140.png +../../data/yoloGtold1/train/72141.png +../../data/yoloGtold1/train/72142.png +../../data/yoloGtold1/train/72143.png +../../data/yoloGtold1/train/72144.png +../../data/yoloGtold1/train/72145.png +../../data/yoloGtold1/train/72146.png +../../data/yoloGtold1/train/72147.png +../../data/yoloGtold1/train/72148.png +../../data/yoloGtold1/train/72149.png +../../data/yoloGtold1/train/72150.png +../../data/yoloGtold1/train/72151.png +../../data/yoloGtold1/train/72152.png +../../data/yoloGtold1/train/72153.png +../../data/yoloGtold1/train/72154.png +../../data/yoloGtold1/train/72155.png +../../data/yoloGtold1/train/72156.png +../../data/yoloGtold1/train/72157.png +../../data/yoloGtold1/train/72158.png +../../data/yoloGtold1/train/72159.png +../../data/yoloGtold1/train/72160.png +../../data/yoloGtold1/train/72161.png +../../data/yoloGtold1/train/72162.png +../../data/yoloGtold1/train/72163.png +../../data/yoloGtold1/train/72164.png +../../data/yoloGtold1/train/72165.png +../../data/yoloGtold1/train/72166.png +../../data/yoloGtold1/train/72167.png +../../data/yoloGtold1/train/72168.png +../../data/yoloGtold1/train/72169.png +../../data/yoloGtold1/train/72170.png +../../data/yoloGtold1/train/72171.png +../../data/yoloGtold1/train/72172.png +../../data/yoloGtold1/train/72173.png +../../data/yoloGtold1/train/72174.png +../../data/yoloGtold1/train/72175.png +../../data/yoloGtold1/train/72176.png +../../data/yoloGtold1/train/72177.png +../../data/yoloGtold1/train/72178.png +../../data/yoloGtold1/train/72179.png +../../data/yoloGtold1/train/72180.png +../../data/yoloGtold1/train/72181.png +../../data/yoloGtold1/train/72182.png +../../data/yoloGtold1/train/72183.png +../../data/yoloGtold1/train/72184.png +../../data/yoloGtold1/train/72185.png +../../data/yoloGtold1/train/72186.png +../../data/yoloGtold1/train/72187.png +../../data/yoloGtold1/train/72188.png +../../data/yoloGtold1/train/72189.png +../../data/yoloGtold1/train/72190.png +../../data/yoloGtold1/train/72191.png +../../data/yoloGtold1/train/72192.png +../../data/yoloGtold1/train/72193.png +../../data/yoloGtold1/train/72194.png +../../data/yoloGtold1/train/72195.png +../../data/yoloGtold1/train/72196.png +../../data/yoloGtold1/train/72197.png +../../data/yoloGtold1/train/72198.png +../../data/yoloGtold1/train/72199.png +../../data/yoloGtold1/train/72200.png +../../data/yoloGtold1/train/72201.png +../../data/yoloGtold1/train/72202.png +../../data/yoloGtold1/train/72203.png +../../data/yoloGtold1/train/72204.png +../../data/yoloGtold1/train/72205.png +../../data/yoloGtold1/train/72206.png +../../data/yoloGtold1/train/72207.png +../../data/yoloGtold1/train/72208.png +../../data/yoloGtold1/train/72209.png +../../data/yoloGtold1/train/72210.png +../../data/yoloGtold1/train/72211.png +../../data/yoloGtold1/train/72212.png +../../data/yoloGtold1/train/72213.png +../../data/yoloGtold1/train/72214.png +../../data/yoloGtold1/train/72215.png +../../data/yoloGtold1/train/72216.png +../../data/yoloGtold1/train/72217.png +../../data/yoloGtold1/train/72218.png +../../data/yoloGtold1/train/72219.png +../../data/yoloGtold1/train/72220.png +../../data/yoloGtold1/train/72221.png +../../data/yoloGtold1/train/72222.png +../../data/yoloGtold1/train/72223.png +../../data/yoloGtold1/train/72224.png +../../data/yoloGtold1/train/72225.png +../../data/yoloGtold1/train/72226.png +../../data/yoloGtold1/train/72227.png +../../data/yoloGtold1/train/72228.png +../../data/yoloGtold1/train/72229.png +../../data/yoloGtold1/train/72230.png +../../data/yoloGtold1/train/72231.png +../../data/yoloGtold1/train/72232.png +../../data/yoloGtold1/train/72233.png +../../data/yoloGtold1/train/72234.png +../../data/yoloGtold1/train/72235.png +../../data/yoloGtold1/train/72236.png +../../data/yoloGtold1/train/72237.png +../../data/yoloGtold1/train/72238.png +../../data/yoloGtold1/train/72239.png +../../data/yoloGtold1/train/72240.png +../../data/yoloGtold1/train/72241.png +../../data/yoloGtold1/train/72242.png +../../data/yoloGtold1/train/72243.png +../../data/yoloGtold1/train/72244.png +../../data/yoloGtold1/train/72245.png +../../data/yoloGtold1/train/72246.png +../../data/yoloGtold1/train/72247.png +../../data/yoloGtold1/train/72248.png +../../data/yoloGtold1/train/72249.png +../../data/yoloGtold1/train/72250.png +../../data/yoloGtold1/train/72251.png +../../data/yoloGtold1/train/72252.png +../../data/yoloGtold1/train/72253.png +../../data/yoloGtold1/train/72254.png +../../data/yoloGtold1/train/72255.png +../../data/yoloGtold1/train/72256.png +../../data/yoloGtold1/train/72257.png +../../data/yoloGtold1/train/72258.png +../../data/yoloGtold1/train/72259.png +../../data/yoloGtold1/train/72260.png +../../data/yoloGtold1/train/72261.png +../../data/yoloGtold1/train/72262.png +../../data/yoloGtold1/train/72263.png +../../data/yoloGtold1/train/72264.png +../../data/yoloGtold1/train/72265.png +../../data/yoloGtold1/train/72266.png +../../data/yoloGtold1/train/72267.png +../../data/yoloGtold1/train/72268.png +../../data/yoloGtold1/train/72269.png +../../data/yoloGtold1/train/72270.png +../../data/yoloGtold1/train/72271.png +../../data/yoloGtold1/train/72272.png +../../data/yoloGtold1/train/72273.png +../../data/yoloGtold1/train/72274.png +../../data/yoloGtold1/train/72275.png +../../data/yoloGtold1/train/72276.png +../../data/yoloGtold1/train/72277.png +../../data/yoloGtold1/train/72278.png +../../data/yoloGtold1/train/72279.png +../../data/yoloGtold1/train/72280.png +../../data/yoloGtold1/train/72281.png +../../data/yoloGtold1/train/72282.png +../../data/yoloGtold1/train/72283.png +../../data/yoloGtold1/train/72284.png +../../data/yoloGtold1/train/72285.png +../../data/yoloGtold1/train/72286.png +../../data/yoloGtold1/train/72287.png +../../data/yoloGtold1/train/72288.png +../../data/yoloGtold1/train/72289.png +../../data/yoloGtold1/train/72290.png +../../data/yoloGtold1/train/72291.png +../../data/yoloGtold1/train/72292.png +../../data/yoloGtold1/train/72293.png +../../data/yoloGtold1/train/72294.png +../../data/yoloGtold1/train/72295.png +../../data/yoloGtold1/train/72296.png +../../data/yoloGtold1/train/72297.png +../../data/yoloGtold1/train/72298.png +../../data/yoloGtold1/train/72299.png +../../data/yoloGtold1/train/72300.png +../../data/yoloGtold1/train/72301.png +../../data/yoloGtold1/train/72302.png +../../data/yoloGtold1/train/72303.png +../../data/yoloGtold1/train/72304.png +../../data/yoloGtold1/train/72305.png +../../data/yoloGtold1/train/72306.png +../../data/yoloGtold1/train/72307.png +../../data/yoloGtold1/train/72308.png +../../data/yoloGtold1/train/72309.png +../../data/yoloGtold1/train/72310.png +../../data/yoloGtold1/train/72311.png +../../data/yoloGtold1/train/72312.png +../../data/yoloGtold1/train/72313.png +../../data/yoloGtold1/train/72314.png +../../data/yoloGtold1/train/72315.png +../../data/yoloGtold1/train/72316.png +../../data/yoloGtold1/train/72317.png +../../data/yoloGtold1/train/72318.png +../../data/yoloGtold1/train/72319.png +../../data/yoloGtold1/train/72320.png +../../data/yoloGtold1/train/72321.png +../../data/yoloGtold1/train/72322.png +../../data/yoloGtold1/train/72323.png +../../data/yoloGtold1/train/72324.png +../../data/yoloGtold1/train/72325.png +../../data/yoloGtold1/train/72326.png +../../data/yoloGtold1/train/72327.png +../../data/yoloGtold1/train/72328.png +../../data/yoloGtold1/train/72329.png +../../data/yoloGtold1/train/72330.png +../../data/yoloGtold1/train/72331.png +../../data/yoloGtold1/train/72332.png +../../data/yoloGtold1/train/72333.png +../../data/yoloGtold1/train/72334.png +../../data/yoloGtold1/train/72335.png +../../data/yoloGtold1/train/72336.png +../../data/yoloGtold1/train/72337.png +../../data/yoloGtold1/train/72338.png +../../data/yoloGtold1/train/72339.png +../../data/yoloGtold1/train/72340.png +../../data/yoloGtold1/train/72341.png +../../data/yoloGtold1/train/72342.png +../../data/yoloGtold1/train/72343.png +../../data/yoloGtold1/train/72344.png +../../data/yoloGtold1/train/72345.png +../../data/yoloGtold1/train/72346.png +../../data/yoloGtold1/train/72347.png +../../data/yoloGtold1/train/72348.png +../../data/yoloGtold1/train/72349.png +../../data/yoloGtold1/train/72350.png +../../data/yoloGtold1/train/72351.png +../../data/yoloGtold1/train/72352.png +../../data/yoloGtold1/train/72353.png +../../data/yoloGtold1/train/72354.png +../../data/yoloGtold1/train/72355.png +../../data/yoloGtold1/train/72356.png +../../data/yoloGtold1/train/72357.png +../../data/yoloGtold1/train/72358.png +../../data/yoloGtold1/train/72359.png +../../data/yoloGtold1/train/72360.png +../../data/yoloGtold1/train/72361.png +../../data/yoloGtold1/train/72362.png +../../data/yoloGtold1/train/72363.png +../../data/yoloGtold1/train/72364.png +../../data/yoloGtold1/train/72365.png +../../data/yoloGtold1/train/72366.png +../../data/yoloGtold1/train/72367.png +../../data/yoloGtold1/train/72368.png +../../data/yoloGtold1/train/72369.png +../../data/yoloGtold1/train/72370.png +../../data/yoloGtold1/train/72371.png +../../data/yoloGtold1/train/72372.png +../../data/yoloGtold1/train/72373.png +../../data/yoloGtold1/train/72374.png +../../data/yoloGtold1/train/72375.png +../../data/yoloGtold1/train/72376.png +../../data/yoloGtold1/train/72377.png +../../data/yoloGtold1/train/72378.png +../../data/yoloGtold1/train/72379.png +../../data/yoloGtold1/train/72380.png +../../data/yoloGtold1/train/72381.png +../../data/yoloGtold1/train/72382.png +../../data/yoloGtold1/train/72383.png +../../data/yoloGtold1/train/72384.png +../../data/yoloGtold1/train/72385.png +../../data/yoloGtold1/train/72386.png +../../data/yoloGtold1/train/72387.png +../../data/yoloGtold1/train/72388.png +../../data/yoloGtold1/train/72389.png +../../data/yoloGtold1/train/72390.png +../../data/yoloGtold1/train/72391.png +../../data/yoloGtold1/train/72392.png +../../data/yoloGtold1/train/72393.png +../../data/yoloGtold1/train/72394.png +../../data/yoloGtold1/train/72395.png +../../data/yoloGtold1/train/72396.png +../../data/yoloGtold1/train/72397.png +../../data/yoloGtold1/train/72398.png +../../data/yoloGtold1/train/72399.png +../../data/yoloGtold1/train/72400.png +../../data/yoloGtold1/train/72401.png +../../data/yoloGtold1/train/72402.png +../../data/yoloGtold1/train/72403.png +../../data/yoloGtold1/train/72404.png +../../data/yoloGtold1/train/72405.png +../../data/yoloGtold1/train/72406.png +../../data/yoloGtold1/train/72407.png +../../data/yoloGtold1/train/72408.png +../../data/yoloGtold1/train/72409.png +../../data/yoloGtold1/train/72410.png +../../data/yoloGtold1/train/72411.png +../../data/yoloGtold1/train/72412.png +../../data/yoloGtold1/train/72413.png +../../data/yoloGtold1/train/72414.png +../../data/yoloGtold1/train/72415.png +../../data/yoloGtold1/train/72416.png +../../data/yoloGtold1/train/72417.png +../../data/yoloGtold1/train/72418.png +../../data/yoloGtold1/train/72419.png +../../data/yoloGtold1/train/72420.png +../../data/yoloGtold1/train/72421.png +../../data/yoloGtold1/train/72422.png +../../data/yoloGtold1/train/72423.png +../../data/yoloGtold1/train/72424.png +../../data/yoloGtold1/train/72425.png +../../data/yoloGtold1/train/72426.png +../../data/yoloGtold1/train/72427.png +../../data/yoloGtold1/train/72428.png +../../data/yoloGtold1/train/72429.png +../../data/yoloGtold1/train/72430.png +../../data/yoloGtold1/train/72431.png +../../data/yoloGtold1/train/72432.png +../../data/yoloGtold1/train/72433.png +../../data/yoloGtold1/train/72434.png +../../data/yoloGtold1/train/72435.png +../../data/yoloGtold1/train/72436.png +../../data/yoloGtold1/train/72437.png +../../data/yoloGtold1/train/72438.png +../../data/yoloGtold1/train/72439.png +../../data/yoloGtold1/train/72440.png +../../data/yoloGtold1/train/72441.png +../../data/yoloGtold1/train/72442.png +../../data/yoloGtold1/train/72443.png +../../data/yoloGtold1/train/72444.png +../../data/yoloGtold1/train/72445.png +../../data/yoloGtold1/train/72446.png +../../data/yoloGtold1/train/72447.png +../../data/yoloGtold1/train/72448.png +../../data/yoloGtold1/train/72449.png +../../data/yoloGtold1/train/72450.png +../../data/yoloGtold1/train/72451.png +../../data/yoloGtold1/train/72452.png +../../data/yoloGtold1/train/72453.png +../../data/yoloGtold1/train/72454.png +../../data/yoloGtold1/train/72455.png +../../data/yoloGtold1/train/72456.png +../../data/yoloGtold1/train/72457.png +../../data/yoloGtold1/train/72458.png +../../data/yoloGtold1/train/72459.png +../../data/yoloGtold1/train/72460.png +../../data/yoloGtold1/train/72461.png +../../data/yoloGtold1/train/72462.png +../../data/yoloGtold1/train/72463.png +../../data/yoloGtold1/train/72464.png +../../data/yoloGtold1/train/72465.png +../../data/yoloGtold1/train/72466.png +../../data/yoloGtold1/train/72467.png +../../data/yoloGtold1/train/72468.png +../../data/yoloGtold1/train/72469.png +../../data/yoloGtold1/train/72470.png +../../data/yoloGtold1/train/72471.png +../../data/yoloGtold1/train/72472.png +../../data/yoloGtold1/train/72473.png +../../data/yoloGtold1/train/72474.png +../../data/yoloGtold1/train/72475.png +../../data/yoloGtold1/train/72476.png +../../data/yoloGtold1/train/72477.png +../../data/yoloGtold1/train/72478.png +../../data/yoloGtold1/train/72479.png +../../data/yoloGtold1/train/72480.png +../../data/yoloGtold1/train/72481.png +../../data/yoloGtold1/train/72482.png +../../data/yoloGtold1/train/72483.png +../../data/yoloGtold1/train/72484.png +../../data/yoloGtold1/train/72485.png +../../data/yoloGtold1/train/72486.png +../../data/yoloGtold1/train/72487.png +../../data/yoloGtold1/train/72488.png +../../data/yoloGtold1/train/72489.png +../../data/yoloGtold1/train/72490.png +../../data/yoloGtold1/train/72491.png +../../data/yoloGtold1/train/72492.png +../../data/yoloGtold1/train/72493.png +../../data/yoloGtold1/train/72494.png +../../data/yoloGtold1/train/72495.png +../../data/yoloGtold1/train/72496.png +../../data/yoloGtold1/train/72497.png +../../data/yoloGtold1/train/72498.png +../../data/yoloGtold1/train/72499.png +../../data/yoloGtold1/train/72500.png +../../data/yoloGtold1/train/72501.png +../../data/yoloGtold1/train/72502.png +../../data/yoloGtold1/train/72503.png +../../data/yoloGtold1/train/72504.png +../../data/yoloGtold1/train/72505.png +../../data/yoloGtold1/train/72506.png +../../data/yoloGtold1/train/72507.png +../../data/yoloGtold1/train/72508.png +../../data/yoloGtold1/train/72509.png +../../data/yoloGtold1/train/72510.png +../../data/yoloGtold1/train/72511.png +../../data/yoloGtold1/train/72512.png +../../data/yoloGtold1/train/72513.png +../../data/yoloGtold1/train/72514.png +../../data/yoloGtold1/train/72515.png +../../data/yoloGtold1/train/72516.png +../../data/yoloGtold1/train/72517.png +../../data/yoloGtold1/train/72518.png +../../data/yoloGtold1/train/72519.png +../../data/yoloGtold1/train/72520.png +../../data/yoloGtold1/train/72521.png +../../data/yoloGtold1/train/72522.png +../../data/yoloGtold1/train/72523.png +../../data/yoloGtold1/train/72524.png +../../data/yoloGtold1/train/72525.png +../../data/yoloGtold1/train/72526.png +../../data/yoloGtold1/train/72527.png +../../data/yoloGtold1/train/72528.png +../../data/yoloGtold1/train/72529.png +../../data/yoloGtold1/train/72530.png +../../data/yoloGtold1/train/72531.png +../../data/yoloGtold1/train/72532.png +../../data/yoloGtold1/train/72533.png +../../data/yoloGtold1/train/72534.png +../../data/yoloGtold1/train/72535.png +../../data/yoloGtold1/train/72536.png +../../data/yoloGtold1/train/72537.png +../../data/yoloGtold1/train/72538.png +../../data/yoloGtold1/train/72539.png +../../data/yoloGtold1/train/72540.png +../../data/yoloGtold1/train/72541.png +../../data/yoloGtold1/train/72542.png +../../data/yoloGtold1/train/72543.png +../../data/yoloGtold1/train/72544.png +../../data/yoloGtold1/train/72545.png +../../data/yoloGtold1/train/72546.png +../../data/yoloGtold1/train/72547.png +../../data/yoloGtold1/train/72548.png +../../data/yoloGtold1/train/72549.png +../../data/yoloGtold1/train/72550.png +../../data/yoloGtold1/train/72551.png +../../data/yoloGtold1/train/72552.png +../../data/yoloGtold1/train/72553.png +../../data/yoloGtold1/train/72554.png +../../data/yoloGtold1/train/72555.png +../../data/yoloGtold1/train/72556.png +../../data/yoloGtold1/train/72557.png +../../data/yoloGtold1/train/72558.png +../../data/yoloGtold1/train/72559.png +../../data/yoloGtold1/train/72560.png +../../data/yoloGtold1/train/72561.png +../../data/yoloGtold1/train/72562.png +../../data/yoloGtold1/train/72563.png +../../data/yoloGtold1/train/72564.png +../../data/yoloGtold1/train/72565.png +../../data/yoloGtold1/train/72566.png +../../data/yoloGtold1/train/72567.png +../../data/yoloGtold1/train/72568.png +../../data/yoloGtold1/train/72569.png +../../data/yoloGtold1/train/72570.png +../../data/yoloGtold1/train/72571.png +../../data/yoloGtold1/train/72572.png +../../data/yoloGtold1/train/72573.png +../../data/yoloGtold1/train/72574.png +../../data/yoloGtold1/train/72575.png +../../data/yoloGtold1/train/72576.png +../../data/yoloGtold1/train/72577.png +../../data/yoloGtold1/train/72578.png +../../data/yoloGtold1/train/72579.png +../../data/yoloGtold1/train/72580.png +../../data/yoloGtold1/train/72581.png +../../data/yoloGtold1/train/72582.png +../../data/yoloGtold1/train/72583.png +../../data/yoloGtold1/train/72584.png +../../data/yoloGtold1/train/72585.png +../../data/yoloGtold1/train/72586.png +../../data/yoloGtold1/train/72587.png +../../data/yoloGtold1/train/72588.png +../../data/yoloGtold1/train/72589.png +../../data/yoloGtold1/train/72590.png +../../data/yoloGtold1/train/72591.png +../../data/yoloGtold1/train/72592.png +../../data/yoloGtold1/train/72593.png +../../data/yoloGtold1/train/72594.png +../../data/yoloGtold1/train/72595.png +../../data/yoloGtold1/train/72596.png +../../data/yoloGtold1/train/72597.png +../../data/yoloGtold1/train/72598.png +../../data/yoloGtold1/train/72599.png +../../data/yoloGtold1/train/72600.png +../../data/yoloGtold1/train/72601.png +../../data/yoloGtold1/train/72602.png +../../data/yoloGtold1/train/72603.png +../../data/yoloGtold1/train/72604.png +../../data/yoloGtold1/train/72605.png +../../data/yoloGtold1/train/72606.png +../../data/yoloGtold1/train/72607.png +../../data/yoloGtold1/train/72608.png +../../data/yoloGtold1/train/72609.png +../../data/yoloGtold1/train/72610.png +../../data/yoloGtold1/train/72611.png +../../data/yoloGtold1/train/72612.png +../../data/yoloGtold1/train/72613.png +../../data/yoloGtold1/train/72614.png +../../data/yoloGtold1/train/72615.png +../../data/yoloGtold1/train/72616.png +../../data/yoloGtold1/train/72617.png +../../data/yoloGtold1/train/72618.png +../../data/yoloGtold1/train/72619.png +../../data/yoloGtold1/train/72620.png +../../data/yoloGtold1/train/72621.png +../../data/yoloGtold1/train/72622.png +../../data/yoloGtold1/train/72623.png +../../data/yoloGtold1/train/72624.png +../../data/yoloGtold1/train/72625.png +../../data/yoloGtold1/train/72626.png +../../data/yoloGtold1/train/72627.png +../../data/yoloGtold1/train/72628.png +../../data/yoloGtold1/train/72629.png +../../data/yoloGtold1/train/72630.png +../../data/yoloGtold1/train/72631.png +../../data/yoloGtold1/train/72632.png +../../data/yoloGtold1/train/72633.png +../../data/yoloGtold1/train/72634.png +../../data/yoloGtold1/train/72635.png +../../data/yoloGtold1/train/72636.png +../../data/yoloGtold1/train/72637.png +../../data/yoloGtold1/train/72638.png +../../data/yoloGtold1/train/72639.png +../../data/yoloGtold1/train/72640.png +../../data/yoloGtold1/train/72641.png +../../data/yoloGtold1/train/72642.png +../../data/yoloGtold1/train/72643.png +../../data/yoloGtold1/train/72644.png +../../data/yoloGtold1/train/72645.png +../../data/yoloGtold1/train/72646.png +../../data/yoloGtold1/train/72647.png +../../data/yoloGtold1/train/72648.png +../../data/yoloGtold1/train/72649.png +../../data/yoloGtold1/train/72650.png +../../data/yoloGtold1/train/72651.png +../../data/yoloGtold1/train/72652.png +../../data/yoloGtold1/train/72653.png +../../data/yoloGtold1/train/72654.png +../../data/yoloGtold1/train/72655.png +../../data/yoloGtold1/train/72656.png +../../data/yoloGtold1/train/72657.png +../../data/yoloGtold1/train/72658.png +../../data/yoloGtold1/train/72659.png +../../data/yoloGtold1/train/72660.png +../../data/yoloGtold1/train/72661.png +../../data/yoloGtold1/train/72662.png +../../data/yoloGtold1/train/72663.png +../../data/yoloGtold1/train/72664.png +../../data/yoloGtold1/train/72665.png +../../data/yoloGtold1/train/72666.png +../../data/yoloGtold1/train/72667.png +../../data/yoloGtold1/train/72668.png +../../data/yoloGtold1/train/72669.png +../../data/yoloGtold1/train/72670.png +../../data/yoloGtold1/train/72671.png +../../data/yoloGtold1/train/72672.png +../../data/yoloGtold1/train/72673.png +../../data/yoloGtold1/train/72674.png +../../data/yoloGtold1/train/72675.png +../../data/yoloGtold1/train/72676.png +../../data/yoloGtold1/train/72677.png +../../data/yoloGtold1/train/72678.png +../../data/yoloGtold1/train/72679.png +../../data/yoloGtold1/train/72680.png +../../data/yoloGtold1/train/72681.png +../../data/yoloGtold1/train/72682.png +../../data/yoloGtold1/train/72683.png +../../data/yoloGtold1/train/72684.png +../../data/yoloGtold1/train/72685.png +../../data/yoloGtold1/train/72686.png +../../data/yoloGtold1/train/72687.png +../../data/yoloGtold1/train/72688.png +../../data/yoloGtold1/train/72689.png +../../data/yoloGtold1/train/72690.png +../../data/yoloGtold1/train/72691.png +../../data/yoloGtold1/train/72692.png +../../data/yoloGtold1/train/72693.png +../../data/yoloGtold1/train/72694.png +../../data/yoloGtold1/train/72695.png +../../data/yoloGtold1/train/72696.png +../../data/yoloGtold1/train/72697.png +../../data/yoloGtold1/train/72698.png +../../data/yoloGtold1/train/72699.png +../../data/yoloGtold1/train/72700.png +../../data/yoloGtold1/train/72701.png +../../data/yoloGtold1/train/72702.png +../../data/yoloGtold1/train/72703.png +../../data/yoloGtold1/train/72704.png +../../data/yoloGtold1/train/72705.png +../../data/yoloGtold1/train/72706.png +../../data/yoloGtold1/train/72707.png +../../data/yoloGtold1/train/72708.png +../../data/yoloGtold1/train/72709.png +../../data/yoloGtold1/train/72710.png +../../data/yoloGtold1/train/72711.png +../../data/yoloGtold1/train/72712.png +../../data/yoloGtold1/train/72713.png +../../data/yoloGtold1/train/72714.png +../../data/yoloGtold1/train/72715.png +../../data/yoloGtold1/train/72716.png +../../data/yoloGtold1/train/72717.png +../../data/yoloGtold1/train/72718.png +../../data/yoloGtold1/train/72719.png +../../data/yoloGtold1/train/72720.png +../../data/yoloGtold1/train/72721.png +../../data/yoloGtold1/train/72722.png +../../data/yoloGtold1/train/72723.png +../../data/yoloGtold1/train/72724.png +../../data/yoloGtold1/train/72725.png +../../data/yoloGtold1/train/72726.png +../../data/yoloGtold1/train/72727.png +../../data/yoloGtold1/train/72728.png +../../data/yoloGtold1/train/72729.png +../../data/yoloGtold1/train/72730.png +../../data/yoloGtold1/train/72731.png +../../data/yoloGtold1/train/72732.png +../../data/yoloGtold1/train/72733.png +../../data/yoloGtold1/train/72734.png +../../data/yoloGtold1/train/72735.png +../../data/yoloGtold1/train/72736.png +../../data/yoloGtold1/train/72737.png +../../data/yoloGtold1/train/72738.png +../../data/yoloGtold1/train/72739.png +../../data/yoloGtold1/train/72740.png +../../data/yoloGtold1/train/72741.png +../../data/yoloGtold1/train/72742.png +../../data/yoloGtold1/train/72743.png +../../data/yoloGtold1/train/72744.png +../../data/yoloGtold1/train/72745.png +../../data/yoloGtold1/train/72746.png +../../data/yoloGtold1/train/72747.png +../../data/yoloGtold1/train/72748.png +../../data/yoloGtold1/train/72749.png +../../data/yoloGtold1/train/72750.png +../../data/yoloGtold1/train/72751.png +../../data/yoloGtold1/train/72752.png +../../data/yoloGtold1/train/72753.png +../../data/yoloGtold1/train/72754.png +../../data/yoloGtold1/train/72755.png +../../data/yoloGtold1/train/72756.png +../../data/yoloGtold1/train/72757.png +../../data/yoloGtold1/train/72758.png +../../data/yoloGtold1/train/72759.png +../../data/yoloGtold1/train/72760.png +../../data/yoloGtold1/train/72761.png +../../data/yoloGtold1/train/72762.png +../../data/yoloGtold1/train/72763.png +../../data/yoloGtold1/train/72764.png +../../data/yoloGtold1/train/72765.png +../../data/yoloGtold1/train/72766.png +../../data/yoloGtold1/train/72767.png +../../data/yoloGtold1/train/72768.png +../../data/yoloGtold1/train/72769.png +../../data/yoloGtold1/train/72770.png +../../data/yoloGtold1/train/72771.png +../../data/yoloGtold1/train/72772.png +../../data/yoloGtold1/train/72773.png +../../data/yoloGtold1/train/72774.png +../../data/yoloGtold1/train/72775.png +../../data/yoloGtold1/train/72776.png +../../data/yoloGtold1/train/72777.png +../../data/yoloGtold1/train/72778.png +../../data/yoloGtold1/train/72779.png +../../data/yoloGtold1/train/72780.png +../../data/yoloGtold1/train/72781.png +../../data/yoloGtold1/train/72782.png +../../data/yoloGtold1/train/72783.png +../../data/yoloGtold1/train/72784.png +../../data/yoloGtold1/train/72785.png +../../data/yoloGtold1/train/72786.png +../../data/yoloGtold1/train/72787.png +../../data/yoloGtold1/train/72788.png +../../data/yoloGtold1/train/72789.png +../../data/yoloGtold1/train/72790.png +../../data/yoloGtold1/train/72791.png +../../data/yoloGtold1/train/72792.png +../../data/yoloGtold1/train/72793.png +../../data/yoloGtold1/train/72794.png +../../data/yoloGtold1/train/72795.png +../../data/yoloGtold1/train/72796.png +../../data/yoloGtold1/train/72797.png +../../data/yoloGtold1/train/72798.png +../../data/yoloGtold1/train/72799.png +../../data/yoloGtold1/train/72800.png +../../data/yoloGtold1/train/72801.png +../../data/yoloGtold1/train/72802.png +../../data/yoloGtold1/train/72803.png +../../data/yoloGtold1/train/72804.png +../../data/yoloGtold1/train/72805.png +../../data/yoloGtold1/train/72806.png +../../data/yoloGtold1/train/72807.png +../../data/yoloGtold1/train/72808.png +../../data/yoloGtold1/train/72809.png +../../data/yoloGtold1/train/72810.png +../../data/yoloGtold1/train/72811.png +../../data/yoloGtold1/train/72812.png +../../data/yoloGtold1/train/72813.png +../../data/yoloGtold1/train/72814.png +../../data/yoloGtold1/train/72815.png +../../data/yoloGtold1/train/72816.png +../../data/yoloGtold1/train/72817.png +../../data/yoloGtold1/train/72818.png +../../data/yoloGtold1/train/72819.png +../../data/yoloGtold1/train/72820.png +../../data/yoloGtold1/train/72821.png +../../data/yoloGtold1/train/72822.png +../../data/yoloGtold1/train/72823.png +../../data/yoloGtold1/train/72824.png +../../data/yoloGtold1/train/72825.png +../../data/yoloGtold1/train/72826.png +../../data/yoloGtold1/train/72827.png +../../data/yoloGtold1/train/72828.png +../../data/yoloGtold1/train/72829.png +../../data/yoloGtold1/train/72830.png +../../data/yoloGtold1/train/72831.png +../../data/yoloGtold1/train/72832.png +../../data/yoloGtold1/train/72833.png +../../data/yoloGtold1/train/72834.png +../../data/yoloGtold1/train/72835.png +../../data/yoloGtold1/train/72836.png +../../data/yoloGtold1/train/72837.png +../../data/yoloGtold1/train/72838.png +../../data/yoloGtold1/train/72839.png +../../data/yoloGtold1/train/72840.png +../../data/yoloGtold1/train/72841.png +../../data/yoloGtold1/train/72842.png +../../data/yoloGtold1/train/72843.png +../../data/yoloGtold1/train/72844.png +../../data/yoloGtold1/train/72845.png +../../data/yoloGtold1/train/72846.png +../../data/yoloGtold1/train/72847.png +../../data/yoloGtold1/train/72848.png +../../data/yoloGtold1/train/72849.png +../../data/yoloGtold1/train/72850.png +../../data/yoloGtold1/train/72851.png +../../data/yoloGtold1/train/72852.png +../../data/yoloGtold1/train/72853.png +../../data/yoloGtold1/train/72854.png +../../data/yoloGtold1/train/72855.png +../../data/yoloGtold1/train/72856.png +../../data/yoloGtold1/train/72857.png +../../data/yoloGtold1/train/72858.png +../../data/yoloGtold1/train/72859.png +../../data/yoloGtold1/train/72860.png +../../data/yoloGtold1/train/72861.png +../../data/yoloGtold1/train/72862.png +../../data/yoloGtold1/train/72863.png +../../data/yoloGtold1/train/72864.png +../../data/yoloGtold1/train/72865.png +../../data/yoloGtold1/train/72866.png +../../data/yoloGtold1/train/72867.png +../../data/yoloGtold1/train/72868.png +../../data/yoloGtold1/train/72869.png +../../data/yoloGtold1/train/72870.png +../../data/yoloGtold1/train/72871.png +../../data/yoloGtold1/train/72872.png +../../data/yoloGtold1/train/72873.png +../../data/yoloGtold1/train/72874.png +../../data/yoloGtold1/train/72875.png +../../data/yoloGtold1/train/72876.png +../../data/yoloGtold1/train/72877.png +../../data/yoloGtold1/train/72878.png +../../data/yoloGtold1/train/72879.png +../../data/yoloGtold1/train/72880.png +../../data/yoloGtold1/train/72881.png +../../data/yoloGtold1/train/72882.png +../../data/yoloGtold1/train/72883.png +../../data/yoloGtold1/train/72884.png +../../data/yoloGtold1/train/72885.png +../../data/yoloGtold1/train/72886.png +../../data/yoloGtold1/train/72887.png +../../data/yoloGtold1/train/72888.png +../../data/yoloGtold1/train/72889.png +../../data/yoloGtold1/train/72890.png +../../data/yoloGtold1/train/72891.png +../../data/yoloGtold1/train/72892.png +../../data/yoloGtold1/train/72893.png +../../data/yoloGtold1/train/72894.png +../../data/yoloGtold1/train/72895.png +../../data/yoloGtold1/train/72896.png +../../data/yoloGtold1/train/72897.png +../../data/yoloGtold1/train/72898.png +../../data/yoloGtold1/train/72899.png +../../data/yoloGtold1/train/72900.png +../../data/yoloGtold1/train/72901.png +../../data/yoloGtold1/train/72902.png +../../data/yoloGtold1/train/72903.png +../../data/yoloGtold1/train/72904.png +../../data/yoloGtold1/train/72905.png +../../data/yoloGtold1/train/72906.png +../../data/yoloGtold1/train/72907.png +../../data/yoloGtold1/train/72908.png +../../data/yoloGtold1/train/72909.png +../../data/yoloGtold1/train/72910.png +../../data/yoloGtold1/train/72911.png +../../data/yoloGtold1/train/72912.png +../../data/yoloGtold1/train/72913.png +../../data/yoloGtold1/train/72914.png +../../data/yoloGtold1/train/72915.png +../../data/yoloGtold1/train/72916.png +../../data/yoloGtold1/train/72917.png +../../data/yoloGtold1/train/72918.png +../../data/yoloGtold1/train/72919.png +../../data/yoloGtold1/train/72920.png +../../data/yoloGtold1/train/72921.png +../../data/yoloGtold1/train/72922.png +../../data/yoloGtold1/train/72923.png +../../data/yoloGtold1/train/72924.png +../../data/yoloGtold1/train/72925.png +../../data/yoloGtold1/train/72926.png +../../data/yoloGtold1/train/72927.png +../../data/yoloGtold1/train/72928.png +../../data/yoloGtold1/train/72929.png +../../data/yoloGtold1/train/72930.png +../../data/yoloGtold1/train/72931.png +../../data/yoloGtold1/train/72932.png +../../data/yoloGtold1/train/72933.png +../../data/yoloGtold1/train/72934.png +../../data/yoloGtold1/train/72935.png +../../data/yoloGtold1/train/72936.png +../../data/yoloGtold1/train/72937.png +../../data/yoloGtold1/train/72938.png +../../data/yoloGtold1/train/72939.png +../../data/yoloGtold1/train/72940.png +../../data/yoloGtold1/train/72941.png +../../data/yoloGtold1/train/72942.png +../../data/yoloGtold1/train/72943.png +../../data/yoloGtold1/train/72944.png +../../data/yoloGtold1/train/72945.png +../../data/yoloGtold1/train/72946.png +../../data/yoloGtold1/train/72947.png +../../data/yoloGtold1/train/72948.png +../../data/yoloGtold1/train/72949.png +../../data/yoloGtold1/train/72950.png +../../data/yoloGtold1/train/72951.png +../../data/yoloGtold1/train/72952.png +../../data/yoloGtold1/train/72953.png +../../data/yoloGtold1/train/72954.png +../../data/yoloGtold1/train/72955.png +../../data/yoloGtold1/train/72956.png +../../data/yoloGtold1/train/72957.png +../../data/yoloGtold1/train/72958.png +../../data/yoloGtold1/train/72959.png +../../data/yoloGtold1/train/72960.png +../../data/yoloGtold1/train/72961.png +../../data/yoloGtold1/train/72962.png +../../data/yoloGtold1/train/72963.png +../../data/yoloGtold1/train/72964.png +../../data/yoloGtold1/train/72965.png +../../data/yoloGtold1/train/72966.png +../../data/yoloGtold1/train/72967.png +../../data/yoloGtold1/train/72968.png +../../data/yoloGtold1/train/72969.png +../../data/yoloGtold1/train/72970.png +../../data/yoloGtold1/train/72971.png +../../data/yoloGtold1/train/72972.png +../../data/yoloGtold1/train/72973.png +../../data/yoloGtold1/train/72974.png +../../data/yoloGtold1/train/72975.png +../../data/yoloGtold1/train/72976.png +../../data/yoloGtold1/train/72977.png +../../data/yoloGtold1/train/72978.png +../../data/yoloGtold1/train/72979.png +../../data/yoloGtold1/train/72980.png +../../data/yoloGtold1/train/72981.png +../../data/yoloGtold1/train/72982.png +../../data/yoloGtold1/train/72983.png +../../data/yoloGtold1/train/72984.png +../../data/yoloGtold1/train/72985.png +../../data/yoloGtold1/train/72986.png +../../data/yoloGtold1/train/72987.png +../../data/yoloGtold1/train/72988.png +../../data/yoloGtold1/train/72989.png +../../data/yoloGtold1/train/72990.png +../../data/yoloGtold1/train/72991.png +../../data/yoloGtold1/train/72992.png +../../data/yoloGtold1/train/72993.png +../../data/yoloGtold1/train/72994.png +../../data/yoloGtold1/train/72995.png +../../data/yoloGtold1/train/72996.png +../../data/yoloGtold1/train/72997.png +../../data/yoloGtold1/train/72998.png +../../data/yoloGtold1/train/72999.png +../../data/yoloGtold1/train/73000.png +../../data/yoloGtold1/train/73001.png +../../data/yoloGtold1/train/73002.png +../../data/yoloGtold1/train/73003.png +../../data/yoloGtold1/train/73004.png +../../data/yoloGtold1/train/73005.png +../../data/yoloGtold1/train/73006.png +../../data/yoloGtold1/train/73007.png +../../data/yoloGtold1/train/73008.png +../../data/yoloGtold1/train/73009.png +../../data/yoloGtold1/train/73010.png +../../data/yoloGtold1/train/73011.png +../../data/yoloGtold1/train/73012.png +../../data/yoloGtold1/train/73013.png +../../data/yoloGtold1/train/73014.png +../../data/yoloGtold1/train/73015.png +../../data/yoloGtold1/train/73016.png +../../data/yoloGtold1/train/73017.png +../../data/yoloGtold1/train/73018.png +../../data/yoloGtold1/train/73019.png +../../data/yoloGtold1/train/73020.png +../../data/yoloGtold1/train/73021.png +../../data/yoloGtold1/train/73022.png +../../data/yoloGtold1/train/73023.png +../../data/yoloGtold1/train/73024.png +../../data/yoloGtold1/train/73025.png +../../data/yoloGtold1/train/73026.png +../../data/yoloGtold1/train/73027.png +../../data/yoloGtold1/train/73028.png +../../data/yoloGtold1/train/73029.png +../../data/yoloGtold1/train/73030.png +../../data/yoloGtold1/train/73031.png +../../data/yoloGtold1/train/73032.png +../../data/yoloGtold1/train/73033.png +../../data/yoloGtold1/train/73034.png +../../data/yoloGtold1/train/73035.png +../../data/yoloGtold1/train/73036.png +../../data/yoloGtold1/train/73037.png +../../data/yoloGtold1/train/73038.png +../../data/yoloGtold1/train/73039.png +../../data/yoloGtold1/train/73040.png +../../data/yoloGtold1/train/73041.png +../../data/yoloGtold1/train/73042.png +../../data/yoloGtold1/train/73043.png +../../data/yoloGtold1/train/73044.png +../../data/yoloGtold1/train/73045.png +../../data/yoloGtold1/train/73046.png +../../data/yoloGtold1/train/73047.png +../../data/yoloGtold1/train/73048.png +../../data/yoloGtold1/train/73049.png +../../data/yoloGtold1/train/73050.png +../../data/yoloGtold1/train/73051.png +../../data/yoloGtold1/train/73052.png +../../data/yoloGtold1/train/73053.png +../../data/yoloGtold1/train/73054.png +../../data/yoloGtold1/train/73055.png +../../data/yoloGtold1/train/73056.png +../../data/yoloGtold1/train/73057.png +../../data/yoloGtold1/train/73058.png +../../data/yoloGtold1/train/73059.png +../../data/yoloGtold1/train/73060.png +../../data/yoloGtold1/train/73061.png +../../data/yoloGtold1/train/73062.png +../../data/yoloGtold1/train/73063.png +../../data/yoloGtold1/train/73064.png +../../data/yoloGtold1/train/73065.png +../../data/yoloGtold1/train/73066.png +../../data/yoloGtold1/train/73067.png +../../data/yoloGtold1/train/73068.png +../../data/yoloGtold1/train/73069.png +../../data/yoloGtold1/train/73070.png +../../data/yoloGtold1/train/73071.png +../../data/yoloGtold1/train/73072.png +../../data/yoloGtold1/train/73073.png +../../data/yoloGtold1/train/73074.png +../../data/yoloGtold1/train/73075.png +../../data/yoloGtold1/train/73076.png +../../data/yoloGtold1/train/73077.png +../../data/yoloGtold1/train/73078.png +../../data/yoloGtold1/train/73079.png +../../data/yoloGtold1/train/73080.png +../../data/yoloGtold1/train/73081.png +../../data/yoloGtold1/train/73082.png +../../data/yoloGtold1/train/73083.png +../../data/yoloGtold1/train/73084.png +../../data/yoloGtold1/train/73085.png +../../data/yoloGtold1/train/73086.png +../../data/yoloGtold1/train/73087.png +../../data/yoloGtold1/train/73088.png +../../data/yoloGtold1/train/73089.png +../../data/yoloGtold1/train/73090.png +../../data/yoloGtold1/train/73091.png +../../data/yoloGtold1/train/73092.png +../../data/yoloGtold1/train/73093.png +../../data/yoloGtold1/train/73094.png +../../data/yoloGtold1/train/73095.png +../../data/yoloGtold1/train/73096.png +../../data/yoloGtold1/train/73097.png +../../data/yoloGtold1/train/73098.png +../../data/yoloGtold1/train/73099.png +../../data/yoloGtold1/train/73100.png +../../data/yoloGtold1/train/73101.png +../../data/yoloGtold1/train/73102.png +../../data/yoloGtold1/train/73103.png +../../data/yoloGtold1/train/73104.png +../../data/yoloGtold1/train/73105.png +../../data/yoloGtold1/train/73106.png +../../data/yoloGtold1/train/73107.png +../../data/yoloGtold1/train/73108.png +../../data/yoloGtold1/train/73109.png +../../data/yoloGtold1/train/73110.png +../../data/yoloGtold1/train/73111.png +../../data/yoloGtold1/train/73112.png +../../data/yoloGtold1/train/73113.png +../../data/yoloGtold1/train/73114.png +../../data/yoloGtold1/train/73115.png +../../data/yoloGtold1/train/73116.png +../../data/yoloGtold1/train/73117.png +../../data/yoloGtold1/train/73118.png +../../data/yoloGtold1/train/73119.png +../../data/yoloGtold1/train/73120.png +../../data/yoloGtold1/train/73121.png +../../data/yoloGtold1/train/73122.png +../../data/yoloGtold1/train/73123.png +../../data/yoloGtold1/train/73124.png +../../data/yoloGtold1/train/73125.png +../../data/yoloGtold1/train/73126.png +../../data/yoloGtold1/train/73127.png +../../data/yoloGtold1/train/73128.png +../../data/yoloGtold1/train/73129.png +../../data/yoloGtold1/train/73130.png +../../data/yoloGtold1/train/73131.png +../../data/yoloGtold1/train/73132.png +../../data/yoloGtold1/train/73133.png +../../data/yoloGtold1/train/73134.png +../../data/yoloGtold1/train/73135.png +../../data/yoloGtold1/train/73136.png +../../data/yoloGtold1/train/73137.png +../../data/yoloGtold1/train/73138.png +../../data/yoloGtold1/train/73139.png +../../data/yoloGtold1/train/73140.png +../../data/yoloGtold1/train/73141.png +../../data/yoloGtold1/train/73142.png +../../data/yoloGtold1/train/73143.png +../../data/yoloGtold1/train/73144.png +../../data/yoloGtold1/train/73145.png +../../data/yoloGtold1/train/73146.png +../../data/yoloGtold1/train/73147.png +../../data/yoloGtold1/train/73148.png +../../data/yoloGtold1/train/73149.png +../../data/yoloGtold1/train/73150.png +../../data/yoloGtold1/train/73151.png +../../data/yoloGtold1/train/73152.png +../../data/yoloGtold1/train/73153.png +../../data/yoloGtold1/train/73154.png +../../data/yoloGtold1/train/73155.png +../../data/yoloGtold1/train/73156.png +../../data/yoloGtold1/train/73157.png +../../data/yoloGtold1/train/73158.png +../../data/yoloGtold1/train/73159.png +../../data/yoloGtold1/train/73160.png +../../data/yoloGtold1/train/73161.png +../../data/yoloGtold1/train/73162.png +../../data/yoloGtold1/train/73163.png +../../data/yoloGtold1/train/73164.png +../../data/yoloGtold1/train/73165.png +../../data/yoloGtold1/train/73166.png +../../data/yoloGtold1/train/73167.png +../../data/yoloGtold1/train/73168.png +../../data/yoloGtold1/train/73169.png +../../data/yoloGtold1/train/73170.png +../../data/yoloGtold1/train/73171.png +../../data/yoloGtold1/train/73172.png +../../data/yoloGtold1/train/73173.png +../../data/yoloGtold1/train/73174.png +../../data/yoloGtold1/train/73175.png +../../data/yoloGtold1/train/73176.png +../../data/yoloGtold1/train/73177.png +../../data/yoloGtold1/train/73178.png +../../data/yoloGtold1/train/73179.png +../../data/yoloGtold1/train/73180.png +../../data/yoloGtold1/train/73181.png +../../data/yoloGtold1/train/73182.png +../../data/yoloGtold1/train/73183.png +../../data/yoloGtold1/train/73184.png +../../data/yoloGtold1/train/73185.png +../../data/yoloGtold1/train/73186.png +../../data/yoloGtold1/train/73187.png +../../data/yoloGtold1/train/73188.png +../../data/yoloGtold1/train/73189.png +../../data/yoloGtold1/train/73190.png +../../data/yoloGtold1/train/73191.png +../../data/yoloGtold1/train/73192.png +../../data/yoloGtold1/train/73193.png +../../data/yoloGtold1/train/73194.png +../../data/yoloGtold1/train/73195.png +../../data/yoloGtold1/train/73196.png +../../data/yoloGtold1/train/73197.png +../../data/yoloGtold1/train/73198.png +../../data/yoloGtold1/train/73199.png +../../data/yoloGtold1/train/73200.png +../../data/yoloGtold1/train/73201.png +../../data/yoloGtold1/train/73202.png +../../data/yoloGtold1/train/73203.png +../../data/yoloGtold1/train/73204.png +../../data/yoloGtold1/train/73205.png +../../data/yoloGtold1/train/73206.png +../../data/yoloGtold1/train/73207.png +../../data/yoloGtold1/train/73208.png +../../data/yoloGtold1/train/73209.png +../../data/yoloGtold1/train/73210.png +../../data/yoloGtold1/train/73211.png +../../data/yoloGtold1/train/73212.png +../../data/yoloGtold1/train/73213.png +../../data/yoloGtold1/train/73214.png +../../data/yoloGtold1/train/73215.png +../../data/yoloGtold1/train/73216.png +../../data/yoloGtold1/train/73217.png +../../data/yoloGtold1/train/73218.png +../../data/yoloGtold1/train/73219.png +../../data/yoloGtold1/train/73220.png +../../data/yoloGtold1/train/73221.png +../../data/yoloGtold1/train/73222.png +../../data/yoloGtold1/train/73223.png +../../data/yoloGtold1/train/73224.png +../../data/yoloGtold1/train/73225.png +../../data/yoloGtold1/train/73226.png +../../data/yoloGtold1/train/73227.png +../../data/yoloGtold1/train/73228.png +../../data/yoloGtold1/train/73229.png +../../data/yoloGtold1/train/73230.png +../../data/yoloGtold1/train/73231.png +../../data/yoloGtold1/train/73232.png +../../data/yoloGtold1/train/73233.png +../../data/yoloGtold1/train/73234.png +../../data/yoloGtold1/train/73235.png +../../data/yoloGtold1/train/73236.png +../../data/yoloGtold1/train/73237.png +../../data/yoloGtold1/train/73238.png +../../data/yoloGtold1/train/73239.png +../../data/yoloGtold1/train/73240.png +../../data/yoloGtold1/train/73241.png +../../data/yoloGtold1/train/73242.png +../../data/yoloGtold1/train/73243.png +../../data/yoloGtold1/train/73244.png +../../data/yoloGtold1/train/73245.png +../../data/yoloGtold1/train/73246.png +../../data/yoloGtold1/train/73247.png +../../data/yoloGtold1/train/73248.png +../../data/yoloGtold1/train/73249.png +../../data/yoloGtold1/train/73250.png +../../data/yoloGtold1/train/73251.png +../../data/yoloGtold1/train/73252.png +../../data/yoloGtold1/train/73253.png +../../data/yoloGtold1/train/73254.png +../../data/yoloGtold1/train/73255.png +../../data/yoloGtold1/train/73256.png +../../data/yoloGtold1/train/73257.png +../../data/yoloGtold1/train/73258.png +../../data/yoloGtold1/train/73259.png +../../data/yoloGtold1/train/73260.png +../../data/yoloGtold1/train/73261.png +../../data/yoloGtold1/train/73262.png +../../data/yoloGtold1/train/73263.png +../../data/yoloGtold1/train/73264.png +../../data/yoloGtold1/train/73265.png +../../data/yoloGtold1/train/73266.png +../../data/yoloGtold1/train/73267.png +../../data/yoloGtold1/train/73268.png +../../data/yoloGtold1/train/73269.png +../../data/yoloGtold1/train/73270.png +../../data/yoloGtold1/train/73271.png +../../data/yoloGtold1/train/73272.png +../../data/yoloGtold1/train/73273.png +../../data/yoloGtold1/train/73274.png +../../data/yoloGtold1/train/73275.png +../../data/yoloGtold1/train/73276.png +../../data/yoloGtold1/train/73277.png +../../data/yoloGtold1/train/73278.png +../../data/yoloGtold1/train/73279.png +../../data/yoloGtold1/train/73280.png +../../data/yoloGtold1/train/73281.png +../../data/yoloGtold1/train/73282.png +../../data/yoloGtold1/train/73283.png +../../data/yoloGtold1/train/73284.png +../../data/yoloGtold1/train/73285.png +../../data/yoloGtold1/train/73286.png +../../data/yoloGtold1/train/73287.png +../../data/yoloGtold1/train/73288.png +../../data/yoloGtold1/train/73289.png +../../data/yoloGtold1/train/73290.png +../../data/yoloGtold1/train/73291.png +../../data/yoloGtold1/train/73292.png +../../data/yoloGtold1/train/73293.png +../../data/yoloGtold1/train/73294.png +../../data/yoloGtold1/train/73295.png +../../data/yoloGtold1/train/73296.png +../../data/yoloGtold1/train/73297.png +../../data/yoloGtold1/train/73298.png +../../data/yoloGtold1/train/73299.png +../../data/yoloGtold1/train/73300.png +../../data/yoloGtold1/train/73301.png +../../data/yoloGtold1/train/73302.png +../../data/yoloGtold1/train/73303.png +../../data/yoloGtold1/train/73304.png +../../data/yoloGtold1/train/73305.png +../../data/yoloGtold1/train/73306.png +../../data/yoloGtold1/train/73307.png +../../data/yoloGtold1/train/73308.png +../../data/yoloGtold1/train/73309.png +../../data/yoloGtold1/train/73310.png +../../data/yoloGtold1/train/73311.png +../../data/yoloGtold1/train/73312.png +../../data/yoloGtold1/train/73313.png +../../data/yoloGtold1/train/73314.png +../../data/yoloGtold1/train/73315.png +../../data/yoloGtold1/train/73316.png +../../data/yoloGtold1/train/73317.png +../../data/yoloGtold1/train/73318.png +../../data/yoloGtold1/train/73319.png +../../data/yoloGtold1/train/73320.png +../../data/yoloGtold1/train/73321.png +../../data/yoloGtold1/train/73322.png +../../data/yoloGtold1/train/73323.png +../../data/yoloGtold1/train/73324.png +../../data/yoloGtold1/train/73325.png +../../data/yoloGtold1/train/73326.png +../../data/yoloGtold1/train/73327.png +../../data/yoloGtold1/train/73328.png +../../data/yoloGtold1/train/73329.png +../../data/yoloGtold1/train/73330.png +../../data/yoloGtold1/train/73331.png +../../data/yoloGtold1/train/73332.png +../../data/yoloGtold1/train/73333.png +../../data/yoloGtold1/train/73334.png +../../data/yoloGtold1/train/73335.png +../../data/yoloGtold1/train/73336.png +../../data/yoloGtold1/train/73337.png +../../data/yoloGtold1/train/73338.png +../../data/yoloGtold1/train/73339.png +../../data/yoloGtold1/train/73340.png +../../data/yoloGtold1/train/73341.png +../../data/yoloGtold1/train/73342.png +../../data/yoloGtold1/train/73343.png +../../data/yoloGtold1/train/73344.png +../../data/yoloGtold1/train/73345.png +../../data/yoloGtold1/train/73346.png +../../data/yoloGtold1/train/73347.png +../../data/yoloGtold1/train/73348.png +../../data/yoloGtold1/train/73349.png +../../data/yoloGtold1/train/73350.png +../../data/yoloGtold1/train/73351.png +../../data/yoloGtold1/train/73352.png +../../data/yoloGtold1/train/73353.png +../../data/yoloGtold1/train/73354.png +../../data/yoloGtold1/train/73355.png +../../data/yoloGtold1/train/73356.png +../../data/yoloGtold1/train/73357.png +../../data/yoloGtold1/train/73358.png +../../data/yoloGtold1/train/73359.png +../../data/yoloGtold1/train/73360.png +../../data/yoloGtold1/train/73361.png +../../data/yoloGtold1/train/73362.png +../../data/yoloGtold1/train/73363.png +../../data/yoloGtold1/train/73364.png +../../data/yoloGtold1/train/73365.png +../../data/yoloGtold1/train/73366.png +../../data/yoloGtold1/train/73367.png +../../data/yoloGtold1/train/73368.png +../../data/yoloGtold1/train/73369.png +../../data/yoloGtold1/train/73370.png +../../data/yoloGtold1/train/73371.png +../../data/yoloGtold1/train/73372.png +../../data/yoloGtold1/train/73373.png +../../data/yoloGtold1/train/73374.png +../../data/yoloGtold1/train/73375.png +../../data/yoloGtold1/train/73376.png +../../data/yoloGtold1/train/73377.png +../../data/yoloGtold1/train/73378.png +../../data/yoloGtold1/train/73379.png +../../data/yoloGtold1/train/73380.png +../../data/yoloGtold1/train/73381.png +../../data/yoloGtold1/train/73382.png +../../data/yoloGtold1/train/73383.png +../../data/yoloGtold1/train/73384.png +../../data/yoloGtold1/train/73385.png +../../data/yoloGtold1/train/73386.png +../../data/yoloGtold1/train/73387.png +../../data/yoloGtold1/train/73388.png +../../data/yoloGtold1/train/73389.png +../../data/yoloGtold1/train/73390.png +../../data/yoloGtold1/train/73391.png +../../data/yoloGtold1/train/73392.png +../../data/yoloGtold1/train/73393.png +../../data/yoloGtold1/train/73394.png +../../data/yoloGtold1/train/73395.png +../../data/yoloGtold1/train/73396.png +../../data/yoloGtold1/train/73397.png +../../data/yoloGtold1/train/73398.png +../../data/yoloGtold1/train/73399.png +../../data/yoloGtold1/train/73400.png +../../data/yoloGtold1/train/73401.png +../../data/yoloGtold1/train/73402.png +../../data/yoloGtold1/train/73403.png +../../data/yoloGtold1/train/73404.png +../../data/yoloGtold1/train/73405.png +../../data/yoloGtold1/train/73406.png +../../data/yoloGtold1/train/73407.png +../../data/yoloGtold1/train/73408.png +../../data/yoloGtold1/train/73409.png +../../data/yoloGtold1/train/73410.png +../../data/yoloGtold1/train/73411.png +../../data/yoloGtold1/train/73412.png +../../data/yoloGtold1/train/73413.png +../../data/yoloGtold1/train/73414.png +../../data/yoloGtold1/train/73415.png +../../data/yoloGtold1/train/73416.png +../../data/yoloGtold1/train/73417.png +../../data/yoloGtold1/train/73418.png +../../data/yoloGtold1/train/73419.png +../../data/yoloGtold1/train/73420.png +../../data/yoloGtold1/train/73421.png +../../data/yoloGtold1/train/73422.png +../../data/yoloGtold1/train/73423.png +../../data/yoloGtold1/train/73424.png +../../data/yoloGtold1/train/73425.png +../../data/yoloGtold1/train/73426.png +../../data/yoloGtold1/train/73427.png +../../data/yoloGtold1/train/73428.png +../../data/yoloGtold1/train/73429.png +../../data/yoloGtold1/train/73430.png +../../data/yoloGtold1/train/73431.png +../../data/yoloGtold1/train/73432.png +../../data/yoloGtold1/train/73433.png +../../data/yoloGtold1/train/73434.png +../../data/yoloGtold1/train/73435.png +../../data/yoloGtold1/train/73436.png +../../data/yoloGtold1/train/73437.png +../../data/yoloGtold1/train/73438.png +../../data/yoloGtold1/train/73439.png +../../data/yoloGtold1/train/73440.png +../../data/yoloGtold1/train/73441.png +../../data/yoloGtold1/train/73442.png +../../data/yoloGtold1/train/73443.png +../../data/yoloGtold1/train/73444.png +../../data/yoloGtold1/train/73445.png +../../data/yoloGtold1/train/73446.png +../../data/yoloGtold1/train/73447.png +../../data/yoloGtold1/train/73448.png +../../data/yoloGtold1/train/73449.png +../../data/yoloGtold1/train/73450.png +../../data/yoloGtold1/train/73451.png +../../data/yoloGtold1/train/73452.png +../../data/yoloGtold1/train/73453.png +../../data/yoloGtold1/train/73454.png +../../data/yoloGtold1/train/73455.png +../../data/yoloGtold1/train/73456.png +../../data/yoloGtold1/train/73457.png +../../data/yoloGtold1/train/73458.png +../../data/yoloGtold1/train/73459.png +../../data/yoloGtold1/train/73460.png +../../data/yoloGtold1/train/73461.png +../../data/yoloGtold1/train/73462.png +../../data/yoloGtold1/train/73463.png +../../data/yoloGtold1/train/73464.png +../../data/yoloGtold1/train/73465.png +../../data/yoloGtold1/train/73466.png +../../data/yoloGtold1/train/73467.png +../../data/yoloGtold1/train/73468.png +../../data/yoloGtold1/train/73469.png +../../data/yoloGtold1/train/73470.png +../../data/yoloGtold1/train/73471.png +../../data/yoloGtold1/train/73472.png +../../data/yoloGtold1/train/73473.png +../../data/yoloGtold1/train/73474.png +../../data/yoloGtold1/train/73475.png +../../data/yoloGtold1/train/73476.png +../../data/yoloGtold1/train/73477.png +../../data/yoloGtold1/train/73478.png +../../data/yoloGtold1/train/73479.png +../../data/yoloGtold1/train/73480.png +../../data/yoloGtold1/train/73481.png +../../data/yoloGtold1/train/73482.png +../../data/yoloGtold1/train/73483.png +../../data/yoloGtold1/train/73484.png +../../data/yoloGtold1/train/73485.png +../../data/yoloGtold1/train/73486.png +../../data/yoloGtold1/train/73487.png +../../data/yoloGtold1/train/73488.png +../../data/yoloGtold1/train/73489.png +../../data/yoloGtold1/train/73490.png +../../data/yoloGtold1/train/73491.png +../../data/yoloGtold1/train/73492.png +../../data/yoloGtold1/train/73493.png +../../data/yoloGtold1/train/73494.png +../../data/yoloGtold1/train/73495.png +../../data/yoloGtold1/train/73496.png +../../data/yoloGtold1/train/73497.png +../../data/yoloGtold1/train/73498.png +../../data/yoloGtold1/train/73499.png +../../data/yoloGtold1/train/73500.png +../../data/yoloGtold1/train/73501.png +../../data/yoloGtold1/train/73502.png +../../data/yoloGtold1/train/73503.png +../../data/yoloGtold1/train/73504.png +../../data/yoloGtold1/train/73505.png +../../data/yoloGtold1/train/73506.png +../../data/yoloGtold1/train/73507.png +../../data/yoloGtold1/train/73508.png +../../data/yoloGtold1/train/73509.png +../../data/yoloGtold1/train/73510.png +../../data/yoloGtold1/train/73511.png +../../data/yoloGtold1/train/73512.png +../../data/yoloGtold1/train/73513.png +../../data/yoloGtold1/train/73514.png +../../data/yoloGtold1/train/73515.png +../../data/yoloGtold1/train/73516.png +../../data/yoloGtold1/train/73517.png +../../data/yoloGtold1/train/73518.png +../../data/yoloGtold1/train/73519.png +../../data/yoloGtold1/train/73520.png +../../data/yoloGtold1/train/73521.png +../../data/yoloGtold1/train/73522.png +../../data/yoloGtold1/train/73523.png +../../data/yoloGtold1/train/73524.png +../../data/yoloGtold1/train/73525.png +../../data/yoloGtold1/train/73526.png +../../data/yoloGtold1/train/73527.png +../../data/yoloGtold1/train/73528.png +../../data/yoloGtold1/train/73529.png +../../data/yoloGtold1/train/73530.png +../../data/yoloGtold1/train/73531.png +../../data/yoloGtold1/train/73532.png +../../data/yoloGtold1/train/73533.png +../../data/yoloGtold1/train/73534.png +../../data/yoloGtold1/train/73535.png +../../data/yoloGtold1/train/73536.png +../../data/yoloGtold1/train/73537.png +../../data/yoloGtold1/train/73538.png +../../data/yoloGtold1/train/73539.png +../../data/yoloGtold1/train/73540.png +../../data/yoloGtold1/train/73541.png +../../data/yoloGtold1/train/73542.png +../../data/yoloGtold1/train/73543.png +../../data/yoloGtold1/train/73544.png +../../data/yoloGtold1/train/73545.png +../../data/yoloGtold1/train/73546.png +../../data/yoloGtold1/train/73547.png +../../data/yoloGtold1/train/73548.png +../../data/yoloGtold1/train/73549.png +../../data/yoloGtold1/train/73550.png +../../data/yoloGtold1/train/73551.png +../../data/yoloGtold1/train/73552.png +../../data/yoloGtold1/train/73553.png +../../data/yoloGtold1/train/73554.png +../../data/yoloGtold1/train/73555.png +../../data/yoloGtold1/train/73556.png +../../data/yoloGtold1/train/73557.png +../../data/yoloGtold1/train/73558.png +../../data/yoloGtold1/train/73559.png +../../data/yoloGtold1/train/73560.png +../../data/yoloGtold1/train/73561.png +../../data/yoloGtold1/train/73562.png +../../data/yoloGtold1/train/73563.png +../../data/yoloGtold1/train/73564.png +../../data/yoloGtold1/train/73565.png +../../data/yoloGtold1/train/73566.png +../../data/yoloGtold1/train/73567.png +../../data/yoloGtold1/train/73568.png +../../data/yoloGtold1/train/73569.png +../../data/yoloGtold1/train/73570.png +../../data/yoloGtold1/train/73571.png +../../data/yoloGtold1/train/73572.png +../../data/yoloGtold1/train/73573.png +../../data/yoloGtold1/train/73574.png +../../data/yoloGtold1/train/73575.png +../../data/yoloGtold1/train/73576.png +../../data/yoloGtold1/train/73577.png +../../data/yoloGtold1/train/73578.png +../../data/yoloGtold1/train/73579.png +../../data/yoloGtold1/train/73580.png +../../data/yoloGtold1/train/73581.png +../../data/yoloGtold1/train/73582.png +../../data/yoloGtold1/train/73583.png +../../data/yoloGtold1/train/73584.png +../../data/yoloGtold1/train/73585.png +../../data/yoloGtold1/train/73586.png +../../data/yoloGtold1/train/73587.png +../../data/yoloGtold1/train/73588.png +../../data/yoloGtold1/train/73589.png +../../data/yoloGtold1/train/73590.png +../../data/yoloGtold1/train/73591.png +../../data/yoloGtold1/train/73592.png +../../data/yoloGtold1/train/73593.png +../../data/yoloGtold1/train/73594.png +../../data/yoloGtold1/train/73595.png +../../data/yoloGtold1/train/73596.png +../../data/yoloGtold1/train/73597.png +../../data/yoloGtold1/train/73598.png +../../data/yoloGtold1/train/73599.png +../../data/yoloGtold1/train/73600.png +../../data/yoloGtold1/train/73601.png +../../data/yoloGtold1/train/73602.png +../../data/yoloGtold1/train/73603.png +../../data/yoloGtold1/train/73604.png +../../data/yoloGtold1/train/73605.png +../../data/yoloGtold1/train/73606.png +../../data/yoloGtold1/train/73607.png +../../data/yoloGtold1/train/73608.png +../../data/yoloGtold1/train/73609.png +../../data/yoloGtold1/train/73610.png +../../data/yoloGtold1/train/73611.png +../../data/yoloGtold1/train/73612.png +../../data/yoloGtold1/train/73613.png +../../data/yoloGtold1/train/73614.png +../../data/yoloGtold1/train/73615.png +../../data/yoloGtold1/train/73616.png +../../data/yoloGtold1/train/73617.png +../../data/yoloGtold1/train/73618.png +../../data/yoloGtold1/train/73619.png +../../data/yoloGtold1/train/73620.png +../../data/yoloGtold1/train/73621.png +../../data/yoloGtold1/train/73622.png +../../data/yoloGtold1/train/73623.png +../../data/yoloGtold1/train/73624.png +../../data/yoloGtold1/train/73625.png +../../data/yoloGtold1/train/73626.png +../../data/yoloGtold1/train/73627.png +../../data/yoloGtold1/train/73628.png +../../data/yoloGtold1/train/73629.png +../../data/yoloGtold1/train/73630.png +../../data/yoloGtold1/train/73631.png +../../data/yoloGtold1/train/73632.png +../../data/yoloGtold1/train/73633.png +../../data/yoloGtold1/train/73634.png +../../data/yoloGtold1/train/73635.png +../../data/yoloGtold1/train/73636.png +../../data/yoloGtold1/train/73637.png +../../data/yoloGtold1/train/73638.png +../../data/yoloGtold1/train/73639.png +../../data/yoloGtold1/train/73640.png +../../data/yoloGtold1/train/73641.png +../../data/yoloGtold1/train/73642.png +../../data/yoloGtold1/train/73643.png +../../data/yoloGtold1/train/73644.png +../../data/yoloGtold1/train/73645.png +../../data/yoloGtold1/train/73646.png +../../data/yoloGtold1/train/73647.png +../../data/yoloGtold1/train/73648.png +../../data/yoloGtold1/train/73649.png +../../data/yoloGtold1/train/73650.png +../../data/yoloGtold1/train/73651.png +../../data/yoloGtold1/train/73652.png +../../data/yoloGtold1/train/73653.png +../../data/yoloGtold1/train/73654.png +../../data/yoloGtold1/train/73655.png +../../data/yoloGtold1/train/73656.png +../../data/yoloGtold1/train/73657.png +../../data/yoloGtold1/train/73658.png +../../data/yoloGtold1/train/73659.png +../../data/yoloGtold1/train/73660.png +../../data/yoloGtold1/train/73661.png +../../data/yoloGtold1/train/73662.png +../../data/yoloGtold1/train/73663.png +../../data/yoloGtold1/train/73664.png +../../data/yoloGtold1/train/73665.png +../../data/yoloGtold1/train/73666.png +../../data/yoloGtold1/train/73667.png +../../data/yoloGtold1/train/73668.png +../../data/yoloGtold1/train/73669.png +../../data/yoloGtold1/train/73670.png +../../data/yoloGtold1/train/73671.png +../../data/yoloGtold1/train/73672.png +../../data/yoloGtold1/train/73673.png +../../data/yoloGtold1/train/73674.png +../../data/yoloGtold1/train/73675.png +../../data/yoloGtold1/train/73676.png +../../data/yoloGtold1/train/73677.png +../../data/yoloGtold1/train/73678.png +../../data/yoloGtold1/train/73679.png +../../data/yoloGtold1/train/73680.png +../../data/yoloGtold1/train/73681.png +../../data/yoloGtold1/train/73682.png +../../data/yoloGtold1/train/73683.png +../../data/yoloGtold1/train/73684.png +../../data/yoloGtold1/train/73685.png +../../data/yoloGtold1/train/73686.png +../../data/yoloGtold1/train/73687.png +../../data/yoloGtold1/train/73688.png +../../data/yoloGtold1/train/73689.png +../../data/yoloGtold1/train/73690.png +../../data/yoloGtold1/train/73691.png +../../data/yoloGtold1/train/73692.png +../../data/yoloGtold1/train/73693.png +../../data/yoloGtold1/train/73694.png +../../data/yoloGtold1/train/73695.png +../../data/yoloGtold1/train/73696.png +../../data/yoloGtold1/train/73697.png +../../data/yoloGtold1/train/73698.png +../../data/yoloGtold1/train/73699.png +../../data/yoloGtold1/train/73700.png +../../data/yoloGtold1/train/73701.png +../../data/yoloGtold1/train/73702.png +../../data/yoloGtold1/train/73703.png +../../data/yoloGtold1/train/73704.png +../../data/yoloGtold1/train/73705.png +../../data/yoloGtold1/train/73706.png +../../data/yoloGtold1/train/73707.png +../../data/yoloGtold1/train/73708.png +../../data/yoloGtold1/train/73709.png +../../data/yoloGtold1/train/73710.png +../../data/yoloGtold1/train/73711.png +../../data/yoloGtold1/train/73712.png +../../data/yoloGtold1/train/73713.png +../../data/yoloGtold1/train/73714.png +../../data/yoloGtold1/train/73715.png +../../data/yoloGtold1/train/73716.png +../../data/yoloGtold1/train/73717.png +../../data/yoloGtold1/train/73718.png +../../data/yoloGtold1/train/73719.png +../../data/yoloGtold1/train/73720.png +../../data/yoloGtold1/train/73721.png +../../data/yoloGtold1/train/73722.png +../../data/yoloGtold1/train/73723.png +../../data/yoloGtold1/train/73724.png +../../data/yoloGtold1/train/73725.png +../../data/yoloGtold1/train/73726.png +../../data/yoloGtold1/train/73727.png +../../data/yoloGtold1/train/73728.png +../../data/yoloGtold1/train/73729.png +../../data/yoloGtold1/train/73730.png +../../data/yoloGtold1/train/73731.png +../../data/yoloGtold1/train/73732.png +../../data/yoloGtold1/train/73733.png +../../data/yoloGtold1/train/73734.png +../../data/yoloGtold1/train/73735.png +../../data/yoloGtold1/train/73736.png +../../data/yoloGtold1/train/73737.png +../../data/yoloGtold1/train/73738.png +../../data/yoloGtold1/train/73739.png +../../data/yoloGtold1/train/73740.png +../../data/yoloGtold1/train/73741.png +../../data/yoloGtold1/train/73742.png +../../data/yoloGtold1/train/73743.png +../../data/yoloGtold1/train/73744.png +../../data/yoloGtold1/train/73745.png +../../data/yoloGtold1/train/73746.png +../../data/yoloGtold1/train/73747.png +../../data/yoloGtold1/train/73748.png +../../data/yoloGtold1/train/73749.png +../../data/yoloGtold1/train/73750.png +../../data/yoloGtold1/train/73751.png +../../data/yoloGtold1/train/73752.png +../../data/yoloGtold1/train/73753.png +../../data/yoloGtold1/train/73754.png +../../data/yoloGtold1/train/73755.png +../../data/yoloGtold1/train/73756.png +../../data/yoloGtold1/train/73757.png +../../data/yoloGtold1/train/73758.png +../../data/yoloGtold1/train/73759.png +../../data/yoloGtold1/train/73760.png +../../data/yoloGtold1/train/73761.png +../../data/yoloGtold1/train/73762.png +../../data/yoloGtold1/train/73763.png +../../data/yoloGtold1/train/73764.png +../../data/yoloGtold1/train/73765.png +../../data/yoloGtold1/train/73766.png +../../data/yoloGtold1/train/73767.png +../../data/yoloGtold1/train/73768.png +../../data/yoloGtold1/train/73769.png +../../data/yoloGtold1/train/73770.png +../../data/yoloGtold1/train/73771.png +../../data/yoloGtold1/train/73772.png +../../data/yoloGtold1/train/73773.png +../../data/yoloGtold1/train/73774.png +../../data/yoloGtold1/train/73775.png +../../data/yoloGtold1/train/73776.png +../../data/yoloGtold1/train/73777.png +../../data/yoloGtold1/train/73778.png +../../data/yoloGtold1/train/73779.png +../../data/yoloGtold1/train/73780.png +../../data/yoloGtold1/train/73781.png +../../data/yoloGtold1/train/73782.png +../../data/yoloGtold1/train/73783.png +../../data/yoloGtold1/train/73784.png +../../data/yoloGtold1/train/73785.png +../../data/yoloGtold1/train/73786.png +../../data/yoloGtold1/train/73787.png +../../data/yoloGtold1/train/73788.png +../../data/yoloGtold1/train/73789.png +../../data/yoloGtold1/train/73790.png +../../data/yoloGtold1/train/73791.png +../../data/yoloGtold1/train/73792.png +../../data/yoloGtold1/train/73793.png +../../data/yoloGtold1/train/73794.png +../../data/yoloGtold1/train/73795.png +../../data/yoloGtold1/train/73796.png +../../data/yoloGtold1/train/73797.png +../../data/yoloGtold1/train/73798.png +../../data/yoloGtold1/train/73799.png +../../data/yoloGtold1/train/73800.png +../../data/yoloGtold1/train/73801.png +../../data/yoloGtold1/train/73802.png +../../data/yoloGtold1/train/73803.png +../../data/yoloGtold1/train/73804.png +../../data/yoloGtold1/train/73805.png +../../data/yoloGtold1/train/73806.png +../../data/yoloGtold1/train/73807.png +../../data/yoloGtold1/train/73808.png +../../data/yoloGtold1/train/73809.png +../../data/yoloGtold1/train/73810.png +../../data/yoloGtold1/train/73811.png +../../data/yoloGtold1/train/73812.png +../../data/yoloGtold1/train/73813.png +../../data/yoloGtold1/train/73814.png +../../data/yoloGtold1/train/73815.png +../../data/yoloGtold1/train/73816.png +../../data/yoloGtold1/train/73817.png +../../data/yoloGtold1/train/73818.png +../../data/yoloGtold1/train/73819.png +../../data/yoloGtold1/train/73820.png +../../data/yoloGtold1/train/73821.png +../../data/yoloGtold1/train/73822.png +../../data/yoloGtold1/train/73823.png +../../data/yoloGtold1/train/73824.png +../../data/yoloGtold1/train/73825.png +../../data/yoloGtold1/train/73826.png +../../data/yoloGtold1/train/73827.png +../../data/yoloGtold1/train/73828.png +../../data/yoloGtold1/train/73829.png +../../data/yoloGtold1/train/73830.png +../../data/yoloGtold1/train/73831.png +../../data/yoloGtold1/train/73832.png +../../data/yoloGtold1/train/73833.png +../../data/yoloGtold1/train/73834.png +../../data/yoloGtold1/train/73835.png +../../data/yoloGtold1/train/73836.png +../../data/yoloGtold1/train/73837.png +../../data/yoloGtold1/train/73838.png +../../data/yoloGtold1/train/73839.png +../../data/yoloGtold1/train/73840.png +../../data/yoloGtold1/train/73841.png +../../data/yoloGtold1/train/73842.png +../../data/yoloGtold1/train/73843.png +../../data/yoloGtold1/train/73844.png +../../data/yoloGtold1/train/73845.png +../../data/yoloGtold1/train/73846.png +../../data/yoloGtold1/train/73847.png +../../data/yoloGtold1/train/73848.png +../../data/yoloGtold1/train/73849.png +../../data/yoloGtold1/train/73850.png +../../data/yoloGtold1/train/73851.png +../../data/yoloGtold1/train/73852.png +../../data/yoloGtold1/train/73853.png +../../data/yoloGtold1/train/73854.png +../../data/yoloGtold1/train/73855.png +../../data/yoloGtold1/train/73856.png +../../data/yoloGtold1/train/73857.png +../../data/yoloGtold1/train/73858.png +../../data/yoloGtold1/train/73859.png +../../data/yoloGtold1/train/73860.png +../../data/yoloGtold1/train/73861.png +../../data/yoloGtold1/train/73862.png +../../data/yoloGtold1/train/73863.png +../../data/yoloGtold1/train/73864.png +../../data/yoloGtold1/train/73865.png +../../data/yoloGtold1/train/73866.png +../../data/yoloGtold1/train/73867.png +../../data/yoloGtold1/train/73868.png +../../data/yoloGtold1/train/73869.png +../../data/yoloGtold1/train/73870.png +../../data/yoloGtold1/train/73871.png +../../data/yoloGtold1/train/73872.png +../../data/yoloGtold1/train/73873.png +../../data/yoloGtold1/train/73874.png +../../data/yoloGtold1/train/73875.png +../../data/yoloGtold1/train/73876.png +../../data/yoloGtold1/train/73877.png +../../data/yoloGtold1/train/73878.png +../../data/yoloGtold1/train/73879.png +../../data/yoloGtold1/train/73880.png +../../data/yoloGtold1/train/73881.png +../../data/yoloGtold1/train/73882.png +../../data/yoloGtold1/train/73883.png +../../data/yoloGtold1/train/73884.png +../../data/yoloGtold1/train/73885.png +../../data/yoloGtold1/train/73886.png +../../data/yoloGtold1/train/73887.png +../../data/yoloGtold1/train/73888.png +../../data/yoloGtold1/train/73889.png +../../data/yoloGtold1/train/73890.png +../../data/yoloGtold1/train/73891.png +../../data/yoloGtold1/train/73892.png +../../data/yoloGtold1/train/73893.png +../../data/yoloGtold1/train/73894.png +../../data/yoloGtold1/train/73895.png +../../data/yoloGtold1/train/73896.png +../../data/yoloGtold1/train/73897.png +../../data/yoloGtold1/train/73898.png +../../data/yoloGtold1/train/73899.png +../../data/yoloGtold1/train/73900.png +../../data/yoloGtold1/train/73901.png +../../data/yoloGtold1/train/73902.png +../../data/yoloGtold1/train/73903.png +../../data/yoloGtold1/train/73904.png +../../data/yoloGtold1/train/73905.png +../../data/yoloGtold1/train/73906.png +../../data/yoloGtold1/train/73907.png +../../data/yoloGtold1/train/73908.png +../../data/yoloGtold1/train/73909.png +../../data/yoloGtold1/train/73910.png +../../data/yoloGtold1/train/73911.png +../../data/yoloGtold1/train/73912.png +../../data/yoloGtold1/train/73913.png +../../data/yoloGtold1/train/73914.png +../../data/yoloGtold1/train/73915.png +../../data/yoloGtold1/train/73916.png +../../data/yoloGtold1/train/73917.png +../../data/yoloGtold1/train/73918.png +../../data/yoloGtold1/train/73919.png +../../data/yoloGtold1/train/73920.png +../../data/yoloGtold1/train/73921.png +../../data/yoloGtold1/train/73922.png +../../data/yoloGtold1/train/73923.png +../../data/yoloGtold1/train/73924.png +../../data/yoloGtold1/train/73925.png +../../data/yoloGtold1/train/73926.png +../../data/yoloGtold1/train/73927.png +../../data/yoloGtold1/train/73928.png +../../data/yoloGtold1/train/73929.png +../../data/yoloGtold1/train/73930.png +../../data/yoloGtold1/train/73931.png +../../data/yoloGtold1/train/73932.png +../../data/yoloGtold1/train/73933.png +../../data/yoloGtold1/train/73934.png +../../data/yoloGtold1/train/73935.png +../../data/yoloGtold1/train/73936.png +../../data/yoloGtold1/train/73937.png +../../data/yoloGtold1/train/73938.png +../../data/yoloGtold1/train/73939.png +../../data/yoloGtold1/train/73940.png +../../data/yoloGtold1/train/73941.png +../../data/yoloGtold1/train/73942.png +../../data/yoloGtold1/train/73943.png +../../data/yoloGtold1/train/73944.png +../../data/yoloGtold1/train/73945.png +../../data/yoloGtold1/train/73946.png +../../data/yoloGtold1/train/73947.png +../../data/yoloGtold1/train/73948.png +../../data/yoloGtold1/train/73949.png +../../data/yoloGtold1/train/73950.png +../../data/yoloGtold1/train/73951.png +../../data/yoloGtold1/train/73952.png +../../data/yoloGtold1/train/73953.png +../../data/yoloGtold1/train/73954.png +../../data/yoloGtold1/train/73955.png +../../data/yoloGtold1/train/73956.png +../../data/yoloGtold1/train/73957.png +../../data/yoloGtold1/train/73958.png +../../data/yoloGtold1/train/73959.png +../../data/yoloGtold1/train/73960.png +../../data/yoloGtold1/train/73961.png +../../data/yoloGtold1/train/73962.png +../../data/yoloGtold1/train/73963.png +../../data/yoloGtold1/train/73964.png +../../data/yoloGtold1/train/73965.png +../../data/yoloGtold1/train/73966.png +../../data/yoloGtold1/train/73967.png +../../data/yoloGtold1/train/73968.png +../../data/yoloGtold1/train/73969.png +../../data/yoloGtold1/train/73970.png +../../data/yoloGtold1/train/73971.png +../../data/yoloGtold1/train/73972.png +../../data/yoloGtold1/train/73973.png +../../data/yoloGtold1/train/73974.png +../../data/yoloGtold1/train/73975.png +../../data/yoloGtold1/train/73976.png +../../data/yoloGtold1/train/73977.png +../../data/yoloGtold1/train/73978.png +../../data/yoloGtold1/train/73979.png +../../data/yoloGtold1/train/73980.png +../../data/yoloGtold1/train/73981.png +../../data/yoloGtold1/train/73982.png +../../data/yoloGtold1/train/73983.png +../../data/yoloGtold1/train/73984.png +../../data/yoloGtold1/train/73985.png +../../data/yoloGtold1/train/73986.png +../../data/yoloGtold1/train/73987.png +../../data/yoloGtold1/train/73988.png +../../data/yoloGtold1/train/73989.png +../../data/yoloGtold1/train/73990.png +../../data/yoloGtold1/train/73991.png +../../data/yoloGtold1/train/73992.png +../../data/yoloGtold1/train/73993.png +../../data/yoloGtold1/train/73994.png +../../data/yoloGtold1/train/73995.png +../../data/yoloGtold1/train/73996.png +../../data/yoloGtold1/train/73997.png +../../data/yoloGtold1/train/73998.png +../../data/yoloGtold1/train/73999.png +../../data/yoloGtold1/train/74000.png +../../data/yoloGtold1/train/74001.png +../../data/yoloGtold1/train/74002.png +../../data/yoloGtold1/train/74003.png +../../data/yoloGtold1/train/74004.png +../../data/yoloGtold1/train/74005.png +../../data/yoloGtold1/train/74006.png +../../data/yoloGtold1/train/74007.png +../../data/yoloGtold1/train/74008.png +../../data/yoloGtold1/train/74009.png +../../data/yoloGtold1/train/74010.png +../../data/yoloGtold1/train/74011.png +../../data/yoloGtold1/train/74012.png +../../data/yoloGtold1/train/74013.png +../../data/yoloGtold1/train/74014.png +../../data/yoloGtold1/train/74015.png +../../data/yoloGtold1/train/74016.png +../../data/yoloGtold1/train/74017.png +../../data/yoloGtold1/train/74018.png +../../data/yoloGtold1/train/74019.png +../../data/yoloGtold1/train/74020.png +../../data/yoloGtold1/train/74021.png +../../data/yoloGtold1/train/74022.png +../../data/yoloGtold1/train/74023.png +../../data/yoloGtold1/train/74024.png +../../data/yoloGtold1/train/74025.png +../../data/yoloGtold1/train/74026.png +../../data/yoloGtold1/train/74027.png +../../data/yoloGtold1/train/74028.png +../../data/yoloGtold1/train/74029.png +../../data/yoloGtold1/train/74030.png +../../data/yoloGtold1/train/74031.png +../../data/yoloGtold1/train/74032.png +../../data/yoloGtold1/train/74033.png +../../data/yoloGtold1/train/74034.png +../../data/yoloGtold1/train/74035.png +../../data/yoloGtold1/train/74036.png +../../data/yoloGtold1/train/74037.png +../../data/yoloGtold1/train/74038.png +../../data/yoloGtold1/train/74039.png +../../data/yoloGtold1/train/74040.png +../../data/yoloGtold1/train/74041.png +../../data/yoloGtold1/train/74042.png +../../data/yoloGtold1/train/74043.png +../../data/yoloGtold1/train/74044.png +../../data/yoloGtold1/train/74045.png +../../data/yoloGtold1/train/74046.png +../../data/yoloGtold1/train/74047.png +../../data/yoloGtold1/train/74048.png +../../data/yoloGtold1/train/74049.png +../../data/yoloGtold1/train/74050.png +../../data/yoloGtold1/train/74051.png +../../data/yoloGtold1/train/74052.png +../../data/yoloGtold1/train/74053.png +../../data/yoloGtold1/train/74054.png +../../data/yoloGtold1/train/74055.png +../../data/yoloGtold1/train/74056.png +../../data/yoloGtold1/train/74057.png +../../data/yoloGtold1/train/74058.png +../../data/yoloGtold1/train/74059.png +../../data/yoloGtold1/train/74060.png +../../data/yoloGtold1/train/74061.png +../../data/yoloGtold1/train/74062.png +../../data/yoloGtold1/train/74063.png +../../data/yoloGtold1/train/74064.png +../../data/yoloGtold1/train/74065.png +../../data/yoloGtold1/train/74066.png +../../data/yoloGtold1/train/74067.png +../../data/yoloGtold1/train/74068.png +../../data/yoloGtold1/train/74069.png +../../data/yoloGtold1/train/74070.png +../../data/yoloGtold1/train/74071.png +../../data/yoloGtold1/train/74072.png +../../data/yoloGtold1/train/74073.png +../../data/yoloGtold1/train/74074.png +../../data/yoloGtold1/train/74075.png +../../data/yoloGtold1/train/74076.png +../../data/yoloGtold1/train/74077.png +../../data/yoloGtold1/train/74078.png +../../data/yoloGtold1/train/74079.png +../../data/yoloGtold1/train/74080.png +../../data/yoloGtold1/train/74081.png +../../data/yoloGtold1/train/74082.png +../../data/yoloGtold1/train/74083.png +../../data/yoloGtold1/train/74084.png +../../data/yoloGtold1/train/74085.png +../../data/yoloGtold1/train/74086.png +../../data/yoloGtold1/train/74087.png +../../data/yoloGtold1/train/74088.png +../../data/yoloGtold1/train/74089.png +../../data/yoloGtold1/train/74090.png +../../data/yoloGtold1/train/74091.png +../../data/yoloGtold1/train/74092.png +../../data/yoloGtold1/train/74093.png +../../data/yoloGtold1/train/74094.png +../../data/yoloGtold1/train/74095.png +../../data/yoloGtold1/train/74096.png +../../data/yoloGtold1/train/74097.png +../../data/yoloGtold1/train/74098.png +../../data/yoloGtold1/train/74099.png +../../data/yoloGtold1/train/74100.png +../../data/yoloGtold1/train/74101.png +../../data/yoloGtold1/train/74102.png +../../data/yoloGtold1/train/74103.png +../../data/yoloGtold1/train/74104.png +../../data/yoloGtold1/train/74105.png +../../data/yoloGtold1/train/74106.png +../../data/yoloGtold1/train/74107.png +../../data/yoloGtold1/train/74108.png +../../data/yoloGtold1/train/74109.png +../../data/yoloGtold1/train/74110.png +../../data/yoloGtold1/train/74111.png +../../data/yoloGtold1/train/74112.png +../../data/yoloGtold1/train/74113.png +../../data/yoloGtold1/train/74114.png +../../data/yoloGtold1/train/74115.png +../../data/yoloGtold1/train/74116.png +../../data/yoloGtold1/train/74117.png +../../data/yoloGtold1/train/74118.png +../../data/yoloGtold1/train/74119.png +../../data/yoloGtold1/train/74120.png +../../data/yoloGtold1/train/74121.png +../../data/yoloGtold1/train/74122.png +../../data/yoloGtold1/train/74123.png +../../data/yoloGtold1/train/74124.png +../../data/yoloGtold1/train/74125.png +../../data/yoloGtold1/train/74126.png +../../data/yoloGtold1/train/74127.png +../../data/yoloGtold1/train/74128.png +../../data/yoloGtold1/train/74129.png +../../data/yoloGtold1/train/74130.png +../../data/yoloGtold1/train/74131.png +../../data/yoloGtold1/train/74132.png +../../data/yoloGtold1/train/74133.png +../../data/yoloGtold1/train/74134.png +../../data/yoloGtold1/train/74135.png +../../data/yoloGtold1/train/74136.png +../../data/yoloGtold1/train/74137.png +../../data/yoloGtold1/train/74138.png +../../data/yoloGtold1/train/74139.png +../../data/yoloGtold1/train/74140.png +../../data/yoloGtold1/train/74141.png +../../data/yoloGtold1/train/74142.png +../../data/yoloGtold1/train/74143.png +../../data/yoloGtold1/train/74144.png +../../data/yoloGtold1/train/74145.png +../../data/yoloGtold1/train/74146.png +../../data/yoloGtold1/train/74147.png +../../data/yoloGtold1/train/74148.png +../../data/yoloGtold1/train/74149.png +../../data/yoloGtold1/train/74150.png +../../data/yoloGtold1/train/74151.png +../../data/yoloGtold1/train/74152.png +../../data/yoloGtold1/train/74153.png +../../data/yoloGtold1/train/74154.png +../../data/yoloGtold1/train/74155.png +../../data/yoloGtold1/train/74156.png +../../data/yoloGtold1/train/74157.png +../../data/yoloGtold1/train/74158.png +../../data/yoloGtold1/train/74159.png +../../data/yoloGtold1/train/74160.png +../../data/yoloGtold1/train/74161.png +../../data/yoloGtold1/train/74162.png +../../data/yoloGtold1/train/74163.png +../../data/yoloGtold1/train/74164.png +../../data/yoloGtold1/train/74165.png +../../data/yoloGtold1/train/74166.png +../../data/yoloGtold1/train/74167.png +../../data/yoloGtold1/train/74168.png +../../data/yoloGtold1/train/74169.png +../../data/yoloGtold1/train/74170.png +../../data/yoloGtold1/train/74171.png +../../data/yoloGtold1/train/74172.png +../../data/yoloGtold1/train/74173.png +../../data/yoloGtold1/train/74174.png +../../data/yoloGtold1/train/74175.png +../../data/yoloGtold1/train/74176.png +../../data/yoloGtold1/train/74177.png +../../data/yoloGtold1/train/74178.png +../../data/yoloGtold1/train/74179.png +../../data/yoloGtold1/train/74180.png +../../data/yoloGtold1/train/74181.png +../../data/yoloGtold1/train/74182.png +../../data/yoloGtold1/train/74183.png +../../data/yoloGtold1/train/74184.png +../../data/yoloGtold1/train/74185.png +../../data/yoloGtold1/train/74186.png +../../data/yoloGtold1/train/74187.png +../../data/yoloGtold1/train/74188.png +../../data/yoloGtold1/train/74189.png +../../data/yoloGtold1/train/74190.png +../../data/yoloGtold1/train/74191.png +../../data/yoloGtold1/train/74192.png +../../data/yoloGtold1/train/74193.png +../../data/yoloGtold1/train/74194.png +../../data/yoloGtold1/train/74195.png +../../data/yoloGtold1/train/74196.png +../../data/yoloGtold1/train/74197.png +../../data/yoloGtold1/train/74198.png +../../data/yoloGtold1/train/74199.png +../../data/yoloGtold1/train/74200.png +../../data/yoloGtold1/train/74201.png +../../data/yoloGtold1/train/74202.png +../../data/yoloGtold1/train/74203.png +../../data/yoloGtold1/train/74204.png +../../data/yoloGtold1/train/74205.png +../../data/yoloGtold1/train/74206.png +../../data/yoloGtold1/train/74207.png +../../data/yoloGtold1/train/74208.png +../../data/yoloGtold1/train/74209.png +../../data/yoloGtold1/train/74210.png +../../data/yoloGtold1/train/74211.png +../../data/yoloGtold1/train/74212.png +../../data/yoloGtold1/train/74213.png +../../data/yoloGtold1/train/74214.png +../../data/yoloGtold1/train/74215.png +../../data/yoloGtold1/train/74216.png +../../data/yoloGtold1/train/74217.png +../../data/yoloGtold1/train/74218.png +../../data/yoloGtold1/train/74219.png +../../data/yoloGtold1/train/74220.png +../../data/yoloGtold1/train/74221.png +../../data/yoloGtold1/train/74222.png +../../data/yoloGtold1/train/74223.png +../../data/yoloGtold1/train/74224.png +../../data/yoloGtold1/train/74225.png +../../data/yoloGtold1/train/74226.png +../../data/yoloGtold1/train/74227.png +../../data/yoloGtold1/train/74228.png +../../data/yoloGtold1/train/74229.png +../../data/yoloGtold1/train/74230.png +../../data/yoloGtold1/train/74231.png +../../data/yoloGtold1/train/74232.png +../../data/yoloGtold1/train/74233.png +../../data/yoloGtold1/train/74234.png +../../data/yoloGtold1/train/74235.png +../../data/yoloGtold1/train/74236.png +../../data/yoloGtold1/train/74237.png +../../data/yoloGtold1/train/74238.png +../../data/yoloGtold1/train/74239.png +../../data/yoloGtold1/train/74240.png +../../data/yoloGtold1/train/74241.png +../../data/yoloGtold1/train/74242.png +../../data/yoloGtold1/train/74243.png +../../data/yoloGtold1/train/74244.png +../../data/yoloGtold1/train/74245.png +../../data/yoloGtold1/train/74246.png +../../data/yoloGtold1/train/74247.png +../../data/yoloGtold1/train/74248.png +../../data/yoloGtold1/train/74249.png +../../data/yoloGtold1/train/74250.png +../../data/yoloGtold1/train/74251.png +../../data/yoloGtold1/train/74252.png +../../data/yoloGtold1/train/74253.png +../../data/yoloGtold1/train/74254.png +../../data/yoloGtold1/train/74255.png +../../data/yoloGtold1/train/74256.png +../../data/yoloGtold1/train/74257.png +../../data/yoloGtold1/train/74258.png +../../data/yoloGtold1/train/74259.png +../../data/yoloGtold1/train/74260.png +../../data/yoloGtold1/train/74261.png +../../data/yoloGtold1/train/74262.png +../../data/yoloGtold1/train/74263.png +../../data/yoloGtold1/train/74264.png +../../data/yoloGtold1/train/74265.png +../../data/yoloGtold1/train/74266.png +../../data/yoloGtold1/train/74267.png +../../data/yoloGtold1/train/74268.png +../../data/yoloGtold1/train/74269.png +../../data/yoloGtold1/train/74270.png +../../data/yoloGtold1/train/74271.png +../../data/yoloGtold1/train/74272.png +../../data/yoloGtold1/train/74273.png +../../data/yoloGtold1/train/74274.png +../../data/yoloGtold1/train/74275.png +../../data/yoloGtold1/train/74276.png +../../data/yoloGtold1/train/74277.png +../../data/yoloGtold1/train/74278.png +../../data/yoloGtold1/train/74279.png +../../data/yoloGtold1/train/74280.png +../../data/yoloGtold1/train/74281.png +../../data/yoloGtold1/train/74282.png +../../data/yoloGtold1/train/74283.png +../../data/yoloGtold1/train/74284.png +../../data/yoloGtold1/train/74285.png +../../data/yoloGtold1/train/74286.png +../../data/yoloGtold1/train/74287.png +../../data/yoloGtold1/train/74288.png +../../data/yoloGtold1/train/74289.png +../../data/yoloGtold1/train/74290.png +../../data/yoloGtold1/train/74291.png +../../data/yoloGtold1/train/74292.png +../../data/yoloGtold1/train/74293.png +../../data/yoloGtold1/train/74294.png +../../data/yoloGtold1/train/74295.png +../../data/yoloGtold1/train/74296.png +../../data/yoloGtold1/train/74297.png +../../data/yoloGtold1/train/74298.png +../../data/yoloGtold1/train/74299.png +../../data/yoloGtold1/train/74300.png +../../data/yoloGtold1/train/74301.png +../../data/yoloGtold1/train/74302.png +../../data/yoloGtold1/train/74303.png +../../data/yoloGtold1/train/74304.png +../../data/yoloGtold1/train/74305.png +../../data/yoloGtold1/train/74306.png +../../data/yoloGtold1/train/74307.png +../../data/yoloGtold1/train/74308.png +../../data/yoloGtold1/train/74309.png +../../data/yoloGtold1/train/74310.png +../../data/yoloGtold1/train/74311.png +../../data/yoloGtold1/train/74312.png +../../data/yoloGtold1/train/74313.png +../../data/yoloGtold1/train/74314.png +../../data/yoloGtold1/train/74315.png +../../data/yoloGtold1/train/74316.png +../../data/yoloGtold1/train/74317.png +../../data/yoloGtold1/train/74318.png +../../data/yoloGtold1/train/74319.png +../../data/yoloGtold1/train/74320.png +../../data/yoloGtold1/train/74321.png +../../data/yoloGtold1/train/74322.png +../../data/yoloGtold1/train/74323.png +../../data/yoloGtold1/train/74324.png +../../data/yoloGtold1/train/74325.png +../../data/yoloGtold1/train/74326.png +../../data/yoloGtold1/train/74327.png +../../data/yoloGtold1/train/74328.png +../../data/yoloGtold1/train/74329.png +../../data/yoloGtold1/train/74330.png +../../data/yoloGtold1/train/74331.png +../../data/yoloGtold1/train/74332.png +../../data/yoloGtold1/train/74333.png +../../data/yoloGtold1/train/74334.png +../../data/yoloGtold1/train/74335.png +../../data/yoloGtold1/train/74336.png +../../data/yoloGtold1/train/74337.png +../../data/yoloGtold1/train/74338.png +../../data/yoloGtold1/train/74339.png +../../data/yoloGtold1/train/74340.png +../../data/yoloGtold1/train/74341.png +../../data/yoloGtold1/train/74342.png +../../data/yoloGtold1/train/74343.png +../../data/yoloGtold1/train/74344.png +../../data/yoloGtold1/train/74345.png +../../data/yoloGtold1/train/74346.png +../../data/yoloGtold1/train/74347.png +../../data/yoloGtold1/train/74348.png +../../data/yoloGtold1/train/74349.png +../../data/yoloGtold1/train/74350.png +../../data/yoloGtold1/train/74351.png +../../data/yoloGtold1/train/74352.png +../../data/yoloGtold1/train/74353.png +../../data/yoloGtold1/train/74354.png +../../data/yoloGtold1/train/74355.png +../../data/yoloGtold1/train/74356.png +../../data/yoloGtold1/train/74357.png +../../data/yoloGtold1/train/74358.png +../../data/yoloGtold1/train/74359.png +../../data/yoloGtold1/train/74360.png +../../data/yoloGtold1/train/74361.png +../../data/yoloGtold1/train/74362.png +../../data/yoloGtold1/train/74363.png +../../data/yoloGtold1/train/74364.png +../../data/yoloGtold1/train/74365.png +../../data/yoloGtold1/train/74366.png +../../data/yoloGtold1/train/74367.png +../../data/yoloGtold1/train/74368.png +../../data/yoloGtold1/train/74369.png +../../data/yoloGtold1/train/74370.png +../../data/yoloGtold1/train/74371.png +../../data/yoloGtold1/train/74372.png +../../data/yoloGtold1/train/74373.png +../../data/yoloGtold1/train/74374.png +../../data/yoloGtold1/train/74375.png +../../data/yoloGtold1/train/74376.png +../../data/yoloGtold1/train/74377.png +../../data/yoloGtold1/train/74378.png +../../data/yoloGtold1/train/74379.png +../../data/yoloGtold1/train/74380.png +../../data/yoloGtold1/train/74381.png +../../data/yoloGtold1/train/74382.png +../../data/yoloGtold1/train/74383.png +../../data/yoloGtold1/train/74384.png +../../data/yoloGtold1/train/74385.png +../../data/yoloGtold1/train/74386.png +../../data/yoloGtold1/train/74387.png +../../data/yoloGtold1/train/74388.png +../../data/yoloGtold1/train/74389.png +../../data/yoloGtold1/train/74390.png +../../data/yoloGtold1/train/74391.png +../../data/yoloGtold1/train/74392.png +../../data/yoloGtold1/train/74393.png +../../data/yoloGtold1/train/74394.png +../../data/yoloGtold1/train/74395.png +../../data/yoloGtold1/train/74396.png +../../data/yoloGtold1/train/74397.png +../../data/yoloGtold1/train/74398.png +../../data/yoloGtold1/train/74399.png +../../data/yoloGtold1/train/74400.png +../../data/yoloGtold1/train/74401.png +../../data/yoloGtold1/train/74402.png +../../data/yoloGtold1/train/74403.png +../../data/yoloGtold1/train/74404.png +../../data/yoloGtold1/train/74405.png +../../data/yoloGtold1/train/74406.png +../../data/yoloGtold1/train/74407.png +../../data/yoloGtold1/train/74408.png +../../data/yoloGtold1/train/74409.png +../../data/yoloGtold1/train/74410.png +../../data/yoloGtold1/train/74411.png +../../data/yoloGtold1/train/74412.png +../../data/yoloGtold1/train/74413.png +../../data/yoloGtold1/train/74414.png +../../data/yoloGtold1/train/74415.png +../../data/yoloGtold1/train/74416.png +../../data/yoloGtold1/train/74417.png +../../data/yoloGtold1/train/74418.png +../../data/yoloGtold1/train/74419.png +../../data/yoloGtold1/train/74420.png +../../data/yoloGtold1/train/74421.png +../../data/yoloGtold1/train/74422.png +../../data/yoloGtold1/train/74423.png +../../data/yoloGtold1/train/74424.png +../../data/yoloGtold1/train/74425.png +../../data/yoloGtold1/train/74426.png +../../data/yoloGtold1/train/74427.png +../../data/yoloGtold1/train/74428.png +../../data/yoloGtold1/train/74429.png +../../data/yoloGtold1/train/74430.png +../../data/yoloGtold1/train/74431.png +../../data/yoloGtold1/train/74432.png +../../data/yoloGtold1/train/74433.png +../../data/yoloGtold1/train/74434.png +../../data/yoloGtold1/train/74435.png +../../data/yoloGtold1/train/74436.png +../../data/yoloGtold1/train/74437.png +../../data/yoloGtold1/train/74438.png +../../data/yoloGtold1/train/74439.png +../../data/yoloGtold1/train/74440.png +../../data/yoloGtold1/train/74441.png +../../data/yoloGtold1/train/74442.png +../../data/yoloGtold1/train/74443.png +../../data/yoloGtold1/train/74444.png +../../data/yoloGtold1/train/74445.png +../../data/yoloGtold1/train/74446.png +../../data/yoloGtold1/train/74447.png +../../data/yoloGtold1/train/74448.png +../../data/yoloGtold1/train/74449.png +../../data/yoloGtold1/train/74450.png +../../data/yoloGtold1/train/74451.png +../../data/yoloGtold1/train/74452.png +../../data/yoloGtold1/train/74453.png +../../data/yoloGtold1/train/74454.png +../../data/yoloGtold1/train/74455.png +../../data/yoloGtold1/train/74456.png +../../data/yoloGtold1/train/74457.png +../../data/yoloGtold1/train/74458.png +../../data/yoloGtold1/train/74459.png +../../data/yoloGtold1/train/74460.png +../../data/yoloGtold1/train/74461.png +../../data/yoloGtold1/train/74462.png +../../data/yoloGtold1/train/74463.png +../../data/yoloGtold1/train/74464.png +../../data/yoloGtold1/train/74465.png +../../data/yoloGtold1/train/74466.png +../../data/yoloGtold1/train/74467.png +../../data/yoloGtold1/train/74468.png +../../data/yoloGtold1/train/74469.png +../../data/yoloGtold1/train/74470.png +../../data/yoloGtold1/train/74471.png +../../data/yoloGtold1/train/74472.png +../../data/yoloGtold1/train/74473.png +../../data/yoloGtold1/train/74474.png +../../data/yoloGtold1/train/74475.png +../../data/yoloGtold1/train/74476.png +../../data/yoloGtold1/train/74477.png +../../data/yoloGtold1/train/74478.png +../../data/yoloGtold1/train/74479.png +../../data/yoloGtold1/train/74480.png +../../data/yoloGtold1/train/74481.png +../../data/yoloGtold1/train/74482.png +../../data/yoloGtold1/train/74483.png +../../data/yoloGtold1/train/74484.png +../../data/yoloGtold1/train/74485.png +../../data/yoloGtold1/train/74486.png +../../data/yoloGtold1/train/74487.png +../../data/yoloGtold1/train/74488.png +../../data/yoloGtold1/train/74489.png +../../data/yoloGtold1/train/74490.png +../../data/yoloGtold1/train/74491.png +../../data/yoloGtold1/train/74492.png +../../data/yoloGtold1/train/74493.png +../../data/yoloGtold1/train/74494.png +../../data/yoloGtold1/train/74495.png +../../data/yoloGtold1/train/74496.png +../../data/yoloGtold1/train/74497.png +../../data/yoloGtold1/train/74498.png +../../data/yoloGtold1/train/74499.png +../../data/yoloGtold1/train/74500.png +../../data/yoloGtold1/train/74501.png +../../data/yoloGtold1/train/74502.png +../../data/yoloGtold1/train/74503.png +../../data/yoloGtold1/train/74504.png +../../data/yoloGtold1/train/74505.png +../../data/yoloGtold1/train/74506.png +../../data/yoloGtold1/train/74507.png +../../data/yoloGtold1/train/74508.png +../../data/yoloGtold1/train/74509.png +../../data/yoloGtold1/train/74510.png +../../data/yoloGtold1/train/74511.png +../../data/yoloGtold1/train/74512.png +../../data/yoloGtold1/train/74513.png +../../data/yoloGtold1/train/74514.png +../../data/yoloGtold1/train/74515.png +../../data/yoloGtold1/train/74516.png +../../data/yoloGtold1/train/74517.png +../../data/yoloGtold1/train/74518.png +../../data/yoloGtold1/train/74519.png +../../data/yoloGtold1/train/74520.png +../../data/yoloGtold1/train/74521.png +../../data/yoloGtold1/train/74522.png +../../data/yoloGtold1/train/74523.png +../../data/yoloGtold1/train/74524.png +../../data/yoloGtold1/train/74525.png +../../data/yoloGtold1/train/74526.png +../../data/yoloGtold1/train/74527.png +../../data/yoloGtold1/train/74528.png +../../data/yoloGtold1/train/74529.png +../../data/yoloGtold1/train/74530.png +../../data/yoloGtold1/train/74531.png +../../data/yoloGtold1/train/74532.png +../../data/yoloGtold1/train/74533.png +../../data/yoloGtold1/train/74534.png +../../data/yoloGtold1/train/74535.png +../../data/yoloGtold1/train/74536.png +../../data/yoloGtold1/train/74537.png +../../data/yoloGtold1/train/74538.png +../../data/yoloGtold1/train/74539.png +../../data/yoloGtold1/train/74540.png +../../data/yoloGtold1/train/74541.png +../../data/yoloGtold1/train/74542.png +../../data/yoloGtold1/train/74543.png +../../data/yoloGtold1/train/74544.png +../../data/yoloGtold1/train/74545.png +../../data/yoloGtold1/train/74546.png +../../data/yoloGtold1/train/74547.png +../../data/yoloGtold1/train/74548.png +../../data/yoloGtold1/train/74549.png +../../data/yoloGtold1/train/74550.png +../../data/yoloGtold1/train/74551.png +../../data/yoloGtold1/train/74552.png +../../data/yoloGtold1/train/74553.png +../../data/yoloGtold1/train/74554.png +../../data/yoloGtold1/train/74555.png +../../data/yoloGtold1/train/74556.png +../../data/yoloGtold1/train/74557.png +../../data/yoloGtold1/train/74558.png +../../data/yoloGtold1/train/74559.png +../../data/yoloGtold1/train/74560.png +../../data/yoloGtold1/train/74561.png +../../data/yoloGtold1/train/74562.png +../../data/yoloGtold1/train/74563.png +../../data/yoloGtold1/train/74564.png +../../data/yoloGtold1/train/74565.png +../../data/yoloGtold1/train/74566.png +../../data/yoloGtold1/train/74567.png +../../data/yoloGtold1/train/74568.png +../../data/yoloGtold1/train/74569.png +../../data/yoloGtold1/train/74570.png +../../data/yoloGtold1/train/74571.png +../../data/yoloGtold1/train/74572.png +../../data/yoloGtold1/train/74573.png +../../data/yoloGtold1/train/74574.png +../../data/yoloGtold1/train/74575.png +../../data/yoloGtold1/train/74576.png +../../data/yoloGtold1/train/74577.png +../../data/yoloGtold1/train/74578.png +../../data/yoloGtold1/train/74579.png +../../data/yoloGtold1/train/74580.png +../../data/yoloGtold1/train/74581.png +../../data/yoloGtold1/train/74582.png +../../data/yoloGtold1/train/74583.png +../../data/yoloGtold1/train/74584.png +../../data/yoloGtold1/train/74585.png +../../data/yoloGtold1/train/74586.png +../../data/yoloGtold1/train/74587.png +../../data/yoloGtold1/train/74588.png +../../data/yoloGtold1/train/74589.png +../../data/yoloGtold1/train/74590.png +../../data/yoloGtold1/train/74591.png +../../data/yoloGtold1/train/74592.png +../../data/yoloGtold1/train/74593.png +../../data/yoloGtold1/train/74594.png +../../data/yoloGtold1/train/74595.png +../../data/yoloGtold1/train/74596.png +../../data/yoloGtold1/train/74597.png +../../data/yoloGtold1/train/74598.png +../../data/yoloGtold1/train/74599.png +../../data/yoloGtold1/train/74600.png +../../data/yoloGtold1/train/74601.png +../../data/yoloGtold1/train/74602.png +../../data/yoloGtold1/train/74603.png +../../data/yoloGtold1/train/74604.png +../../data/yoloGtold1/train/74605.png +../../data/yoloGtold1/train/74606.png +../../data/yoloGtold1/train/74607.png +../../data/yoloGtold1/train/74608.png +../../data/yoloGtold1/train/74609.png +../../data/yoloGtold1/train/74610.png +../../data/yoloGtold1/train/74611.png +../../data/yoloGtold1/train/74612.png +../../data/yoloGtold1/train/74613.png +../../data/yoloGtold1/train/74614.png +../../data/yoloGtold1/train/74615.png +../../data/yoloGtold1/train/74616.png +../../data/yoloGtold1/train/74617.png +../../data/yoloGtold1/train/74618.png +../../data/yoloGtold1/train/74619.png +../../data/yoloGtold1/train/74620.png +../../data/yoloGtold1/train/74621.png +../../data/yoloGtold1/train/74622.png +../../data/yoloGtold1/train/74623.png +../../data/yoloGtold1/train/74624.png +../../data/yoloGtold1/train/74625.png +../../data/yoloGtold1/train/74626.png +../../data/yoloGtold1/train/74627.png +../../data/yoloGtold1/train/74628.png +../../data/yoloGtold1/train/74629.png +../../data/yoloGtold1/train/74630.png +../../data/yoloGtold1/train/74631.png +../../data/yoloGtold1/train/74632.png +../../data/yoloGtold1/train/74633.png +../../data/yoloGtold1/train/74634.png +../../data/yoloGtold1/train/74635.png +../../data/yoloGtold1/train/74636.png +../../data/yoloGtold1/train/74637.png +../../data/yoloGtold1/train/74638.png +../../data/yoloGtold1/train/74639.png +../../data/yoloGtold1/train/74640.png +../../data/yoloGtold1/train/74641.png +../../data/yoloGtold1/train/74642.png +../../data/yoloGtold1/train/74643.png +../../data/yoloGtold1/train/74644.png +../../data/yoloGtold1/train/74645.png +../../data/yoloGtold1/train/74646.png +../../data/yoloGtold1/train/74647.png +../../data/yoloGtold1/train/74648.png +../../data/yoloGtold1/train/74649.png +../../data/yoloGtold1/train/74650.png +../../data/yoloGtold1/train/74651.png +../../data/yoloGtold1/train/74652.png +../../data/yoloGtold1/train/74653.png +../../data/yoloGtold1/train/74654.png +../../data/yoloGtold1/train/74655.png +../../data/yoloGtold1/train/74656.png +../../data/yoloGtold1/train/74657.png +../../data/yoloGtold1/train/74658.png +../../data/yoloGtold1/train/74659.png +../../data/yoloGtold1/train/74660.png +../../data/yoloGtold1/train/74661.png +../../data/yoloGtold1/train/74662.png +../../data/yoloGtold1/train/74663.png +../../data/yoloGtold1/train/74664.png +../../data/yoloGtold1/train/74665.png +../../data/yoloGtold1/train/74666.png +../../data/yoloGtold1/train/74667.png +../../data/yoloGtold1/train/74668.png +../../data/yoloGtold1/train/74669.png +../../data/yoloGtold1/train/74670.png +../../data/yoloGtold1/train/74671.png +../../data/yoloGtold1/train/74672.png +../../data/yoloGtold1/train/74673.png +../../data/yoloGtold1/train/74674.png +../../data/yoloGtold1/train/74675.png +../../data/yoloGtold1/train/74676.png +../../data/yoloGtold1/train/74677.png +../../data/yoloGtold1/train/74678.png +../../data/yoloGtold1/train/74679.png +../../data/yoloGtold1/train/74680.png +../../data/yoloGtold1/train/74681.png +../../data/yoloGtold1/train/74682.png +../../data/yoloGtold1/train/74683.png +../../data/yoloGtold1/train/74684.png +../../data/yoloGtold1/train/74685.png +../../data/yoloGtold1/train/74686.png +../../data/yoloGtold1/train/74687.png +../../data/yoloGtold1/train/74688.png +../../data/yoloGtold1/train/74689.png +../../data/yoloGtold1/train/74690.png +../../data/yoloGtold1/train/74691.png +../../data/yoloGtold1/train/74692.png +../../data/yoloGtold1/train/74693.png +../../data/yoloGtold1/train/74694.png +../../data/yoloGtold1/train/74695.png +../../data/yoloGtold1/train/74696.png +../../data/yoloGtold1/train/74697.png +../../data/yoloGtold1/train/74698.png +../../data/yoloGtold1/train/74699.png +../../data/yoloGtold1/train/74700.png +../../data/yoloGtold1/train/74701.png +../../data/yoloGtold1/train/74702.png +../../data/yoloGtold1/train/74703.png +../../data/yoloGtold1/train/74704.png +../../data/yoloGtold1/train/74705.png +../../data/yoloGtold1/train/74706.png +../../data/yoloGtold1/train/74707.png +../../data/yoloGtold1/train/74708.png +../../data/yoloGtold1/train/74709.png +../../data/yoloGtold1/train/74710.png +../../data/yoloGtold1/train/74711.png +../../data/yoloGtold1/train/74712.png +../../data/yoloGtold1/train/74713.png +../../data/yoloGtold1/train/74714.png +../../data/yoloGtold1/train/74715.png +../../data/yoloGtold1/train/74716.png +../../data/yoloGtold1/train/74717.png +../../data/yoloGtold1/train/74718.png +../../data/yoloGtold1/train/74719.png +../../data/yoloGtold1/train/74720.png +../../data/yoloGtold1/train/74721.png +../../data/yoloGtold1/train/74722.png +../../data/yoloGtold1/train/74723.png +../../data/yoloGtold1/train/74724.png +../../data/yoloGtold1/train/74725.png +../../data/yoloGtold1/train/74726.png +../../data/yoloGtold1/train/74727.png +../../data/yoloGtold1/train/74728.png +../../data/yoloGtold1/train/74729.png +../../data/yoloGtold1/train/74730.png +../../data/yoloGtold1/train/74731.png +../../data/yoloGtold1/train/74732.png +../../data/yoloGtold1/train/74733.png +../../data/yoloGtold1/train/74734.png +../../data/yoloGtold1/train/74735.png +../../data/yoloGtold1/train/74736.png +../../data/yoloGtold1/train/74737.png +../../data/yoloGtold1/train/74738.png +../../data/yoloGtold1/train/74739.png +../../data/yoloGtold1/train/74740.png +../../data/yoloGtold1/train/74741.png +../../data/yoloGtold1/train/74742.png +../../data/yoloGtold1/train/74743.png +../../data/yoloGtold1/train/74744.png +../../data/yoloGtold1/train/74745.png +../../data/yoloGtold1/train/74746.png +../../data/yoloGtold1/train/74747.png +../../data/yoloGtold1/train/74748.png +../../data/yoloGtold1/train/74749.png +../../data/yoloGtold1/train/74750.png +../../data/yoloGtold1/train/74751.png +../../data/yoloGtold1/train/74752.png +../../data/yoloGtold1/train/74753.png +../../data/yoloGtold1/train/74754.png +../../data/yoloGtold1/train/74755.png +../../data/yoloGtold1/train/74756.png +../../data/yoloGtold1/train/74757.png +../../data/yoloGtold1/train/74758.png +../../data/yoloGtold1/train/74759.png +../../data/yoloGtold1/train/74760.png +../../data/yoloGtold1/train/74761.png +../../data/yoloGtold1/train/74762.png +../../data/yoloGtold1/train/74763.png +../../data/yoloGtold1/train/74764.png +../../data/yoloGtold1/train/74765.png +../../data/yoloGtold1/train/74766.png +../../data/yoloGtold1/train/74767.png +../../data/yoloGtold1/train/74768.png +../../data/yoloGtold1/train/74769.png +../../data/yoloGtold1/train/74770.png +../../data/yoloGtold1/train/74771.png +../../data/yoloGtold1/train/74772.png +../../data/yoloGtold1/train/74773.png +../../data/yoloGtold1/train/74774.png +../../data/yoloGtold1/train/74775.png +../../data/yoloGtold1/train/74776.png +../../data/yoloGtold1/train/74777.png +../../data/yoloGtold1/train/74778.png +../../data/yoloGtold1/train/74779.png +../../data/yoloGtold1/train/74780.png +../../data/yoloGtold1/train/74781.png +../../data/yoloGtold1/train/74782.png +../../data/yoloGtold1/train/74783.png +../../data/yoloGtold1/train/74784.png +../../data/yoloGtold1/train/74785.png +../../data/yoloGtold1/train/74786.png +../../data/yoloGtold1/train/74787.png +../../data/yoloGtold1/train/74788.png +../../data/yoloGtold1/train/74789.png +../../data/yoloGtold1/train/74790.png +../../data/yoloGtold1/train/74791.png +../../data/yoloGtold1/train/74792.png +../../data/yoloGtold1/train/74793.png +../../data/yoloGtold1/train/74794.png +../../data/yoloGtold1/train/74795.png +../../data/yoloGtold1/train/74796.png +../../data/yoloGtold1/train/74797.png +../../data/yoloGtold1/train/74798.png +../../data/yoloGtold1/train/74799.png +../../data/yoloGtold1/train/74800.png +../../data/yoloGtold1/train/74801.png +../../data/yoloGtold1/train/74802.png +../../data/yoloGtold1/train/74803.png +../../data/yoloGtold1/train/74804.png +../../data/yoloGtold1/train/74805.png +../../data/yoloGtold1/train/74806.png +../../data/yoloGtold1/train/74807.png +../../data/yoloGtold1/train/74808.png +../../data/yoloGtold1/train/74809.png +../../data/yoloGtold1/train/74810.png +../../data/yoloGtold1/train/74811.png +../../data/yoloGtold1/train/74812.png +../../data/yoloGtold1/train/74813.png +../../data/yoloGtold1/train/74814.png +../../data/yoloGtold1/train/74815.png +../../data/yoloGtold1/train/74816.png +../../data/yoloGtold1/train/74817.png +../../data/yoloGtold1/train/74818.png +../../data/yoloGtold1/train/74819.png +../../data/yoloGtold1/train/74820.png +../../data/yoloGtold1/train/74821.png +../../data/yoloGtold1/train/74822.png +../../data/yoloGtold1/train/74823.png +../../data/yoloGtold1/train/74824.png +../../data/yoloGtold1/train/74825.png +../../data/yoloGtold1/train/74826.png +../../data/yoloGtold1/train/74827.png +../../data/yoloGtold1/train/74828.png +../../data/yoloGtold1/train/74829.png +../../data/yoloGtold1/train/74830.png +../../data/yoloGtold1/train/74831.png +../../data/yoloGtold1/train/74832.png +../../data/yoloGtold1/train/74833.png +../../data/yoloGtold1/train/74834.png +../../data/yoloGtold1/train/74835.png +../../data/yoloGtold1/train/74836.png +../../data/yoloGtold1/train/74837.png +../../data/yoloGtold1/train/74838.png +../../data/yoloGtold1/train/74839.png +../../data/yoloGtold1/train/74840.png +../../data/yoloGtold1/train/74841.png +../../data/yoloGtold1/train/74842.png +../../data/yoloGtold1/train/74843.png +../../data/yoloGtold1/train/74844.png +../../data/yoloGtold1/train/74845.png +../../data/yoloGtold1/train/74846.png +../../data/yoloGtold1/train/74847.png +../../data/yoloGtold1/train/74848.png +../../data/yoloGtold1/train/74849.png +../../data/yoloGtold1/train/74850.png +../../data/yoloGtold1/train/74851.png +../../data/yoloGtold1/train/74852.png +../../data/yoloGtold1/train/74853.png +../../data/yoloGtold1/train/74854.png +../../data/yoloGtold1/train/74855.png +../../data/yoloGtold1/train/74856.png +../../data/yoloGtold1/train/74857.png +../../data/yoloGtold1/train/74858.png +../../data/yoloGtold1/train/74859.png +../../data/yoloGtold1/train/74860.png +../../data/yoloGtold1/train/74861.png +../../data/yoloGtold1/train/74862.png +../../data/yoloGtold1/train/74863.png +../../data/yoloGtold1/train/74864.png +../../data/yoloGtold1/train/74865.png +../../data/yoloGtold1/train/74866.png +../../data/yoloGtold1/train/74867.png +../../data/yoloGtold1/train/74868.png +../../data/yoloGtold1/train/74869.png +../../data/yoloGtold1/train/74870.png +../../data/yoloGtold1/train/74871.png +../../data/yoloGtold1/train/74872.png +../../data/yoloGtold1/train/74873.png +../../data/yoloGtold1/train/74874.png +../../data/yoloGtold1/train/74875.png +../../data/yoloGtold1/train/74876.png +../../data/yoloGtold1/train/74877.png +../../data/yoloGtold1/train/74878.png +../../data/yoloGtold1/train/74879.png +../../data/yoloGtold1/train/74880.png +../../data/yoloGtold1/train/74881.png +../../data/yoloGtold1/train/74882.png +../../data/yoloGtold1/train/74883.png +../../data/yoloGtold1/train/74884.png +../../data/yoloGtold1/train/74885.png +../../data/yoloGtold1/train/74886.png +../../data/yoloGtold1/train/74887.png +../../data/yoloGtold1/train/74888.png +../../data/yoloGtold1/train/74889.png +../../data/yoloGtold1/train/74890.png +../../data/yoloGtold1/train/74891.png +../../data/yoloGtold1/train/74892.png +../../data/yoloGtold1/train/74893.png +../../data/yoloGtold1/train/74894.png +../../data/yoloGtold1/train/74895.png +../../data/yoloGtold1/train/74896.png +../../data/yoloGtold1/train/74897.png +../../data/yoloGtold1/train/74898.png +../../data/yoloGtold1/train/74899.png +../../data/yoloGtold1/train/74900.png +../../data/yoloGtold1/train/74901.png +../../data/yoloGtold1/train/74902.png +../../data/yoloGtold1/train/74903.png +../../data/yoloGtold1/train/74904.png +../../data/yoloGtold1/train/74905.png +../../data/yoloGtold1/train/74906.png +../../data/yoloGtold1/train/74907.png +../../data/yoloGtold1/train/74908.png +../../data/yoloGtold1/train/74909.png +../../data/yoloGtold1/train/74910.png +../../data/yoloGtold1/train/74911.png +../../data/yoloGtold1/train/74912.png +../../data/yoloGtold1/train/74913.png +../../data/yoloGtold1/train/74914.png +../../data/yoloGtold1/train/74915.png +../../data/yoloGtold1/train/74916.png +../../data/yoloGtold1/train/74917.png +../../data/yoloGtold1/train/74918.png +../../data/yoloGtold1/train/74919.png +../../data/yoloGtold1/train/74920.png +../../data/yoloGtold1/train/74921.png +../../data/yoloGtold1/train/74922.png +../../data/yoloGtold1/train/74923.png +../../data/yoloGtold1/train/74924.png +../../data/yoloGtold1/train/74925.png +../../data/yoloGtold1/train/74926.png +../../data/yoloGtold1/train/74927.png +../../data/yoloGtold1/train/74928.png +../../data/yoloGtold1/train/74929.png +../../data/yoloGtold1/train/74930.png +../../data/yoloGtold1/train/74931.png +../../data/yoloGtold1/train/74932.png +../../data/yoloGtold1/train/74933.png +../../data/yoloGtold1/train/74934.png +../../data/yoloGtold1/train/74935.png +../../data/yoloGtold1/train/74936.png +../../data/yoloGtold1/train/74937.png +../../data/yoloGtold1/train/74938.png +../../data/yoloGtold1/train/74939.png +../../data/yoloGtold1/train/74940.png +../../data/yoloGtold1/train/74941.png +../../data/yoloGtold1/train/74942.png +../../data/yoloGtold1/train/74943.png +../../data/yoloGtold1/train/74944.png +../../data/yoloGtold1/train/74945.png +../../data/yoloGtold1/train/74946.png +../../data/yoloGtold1/train/74947.png +../../data/yoloGtold1/train/74948.png +../../data/yoloGtold1/train/74949.png +../../data/yoloGtold1/train/74950.png +../../data/yoloGtold1/train/74951.png +../../data/yoloGtold1/train/74952.png +../../data/yoloGtold1/train/74953.png +../../data/yoloGtold1/train/74954.png +../../data/yoloGtold1/train/74955.png +../../data/yoloGtold1/train/74956.png +../../data/yoloGtold1/train/74957.png +../../data/yoloGtold1/train/74958.png +../../data/yoloGtold1/train/74959.png +../../data/yoloGtold1/train/74960.png +../../data/yoloGtold1/train/74961.png +../../data/yoloGtold1/train/74962.png +../../data/yoloGtold1/train/74963.png +../../data/yoloGtold1/train/74964.png +../../data/yoloGtold1/train/74965.png +../../data/yoloGtold1/train/74966.png +../../data/yoloGtold1/train/74967.png +../../data/yoloGtold1/train/74968.png +../../data/yoloGtold1/train/74969.png +../../data/yoloGtold1/train/74970.png +../../data/yoloGtold1/train/74971.png +../../data/yoloGtold1/train/74972.png +../../data/yoloGtold1/train/74973.png +../../data/yoloGtold1/train/74974.png +../../data/yoloGtold1/train/74975.png +../../data/yoloGtold1/train/74976.png +../../data/yoloGtold1/train/74977.png +../../data/yoloGtold1/train/74978.png +../../data/yoloGtold1/train/74979.png +../../data/yoloGtold1/train/74980.png +../../data/yoloGtold1/train/74981.png +../../data/yoloGtold1/train/74982.png +../../data/yoloGtold1/train/74983.png +../../data/yoloGtold1/train/74984.png +../../data/yoloGtold1/train/74985.png +../../data/yoloGtold1/train/74986.png +../../data/yoloGtold1/train/74987.png +../../data/yoloGtold1/train/74988.png +../../data/yoloGtold1/train/74989.png +../../data/yoloGtold1/train/74990.png +../../data/yoloGtold1/train/74991.png +../../data/yoloGtold1/train/74992.png +../../data/yoloGtold1/train/74993.png +../../data/yoloGtold1/train/74994.png +../../data/yoloGtold1/train/74995.png +../../data/yoloGtold1/train/74996.png +../../data/yoloGtold1/train/74997.png +../../data/yoloGtold1/train/74998.png +../../data/yoloGtold1/train/74999.png +../../data/yoloGtold1/train/75000.png +../../data/yoloGtold1/train/75001.png +../../data/yoloGtold1/train/75002.png +../../data/yoloGtold1/train/75003.png +../../data/yoloGtold1/train/75004.png +../../data/yoloGtold1/train/75005.png +../../data/yoloGtold1/train/75006.png +../../data/yoloGtold1/train/75007.png +../../data/yoloGtold1/train/75008.png +../../data/yoloGtold1/train/75009.png +../../data/yoloGtold1/train/75010.png +../../data/yoloGtold1/train/75011.png +../../data/yoloGtold1/train/75012.png +../../data/yoloGtold1/train/75013.png +../../data/yoloGtold1/train/75014.png +../../data/yoloGtold1/train/75015.png +../../data/yoloGtold1/train/75016.png +../../data/yoloGtold1/train/75017.png +../../data/yoloGtold1/train/75018.png +../../data/yoloGtold1/train/75019.png +../../data/yoloGtold1/train/75020.png +../../data/yoloGtold1/train/75021.png +../../data/yoloGtold1/train/75022.png +../../data/yoloGtold1/train/75023.png +../../data/yoloGtold1/train/75024.png +../../data/yoloGtold1/train/75025.png +../../data/yoloGtold1/train/75026.png +../../data/yoloGtold1/train/75027.png +../../data/yoloGtold1/train/75028.png +../../data/yoloGtold1/train/75029.png +../../data/yoloGtold1/train/75030.png +../../data/yoloGtold1/train/75031.png +../../data/yoloGtold1/train/75032.png +../../data/yoloGtold1/train/75033.png +../../data/yoloGtold1/train/75034.png +../../data/yoloGtold1/train/75035.png +../../data/yoloGtold1/train/75036.png +../../data/yoloGtold1/train/75037.png +../../data/yoloGtold1/train/75038.png +../../data/yoloGtold1/train/75039.png +../../data/yoloGtold1/train/75040.png +../../data/yoloGtold1/train/75041.png +../../data/yoloGtold1/train/75042.png +../../data/yoloGtold1/train/75043.png +../../data/yoloGtold1/train/75044.png +../../data/yoloGtold1/train/75045.png +../../data/yoloGtold1/train/75046.png +../../data/yoloGtold1/train/75047.png +../../data/yoloGtold1/train/75048.png +../../data/yoloGtold1/train/75049.png +../../data/yoloGtold1/train/75050.png +../../data/yoloGtold1/train/75051.png +../../data/yoloGtold1/train/75052.png +../../data/yoloGtold1/train/75053.png +../../data/yoloGtold1/train/75054.png +../../data/yoloGtold1/train/75055.png +../../data/yoloGtold1/train/75056.png +../../data/yoloGtold1/train/75057.png +../../data/yoloGtold1/train/75058.png +../../data/yoloGtold1/train/75059.png +../../data/yoloGtold1/train/75060.png +../../data/yoloGtold1/train/75061.png +../../data/yoloGtold1/train/75062.png +../../data/yoloGtold1/train/75063.png +../../data/yoloGtold1/train/75064.png +../../data/yoloGtold1/train/75065.png +../../data/yoloGtold1/train/75066.png +../../data/yoloGtold1/train/75067.png +../../data/yoloGtold1/train/75068.png +../../data/yoloGtold1/train/75069.png +../../data/yoloGtold1/train/75070.png +../../data/yoloGtold1/train/75071.png +../../data/yoloGtold1/train/75072.png +../../data/yoloGtold1/train/75073.png +../../data/yoloGtold1/train/75074.png +../../data/yoloGtold1/train/75075.png +../../data/yoloGtold1/train/75076.png +../../data/yoloGtold1/train/75077.png +../../data/yoloGtold1/train/75078.png +../../data/yoloGtold1/train/75079.png +../../data/yoloGtold1/train/75080.png +../../data/yoloGtold1/train/75081.png +../../data/yoloGtold1/train/75082.png +../../data/yoloGtold1/train/75083.png +../../data/yoloGtold1/train/75084.png +../../data/yoloGtold1/train/75085.png +../../data/yoloGtold1/train/75086.png +../../data/yoloGtold1/train/75087.png +../../data/yoloGtold1/train/75088.png +../../data/yoloGtold1/train/75089.png +../../data/yoloGtold1/train/75090.png +../../data/yoloGtold1/train/75091.png +../../data/yoloGtold1/train/75092.png +../../data/yoloGtold1/train/75093.png +../../data/yoloGtold1/train/75094.png +../../data/yoloGtold1/train/75095.png +../../data/yoloGtold1/train/75096.png +../../data/yoloGtold1/train/75097.png +../../data/yoloGtold1/train/75098.png +../../data/yoloGtold1/train/75099.png +../../data/yoloGtold1/train/75100.png +../../data/yoloGtold1/train/75101.png +../../data/yoloGtold1/train/75102.png +../../data/yoloGtold1/train/75103.png +../../data/yoloGtold1/train/75104.png +../../data/yoloGtold1/train/75105.png +../../data/yoloGtold1/train/75106.png +../../data/yoloGtold1/train/75107.png +../../data/yoloGtold1/train/75108.png +../../data/yoloGtold1/train/75109.png +../../data/yoloGtold1/train/75110.png +../../data/yoloGtold1/train/75111.png +../../data/yoloGtold1/train/75112.png +../../data/yoloGtold1/train/75113.png +../../data/yoloGtold1/train/75114.png +../../data/yoloGtold1/train/75115.png +../../data/yoloGtold1/train/75116.png +../../data/yoloGtold1/train/75117.png +../../data/yoloGtold1/train/75118.png +../../data/yoloGtold1/train/75119.png +../../data/yoloGtold1/train/75120.png +../../data/yoloGtold1/train/75121.png +../../data/yoloGtold1/train/75122.png +../../data/yoloGtold1/train/75123.png +../../data/yoloGtold1/train/75124.png +../../data/yoloGtold1/train/75125.png +../../data/yoloGtold1/train/75126.png +../../data/yoloGtold1/train/75127.png +../../data/yoloGtold1/train/75128.png +../../data/yoloGtold1/train/75129.png +../../data/yoloGtold1/train/75130.png +../../data/yoloGtold1/train/75131.png +../../data/yoloGtold1/train/75132.png +../../data/yoloGtold1/train/75133.png +../../data/yoloGtold1/train/75134.png +../../data/yoloGtold1/train/75135.png +../../data/yoloGtold1/train/75136.png +../../data/yoloGtold1/train/75137.png +../../data/yoloGtold1/train/75138.png +../../data/yoloGtold1/train/75139.png +../../data/yoloGtold1/train/75140.png +../../data/yoloGtold1/train/75141.png +../../data/yoloGtold1/train/75142.png +../../data/yoloGtold1/train/75143.png +../../data/yoloGtold1/train/75144.png +../../data/yoloGtold1/train/75145.png +../../data/yoloGtold1/train/75146.png +../../data/yoloGtold1/train/75147.png +../../data/yoloGtold1/train/75148.png +../../data/yoloGtold1/train/75149.png +../../data/yoloGtold1/train/75150.png +../../data/yoloGtold1/train/75151.png +../../data/yoloGtold1/train/75152.png +../../data/yoloGtold1/train/75153.png +../../data/yoloGtold1/train/75154.png +../../data/yoloGtold1/train/75155.png +../../data/yoloGtold1/train/75156.png +../../data/yoloGtold1/train/75157.png +../../data/yoloGtold1/train/75158.png +../../data/yoloGtold1/train/75159.png +../../data/yoloGtold1/train/75160.png +../../data/yoloGtold1/train/75161.png +../../data/yoloGtold1/train/75162.png +../../data/yoloGtold1/train/75163.png +../../data/yoloGtold1/train/75164.png +../../data/yoloGtold1/train/75165.png +../../data/yoloGtold1/train/75166.png +../../data/yoloGtold1/train/75167.png +../../data/yoloGtold1/train/75168.png +../../data/yoloGtold1/train/75169.png +../../data/yoloGtold1/train/75170.png +../../data/yoloGtold1/train/75171.png +../../data/yoloGtold1/train/75172.png +../../data/yoloGtold1/train/75173.png +../../data/yoloGtold1/train/75174.png +../../data/yoloGtold1/train/75175.png +../../data/yoloGtold1/train/75176.png +../../data/yoloGtold1/train/75177.png +../../data/yoloGtold1/train/75178.png +../../data/yoloGtold1/train/75179.png +../../data/yoloGtold1/train/75180.png +../../data/yoloGtold1/train/75181.png +../../data/yoloGtold1/train/75182.png +../../data/yoloGtold1/train/75183.png +../../data/yoloGtold1/train/75184.png +../../data/yoloGtold1/train/75185.png +../../data/yoloGtold1/train/75186.png +../../data/yoloGtold1/train/75187.png +../../data/yoloGtold1/train/75188.png +../../data/yoloGtold1/train/75189.png +../../data/yoloGtold1/train/75190.png +../../data/yoloGtold1/train/75191.png +../../data/yoloGtold1/train/75192.png +../../data/yoloGtold1/train/75193.png +../../data/yoloGtold1/train/75194.png +../../data/yoloGtold1/train/75195.png +../../data/yoloGtold1/train/75196.png +../../data/yoloGtold1/train/75197.png +../../data/yoloGtold1/train/75198.png +../../data/yoloGtold1/train/75199.png +../../data/yoloGtold1/train/75200.png +../../data/yoloGtold1/train/75201.png +../../data/yoloGtold1/train/75202.png +../../data/yoloGtold1/train/75203.png +../../data/yoloGtold1/train/75204.png +../../data/yoloGtold1/train/75205.png +../../data/yoloGtold1/train/75206.png +../../data/yoloGtold1/train/75207.png +../../data/yoloGtold1/train/75208.png +../../data/yoloGtold1/train/75209.png +../../data/yoloGtold1/train/75210.png +../../data/yoloGtold1/train/75211.png +../../data/yoloGtold1/train/75212.png +../../data/yoloGtold1/train/75213.png +../../data/yoloGtold1/train/75214.png +../../data/yoloGtold1/train/75215.png +../../data/yoloGtold1/train/75216.png +../../data/yoloGtold1/train/75217.png +../../data/yoloGtold1/train/75218.png +../../data/yoloGtold1/train/75219.png +../../data/yoloGtold1/train/75220.png +../../data/yoloGtold1/train/75221.png +../../data/yoloGtold1/train/75222.png +../../data/yoloGtold1/train/75223.png +../../data/yoloGtold1/train/75224.png +../../data/yoloGtold1/train/75225.png +../../data/yoloGtold1/train/75226.png +../../data/yoloGtold1/train/75227.png +../../data/yoloGtold1/train/75228.png +../../data/yoloGtold1/train/75229.png +../../data/yoloGtold1/train/75230.png +../../data/yoloGtold1/train/75231.png +../../data/yoloGtold1/train/75232.png +../../data/yoloGtold1/train/75233.png +../../data/yoloGtold1/train/75234.png +../../data/yoloGtold1/train/75235.png +../../data/yoloGtold1/train/75236.png +../../data/yoloGtold1/train/75237.png +../../data/yoloGtold1/train/75238.png +../../data/yoloGtold1/train/75239.png +../../data/yoloGtold1/train/75240.png +../../data/yoloGtold1/train/75241.png +../../data/yoloGtold1/train/75242.png +../../data/yoloGtold1/train/75243.png +../../data/yoloGtold1/train/75244.png +../../data/yoloGtold1/train/75245.png +../../data/yoloGtold1/train/75246.png +../../data/yoloGtold1/train/75247.png +../../data/yoloGtold1/train/75248.png +../../data/yoloGtold1/train/75249.png +../../data/yoloGtold1/train/75250.png +../../data/yoloGtold1/train/75251.png +../../data/yoloGtold1/train/75252.png +../../data/yoloGtold1/train/75253.png +../../data/yoloGtold1/train/75254.png +../../data/yoloGtold1/train/75255.png +../../data/yoloGtold1/train/75256.png +../../data/yoloGtold1/train/75257.png +../../data/yoloGtold1/train/75258.png +../../data/yoloGtold1/train/75259.png +../../data/yoloGtold1/train/75260.png +../../data/yoloGtold1/train/75261.png +../../data/yoloGtold1/train/75262.png +../../data/yoloGtold1/train/75263.png +../../data/yoloGtold1/train/75264.png +../../data/yoloGtold1/train/75265.png +../../data/yoloGtold1/train/75266.png +../../data/yoloGtold1/train/75267.png +../../data/yoloGtold1/train/75268.png +../../data/yoloGtold1/train/75269.png +../../data/yoloGtold1/train/75270.png +../../data/yoloGtold1/train/75271.png +../../data/yoloGtold1/train/75272.png +../../data/yoloGtold1/train/75273.png +../../data/yoloGtold1/train/75274.png +../../data/yoloGtold1/train/75275.png +../../data/yoloGtold1/train/75276.png +../../data/yoloGtold1/train/75277.png +../../data/yoloGtold1/train/75278.png +../../data/yoloGtold1/train/75279.png +../../data/yoloGtold1/train/75280.png +../../data/yoloGtold1/train/75281.png +../../data/yoloGtold1/train/75282.png +../../data/yoloGtold1/train/75283.png +../../data/yoloGtold1/train/75284.png +../../data/yoloGtold1/train/75285.png +../../data/yoloGtold1/train/75286.png +../../data/yoloGtold1/train/75287.png +../../data/yoloGtold1/train/75288.png +../../data/yoloGtold1/train/75289.png +../../data/yoloGtold1/train/75290.png +../../data/yoloGtold1/train/75291.png +../../data/yoloGtold1/train/75292.png +../../data/yoloGtold1/train/75293.png +../../data/yoloGtold1/train/75294.png +../../data/yoloGtold1/train/75295.png +../../data/yoloGtold1/train/75296.png +../../data/yoloGtold1/train/75297.png +../../data/yoloGtold1/train/75298.png +../../data/yoloGtold1/train/75299.png +../../data/yoloGtold1/train/75300.png +../../data/yoloGtold1/train/75301.png +../../data/yoloGtold1/train/75302.png +../../data/yoloGtold1/train/75303.png +../../data/yoloGtold1/train/75304.png +../../data/yoloGtold1/train/75305.png +../../data/yoloGtold1/train/75306.png +../../data/yoloGtold1/train/75307.png +../../data/yoloGtold1/train/75308.png +../../data/yoloGtold1/train/75309.png +../../data/yoloGtold1/train/75310.png +../../data/yoloGtold1/train/75311.png +../../data/yoloGtold1/train/75312.png +../../data/yoloGtold1/train/75313.png +../../data/yoloGtold1/train/75314.png +../../data/yoloGtold1/train/75315.png +../../data/yoloGtold1/train/75316.png +../../data/yoloGtold1/train/75317.png +../../data/yoloGtold1/train/75318.png +../../data/yoloGtold1/train/75319.png +../../data/yoloGtold1/train/75320.png +../../data/yoloGtold1/train/75321.png +../../data/yoloGtold1/train/75322.png +../../data/yoloGtold1/train/75323.png +../../data/yoloGtold1/train/75324.png +../../data/yoloGtold1/train/75325.png +../../data/yoloGtold1/train/75326.png +../../data/yoloGtold1/train/75327.png +../../data/yoloGtold1/train/75328.png +../../data/yoloGtold1/train/75329.png +../../data/yoloGtold1/train/75330.png +../../data/yoloGtold1/train/75331.png +../../data/yoloGtold1/train/75332.png +../../data/yoloGtold1/train/75333.png +../../data/yoloGtold1/train/75334.png +../../data/yoloGtold1/train/75335.png +../../data/yoloGtold1/train/75336.png +../../data/yoloGtold1/train/75337.png +../../data/yoloGtold1/train/75338.png +../../data/yoloGtold1/train/75339.png +../../data/yoloGtold1/train/75340.png +../../data/yoloGtold1/train/75341.png +../../data/yoloGtold1/train/75342.png +../../data/yoloGtold1/train/75343.png +../../data/yoloGtold1/train/75344.png +../../data/yoloGtold1/train/75345.png +../../data/yoloGtold1/train/75346.png +../../data/yoloGtold1/train/75347.png +../../data/yoloGtold1/train/75348.png +../../data/yoloGtold1/train/75349.png +../../data/yoloGtold1/train/75350.png +../../data/yoloGtold1/train/75351.png +../../data/yoloGtold1/train/75352.png +../../data/yoloGtold1/train/75353.png +../../data/yoloGtold1/train/75354.png +../../data/yoloGtold1/train/75355.png +../../data/yoloGtold1/train/75356.png +../../data/yoloGtold1/train/75357.png +../../data/yoloGtold1/train/75358.png +../../data/yoloGtold1/train/75359.png +../../data/yoloGtold1/train/75360.png +../../data/yoloGtold1/train/75361.png +../../data/yoloGtold1/train/75362.png +../../data/yoloGtold1/train/75363.png +../../data/yoloGtold1/train/75364.png +../../data/yoloGtold1/train/75365.png +../../data/yoloGtold1/train/75366.png +../../data/yoloGtold1/train/75367.png +../../data/yoloGtold1/train/75368.png +../../data/yoloGtold1/train/75369.png +../../data/yoloGtold1/train/75370.png +../../data/yoloGtold1/train/75371.png +../../data/yoloGtold1/train/75372.png +../../data/yoloGtold1/train/75373.png +../../data/yoloGtold1/train/75374.png +../../data/yoloGtold1/train/75375.png +../../data/yoloGtold1/train/75376.png +../../data/yoloGtold1/train/75377.png +../../data/yoloGtold1/train/75378.png +../../data/yoloGtold1/train/75379.png +../../data/yoloGtold1/train/75380.png +../../data/yoloGtold1/train/75381.png +../../data/yoloGtold1/train/75382.png +../../data/yoloGtold1/train/75383.png +../../data/yoloGtold1/train/75384.png +../../data/yoloGtold1/train/75385.png +../../data/yoloGtold1/train/75386.png +../../data/yoloGtold1/train/75387.png +../../data/yoloGtold1/train/75388.png +../../data/yoloGtold1/train/75389.png +../../data/yoloGtold1/train/75390.png +../../data/yoloGtold1/train/75391.png +../../data/yoloGtold1/train/75392.png +../../data/yoloGtold1/train/75393.png +../../data/yoloGtold1/train/75394.png +../../data/yoloGtold1/train/75395.png +../../data/yoloGtold1/train/75396.png +../../data/yoloGtold1/train/75397.png +../../data/yoloGtold1/train/75398.png +../../data/yoloGtold1/train/75399.png +../../data/yoloGtold1/train/75400.png +../../data/yoloGtold1/train/75401.png +../../data/yoloGtold1/train/75402.png +../../data/yoloGtold1/train/75403.png +../../data/yoloGtold1/train/75404.png +../../data/yoloGtold1/train/75405.png +../../data/yoloGtold1/train/75406.png +../../data/yoloGtold1/train/75407.png +../../data/yoloGtold1/train/75408.png +../../data/yoloGtold1/train/75409.png +../../data/yoloGtold1/train/75410.png +../../data/yoloGtold1/train/75411.png +../../data/yoloGtold1/train/75412.png +../../data/yoloGtold1/train/75413.png +../../data/yoloGtold1/train/75414.png +../../data/yoloGtold1/train/75415.png +../../data/yoloGtold1/train/75416.png +../../data/yoloGtold1/train/75417.png +../../data/yoloGtold1/train/75418.png +../../data/yoloGtold1/train/75419.png +../../data/yoloGtold1/train/75420.png +../../data/yoloGtold1/train/75421.png +../../data/yoloGtold1/train/75422.png +../../data/yoloGtold1/train/75423.png +../../data/yoloGtold1/train/75424.png +../../data/yoloGtold1/train/75425.png +../../data/yoloGtold1/train/75426.png +../../data/yoloGtold1/train/75427.png +../../data/yoloGtold1/train/75428.png +../../data/yoloGtold1/train/75429.png +../../data/yoloGtold1/train/75430.png +../../data/yoloGtold1/train/75431.png +../../data/yoloGtold1/train/75432.png +../../data/yoloGtold1/train/75433.png +../../data/yoloGtold1/train/75434.png +../../data/yoloGtold1/train/75435.png +../../data/yoloGtold1/train/75436.png +../../data/yoloGtold1/train/75437.png +../../data/yoloGtold1/train/75438.png +../../data/yoloGtold1/train/75439.png +../../data/yoloGtold1/train/75440.png +../../data/yoloGtold1/train/75441.png +../../data/yoloGtold1/train/75442.png +../../data/yoloGtold1/train/75443.png +../../data/yoloGtold1/train/75444.png +../../data/yoloGtold1/train/75445.png +../../data/yoloGtold1/train/75446.png +../../data/yoloGtold1/train/75447.png +../../data/yoloGtold1/train/75448.png +../../data/yoloGtold1/train/75449.png +../../data/yoloGtold1/train/75450.png +../../data/yoloGtold1/train/75451.png +../../data/yoloGtold1/train/75452.png +../../data/yoloGtold1/train/75453.png +../../data/yoloGtold1/train/75454.png +../../data/yoloGtold1/train/75455.png +../../data/yoloGtold1/train/75456.png +../../data/yoloGtold1/train/75457.png +../../data/yoloGtold1/train/75458.png +../../data/yoloGtold1/train/75459.png +../../data/yoloGtold1/train/75460.png +../../data/yoloGtold1/train/75461.png +../../data/yoloGtold1/train/75462.png +../../data/yoloGtold1/train/75463.png +../../data/yoloGtold1/train/75464.png +../../data/yoloGtold1/train/75465.png +../../data/yoloGtold1/train/75466.png +../../data/yoloGtold1/train/75467.png +../../data/yoloGtold1/train/75468.png +../../data/yoloGtold1/train/75469.png +../../data/yoloGtold1/train/75470.png +../../data/yoloGtold1/train/75471.png +../../data/yoloGtold1/train/75472.png +../../data/yoloGtold1/train/75473.png +../../data/yoloGtold1/train/75474.png +../../data/yoloGtold1/train/75475.png +../../data/yoloGtold1/train/75476.png +../../data/yoloGtold1/train/75477.png +../../data/yoloGtold1/train/75478.png +../../data/yoloGtold1/train/75479.png +../../data/yoloGtold1/train/75480.png +../../data/yoloGtold1/train/75481.png +../../data/yoloGtold1/train/75482.png +../../data/yoloGtold1/train/75483.png +../../data/yoloGtold1/train/75484.png +../../data/yoloGtold1/train/75485.png +../../data/yoloGtold1/train/75486.png +../../data/yoloGtold1/train/75487.png +../../data/yoloGtold1/train/75488.png +../../data/yoloGtold1/train/75489.png +../../data/yoloGtold1/train/75490.png +../../data/yoloGtold1/train/75491.png +../../data/yoloGtold1/train/75492.png +../../data/yoloGtold1/train/75493.png +../../data/yoloGtold1/train/75494.png +../../data/yoloGtold1/train/75495.png +../../data/yoloGtold1/train/75496.png +../../data/yoloGtold1/train/75497.png +../../data/yoloGtold1/train/75498.png +../../data/yoloGtold1/train/75499.png +../../data/yoloGtold1/train/75500.png +../../data/yoloGtold1/train/75501.png +../../data/yoloGtold1/train/75502.png +../../data/yoloGtold1/train/75503.png +../../data/yoloGtold1/train/75504.png +../../data/yoloGtold1/train/75505.png +../../data/yoloGtold1/train/75506.png +../../data/yoloGtold1/train/75507.png +../../data/yoloGtold1/train/75508.png +../../data/yoloGtold1/train/75509.png +../../data/yoloGtold1/train/75510.png +../../data/yoloGtold1/train/75511.png +../../data/yoloGtold1/train/75512.png +../../data/yoloGtold1/train/75513.png +../../data/yoloGtold1/train/75514.png +../../data/yoloGtold1/train/75515.png +../../data/yoloGtold1/train/75516.png +../../data/yoloGtold1/train/75517.png +../../data/yoloGtold1/train/75518.png +../../data/yoloGtold1/train/75519.png +../../data/yoloGtold1/train/75520.png +../../data/yoloGtold1/train/75521.png +../../data/yoloGtold1/train/75522.png +../../data/yoloGtold1/train/75523.png +../../data/yoloGtold1/train/75524.png +../../data/yoloGtold1/train/75525.png +../../data/yoloGtold1/train/75526.png +../../data/yoloGtold1/train/75527.png +../../data/yoloGtold1/train/75528.png +../../data/yoloGtold1/train/75529.png +../../data/yoloGtold1/train/75530.png +../../data/yoloGtold1/train/75531.png +../../data/yoloGtold1/train/75532.png +../../data/yoloGtold1/train/75533.png +../../data/yoloGtold1/train/75534.png +../../data/yoloGtold1/train/75535.png +../../data/yoloGtold1/train/75536.png +../../data/yoloGtold1/train/75537.png +../../data/yoloGtold1/train/75538.png +../../data/yoloGtold1/train/75539.png +../../data/yoloGtold1/train/75540.png +../../data/yoloGtold1/train/75541.png +../../data/yoloGtold1/train/75542.png +../../data/yoloGtold1/train/75543.png +../../data/yoloGtold1/train/75544.png +../../data/yoloGtold1/train/75545.png +../../data/yoloGtold1/train/75546.png +../../data/yoloGtold1/train/75547.png +../../data/yoloGtold1/train/75548.png +../../data/yoloGtold1/train/75549.png +../../data/yoloGtold1/train/75550.png +../../data/yoloGtold1/train/75551.png +../../data/yoloGtold1/train/75552.png +../../data/yoloGtold1/train/75553.png +../../data/yoloGtold1/train/75554.png +../../data/yoloGtold1/train/75555.png +../../data/yoloGtold1/train/75556.png +../../data/yoloGtold1/train/75557.png +../../data/yoloGtold1/train/75558.png +../../data/yoloGtold1/train/75559.png +../../data/yoloGtold1/train/75560.png +../../data/yoloGtold1/train/75561.png +../../data/yoloGtold1/train/75562.png +../../data/yoloGtold1/train/75563.png +../../data/yoloGtold1/train/75564.png +../../data/yoloGtold1/train/75565.png +../../data/yoloGtold1/train/75566.png +../../data/yoloGtold1/train/75567.png +../../data/yoloGtold1/train/75568.png +../../data/yoloGtold1/train/75569.png +../../data/yoloGtold1/train/75570.png +../../data/yoloGtold1/train/75571.png +../../data/yoloGtold1/train/75572.png +../../data/yoloGtold1/train/75573.png +../../data/yoloGtold1/train/75574.png +../../data/yoloGtold1/train/75575.png +../../data/yoloGtold1/train/75576.png +../../data/yoloGtold1/train/75577.png +../../data/yoloGtold1/train/75578.png +../../data/yoloGtold1/train/75579.png +../../data/yoloGtold1/train/75580.png +../../data/yoloGtold1/train/75581.png +../../data/yoloGtold1/train/75582.png +../../data/yoloGtold1/train/75583.png +../../data/yoloGtold1/train/75584.png +../../data/yoloGtold1/train/75585.png +../../data/yoloGtold1/train/75586.png +../../data/yoloGtold1/train/75587.png +../../data/yoloGtold1/train/75588.png +../../data/yoloGtold1/train/75589.png +../../data/yoloGtold1/train/75590.png +../../data/yoloGtold1/train/75591.png +../../data/yoloGtold1/train/75592.png +../../data/yoloGtold1/train/75593.png +../../data/yoloGtold1/train/75594.png +../../data/yoloGtold1/train/75595.png +../../data/yoloGtold1/train/75596.png +../../data/yoloGtold1/train/75597.png +../../data/yoloGtold1/train/75598.png +../../data/yoloGtold1/train/75599.png +../../data/yoloGtold1/train/75600.png +../../data/yoloGtold1/train/75601.png +../../data/yoloGtold1/train/75602.png +../../data/yoloGtold1/train/75603.png +../../data/yoloGtold1/train/75604.png +../../data/yoloGtold1/train/75605.png +../../data/yoloGtold1/train/75606.png +../../data/yoloGtold1/train/75607.png +../../data/yoloGtold1/train/75608.png +../../data/yoloGtold1/train/75609.png +../../data/yoloGtold1/train/75610.png +../../data/yoloGtold1/train/75611.png +../../data/yoloGtold1/train/75612.png +../../data/yoloGtold1/train/75613.png +../../data/yoloGtold1/train/75614.png +../../data/yoloGtold1/train/75615.png +../../data/yoloGtold1/train/75616.png +../../data/yoloGtold1/train/75617.png +../../data/yoloGtold1/train/75618.png +../../data/yoloGtold1/train/75619.png +../../data/yoloGtold1/train/75620.png +../../data/yoloGtold1/train/75621.png +../../data/yoloGtold1/train/75622.png +../../data/yoloGtold1/train/75623.png +../../data/yoloGtold1/train/75624.png +../../data/yoloGtold1/train/75625.png +../../data/yoloGtold1/train/75626.png +../../data/yoloGtold1/train/75627.png +../../data/yoloGtold1/train/75628.png +../../data/yoloGtold1/train/75629.png +../../data/yoloGtold1/train/75630.png +../../data/yoloGtold1/train/75631.png +../../data/yoloGtold1/train/75632.png +../../data/yoloGtold1/train/75633.png +../../data/yoloGtold1/train/75634.png +../../data/yoloGtold1/train/75635.png +../../data/yoloGtold1/train/75636.png +../../data/yoloGtold1/train/75637.png +../../data/yoloGtold1/train/75638.png +../../data/yoloGtold1/train/75639.png +../../data/yoloGtold1/train/75640.png +../../data/yoloGtold1/train/75641.png +../../data/yoloGtold1/train/75642.png +../../data/yoloGtold1/train/75643.png +../../data/yoloGtold1/train/75644.png +../../data/yoloGtold1/train/75645.png +../../data/yoloGtold1/train/75646.png +../../data/yoloGtold1/train/75647.png +../../data/yoloGtold1/train/75648.png +../../data/yoloGtold1/train/75649.png +../../data/yoloGtold1/train/75650.png +../../data/yoloGtold1/train/75651.png +../../data/yoloGtold1/train/75652.png +../../data/yoloGtold1/train/75653.png +../../data/yoloGtold1/train/75654.png +../../data/yoloGtold1/train/75655.png +../../data/yoloGtold1/train/75656.png +../../data/yoloGtold1/train/75657.png +../../data/yoloGtold1/train/75658.png +../../data/yoloGtold1/train/75659.png +../../data/yoloGtold1/train/75660.png +../../data/yoloGtold1/train/75661.png +../../data/yoloGtold1/train/75662.png +../../data/yoloGtold1/train/75663.png +../../data/yoloGtold1/train/75664.png +../../data/yoloGtold1/train/75665.png +../../data/yoloGtold1/train/75666.png +../../data/yoloGtold1/train/75667.png +../../data/yoloGtold1/train/75668.png +../../data/yoloGtold1/train/75669.png +../../data/yoloGtold1/train/75670.png +../../data/yoloGtold1/train/75671.png +../../data/yoloGtold1/train/75672.png +../../data/yoloGtold1/train/75673.png +../../data/yoloGtold1/train/75674.png +../../data/yoloGtold1/train/75675.png +../../data/yoloGtold1/train/75676.png +../../data/yoloGtold1/train/75677.png +../../data/yoloGtold1/train/75678.png +../../data/yoloGtold1/train/75679.png +../../data/yoloGtold1/train/75680.png +../../data/yoloGtold1/train/75681.png +../../data/yoloGtold1/train/75682.png +../../data/yoloGtold1/train/75683.png +../../data/yoloGtold1/train/75684.png +../../data/yoloGtold1/train/75685.png +../../data/yoloGtold1/train/75686.png +../../data/yoloGtold1/train/75687.png +../../data/yoloGtold1/train/75688.png +../../data/yoloGtold1/train/75689.png +../../data/yoloGtold1/train/75690.png +../../data/yoloGtold1/train/75691.png +../../data/yoloGtold1/train/75692.png +../../data/yoloGtold1/train/75693.png +../../data/yoloGtold1/train/75694.png +../../data/yoloGtold1/train/75695.png +../../data/yoloGtold1/train/75696.png +../../data/yoloGtold1/train/75697.png +../../data/yoloGtold1/train/75698.png +../../data/yoloGtold1/train/75699.png +../../data/yoloGtold1/train/75700.png +../../data/yoloGtold1/train/75701.png +../../data/yoloGtold1/train/75702.png +../../data/yoloGtold1/train/75703.png +../../data/yoloGtold1/train/75704.png +../../data/yoloGtold1/train/75705.png +../../data/yoloGtold1/train/75706.png +../../data/yoloGtold1/train/75707.png +../../data/yoloGtold1/train/75708.png +../../data/yoloGtold1/train/75709.png +../../data/yoloGtold1/train/75710.png +../../data/yoloGtold1/train/75711.png +../../data/yoloGtold1/train/75712.png +../../data/yoloGtold1/train/75713.png +../../data/yoloGtold1/train/75714.png +../../data/yoloGtold1/train/75715.png +../../data/yoloGtold1/train/75716.png +../../data/yoloGtold1/train/75717.png +../../data/yoloGtold1/train/75718.png +../../data/yoloGtold1/train/75719.png +../../data/yoloGtold1/train/75720.png +../../data/yoloGtold1/train/75721.png +../../data/yoloGtold1/train/75722.png +../../data/yoloGtold1/train/75723.png +../../data/yoloGtold1/train/75724.png +../../data/yoloGtold1/train/75725.png +../../data/yoloGtold1/train/75726.png +../../data/yoloGtold1/train/75727.png +../../data/yoloGtold1/train/75728.png +../../data/yoloGtold1/train/75729.png +../../data/yoloGtold1/train/75730.png +../../data/yoloGtold1/train/75731.png +../../data/yoloGtold1/train/75732.png +../../data/yoloGtold1/train/75733.png +../../data/yoloGtold1/train/75734.png +../../data/yoloGtold1/train/75735.png +../../data/yoloGtold1/train/75736.png +../../data/yoloGtold1/train/75737.png +../../data/yoloGtold1/train/75738.png +../../data/yoloGtold1/train/75739.png +../../data/yoloGtold1/train/75740.png +../../data/yoloGtold1/train/75741.png +../../data/yoloGtold1/train/75742.png +../../data/yoloGtold1/train/75743.png +../../data/yoloGtold1/train/75744.png +../../data/yoloGtold1/train/75745.png +../../data/yoloGtold1/train/75746.png +../../data/yoloGtold1/train/75747.png +../../data/yoloGtold1/train/75748.png +../../data/yoloGtold1/train/75749.png +../../data/yoloGtold1/train/75750.png +../../data/yoloGtold1/train/75751.png +../../data/yoloGtold1/train/75752.png +../../data/yoloGtold1/train/75753.png +../../data/yoloGtold1/train/75754.png +../../data/yoloGtold1/train/75755.png +../../data/yoloGtold1/train/75756.png +../../data/yoloGtold1/train/75757.png +../../data/yoloGtold1/train/75758.png +../../data/yoloGtold1/train/75759.png +../../data/yoloGtold1/train/75760.png +../../data/yoloGtold1/train/75761.png +../../data/yoloGtold1/train/75762.png +../../data/yoloGtold1/train/75763.png +../../data/yoloGtold1/train/75764.png +../../data/yoloGtold1/train/75765.png +../../data/yoloGtold1/train/75766.png +../../data/yoloGtold1/train/75767.png +../../data/yoloGtold1/train/75768.png +../../data/yoloGtold1/train/75769.png +../../data/yoloGtold1/train/75770.png +../../data/yoloGtold1/train/75771.png +../../data/yoloGtold1/train/75772.png +../../data/yoloGtold1/train/75773.png +../../data/yoloGtold1/train/75774.png +../../data/yoloGtold1/train/75775.png +../../data/yoloGtold1/train/75776.png +../../data/yoloGtold1/train/75777.png +../../data/yoloGtold1/train/75778.png +../../data/yoloGtold1/train/75779.png +../../data/yoloGtold1/train/75780.png +../../data/yoloGtold1/train/75781.png +../../data/yoloGtold1/train/75782.png +../../data/yoloGtold1/train/75783.png +../../data/yoloGtold1/train/75784.png +../../data/yoloGtold1/train/75785.png +../../data/yoloGtold1/train/75786.png +../../data/yoloGtold1/train/75787.png +../../data/yoloGtold1/train/75788.png +../../data/yoloGtold1/train/75789.png +../../data/yoloGtold1/train/75790.png +../../data/yoloGtold1/train/75791.png +../../data/yoloGtold1/train/75792.png +../../data/yoloGtold1/train/75793.png +../../data/yoloGtold1/train/75794.png +../../data/yoloGtold1/train/75795.png +../../data/yoloGtold1/train/75796.png +../../data/yoloGtold1/train/75797.png +../../data/yoloGtold1/train/75798.png +../../data/yoloGtold1/train/75799.png +../../data/yoloGtold1/train/75800.png +../../data/yoloGtold1/train/75801.png +../../data/yoloGtold1/train/75802.png +../../data/yoloGtold1/train/75803.png +../../data/yoloGtold1/train/75804.png +../../data/yoloGtold1/train/75805.png +../../data/yoloGtold1/train/75806.png +../../data/yoloGtold1/train/75807.png +../../data/yoloGtold1/train/75808.png +../../data/yoloGtold1/train/75809.png +../../data/yoloGtold1/train/75810.png +../../data/yoloGtold1/train/75811.png +../../data/yoloGtold1/train/75812.png +../../data/yoloGtold1/train/75813.png +../../data/yoloGtold1/train/75814.png +../../data/yoloGtold1/train/75815.png +../../data/yoloGtold1/train/75816.png +../../data/yoloGtold1/train/75817.png +../../data/yoloGtold1/train/75818.png +../../data/yoloGtold1/train/75819.png +../../data/yoloGtold1/train/75820.png +../../data/yoloGtold1/train/75821.png +../../data/yoloGtold1/train/75822.png +../../data/yoloGtold1/train/75823.png +../../data/yoloGtold1/train/75824.png +../../data/yoloGtold1/train/75825.png +../../data/yoloGtold1/train/75826.png +../../data/yoloGtold1/train/75827.png +../../data/yoloGtold1/train/75828.png +../../data/yoloGtold1/train/75829.png +../../data/yoloGtold1/train/75830.png +../../data/yoloGtold1/train/75831.png +../../data/yoloGtold1/train/75832.png +../../data/yoloGtold1/train/75833.png +../../data/yoloGtold1/train/75834.png +../../data/yoloGtold1/train/75835.png +../../data/yoloGtold1/train/75836.png +../../data/yoloGtold1/train/75837.png +../../data/yoloGtold1/train/75838.png +../../data/yoloGtold1/train/75839.png +../../data/yoloGtold1/train/75840.png +../../data/yoloGtold1/train/75841.png +../../data/yoloGtold1/train/75842.png +../../data/yoloGtold1/train/75843.png +../../data/yoloGtold1/train/75844.png +../../data/yoloGtold1/train/75845.png +../../data/yoloGtold1/train/75846.png +../../data/yoloGtold1/train/75847.png +../../data/yoloGtold1/train/75848.png +../../data/yoloGtold1/train/75849.png +../../data/yoloGtold1/train/75850.png +../../data/yoloGtold1/train/75851.png +../../data/yoloGtold1/train/75852.png +../../data/yoloGtold1/train/75853.png +../../data/yoloGtold1/train/75854.png +../../data/yoloGtold1/train/75855.png +../../data/yoloGtold1/train/75856.png +../../data/yoloGtold1/train/75857.png +../../data/yoloGtold1/train/75858.png +../../data/yoloGtold1/train/75859.png +../../data/yoloGtold1/train/75860.png +../../data/yoloGtold1/train/75861.png +../../data/yoloGtold1/train/75862.png +../../data/yoloGtold1/train/75863.png +../../data/yoloGtold1/train/75864.png +../../data/yoloGtold1/train/75865.png +../../data/yoloGtold1/train/75866.png +../../data/yoloGtold1/train/75867.png +../../data/yoloGtold1/train/75868.png +../../data/yoloGtold1/train/75869.png +../../data/yoloGtold1/train/75870.png +../../data/yoloGtold1/train/75871.png +../../data/yoloGtold1/train/75872.png +../../data/yoloGtold1/train/75873.png +../../data/yoloGtold1/train/75874.png +../../data/yoloGtold1/train/75875.png +../../data/yoloGtold1/train/75876.png +../../data/yoloGtold1/train/75877.png +../../data/yoloGtold1/train/75878.png +../../data/yoloGtold1/train/75879.png +../../data/yoloGtold1/train/75880.png +../../data/yoloGtold1/train/75881.png +../../data/yoloGtold1/train/75882.png +../../data/yoloGtold1/train/75883.png +../../data/yoloGtold1/train/75884.png +../../data/yoloGtold1/train/75885.png +../../data/yoloGtold1/train/75886.png +../../data/yoloGtold1/train/75887.png +../../data/yoloGtold1/train/75888.png +../../data/yoloGtold1/train/75889.png +../../data/yoloGtold1/train/75890.png +../../data/yoloGtold1/train/75891.png +../../data/yoloGtold1/train/75892.png +../../data/yoloGtold1/train/75893.png +../../data/yoloGtold1/train/75894.png +../../data/yoloGtold1/train/75895.png +../../data/yoloGtold1/train/75896.png +../../data/yoloGtold1/train/75897.png +../../data/yoloGtold1/train/75898.png +../../data/yoloGtold1/train/75899.png +../../data/yoloGtold1/train/75900.png +../../data/yoloGtold1/train/75901.png +../../data/yoloGtold1/train/75902.png +../../data/yoloGtold1/train/75903.png +../../data/yoloGtold1/train/75904.png +../../data/yoloGtold1/train/75905.png +../../data/yoloGtold1/train/75906.png +../../data/yoloGtold1/train/75907.png +../../data/yoloGtold1/train/75908.png +../../data/yoloGtold1/train/75909.png +../../data/yoloGtold1/train/75910.png +../../data/yoloGtold1/train/75911.png +../../data/yoloGtold1/train/75912.png +../../data/yoloGtold1/train/75913.png +../../data/yoloGtold1/train/75914.png +../../data/yoloGtold1/train/75915.png +../../data/yoloGtold1/train/75916.png +../../data/yoloGtold1/train/75917.png +../../data/yoloGtold1/train/75918.png +../../data/yoloGtold1/train/75919.png +../../data/yoloGtold1/train/75920.png +../../data/yoloGtold1/train/75921.png +../../data/yoloGtold1/train/75922.png +../../data/yoloGtold1/train/75923.png +../../data/yoloGtold1/train/75924.png +../../data/yoloGtold1/train/75925.png +../../data/yoloGtold1/train/75926.png +../../data/yoloGtold1/train/75927.png +../../data/yoloGtold1/train/75928.png +../../data/yoloGtold1/train/75929.png +../../data/yoloGtold1/train/75930.png +../../data/yoloGtold1/train/75931.png +../../data/yoloGtold1/train/75932.png +../../data/yoloGtold1/train/75933.png +../../data/yoloGtold1/train/75934.png +../../data/yoloGtold1/train/75935.png +../../data/yoloGtold1/train/75936.png +../../data/yoloGtold1/train/75937.png +../../data/yoloGtold1/train/75938.png +../../data/yoloGtold1/train/75939.png +../../data/yoloGtold1/train/75940.png +../../data/yoloGtold1/train/75941.png +../../data/yoloGtold1/train/75942.png +../../data/yoloGtold1/train/75943.png +../../data/yoloGtold1/train/75944.png +../../data/yoloGtold1/train/75945.png +../../data/yoloGtold1/train/75946.png +../../data/yoloGtold1/train/75947.png +../../data/yoloGtold1/train/75948.png +../../data/yoloGtold1/train/75949.png +../../data/yoloGtold1/train/75950.png +../../data/yoloGtold1/train/75951.png +../../data/yoloGtold1/train/75952.png +../../data/yoloGtold1/train/75953.png +../../data/yoloGtold1/train/75954.png +../../data/yoloGtold1/train/75955.png +../../data/yoloGtold1/train/75956.png +../../data/yoloGtold1/train/75957.png +../../data/yoloGtold1/train/75958.png +../../data/yoloGtold1/train/75959.png +../../data/yoloGtold1/train/75960.png +../../data/yoloGtold1/train/75961.png +../../data/yoloGtold1/train/75962.png +../../data/yoloGtold1/train/75963.png +../../data/yoloGtold1/train/75964.png +../../data/yoloGtold1/train/75965.png +../../data/yoloGtold1/train/75966.png +../../data/yoloGtold1/train/75967.png +../../data/yoloGtold1/train/75968.png +../../data/yoloGtold1/train/75969.png +../../data/yoloGtold1/train/75970.png +../../data/yoloGtold1/train/75971.png +../../data/yoloGtold1/train/75972.png +../../data/yoloGtold1/train/75973.png +../../data/yoloGtold1/train/75974.png +../../data/yoloGtold1/train/75975.png +../../data/yoloGtold1/train/75976.png +../../data/yoloGtold1/train/75977.png +../../data/yoloGtold1/train/75978.png +../../data/yoloGtold1/train/75979.png +../../data/yoloGtold1/train/75980.png +../../data/yoloGtold1/train/75981.png +../../data/yoloGtold1/train/75982.png +../../data/yoloGtold1/train/75983.png +../../data/yoloGtold1/train/75984.png +../../data/yoloGtold1/train/75985.png +../../data/yoloGtold1/train/75986.png +../../data/yoloGtold1/train/75987.png +../../data/yoloGtold1/train/75988.png +../../data/yoloGtold1/train/75989.png +../../data/yoloGtold1/train/75990.png +../../data/yoloGtold1/train/75991.png +../../data/yoloGtold1/train/75992.png +../../data/yoloGtold1/train/75993.png +../../data/yoloGtold1/train/75994.png +../../data/yoloGtold1/train/75995.png +../../data/yoloGtold1/train/75996.png +../../data/yoloGtold1/train/75997.png +../../data/yoloGtold1/train/75998.png +../../data/yoloGtold1/train/75999.png +../../data/yoloGtold1/train/76000.png +../../data/yoloGtold1/train/76001.png +../../data/yoloGtold1/train/76002.png +../../data/yoloGtold1/train/76003.png +../../data/yoloGtold1/train/76004.png +../../data/yoloGtold1/train/76005.png +../../data/yoloGtold1/train/76006.png +../../data/yoloGtold1/train/76007.png +../../data/yoloGtold1/train/76008.png +../../data/yoloGtold1/train/76009.png +../../data/yoloGtold1/train/76010.png +../../data/yoloGtold1/train/76011.png +../../data/yoloGtold1/train/76012.png +../../data/yoloGtold1/train/76013.png +../../data/yoloGtold1/train/76014.png +../../data/yoloGtold1/train/76015.png +../../data/yoloGtold1/train/76016.png +../../data/yoloGtold1/train/76017.png +../../data/yoloGtold1/train/76018.png +../../data/yoloGtold1/train/76019.png +../../data/yoloGtold1/train/76020.png +../../data/yoloGtold1/train/76021.png +../../data/yoloGtold1/train/76022.png +../../data/yoloGtold1/train/76023.png +../../data/yoloGtold1/train/76024.png +../../data/yoloGtold1/train/76025.png +../../data/yoloGtold1/train/76026.png +../../data/yoloGtold1/train/76027.png +../../data/yoloGtold1/train/76028.png +../../data/yoloGtold1/train/76029.png +../../data/yoloGtold1/train/76030.png +../../data/yoloGtold1/train/76031.png +../../data/yoloGtold1/train/76032.png +../../data/yoloGtold1/train/76033.png +../../data/yoloGtold1/train/76034.png +../../data/yoloGtold1/train/76035.png +../../data/yoloGtold1/train/76036.png +../../data/yoloGtold1/train/76037.png +../../data/yoloGtold1/train/76038.png +../../data/yoloGtold1/train/76039.png +../../data/yoloGtold1/train/76040.png +../../data/yoloGtold1/train/76041.png +../../data/yoloGtold1/train/76042.png +../../data/yoloGtold1/train/76043.png +../../data/yoloGtold1/train/76044.png +../../data/yoloGtold1/train/76045.png +../../data/yoloGtold1/train/76046.png +../../data/yoloGtold1/train/76047.png +../../data/yoloGtold1/train/76048.png +../../data/yoloGtold1/train/76049.png +../../data/yoloGtold1/train/76050.png +../../data/yoloGtold1/train/76051.png +../../data/yoloGtold1/train/76052.png +../../data/yoloGtold1/train/76053.png +../../data/yoloGtold1/train/76054.png +../../data/yoloGtold1/train/76055.png +../../data/yoloGtold1/train/76056.png +../../data/yoloGtold1/train/76057.png +../../data/yoloGtold1/train/76058.png +../../data/yoloGtold1/train/76059.png +../../data/yoloGtold1/train/76060.png +../../data/yoloGtold1/train/76061.png +../../data/yoloGtold1/train/76062.png +../../data/yoloGtold1/train/76063.png +../../data/yoloGtold1/train/76064.png +../../data/yoloGtold1/train/76065.png +../../data/yoloGtold1/train/76066.png +../../data/yoloGtold1/train/76067.png +../../data/yoloGtold1/train/76068.png +../../data/yoloGtold1/train/76069.png +../../data/yoloGtold1/train/76070.png +../../data/yoloGtold1/train/76071.png +../../data/yoloGtold1/train/76072.png +../../data/yoloGtold1/train/76073.png +../../data/yoloGtold1/train/76074.png +../../data/yoloGtold1/train/76075.png +../../data/yoloGtold1/train/76076.png +../../data/yoloGtold1/train/76077.png +../../data/yoloGtold1/train/76078.png +../../data/yoloGtold1/train/76079.png +../../data/yoloGtold1/train/76080.png +../../data/yoloGtold1/train/76081.png +../../data/yoloGtold1/train/76082.png +../../data/yoloGtold1/train/76083.png +../../data/yoloGtold1/train/76084.png +../../data/yoloGtold1/train/76085.png +../../data/yoloGtold1/train/76086.png +../../data/yoloGtold1/train/76087.png +../../data/yoloGtold1/train/76088.png +../../data/yoloGtold1/train/76089.png +../../data/yoloGtold1/train/76090.png +../../data/yoloGtold1/train/76091.png +../../data/yoloGtold1/train/76092.png +../../data/yoloGtold1/train/76093.png +../../data/yoloGtold1/train/76094.png +../../data/yoloGtold1/train/76095.png +../../data/yoloGtold1/train/76096.png +../../data/yoloGtold1/train/76097.png +../../data/yoloGtold1/train/76098.png +../../data/yoloGtold1/train/76099.png +../../data/yoloGtold1/train/76100.png +../../data/yoloGtold1/train/76101.png +../../data/yoloGtold1/train/76102.png +../../data/yoloGtold1/train/76103.png +../../data/yoloGtold1/train/76104.png +../../data/yoloGtold1/train/76105.png +../../data/yoloGtold1/train/76106.png +../../data/yoloGtold1/train/76107.png +../../data/yoloGtold1/train/76108.png +../../data/yoloGtold1/train/76109.png +../../data/yoloGtold1/train/76110.png +../../data/yoloGtold1/train/76111.png +../../data/yoloGtold1/train/76112.png +../../data/yoloGtold1/train/76113.png +../../data/yoloGtold1/train/76114.png +../../data/yoloGtold1/train/76115.png +../../data/yoloGtold1/train/76116.png +../../data/yoloGtold1/train/76117.png +../../data/yoloGtold1/train/76118.png +../../data/yoloGtold1/train/76119.png +../../data/yoloGtold1/train/76120.png +../../data/yoloGtold1/train/76121.png +../../data/yoloGtold1/train/76122.png +../../data/yoloGtold1/train/76123.png +../../data/yoloGtold1/train/76124.png +../../data/yoloGtold1/train/76125.png +../../data/yoloGtold1/train/76126.png +../../data/yoloGtold1/train/76127.png +../../data/yoloGtold1/train/76128.png +../../data/yoloGtold1/train/76129.png +../../data/yoloGtold1/train/76130.png +../../data/yoloGtold1/train/76131.png +../../data/yoloGtold1/train/76132.png +../../data/yoloGtold1/train/76133.png +../../data/yoloGtold1/train/76134.png +../../data/yoloGtold1/train/76135.png +../../data/yoloGtold1/train/76136.png +../../data/yoloGtold1/train/76137.png +../../data/yoloGtold1/train/76138.png +../../data/yoloGtold1/train/76139.png +../../data/yoloGtold1/train/76140.png +../../data/yoloGtold1/train/76141.png +../../data/yoloGtold1/train/76142.png +../../data/yoloGtold1/train/76143.png +../../data/yoloGtold1/train/76144.png +../../data/yoloGtold1/train/76145.png +../../data/yoloGtold1/train/76146.png +../../data/yoloGtold1/train/76147.png +../../data/yoloGtold1/train/76148.png +../../data/yoloGtold1/train/76149.png +../../data/yoloGtold1/train/76150.png +../../data/yoloGtold1/train/76151.png +../../data/yoloGtold1/train/76152.png +../../data/yoloGtold1/train/76153.png +../../data/yoloGtold1/train/76154.png +../../data/yoloGtold1/train/76155.png +../../data/yoloGtold1/train/76156.png +../../data/yoloGtold1/train/76157.png +../../data/yoloGtold1/train/76158.png +../../data/yoloGtold1/train/76159.png +../../data/yoloGtold1/train/76160.png +../../data/yoloGtold1/train/76161.png +../../data/yoloGtold1/train/76162.png +../../data/yoloGtold1/train/76163.png +../../data/yoloGtold1/train/76164.png +../../data/yoloGtold1/train/76165.png +../../data/yoloGtold1/train/76166.png +../../data/yoloGtold1/train/76167.png +../../data/yoloGtold1/train/76168.png +../../data/yoloGtold1/train/76169.png +../../data/yoloGtold1/train/76170.png +../../data/yoloGtold1/train/76171.png +../../data/yoloGtold1/train/76172.png +../../data/yoloGtold1/train/76173.png +../../data/yoloGtold1/train/76174.png +../../data/yoloGtold1/train/76175.png +../../data/yoloGtold1/train/76176.png +../../data/yoloGtold1/train/76177.png +../../data/yoloGtold1/train/76178.png +../../data/yoloGtold1/train/76179.png +../../data/yoloGtold1/train/76180.png +../../data/yoloGtold1/train/76181.png +../../data/yoloGtold1/train/76182.png +../../data/yoloGtold1/train/76183.png +../../data/yoloGtold1/train/76184.png +../../data/yoloGtold1/train/76185.png +../../data/yoloGtold1/train/76186.png +../../data/yoloGtold1/train/76187.png +../../data/yoloGtold1/train/76188.png +../../data/yoloGtold1/train/76189.png +../../data/yoloGtold1/train/76190.png +../../data/yoloGtold1/train/76191.png +../../data/yoloGtold1/train/76192.png +../../data/yoloGtold1/train/76193.png +../../data/yoloGtold1/train/76194.png +../../data/yoloGtold1/train/76195.png +../../data/yoloGtold1/train/76196.png +../../data/yoloGtold1/train/76197.png +../../data/yoloGtold1/train/76198.png +../../data/yoloGtold1/train/76199.png +../../data/yoloGtold1/train/76200.png +../../data/yoloGtold1/train/76201.png +../../data/yoloGtold1/train/76202.png +../../data/yoloGtold1/train/76203.png +../../data/yoloGtold1/train/76204.png +../../data/yoloGtold1/train/76205.png +../../data/yoloGtold1/train/76206.png +../../data/yoloGtold1/train/76207.png +../../data/yoloGtold1/train/76208.png +../../data/yoloGtold1/train/76209.png +../../data/yoloGtold1/train/76210.png +../../data/yoloGtold1/train/76211.png +../../data/yoloGtold1/train/76212.png +../../data/yoloGtold1/train/76213.png +../../data/yoloGtold1/train/76214.png +../../data/yoloGtold1/train/76215.png +../../data/yoloGtold1/train/76216.png +../../data/yoloGtold1/train/76217.png +../../data/yoloGtold1/train/76218.png +../../data/yoloGtold1/train/76219.png +../../data/yoloGtold1/train/76220.png +../../data/yoloGtold1/train/76221.png +../../data/yoloGtold1/train/76222.png +../../data/yoloGtold1/train/76223.png +../../data/yoloGtold1/train/76224.png +../../data/yoloGtold1/train/76225.png +../../data/yoloGtold1/train/76226.png +../../data/yoloGtold1/train/76227.png +../../data/yoloGtold1/train/76228.png +../../data/yoloGtold1/train/76229.png +../../data/yoloGtold1/train/76230.png +../../data/yoloGtold1/train/76231.png +../../data/yoloGtold1/train/76232.png +../../data/yoloGtold1/train/76233.png +../../data/yoloGtold1/train/76234.png +../../data/yoloGtold1/train/76235.png +../../data/yoloGtold1/train/76236.png +../../data/yoloGtold1/train/76237.png +../../data/yoloGtold1/train/76238.png +../../data/yoloGtold1/train/76239.png +../../data/yoloGtold1/train/76240.png +../../data/yoloGtold1/train/76241.png +../../data/yoloGtold1/train/76242.png +../../data/yoloGtold1/train/76243.png +../../data/yoloGtold1/train/76244.png +../../data/yoloGtold1/train/76245.png +../../data/yoloGtold1/train/76246.png +../../data/yoloGtold1/train/76247.png +../../data/yoloGtold1/train/76248.png +../../data/yoloGtold1/train/76249.png +../../data/yoloGtold1/train/76250.png +../../data/yoloGtold1/train/76251.png +../../data/yoloGtold1/train/76252.png +../../data/yoloGtold1/train/76253.png +../../data/yoloGtold1/train/76254.png +../../data/yoloGtold1/train/76255.png +../../data/yoloGtold1/train/76256.png +../../data/yoloGtold1/train/76257.png +../../data/yoloGtold1/train/76258.png +../../data/yoloGtold1/train/76259.png +../../data/yoloGtold1/train/76260.png +../../data/yoloGtold1/train/76261.png +../../data/yoloGtold1/train/76262.png +../../data/yoloGtold1/train/76263.png +../../data/yoloGtold1/train/76264.png +../../data/yoloGtold1/train/76265.png +../../data/yoloGtold1/train/76266.png +../../data/yoloGtold1/train/76267.png +../../data/yoloGtold1/train/76268.png +../../data/yoloGtold1/train/76269.png +../../data/yoloGtold1/train/76270.png +../../data/yoloGtold1/train/76271.png +../../data/yoloGtold1/train/76272.png +../../data/yoloGtold1/train/76273.png +../../data/yoloGtold1/train/76274.png +../../data/yoloGtold1/train/76275.png +../../data/yoloGtold1/train/76276.png +../../data/yoloGtold1/train/76277.png +../../data/yoloGtold1/train/76278.png +../../data/yoloGtold1/train/76279.png +../../data/yoloGtold1/train/76280.png +../../data/yoloGtold1/train/76281.png +../../data/yoloGtold1/train/76282.png +../../data/yoloGtold1/train/76283.png +../../data/yoloGtold1/train/76284.png +../../data/yoloGtold1/train/76285.png +../../data/yoloGtold1/train/76286.png +../../data/yoloGtold1/train/76287.png +../../data/yoloGtold1/train/76288.png +../../data/yoloGtold1/train/76289.png +../../data/yoloGtold1/train/76290.png +../../data/yoloGtold1/train/76291.png +../../data/yoloGtold1/train/76292.png +../../data/yoloGtold1/train/76293.png +../../data/yoloGtold1/train/76294.png +../../data/yoloGtold1/train/76295.png +../../data/yoloGtold1/train/76296.png +../../data/yoloGtold1/train/76297.png +../../data/yoloGtold1/train/76298.png +../../data/yoloGtold1/train/76299.png +../../data/yoloGtold1/train/76300.png +../../data/yoloGtold1/train/76301.png +../../data/yoloGtold1/train/76302.png +../../data/yoloGtold1/train/76303.png +../../data/yoloGtold1/train/76304.png +../../data/yoloGtold1/train/76305.png +../../data/yoloGtold1/train/76306.png +../../data/yoloGtold1/train/76307.png +../../data/yoloGtold1/train/76308.png +../../data/yoloGtold1/train/76309.png +../../data/yoloGtold1/train/76310.png +../../data/yoloGtold1/train/76311.png +../../data/yoloGtold1/train/76312.png +../../data/yoloGtold1/train/76313.png +../../data/yoloGtold1/train/76314.png +../../data/yoloGtold1/train/76315.png +../../data/yoloGtold1/train/76316.png +../../data/yoloGtold1/train/76317.png +../../data/yoloGtold1/train/76318.png +../../data/yoloGtold1/train/76319.png +../../data/yoloGtold1/train/76320.png +../../data/yoloGtold1/train/76321.png +../../data/yoloGtold1/train/76322.png +../../data/yoloGtold1/train/76323.png +../../data/yoloGtold1/train/76324.png +../../data/yoloGtold1/train/76325.png +../../data/yoloGtold1/train/76326.png +../../data/yoloGtold1/train/76327.png +../../data/yoloGtold1/train/76328.png +../../data/yoloGtold1/train/76329.png +../../data/yoloGtold1/train/76330.png +../../data/yoloGtold1/train/76331.png +../../data/yoloGtold1/train/76332.png +../../data/yoloGtold1/train/76333.png +../../data/yoloGtold1/train/76334.png +../../data/yoloGtold1/train/76335.png +../../data/yoloGtold1/train/76336.png +../../data/yoloGtold1/train/76337.png +../../data/yoloGtold1/train/76338.png +../../data/yoloGtold1/train/76339.png +../../data/yoloGtold1/train/76340.png +../../data/yoloGtold1/train/76341.png +../../data/yoloGtold1/train/76342.png +../../data/yoloGtold1/train/76343.png +../../data/yoloGtold1/train/76344.png +../../data/yoloGtold1/train/76345.png +../../data/yoloGtold1/train/76346.png +../../data/yoloGtold1/train/76347.png +../../data/yoloGtold1/train/76348.png +../../data/yoloGtold1/train/76349.png +../../data/yoloGtold1/train/76350.png +../../data/yoloGtold1/train/76351.png +../../data/yoloGtold1/train/76352.png +../../data/yoloGtold1/train/76353.png +../../data/yoloGtold1/train/76354.png +../../data/yoloGtold1/train/76355.png +../../data/yoloGtold1/train/76356.png +../../data/yoloGtold1/train/76357.png +../../data/yoloGtold1/train/76358.png +../../data/yoloGtold1/train/76359.png +../../data/yoloGtold1/train/76360.png +../../data/yoloGtold1/train/76361.png +../../data/yoloGtold1/train/76362.png +../../data/yoloGtold1/train/76363.png +../../data/yoloGtold1/train/76364.png +../../data/yoloGtold1/train/76365.png +../../data/yoloGtold1/train/76366.png +../../data/yoloGtold1/train/76367.png +../../data/yoloGtold1/train/76368.png +../../data/yoloGtold1/train/76369.png +../../data/yoloGtold1/train/76370.png +../../data/yoloGtold1/train/76371.png +../../data/yoloGtold1/train/76372.png +../../data/yoloGtold1/train/76373.png +../../data/yoloGtold1/train/76374.png +../../data/yoloGtold1/train/76375.png +../../data/yoloGtold1/train/76376.png +../../data/yoloGtold1/train/76377.png +../../data/yoloGtold1/train/76378.png +../../data/yoloGtold1/train/76379.png +../../data/yoloGtold1/train/76380.png +../../data/yoloGtold1/train/76381.png +../../data/yoloGtold1/train/76382.png +../../data/yoloGtold1/train/76383.png +../../data/yoloGtold1/train/76384.png +../../data/yoloGtold1/train/76385.png +../../data/yoloGtold1/train/76386.png +../../data/yoloGtold1/train/76387.png +../../data/yoloGtold1/train/76388.png +../../data/yoloGtold1/train/76389.png +../../data/yoloGtold1/train/76390.png +../../data/yoloGtold1/train/76391.png +../../data/yoloGtold1/train/76392.png +../../data/yoloGtold1/train/76393.png +../../data/yoloGtold1/train/76394.png +../../data/yoloGtold1/train/76395.png +../../data/yoloGtold1/train/76396.png +../../data/yoloGtold1/train/76397.png +../../data/yoloGtold1/train/76398.png +../../data/yoloGtold1/train/76399.png +../../data/yoloGtold1/train/76400.png +../../data/yoloGtold1/train/76401.png +../../data/yoloGtold1/train/76402.png +../../data/yoloGtold1/train/76403.png +../../data/yoloGtold1/train/76404.png +../../data/yoloGtold1/train/76405.png +../../data/yoloGtold1/train/76406.png +../../data/yoloGtold1/train/76407.png +../../data/yoloGtold1/train/76408.png +../../data/yoloGtold1/train/76409.png +../../data/yoloGtold1/train/76410.png +../../data/yoloGtold1/train/76411.png +../../data/yoloGtold1/train/76412.png +../../data/yoloGtold1/train/76413.png +../../data/yoloGtold1/train/76414.png +../../data/yoloGtold1/train/76415.png +../../data/yoloGtold1/train/76416.png +../../data/yoloGtold1/train/76417.png +../../data/yoloGtold1/train/76418.png +../../data/yoloGtold1/train/76419.png +../../data/yoloGtold1/train/76420.png +../../data/yoloGtold1/train/76421.png +../../data/yoloGtold1/train/76422.png +../../data/yoloGtold1/train/76423.png +../../data/yoloGtold1/train/76424.png +../../data/yoloGtold1/train/76425.png +../../data/yoloGtold1/train/76426.png +../../data/yoloGtold1/train/76427.png +../../data/yoloGtold1/train/76428.png +../../data/yoloGtold1/train/76429.png +../../data/yoloGtold1/train/76430.png +../../data/yoloGtold1/train/76431.png +../../data/yoloGtold1/train/76432.png +../../data/yoloGtold1/train/76433.png +../../data/yoloGtold1/train/76434.png +../../data/yoloGtold1/train/76435.png +../../data/yoloGtold1/train/76436.png +../../data/yoloGtold1/train/76437.png +../../data/yoloGtold1/train/76438.png +../../data/yoloGtold1/train/76439.png +../../data/yoloGtold1/train/76440.png +../../data/yoloGtold1/train/76441.png +../../data/yoloGtold1/train/76442.png +../../data/yoloGtold1/train/76443.png +../../data/yoloGtold1/train/76444.png +../../data/yoloGtold1/train/76445.png +../../data/yoloGtold1/train/76446.png +../../data/yoloGtold1/train/76447.png +../../data/yoloGtold1/train/76448.png +../../data/yoloGtold1/train/76449.png +../../data/yoloGtold1/train/76450.png +../../data/yoloGtold1/train/76451.png +../../data/yoloGtold1/train/76452.png +../../data/yoloGtold1/train/76453.png +../../data/yoloGtold1/train/76454.png +../../data/yoloGtold1/train/76455.png +../../data/yoloGtold1/train/76456.png +../../data/yoloGtold1/train/76457.png +../../data/yoloGtold1/train/76458.png +../../data/yoloGtold1/train/76459.png +../../data/yoloGtold1/train/76460.png +../../data/yoloGtold1/train/76461.png +../../data/yoloGtold1/train/76462.png +../../data/yoloGtold1/train/76463.png +../../data/yoloGtold1/train/76464.png +../../data/yoloGtold1/train/76465.png +../../data/yoloGtold1/train/76466.png +../../data/yoloGtold1/train/76467.png +../../data/yoloGtold1/train/76468.png +../../data/yoloGtold1/train/76469.png +../../data/yoloGtold1/train/76470.png +../../data/yoloGtold1/train/76471.png +../../data/yoloGtold1/train/76472.png +../../data/yoloGtold1/train/76473.png +../../data/yoloGtold1/train/76474.png +../../data/yoloGtold1/train/76475.png +../../data/yoloGtold1/train/76476.png +../../data/yoloGtold1/train/76477.png +../../data/yoloGtold1/train/76478.png +../../data/yoloGtold1/train/76479.png +../../data/yoloGtold1/train/76480.png +../../data/yoloGtold1/train/76481.png +../../data/yoloGtold1/train/76482.png +../../data/yoloGtold1/train/76483.png +../../data/yoloGtold1/train/76484.png +../../data/yoloGtold1/train/76485.png +../../data/yoloGtold1/train/76486.png +../../data/yoloGtold1/train/76487.png +../../data/yoloGtold1/train/76488.png +../../data/yoloGtold1/train/76489.png +../../data/yoloGtold1/train/76490.png +../../data/yoloGtold1/train/76491.png +../../data/yoloGtold1/train/76492.png +../../data/yoloGtold1/train/76493.png +../../data/yoloGtold1/train/76494.png +../../data/yoloGtold1/train/76495.png +../../data/yoloGtold1/train/76496.png +../../data/yoloGtold1/train/76497.png +../../data/yoloGtold1/train/76498.png +../../data/yoloGtold1/train/76499.png +../../data/yoloGtold1/train/76500.png +../../data/yoloGtold1/train/76501.png +../../data/yoloGtold1/train/76502.png +../../data/yoloGtold1/train/76503.png +../../data/yoloGtold1/train/76504.png +../../data/yoloGtold1/train/76505.png +../../data/yoloGtold1/train/76506.png +../../data/yoloGtold1/train/76507.png +../../data/yoloGtold1/train/76508.png +../../data/yoloGtold1/train/76509.png +../../data/yoloGtold1/train/76510.png +../../data/yoloGtold1/train/76511.png +../../data/yoloGtold1/train/76512.png +../../data/yoloGtold1/train/76513.png +../../data/yoloGtold1/train/76514.png +../../data/yoloGtold1/train/76515.png +../../data/yoloGtold1/train/76516.png +../../data/yoloGtold1/train/76517.png +../../data/yoloGtold1/train/76518.png +../../data/yoloGtold1/train/76519.png +../../data/yoloGtold1/train/76520.png +../../data/yoloGtold1/train/76521.png +../../data/yoloGtold1/train/76522.png +../../data/yoloGtold1/train/76523.png +../../data/yoloGtold1/train/76524.png +../../data/yoloGtold1/train/76525.png +../../data/yoloGtold1/train/76526.png +../../data/yoloGtold1/train/76527.png +../../data/yoloGtold1/train/76528.png +../../data/yoloGtold1/train/76529.png +../../data/yoloGtold1/train/76530.png +../../data/yoloGtold1/train/76531.png +../../data/yoloGtold1/train/76532.png +../../data/yoloGtold1/train/76533.png +../../data/yoloGtold1/train/76534.png +../../data/yoloGtold1/train/76535.png +../../data/yoloGtold1/train/76536.png +../../data/yoloGtold1/train/76537.png +../../data/yoloGtold1/train/76538.png +../../data/yoloGtold1/train/76539.png +../../data/yoloGtold1/train/76540.png +../../data/yoloGtold1/train/76541.png +../../data/yoloGtold1/train/76542.png +../../data/yoloGtold1/train/76543.png +../../data/yoloGtold1/train/76544.png +../../data/yoloGtold1/train/76545.png +../../data/yoloGtold1/train/76546.png +../../data/yoloGtold1/train/76547.png +../../data/yoloGtold1/train/76548.png +../../data/yoloGtold1/train/76549.png +../../data/yoloGtold1/train/76550.png +../../data/yoloGtold1/train/76551.png +../../data/yoloGtold1/train/76552.png +../../data/yoloGtold1/train/76553.png +../../data/yoloGtold1/train/76554.png +../../data/yoloGtold1/train/76555.png +../../data/yoloGtold1/train/76556.png +../../data/yoloGtold1/train/76557.png +../../data/yoloGtold1/train/76558.png +../../data/yoloGtold1/train/76559.png +../../data/yoloGtold1/train/76560.png +../../data/yoloGtold1/train/76561.png +../../data/yoloGtold1/train/76562.png +../../data/yoloGtold1/train/76563.png +../../data/yoloGtold1/train/76564.png +../../data/yoloGtold1/train/76565.png +../../data/yoloGtold1/train/76566.png +../../data/yoloGtold1/train/76567.png +../../data/yoloGtold1/train/76568.png +../../data/yoloGtold1/train/76569.png +../../data/yoloGtold1/train/76570.png +../../data/yoloGtold1/train/76571.png +../../data/yoloGtold1/train/76572.png +../../data/yoloGtold1/train/76573.png +../../data/yoloGtold1/train/76574.png +../../data/yoloGtold1/train/76575.png +../../data/yoloGtold1/train/76576.png +../../data/yoloGtold1/train/76577.png +../../data/yoloGtold1/train/76578.png +../../data/yoloGtold1/train/76579.png +../../data/yoloGtold1/train/76580.png +../../data/yoloGtold1/train/76581.png +../../data/yoloGtold1/train/76582.png +../../data/yoloGtold1/train/76583.png +../../data/yoloGtold1/train/76584.png +../../data/yoloGtold1/train/76585.png +../../data/yoloGtold1/train/76586.png +../../data/yoloGtold1/train/76587.png +../../data/yoloGtold1/train/76588.png +../../data/yoloGtold1/train/76589.png +../../data/yoloGtold1/train/76590.png +../../data/yoloGtold1/train/76591.png +../../data/yoloGtold1/train/76592.png +../../data/yoloGtold1/train/76593.png +../../data/yoloGtold1/train/76594.png +../../data/yoloGtold1/train/76595.png +../../data/yoloGtold1/train/76596.png +../../data/yoloGtold1/train/76597.png +../../data/yoloGtold1/train/76598.png +../../data/yoloGtold1/train/76599.png +../../data/yoloGtold1/train/76600.png +../../data/yoloGtold1/train/76601.png +../../data/yoloGtold1/train/76602.png +../../data/yoloGtold1/train/76603.png +../../data/yoloGtold1/train/76604.png +../../data/yoloGtold1/train/76605.png +../../data/yoloGtold1/train/76606.png +../../data/yoloGtold1/train/76607.png +../../data/yoloGtold1/train/76608.png +../../data/yoloGtold1/train/76609.png +../../data/yoloGtold1/train/76610.png +../../data/yoloGtold1/train/76611.png +../../data/yoloGtold1/train/76612.png +../../data/yoloGtold1/train/76613.png +../../data/yoloGtold1/train/76614.png +../../data/yoloGtold1/train/76615.png +../../data/yoloGtold1/train/76616.png +../../data/yoloGtold1/train/76617.png +../../data/yoloGtold1/train/76618.png +../../data/yoloGtold1/train/76619.png +../../data/yoloGtold1/train/76620.png +../../data/yoloGtold1/train/76621.png +../../data/yoloGtold1/train/76622.png +../../data/yoloGtold1/train/76623.png +../../data/yoloGtold1/train/76624.png +../../data/yoloGtold1/train/76625.png +../../data/yoloGtold1/train/76626.png +../../data/yoloGtold1/train/76627.png +../../data/yoloGtold1/train/76628.png +../../data/yoloGtold1/train/76629.png +../../data/yoloGtold1/train/76630.png +../../data/yoloGtold1/train/76631.png +../../data/yoloGtold1/train/76632.png +../../data/yoloGtold1/train/76633.png +../../data/yoloGtold1/train/76634.png +../../data/yoloGtold1/train/76635.png +../../data/yoloGtold1/train/76636.png +../../data/yoloGtold1/train/76637.png +../../data/yoloGtold1/train/76638.png +../../data/yoloGtold1/train/76639.png +../../data/yoloGtold1/train/76640.png +../../data/yoloGtold1/train/76641.png +../../data/yoloGtold1/train/76642.png +../../data/yoloGtold1/train/76643.png +../../data/yoloGtold1/train/76644.png +../../data/yoloGtold1/train/76645.png +../../data/yoloGtold1/train/76646.png +../../data/yoloGtold1/train/76647.png +../../data/yoloGtold1/train/76648.png +../../data/yoloGtold1/train/76649.png +../../data/yoloGtold1/train/76650.png +../../data/yoloGtold1/train/76651.png +../../data/yoloGtold1/train/76652.png +../../data/yoloGtold1/train/76653.png +../../data/yoloGtold1/train/76654.png +../../data/yoloGtold1/train/76655.png +../../data/yoloGtold1/train/76656.png +../../data/yoloGtold1/train/76657.png +../../data/yoloGtold1/train/76658.png +../../data/yoloGtold1/train/76659.png +../../data/yoloGtold1/train/76660.png +../../data/yoloGtold1/train/76661.png +../../data/yoloGtold1/train/76662.png +../../data/yoloGtold1/train/76663.png +../../data/yoloGtold1/train/76664.png +../../data/yoloGtold1/train/76665.png +../../data/yoloGtold1/train/76666.png +../../data/yoloGtold1/train/76667.png +../../data/yoloGtold1/train/76668.png +../../data/yoloGtold1/train/76669.png +../../data/yoloGtold1/train/76670.png +../../data/yoloGtold1/train/76671.png +../../data/yoloGtold1/train/76672.png +../../data/yoloGtold1/train/76673.png +../../data/yoloGtold1/train/76674.png +../../data/yoloGtold1/train/76675.png +../../data/yoloGtold1/train/76676.png +../../data/yoloGtold1/train/76677.png +../../data/yoloGtold1/train/76678.png +../../data/yoloGtold1/train/76679.png +../../data/yoloGtold1/train/76680.png +../../data/yoloGtold1/train/76681.png +../../data/yoloGtold1/train/76682.png +../../data/yoloGtold1/train/76683.png +../../data/yoloGtold1/train/76684.png +../../data/yoloGtold1/train/76685.png +../../data/yoloGtold1/train/76686.png +../../data/yoloGtold1/train/76687.png +../../data/yoloGtold1/train/76688.png +../../data/yoloGtold1/train/76689.png +../../data/yoloGtold1/train/76690.png +../../data/yoloGtold1/train/76691.png +../../data/yoloGtold1/train/76692.png +../../data/yoloGtold1/train/76693.png +../../data/yoloGtold1/train/76694.png +../../data/yoloGtold1/train/76695.png +../../data/yoloGtold1/train/76696.png +../../data/yoloGtold1/train/76697.png +../../data/yoloGtold1/train/76698.png +../../data/yoloGtold1/train/76699.png +../../data/yoloGtold1/train/76700.png +../../data/yoloGtold1/train/76701.png +../../data/yoloGtold1/train/76702.png +../../data/yoloGtold1/train/76703.png +../../data/yoloGtold1/train/76704.png +../../data/yoloGtold1/train/76705.png +../../data/yoloGtold1/train/76706.png +../../data/yoloGtold1/train/76707.png +../../data/yoloGtold1/train/76708.png +../../data/yoloGtold1/train/76709.png +../../data/yoloGtold1/train/76710.png +../../data/yoloGtold1/train/76711.png +../../data/yoloGtold1/train/76712.png +../../data/yoloGtold1/train/76713.png +../../data/yoloGtold1/train/76714.png +../../data/yoloGtold1/train/76715.png +../../data/yoloGtold1/train/76716.png +../../data/yoloGtold1/train/76717.png +../../data/yoloGtold1/train/76718.png +../../data/yoloGtold1/train/76719.png +../../data/yoloGtold1/train/76720.png +../../data/yoloGtold1/train/76721.png +../../data/yoloGtold1/train/76722.png +../../data/yoloGtold1/train/76723.png +../../data/yoloGtold1/train/76724.png +../../data/yoloGtold1/train/76725.png +../../data/yoloGtold1/train/76726.png +../../data/yoloGtold1/train/76727.png +../../data/yoloGtold1/train/76728.png +../../data/yoloGtold1/train/76729.png +../../data/yoloGtold1/train/76730.png +../../data/yoloGtold1/train/76731.png +../../data/yoloGtold1/train/76732.png +../../data/yoloGtold1/train/76733.png +../../data/yoloGtold1/train/76734.png +../../data/yoloGtold1/train/76735.png +../../data/yoloGtold1/train/76736.png +../../data/yoloGtold1/train/76737.png +../../data/yoloGtold1/train/76738.png +../../data/yoloGtold1/train/76739.png +../../data/yoloGtold1/train/76740.png +../../data/yoloGtold1/train/76741.png +../../data/yoloGtold1/train/76742.png +../../data/yoloGtold1/train/76743.png +../../data/yoloGtold1/train/76744.png +../../data/yoloGtold1/train/76745.png +../../data/yoloGtold1/train/76746.png +../../data/yoloGtold1/train/76747.png +../../data/yoloGtold1/train/76748.png +../../data/yoloGtold1/train/76749.png +../../data/yoloGtold1/train/76750.png +../../data/yoloGtold1/train/76751.png +../../data/yoloGtold1/train/76752.png +../../data/yoloGtold1/train/76753.png +../../data/yoloGtold1/train/76754.png +../../data/yoloGtold1/train/76755.png +../../data/yoloGtold1/train/76756.png +../../data/yoloGtold1/train/76757.png +../../data/yoloGtold1/train/76758.png +../../data/yoloGtold1/train/76759.png +../../data/yoloGtold1/train/76760.png +../../data/yoloGtold1/train/76761.png +../../data/yoloGtold1/train/76762.png +../../data/yoloGtold1/train/76763.png +../../data/yoloGtold1/train/76764.png +../../data/yoloGtold1/train/76765.png +../../data/yoloGtold1/train/76766.png +../../data/yoloGtold1/train/76767.png +../../data/yoloGtold1/train/76768.png +../../data/yoloGtold1/train/76769.png +../../data/yoloGtold1/train/76770.png +../../data/yoloGtold1/train/76771.png +../../data/yoloGtold1/train/76772.png +../../data/yoloGtold1/train/76773.png +../../data/yoloGtold1/train/76774.png +../../data/yoloGtold1/train/76775.png +../../data/yoloGtold1/train/76776.png +../../data/yoloGtold1/train/76777.png +../../data/yoloGtold1/train/76778.png +../../data/yoloGtold1/train/76779.png +../../data/yoloGtold1/train/76780.png +../../data/yoloGtold1/train/76781.png +../../data/yoloGtold1/train/76782.png +../../data/yoloGtold1/train/76783.png +../../data/yoloGtold1/train/76784.png +../../data/yoloGtold1/train/76785.png +../../data/yoloGtold1/train/76786.png +../../data/yoloGtold1/train/76787.png +../../data/yoloGtold1/train/76788.png +../../data/yoloGtold1/train/76789.png +../../data/yoloGtold1/train/76790.png +../../data/yoloGtold1/train/76791.png +../../data/yoloGtold1/train/76792.png +../../data/yoloGtold1/train/76793.png +../../data/yoloGtold1/train/76794.png +../../data/yoloGtold1/train/76795.png +../../data/yoloGtold1/train/76796.png +../../data/yoloGtold1/train/76797.png +../../data/yoloGtold1/train/76798.png +../../data/yoloGtold1/train/76799.png +../../data/yoloGtold1/train/76800.png +../../data/yoloGtold1/train/76801.png +../../data/yoloGtold1/train/76802.png +../../data/yoloGtold1/train/76803.png +../../data/yoloGtold1/train/76804.png +../../data/yoloGtold1/train/76805.png +../../data/yoloGtold1/train/76806.png +../../data/yoloGtold1/train/76807.png +../../data/yoloGtold1/train/76808.png +../../data/yoloGtold1/train/76809.png +../../data/yoloGtold1/train/76810.png +../../data/yoloGtold1/train/76811.png +../../data/yoloGtold1/train/76812.png +../../data/yoloGtold1/train/76813.png +../../data/yoloGtold1/train/76814.png +../../data/yoloGtold1/train/76815.png +../../data/yoloGtold1/train/76816.png +../../data/yoloGtold1/train/76817.png +../../data/yoloGtold1/train/76818.png +../../data/yoloGtold1/train/76819.png +../../data/yoloGtold1/train/76820.png +../../data/yoloGtold1/train/76821.png +../../data/yoloGtold1/train/76822.png +../../data/yoloGtold1/train/76823.png +../../data/yoloGtold1/train/76824.png +../../data/yoloGtold1/train/76825.png +../../data/yoloGtold1/train/76826.png +../../data/yoloGtold1/train/76827.png +../../data/yoloGtold1/train/76828.png +../../data/yoloGtold1/train/76829.png +../../data/yoloGtold1/train/76830.png +../../data/yoloGtold1/train/76831.png +../../data/yoloGtold1/train/76832.png +../../data/yoloGtold1/train/76833.png +../../data/yoloGtold1/train/76834.png +../../data/yoloGtold1/train/76835.png +../../data/yoloGtold1/train/76836.png +../../data/yoloGtold1/train/76837.png +../../data/yoloGtold1/train/76838.png +../../data/yoloGtold1/train/76839.png +../../data/yoloGtold1/train/76840.png +../../data/yoloGtold1/train/76841.png +../../data/yoloGtold1/train/76842.png +../../data/yoloGtold1/train/76843.png +../../data/yoloGtold1/train/76844.png +../../data/yoloGtold1/train/76845.png +../../data/yoloGtold1/train/76846.png +../../data/yoloGtold1/train/76847.png +../../data/yoloGtold1/train/76848.png +../../data/yoloGtold1/train/76849.png +../../data/yoloGtold1/train/76850.png +../../data/yoloGtold1/train/76851.png +../../data/yoloGtold1/train/76852.png +../../data/yoloGtold1/train/76853.png +../../data/yoloGtold1/train/76854.png +../../data/yoloGtold1/train/76855.png +../../data/yoloGtold1/train/76856.png +../../data/yoloGtold1/train/76857.png +../../data/yoloGtold1/train/76858.png +../../data/yoloGtold1/train/76859.png +../../data/yoloGtold1/train/76860.png +../../data/yoloGtold1/train/76861.png +../../data/yoloGtold1/train/76862.png +../../data/yoloGtold1/train/76863.png +../../data/yoloGtold1/train/76864.png +../../data/yoloGtold1/train/76865.png +../../data/yoloGtold1/train/76866.png +../../data/yoloGtold1/train/76867.png +../../data/yoloGtold1/train/76868.png +../../data/yoloGtold1/train/76869.png +../../data/yoloGtold1/train/76870.png +../../data/yoloGtold1/train/76871.png +../../data/yoloGtold1/train/76872.png +../../data/yoloGtold1/train/76873.png +../../data/yoloGtold1/train/76874.png +../../data/yoloGtold1/train/76875.png +../../data/yoloGtold1/train/76876.png +../../data/yoloGtold1/train/76877.png +../../data/yoloGtold1/train/76878.png +../../data/yoloGtold1/train/76879.png +../../data/yoloGtold1/train/76880.png +../../data/yoloGtold1/train/76881.png +../../data/yoloGtold1/train/76882.png +../../data/yoloGtold1/train/76883.png +../../data/yoloGtold1/train/76884.png +../../data/yoloGtold1/train/76885.png +../../data/yoloGtold1/train/76886.png +../../data/yoloGtold1/train/76887.png +../../data/yoloGtold1/train/76888.png +../../data/yoloGtold1/train/76889.png +../../data/yoloGtold1/train/76890.png +../../data/yoloGtold1/train/76891.png +../../data/yoloGtold1/train/76892.png +../../data/yoloGtold1/train/76893.png +../../data/yoloGtold1/train/76894.png +../../data/yoloGtold1/train/76895.png +../../data/yoloGtold1/train/76896.png +../../data/yoloGtold1/train/76897.png +../../data/yoloGtold1/train/76898.png +../../data/yoloGtold1/train/76899.png +../../data/yoloGtold1/train/76900.png +../../data/yoloGtold1/train/76901.png +../../data/yoloGtold1/train/76902.png +../../data/yoloGtold1/train/76903.png +../../data/yoloGtold1/train/76904.png +../../data/yoloGtold1/train/76905.png +../../data/yoloGtold1/train/76906.png +../../data/yoloGtold1/train/76907.png +../../data/yoloGtold1/train/76908.png +../../data/yoloGtold1/train/76909.png +../../data/yoloGtold1/train/76910.png +../../data/yoloGtold1/train/76911.png +../../data/yoloGtold1/train/76912.png +../../data/yoloGtold1/train/76913.png +../../data/yoloGtold1/train/76914.png +../../data/yoloGtold1/train/76915.png +../../data/yoloGtold1/train/76916.png +../../data/yoloGtold1/train/76917.png +../../data/yoloGtold1/train/76918.png +../../data/yoloGtold1/train/76919.png +../../data/yoloGtold1/train/76920.png +../../data/yoloGtold1/train/76921.png +../../data/yoloGtold1/train/76922.png +../../data/yoloGtold1/train/76923.png +../../data/yoloGtold1/train/76924.png +../../data/yoloGtold1/train/76925.png +../../data/yoloGtold1/train/76926.png +../../data/yoloGtold1/train/76927.png +../../data/yoloGtold1/train/76928.png +../../data/yoloGtold1/train/76929.png +../../data/yoloGtold1/train/76930.png +../../data/yoloGtold1/train/76931.png +../../data/yoloGtold1/train/76932.png +../../data/yoloGtold1/train/76933.png +../../data/yoloGtold1/train/76934.png +../../data/yoloGtold1/train/76935.png +../../data/yoloGtold1/train/76936.png +../../data/yoloGtold1/train/76937.png +../../data/yoloGtold1/train/76938.png +../../data/yoloGtold1/train/76939.png +../../data/yoloGtold1/train/76940.png +../../data/yoloGtold1/train/76941.png +../../data/yoloGtold1/train/76942.png +../../data/yoloGtold1/train/76943.png +../../data/yoloGtold1/train/76944.png +../../data/yoloGtold1/train/76945.png +../../data/yoloGtold1/train/76946.png +../../data/yoloGtold1/train/76947.png +../../data/yoloGtold1/train/76948.png +../../data/yoloGtold1/train/76949.png +../../data/yoloGtold1/train/76950.png +../../data/yoloGtold1/train/76951.png +../../data/yoloGtold1/train/76952.png +../../data/yoloGtold1/train/76953.png +../../data/yoloGtold1/train/76954.png +../../data/yoloGtold1/train/76955.png +../../data/yoloGtold1/train/76956.png +../../data/yoloGtold1/train/76957.png +../../data/yoloGtold1/train/76958.png +../../data/yoloGtold1/train/76959.png +../../data/yoloGtold1/train/76960.png +../../data/yoloGtold1/train/76961.png +../../data/yoloGtold1/train/76962.png +../../data/yoloGtold1/train/76963.png +../../data/yoloGtold1/train/76964.png +../../data/yoloGtold1/train/76965.png +../../data/yoloGtold1/train/76966.png +../../data/yoloGtold1/train/76967.png +../../data/yoloGtold1/train/76968.png +../../data/yoloGtold1/train/76969.png +../../data/yoloGtold1/train/76970.png +../../data/yoloGtold1/train/76971.png +../../data/yoloGtold1/train/76972.png +../../data/yoloGtold1/train/76973.png +../../data/yoloGtold1/train/76974.png +../../data/yoloGtold1/train/76975.png +../../data/yoloGtold1/train/76976.png +../../data/yoloGtold1/train/76977.png +../../data/yoloGtold1/train/76978.png +../../data/yoloGtold1/train/76979.png +../../data/yoloGtold1/train/76980.png +../../data/yoloGtold1/train/76981.png +../../data/yoloGtold1/train/76982.png +../../data/yoloGtold1/train/76983.png +../../data/yoloGtold1/train/76984.png +../../data/yoloGtold1/train/76985.png +../../data/yoloGtold1/train/76986.png +../../data/yoloGtold1/train/76987.png +../../data/yoloGtold1/train/76988.png +../../data/yoloGtold1/train/76989.png +../../data/yoloGtold1/train/76990.png +../../data/yoloGtold1/train/76991.png +../../data/yoloGtold1/train/76992.png +../../data/yoloGtold1/train/76993.png +../../data/yoloGtold1/train/76994.png +../../data/yoloGtold1/train/76995.png +../../data/yoloGtold1/train/76996.png +../../data/yoloGtold1/train/76997.png +../../data/yoloGtold1/train/76998.png +../../data/yoloGtold1/train/76999.png +../../data/yoloGtold1/train/77000.png +../../data/yoloGtold1/train/77001.png +../../data/yoloGtold1/train/77002.png +../../data/yoloGtold1/train/77003.png +../../data/yoloGtold1/train/77004.png +../../data/yoloGtold1/train/77005.png +../../data/yoloGtold1/train/77006.png +../../data/yoloGtold1/train/77007.png +../../data/yoloGtold1/train/77008.png +../../data/yoloGtold1/train/77009.png +../../data/yoloGtold1/train/77010.png +../../data/yoloGtold1/train/77011.png +../../data/yoloGtold1/train/77012.png +../../data/yoloGtold1/train/77013.png +../../data/yoloGtold1/train/77014.png +../../data/yoloGtold1/train/77015.png +../../data/yoloGtold1/train/77016.png +../../data/yoloGtold1/train/77017.png +../../data/yoloGtold1/train/77018.png +../../data/yoloGtold1/train/77019.png +../../data/yoloGtold1/train/77020.png +../../data/yoloGtold1/train/77021.png +../../data/yoloGtold1/train/77022.png +../../data/yoloGtold1/train/77023.png +../../data/yoloGtold1/train/77024.png +../../data/yoloGtold1/train/77025.png +../../data/yoloGtold1/train/77026.png +../../data/yoloGtold1/train/77027.png +../../data/yoloGtold1/train/77028.png +../../data/yoloGtold1/train/77029.png +../../data/yoloGtold1/train/77030.png +../../data/yoloGtold1/train/77031.png +../../data/yoloGtold1/train/77032.png +../../data/yoloGtold1/train/77033.png +../../data/yoloGtold1/train/77034.png +../../data/yoloGtold1/train/77035.png +../../data/yoloGtold1/train/77036.png +../../data/yoloGtold1/train/77037.png +../../data/yoloGtold1/train/77038.png +../../data/yoloGtold1/train/77039.png +../../data/yoloGtold1/train/77040.png +../../data/yoloGtold1/train/77041.png +../../data/yoloGtold1/train/77042.png +../../data/yoloGtold1/train/77043.png +../../data/yoloGtold1/train/77044.png +../../data/yoloGtold1/train/77045.png +../../data/yoloGtold1/train/77046.png +../../data/yoloGtold1/train/77047.png +../../data/yoloGtold1/train/77048.png +../../data/yoloGtold1/train/77049.png +../../data/yoloGtold1/train/77050.png +../../data/yoloGtold1/train/77051.png +../../data/yoloGtold1/train/77052.png +../../data/yoloGtold1/train/77053.png +../../data/yoloGtold1/train/77054.png +../../data/yoloGtold1/train/77055.png +../../data/yoloGtold1/train/77056.png +../../data/yoloGtold1/train/77057.png +../../data/yoloGtold1/train/77058.png +../../data/yoloGtold1/train/77059.png +../../data/yoloGtold1/train/77060.png +../../data/yoloGtold1/train/77061.png +../../data/yoloGtold1/train/77062.png +../../data/yoloGtold1/train/77063.png +../../data/yoloGtold1/train/77064.png +../../data/yoloGtold1/train/77065.png +../../data/yoloGtold1/train/77066.png +../../data/yoloGtold1/train/77067.png +../../data/yoloGtold1/train/77068.png +../../data/yoloGtold1/train/77069.png +../../data/yoloGtold1/train/77070.png +../../data/yoloGtold1/train/77071.png +../../data/yoloGtold1/train/77072.png +../../data/yoloGtold1/train/77073.png +../../data/yoloGtold1/train/77074.png +../../data/yoloGtold1/train/77075.png +../../data/yoloGtold1/train/77076.png +../../data/yoloGtold1/train/77077.png +../../data/yoloGtold1/train/77078.png +../../data/yoloGtold1/train/77079.png +../../data/yoloGtold1/train/77080.png +../../data/yoloGtold1/train/77081.png +../../data/yoloGtold1/train/77082.png +../../data/yoloGtold1/train/77083.png +../../data/yoloGtold1/train/77084.png +../../data/yoloGtold1/train/77085.png +../../data/yoloGtold1/train/77086.png +../../data/yoloGtold1/train/77087.png +../../data/yoloGtold1/train/77088.png +../../data/yoloGtold1/train/77089.png +../../data/yoloGtold1/train/77090.png +../../data/yoloGtold1/train/77091.png +../../data/yoloGtold1/train/77092.png +../../data/yoloGtold1/train/77093.png +../../data/yoloGtold1/train/77094.png +../../data/yoloGtold1/train/77095.png +../../data/yoloGtold1/train/77096.png +../../data/yoloGtold1/train/77097.png +../../data/yoloGtold1/train/77098.png +../../data/yoloGtold1/train/77099.png +../../data/yoloGtold1/train/77100.png +../../data/yoloGtold1/train/77101.png +../../data/yoloGtold1/train/77102.png +../../data/yoloGtold1/train/77103.png +../../data/yoloGtold1/train/77104.png +../../data/yoloGtold1/train/77105.png +../../data/yoloGtold1/train/77106.png +../../data/yoloGtold1/train/77107.png +../../data/yoloGtold1/train/77108.png +../../data/yoloGtold1/train/77109.png +../../data/yoloGtold1/train/77110.png +../../data/yoloGtold1/train/77111.png +../../data/yoloGtold1/train/77112.png +../../data/yoloGtold1/train/77113.png +../../data/yoloGtold1/train/77114.png +../../data/yoloGtold1/train/77115.png +../../data/yoloGtold1/train/77116.png +../../data/yoloGtold1/train/77117.png +../../data/yoloGtold1/train/77118.png +../../data/yoloGtold1/train/77119.png +../../data/yoloGtold1/train/77120.png +../../data/yoloGtold1/train/77121.png +../../data/yoloGtold1/train/77122.png +../../data/yoloGtold1/train/77123.png +../../data/yoloGtold1/train/77124.png +../../data/yoloGtold1/train/77125.png +../../data/yoloGtold1/train/77126.png +../../data/yoloGtold1/train/77127.png +../../data/yoloGtold1/train/77128.png +../../data/yoloGtold1/train/77129.png +../../data/yoloGtold1/train/77130.png +../../data/yoloGtold1/train/77131.png +../../data/yoloGtold1/train/77132.png +../../data/yoloGtold1/train/77133.png +../../data/yoloGtold1/train/77134.png +../../data/yoloGtold1/train/77135.png +../../data/yoloGtold1/train/77136.png +../../data/yoloGtold1/train/77137.png +../../data/yoloGtold1/train/77138.png +../../data/yoloGtold1/train/77139.png +../../data/yoloGtold1/train/77140.png +../../data/yoloGtold1/train/77141.png +../../data/yoloGtold1/train/77142.png +../../data/yoloGtold1/train/77143.png +../../data/yoloGtold1/train/77144.png +../../data/yoloGtold1/train/77145.png +../../data/yoloGtold1/train/77146.png +../../data/yoloGtold1/train/77147.png +../../data/yoloGtold1/train/77148.png +../../data/yoloGtold1/train/77149.png +../../data/yoloGtold1/train/77150.png +../../data/yoloGtold1/train/77151.png +../../data/yoloGtold1/train/77152.png +../../data/yoloGtold1/train/77153.png +../../data/yoloGtold1/train/77154.png +../../data/yoloGtold1/train/77155.png +../../data/yoloGtold1/train/77156.png +../../data/yoloGtold1/train/77157.png +../../data/yoloGtold1/train/77158.png +../../data/yoloGtold1/train/77159.png +../../data/yoloGtold1/train/77160.png +../../data/yoloGtold1/train/77161.png +../../data/yoloGtold1/train/77162.png +../../data/yoloGtold1/train/77163.png +../../data/yoloGtold1/train/77164.png +../../data/yoloGtold1/train/77165.png +../../data/yoloGtold1/train/77166.png +../../data/yoloGtold1/train/77167.png +../../data/yoloGtold1/train/77168.png +../../data/yoloGtold1/train/77169.png +../../data/yoloGtold1/train/77170.png +../../data/yoloGtold1/train/77171.png +../../data/yoloGtold1/train/77172.png +../../data/yoloGtold1/train/77173.png +../../data/yoloGtold1/train/77174.png +../../data/yoloGtold1/train/77175.png +../../data/yoloGtold1/train/77176.png +../../data/yoloGtold1/train/77177.png +../../data/yoloGtold1/train/77178.png +../../data/yoloGtold1/train/77179.png +../../data/yoloGtold1/train/77180.png +../../data/yoloGtold1/train/77181.png +../../data/yoloGtold1/train/77182.png +../../data/yoloGtold1/train/77183.png +../../data/yoloGtold1/train/77184.png +../../data/yoloGtold1/train/77185.png +../../data/yoloGtold1/train/77186.png +../../data/yoloGtold1/train/77187.png +../../data/yoloGtold1/train/77188.png +../../data/yoloGtold1/train/77189.png +../../data/yoloGtold1/train/77190.png +../../data/yoloGtold1/train/77191.png +../../data/yoloGtold1/train/77192.png +../../data/yoloGtold1/train/77193.png +../../data/yoloGtold1/train/77194.png +../../data/yoloGtold1/train/77195.png +../../data/yoloGtold1/train/77196.png +../../data/yoloGtold1/train/77197.png +../../data/yoloGtold1/train/77198.png +../../data/yoloGtold1/train/77199.png +../../data/yoloGtold1/train/77200.png +../../data/yoloGtold1/train/77201.png +../../data/yoloGtold1/train/77202.png +../../data/yoloGtold1/train/77203.png +../../data/yoloGtold1/train/77204.png +../../data/yoloGtold1/train/77205.png +../../data/yoloGtold1/train/77206.png +../../data/yoloGtold1/train/77207.png +../../data/yoloGtold1/train/77208.png +../../data/yoloGtold1/train/77209.png +../../data/yoloGtold1/train/77210.png +../../data/yoloGtold1/train/77211.png +../../data/yoloGtold1/train/77212.png +../../data/yoloGtold1/train/77213.png +../../data/yoloGtold1/train/77214.png +../../data/yoloGtold1/train/77215.png +../../data/yoloGtold1/train/77216.png +../../data/yoloGtold1/train/77217.png +../../data/yoloGtold1/train/77218.png +../../data/yoloGtold1/train/77219.png +../../data/yoloGtold1/train/77220.png +../../data/yoloGtold1/train/77221.png +../../data/yoloGtold1/train/77222.png +../../data/yoloGtold1/train/77223.png +../../data/yoloGtold1/train/77224.png +../../data/yoloGtold1/train/77225.png +../../data/yoloGtold1/train/77226.png +../../data/yoloGtold1/train/77227.png +../../data/yoloGtold1/train/77228.png +../../data/yoloGtold1/train/77229.png +../../data/yoloGtold1/train/77230.png +../../data/yoloGtold1/train/77231.png +../../data/yoloGtold1/train/77232.png +../../data/yoloGtold1/train/77233.png +../../data/yoloGtold1/train/77234.png +../../data/yoloGtold1/train/77235.png +../../data/yoloGtold1/train/77236.png +../../data/yoloGtold1/train/77237.png +../../data/yoloGtold1/train/77238.png +../../data/yoloGtold1/train/77239.png +../../data/yoloGtold1/train/77240.png +../../data/yoloGtold1/train/77241.png +../../data/yoloGtold1/train/77242.png +../../data/yoloGtold1/train/77243.png +../../data/yoloGtold1/train/77244.png +../../data/yoloGtold1/train/77245.png +../../data/yoloGtold1/train/77246.png +../../data/yoloGtold1/train/77247.png +../../data/yoloGtold1/train/77248.png +../../data/yoloGtold1/train/77249.png +../../data/yoloGtold1/train/77250.png +../../data/yoloGtold1/train/77251.png +../../data/yoloGtold1/train/77252.png +../../data/yoloGtold1/train/77253.png +../../data/yoloGtold1/train/77254.png +../../data/yoloGtold1/train/77255.png +../../data/yoloGtold1/train/77256.png +../../data/yoloGtold1/train/77257.png +../../data/yoloGtold1/train/77258.png +../../data/yoloGtold1/train/77259.png +../../data/yoloGtold1/train/77260.png +../../data/yoloGtold1/train/77261.png +../../data/yoloGtold1/train/77262.png +../../data/yoloGtold1/train/77263.png +../../data/yoloGtold1/train/77264.png +../../data/yoloGtold1/train/77265.png +../../data/yoloGtold1/train/77266.png +../../data/yoloGtold1/train/77267.png +../../data/yoloGtold1/train/77268.png +../../data/yoloGtold1/train/77269.png +../../data/yoloGtold1/train/77270.png +../../data/yoloGtold1/train/77271.png +../../data/yoloGtold1/train/77272.png +../../data/yoloGtold1/train/77273.png +../../data/yoloGtold1/train/77274.png +../../data/yoloGtold1/train/77275.png +../../data/yoloGtold1/train/77276.png +../../data/yoloGtold1/train/77277.png +../../data/yoloGtold1/train/77278.png +../../data/yoloGtold1/train/77279.png +../../data/yoloGtold1/train/77280.png +../../data/yoloGtold1/train/77281.png +../../data/yoloGtold1/train/77282.png +../../data/yoloGtold1/train/77283.png +../../data/yoloGtold1/train/77284.png +../../data/yoloGtold1/train/77285.png +../../data/yoloGtold1/train/77286.png +../../data/yoloGtold1/train/77287.png +../../data/yoloGtold1/train/77288.png +../../data/yoloGtold1/train/77289.png +../../data/yoloGtold1/train/77290.png +../../data/yoloGtold1/train/77291.png +../../data/yoloGtold1/train/77292.png +../../data/yoloGtold1/train/77293.png +../../data/yoloGtold1/train/77294.png +../../data/yoloGtold1/train/77295.png +../../data/yoloGtold1/train/77296.png +../../data/yoloGtold1/train/77297.png +../../data/yoloGtold1/train/77298.png +../../data/yoloGtold1/train/77299.png +../../data/yoloGtold1/train/77300.png +../../data/yoloGtold1/train/77301.png +../../data/yoloGtold1/train/77302.png +../../data/yoloGtold1/train/77303.png +../../data/yoloGtold1/train/77304.png +../../data/yoloGtold1/train/77305.png +../../data/yoloGtold1/train/77306.png +../../data/yoloGtold1/train/77307.png +../../data/yoloGtold1/train/77308.png +../../data/yoloGtold1/train/77309.png +../../data/yoloGtold1/train/77310.png +../../data/yoloGtold1/train/77311.png +../../data/yoloGtold1/train/77312.png +../../data/yoloGtold1/train/77313.png +../../data/yoloGtold1/train/77314.png +../../data/yoloGtold1/train/77315.png +../../data/yoloGtold1/train/77316.png +../../data/yoloGtold1/train/77317.png +../../data/yoloGtold1/train/77318.png +../../data/yoloGtold1/train/77319.png +../../data/yoloGtold1/train/77320.png +../../data/yoloGtold1/train/77321.png +../../data/yoloGtold1/train/77322.png +../../data/yoloGtold1/train/77323.png +../../data/yoloGtold1/train/77324.png +../../data/yoloGtold1/train/77325.png +../../data/yoloGtold1/train/77326.png +../../data/yoloGtold1/train/77327.png +../../data/yoloGtold1/train/77328.png +../../data/yoloGtold1/train/77329.png +../../data/yoloGtold1/train/77330.png +../../data/yoloGtold1/train/77331.png +../../data/yoloGtold1/train/77332.png +../../data/yoloGtold1/train/77333.png +../../data/yoloGtold1/train/77334.png +../../data/yoloGtold1/train/77335.png +../../data/yoloGtold1/train/77336.png +../../data/yoloGtold1/train/77337.png +../../data/yoloGtold1/train/77338.png +../../data/yoloGtold1/train/77339.png +../../data/yoloGtold1/train/77340.png +../../data/yoloGtold1/train/77341.png +../../data/yoloGtold1/train/77342.png +../../data/yoloGtold1/train/77343.png +../../data/yoloGtold1/train/77344.png +../../data/yoloGtold1/train/77345.png +../../data/yoloGtold1/train/77346.png +../../data/yoloGtold1/train/77347.png +../../data/yoloGtold1/train/77348.png +../../data/yoloGtold1/train/77349.png +../../data/yoloGtold1/train/77350.png +../../data/yoloGtold1/train/77351.png +../../data/yoloGtold1/train/77352.png +../../data/yoloGtold1/train/77353.png +../../data/yoloGtold1/train/77354.png +../../data/yoloGtold1/train/77355.png +../../data/yoloGtold1/train/77356.png +../../data/yoloGtold1/train/77357.png +../../data/yoloGtold1/train/77358.png +../../data/yoloGtold1/train/77359.png +../../data/yoloGtold1/train/77360.png +../../data/yoloGtold1/train/77361.png +../../data/yoloGtold1/train/77362.png +../../data/yoloGtold1/train/77363.png +../../data/yoloGtold1/train/77364.png +../../data/yoloGtold1/train/77365.png +../../data/yoloGtold1/train/77366.png +../../data/yoloGtold1/train/77367.png +../../data/yoloGtold1/train/77368.png +../../data/yoloGtold1/train/77369.png +../../data/yoloGtold1/train/77370.png +../../data/yoloGtold1/train/77371.png +../../data/yoloGtold1/train/77372.png +../../data/yoloGtold1/train/77373.png +../../data/yoloGtold1/train/77374.png +../../data/yoloGtold1/train/77375.png +../../data/yoloGtold1/train/77376.png +../../data/yoloGtold1/train/77377.png +../../data/yoloGtold1/train/77378.png +../../data/yoloGtold1/train/77379.png +../../data/yoloGtold1/train/77380.png +../../data/yoloGtold1/train/77381.png +../../data/yoloGtold1/train/77382.png +../../data/yoloGtold1/train/77383.png +../../data/yoloGtold1/train/77384.png +../../data/yoloGtold1/train/77385.png +../../data/yoloGtold1/train/77386.png +../../data/yoloGtold1/train/77387.png +../../data/yoloGtold1/train/77388.png +../../data/yoloGtold1/train/77389.png +../../data/yoloGtold1/train/77390.png +../../data/yoloGtold1/train/77391.png +../../data/yoloGtold1/train/77392.png +../../data/yoloGtold1/train/77393.png +../../data/yoloGtold1/train/77394.png +../../data/yoloGtold1/train/77395.png +../../data/yoloGtold1/train/77396.png +../../data/yoloGtold1/train/77397.png +../../data/yoloGtold1/train/77398.png +../../data/yoloGtold1/train/77399.png +../../data/yoloGtold1/train/77400.png +../../data/yoloGtold1/train/77401.png +../../data/yoloGtold1/train/77402.png +../../data/yoloGtold1/train/77403.png +../../data/yoloGtold1/train/77404.png +../../data/yoloGtold1/train/77405.png +../../data/yoloGtold1/train/77406.png +../../data/yoloGtold1/train/77407.png +../../data/yoloGtold1/train/77408.png +../../data/yoloGtold1/train/77409.png +../../data/yoloGtold1/train/77410.png +../../data/yoloGtold1/train/77411.png +../../data/yoloGtold1/train/77412.png +../../data/yoloGtold1/train/77413.png +../../data/yoloGtold1/train/77414.png +../../data/yoloGtold1/train/77415.png +../../data/yoloGtold1/train/77416.png +../../data/yoloGtold1/train/77417.png +../../data/yoloGtold1/train/77418.png +../../data/yoloGtold1/train/77419.png +../../data/yoloGtold1/train/77420.png +../../data/yoloGtold1/train/77421.png +../../data/yoloGtold1/train/77422.png +../../data/yoloGtold1/train/77423.png +../../data/yoloGtold1/train/77424.png +../../data/yoloGtold1/train/77425.png +../../data/yoloGtold1/train/77426.png +../../data/yoloGtold1/train/77427.png +../../data/yoloGtold1/train/77428.png +../../data/yoloGtold1/train/77429.png +../../data/yoloGtold1/train/77430.png +../../data/yoloGtold1/train/77431.png +../../data/yoloGtold1/train/77432.png +../../data/yoloGtold1/train/77433.png +../../data/yoloGtold1/train/77434.png +../../data/yoloGtold1/train/77435.png +../../data/yoloGtold1/train/77436.png +../../data/yoloGtold1/train/77437.png +../../data/yoloGtold1/train/77438.png +../../data/yoloGtold1/train/77439.png +../../data/yoloGtold1/train/77440.png +../../data/yoloGtold1/train/77441.png +../../data/yoloGtold1/train/77442.png +../../data/yoloGtold1/train/77443.png +../../data/yoloGtold1/train/77444.png +../../data/yoloGtold1/train/77445.png +../../data/yoloGtold1/train/77446.png +../../data/yoloGtold1/train/77447.png +../../data/yoloGtold1/train/77448.png +../../data/yoloGtold1/train/77449.png +../../data/yoloGtold1/train/77450.png +../../data/yoloGtold1/train/77451.png +../../data/yoloGtold1/train/77452.png +../../data/yoloGtold1/train/77453.png +../../data/yoloGtold1/train/77454.png +../../data/yoloGtold1/train/77455.png +../../data/yoloGtold1/train/77456.png +../../data/yoloGtold1/train/77457.png +../../data/yoloGtold1/train/77458.png +../../data/yoloGtold1/train/77459.png +../../data/yoloGtold1/train/77460.png +../../data/yoloGtold1/train/77461.png +../../data/yoloGtold1/train/77462.png +../../data/yoloGtold1/train/77463.png +../../data/yoloGtold1/train/77464.png +../../data/yoloGtold1/train/77465.png +../../data/yoloGtold1/train/77466.png +../../data/yoloGtold1/train/77467.png +../../data/yoloGtold1/train/77468.png +../../data/yoloGtold1/train/77469.png +../../data/yoloGtold1/train/77470.png +../../data/yoloGtold1/train/77471.png +../../data/yoloGtold1/train/77472.png +../../data/yoloGtold1/train/77473.png +../../data/yoloGtold1/train/77474.png +../../data/yoloGtold1/train/77475.png +../../data/yoloGtold1/train/77476.png +../../data/yoloGtold1/train/77477.png +../../data/yoloGtold1/train/77478.png +../../data/yoloGtold1/train/77479.png +../../data/yoloGtold1/train/77480.png +../../data/yoloGtold1/train/77481.png +../../data/yoloGtold1/train/77482.png +../../data/yoloGtold1/train/77483.png +../../data/yoloGtold1/train/77484.png +../../data/yoloGtold1/train/77485.png +../../data/yoloGtold1/train/77486.png +../../data/yoloGtold1/train/77487.png +../../data/yoloGtold1/train/77488.png +../../data/yoloGtold1/train/77489.png +../../data/yoloGtold1/train/77490.png +../../data/yoloGtold1/train/77491.png +../../data/yoloGtold1/train/77492.png +../../data/yoloGtold1/train/77493.png +../../data/yoloGtold1/train/77494.png +../../data/yoloGtold1/train/77495.png +../../data/yoloGtold1/train/77496.png +../../data/yoloGtold1/train/77497.png +../../data/yoloGtold1/train/77498.png +../../data/yoloGtold1/train/77499.png +../../data/yoloGtold1/train/77500.png +../../data/yoloGtold1/train/77501.png +../../data/yoloGtold1/train/77502.png +../../data/yoloGtold1/train/77503.png +../../data/yoloGtold1/train/77504.png +../../data/yoloGtold1/train/77505.png +../../data/yoloGtold1/train/77506.png +../../data/yoloGtold1/train/77507.png +../../data/yoloGtold1/train/77508.png +../../data/yoloGtold1/train/77509.png +../../data/yoloGtold1/train/77510.png +../../data/yoloGtold1/train/77511.png +../../data/yoloGtold1/train/77512.png +../../data/yoloGtold1/train/77513.png +../../data/yoloGtold1/train/77514.png +../../data/yoloGtold1/train/77515.png +../../data/yoloGtold1/train/77516.png +../../data/yoloGtold1/train/77517.png +../../data/yoloGtold1/train/77518.png +../../data/yoloGtold1/train/77519.png +../../data/yoloGtold1/train/77520.png +../../data/yoloGtold1/train/77521.png +../../data/yoloGtold1/train/77522.png +../../data/yoloGtold1/train/77523.png +../../data/yoloGtold1/train/77524.png +../../data/yoloGtold1/train/77525.png +../../data/yoloGtold1/train/77526.png +../../data/yoloGtold1/train/77527.png +../../data/yoloGtold1/train/77528.png +../../data/yoloGtold1/train/77529.png +../../data/yoloGtold1/train/77530.png +../../data/yoloGtold1/train/77531.png +../../data/yoloGtold1/train/77532.png +../../data/yoloGtold1/train/77533.png +../../data/yoloGtold1/train/77534.png +../../data/yoloGtold1/train/77535.png +../../data/yoloGtold1/train/77536.png +../../data/yoloGtold1/train/77537.png +../../data/yoloGtold1/train/77538.png +../../data/yoloGtold1/train/77539.png +../../data/yoloGtold1/train/77540.png +../../data/yoloGtold1/train/77541.png +../../data/yoloGtold1/train/77542.png +../../data/yoloGtold1/train/77543.png +../../data/yoloGtold1/train/77544.png +../../data/yoloGtold1/train/77545.png +../../data/yoloGtold1/train/77546.png +../../data/yoloGtold1/train/77547.png +../../data/yoloGtold1/train/77548.png +../../data/yoloGtold1/train/77549.png +../../data/yoloGtold1/train/77550.png +../../data/yoloGtold1/train/77551.png +../../data/yoloGtold1/train/77552.png +../../data/yoloGtold1/train/77553.png +../../data/yoloGtold1/train/77554.png +../../data/yoloGtold1/train/77555.png +../../data/yoloGtold1/train/77556.png +../../data/yoloGtold1/train/77557.png +../../data/yoloGtold1/train/77558.png +../../data/yoloGtold1/train/77559.png +../../data/yoloGtold1/train/77560.png +../../data/yoloGtold1/train/77561.png +../../data/yoloGtold1/train/77562.png +../../data/yoloGtold1/train/77563.png +../../data/yoloGtold1/train/77564.png +../../data/yoloGtold1/train/77565.png +../../data/yoloGtold1/train/77566.png +../../data/yoloGtold1/train/77567.png +../../data/yoloGtold1/train/77568.png +../../data/yoloGtold1/train/77569.png +../../data/yoloGtold1/train/77570.png +../../data/yoloGtold1/train/77571.png +../../data/yoloGtold1/train/77572.png +../../data/yoloGtold1/train/77573.png +../../data/yoloGtold1/train/77574.png +../../data/yoloGtold1/train/77575.png +../../data/yoloGtold1/train/77576.png +../../data/yoloGtold1/train/77577.png +../../data/yoloGtold1/train/77578.png +../../data/yoloGtold1/train/77579.png +../../data/yoloGtold1/train/77580.png +../../data/yoloGtold1/train/77581.png +../../data/yoloGtold1/train/77582.png +../../data/yoloGtold1/train/77583.png +../../data/yoloGtold1/train/77584.png +../../data/yoloGtold1/train/77585.png +../../data/yoloGtold1/train/77586.png +../../data/yoloGtold1/train/77587.png +../../data/yoloGtold1/train/77588.png +../../data/yoloGtold1/train/77589.png +../../data/yoloGtold1/train/77590.png +../../data/yoloGtold1/train/77591.png +../../data/yoloGtold1/train/77592.png +../../data/yoloGtold1/train/77593.png +../../data/yoloGtold1/train/77594.png +../../data/yoloGtold1/train/77595.png +../../data/yoloGtold1/train/77596.png +../../data/yoloGtold1/train/77597.png +../../data/yoloGtold1/train/77598.png +../../data/yoloGtold1/train/77599.png +../../data/yoloGtold1/train/77600.png +../../data/yoloGtold1/train/77601.png +../../data/yoloGtold1/train/77602.png +../../data/yoloGtold1/train/77603.png +../../data/yoloGtold1/train/77604.png +../../data/yoloGtold1/train/77605.png +../../data/yoloGtold1/train/77606.png +../../data/yoloGtold1/train/77607.png +../../data/yoloGtold1/train/77608.png +../../data/yoloGtold1/train/77609.png +../../data/yoloGtold1/train/77610.png +../../data/yoloGtold1/train/77611.png +../../data/yoloGtold1/train/77612.png +../../data/yoloGtold1/train/77613.png +../../data/yoloGtold1/train/77614.png +../../data/yoloGtold1/train/77615.png +../../data/yoloGtold1/train/77616.png +../../data/yoloGtold1/train/77617.png +../../data/yoloGtold1/train/77618.png +../../data/yoloGtold1/train/77619.png +../../data/yoloGtold1/train/77620.png +../../data/yoloGtold1/train/77621.png +../../data/yoloGtold1/train/77622.png +../../data/yoloGtold1/train/77623.png +../../data/yoloGtold1/train/77624.png +../../data/yoloGtold1/train/77625.png +../../data/yoloGtold1/train/77626.png +../../data/yoloGtold1/train/77627.png +../../data/yoloGtold1/train/77628.png +../../data/yoloGtold1/train/77629.png +../../data/yoloGtold1/train/77630.png +../../data/yoloGtold1/train/77631.png +../../data/yoloGtold1/train/77632.png +../../data/yoloGtold1/train/77633.png +../../data/yoloGtold1/train/77634.png +../../data/yoloGtold1/train/77635.png +../../data/yoloGtold1/train/77636.png +../../data/yoloGtold1/train/77637.png +../../data/yoloGtold1/train/77638.png +../../data/yoloGtold1/train/77639.png +../../data/yoloGtold1/train/77640.png +../../data/yoloGtold1/train/77641.png +../../data/yoloGtold1/train/77642.png +../../data/yoloGtold1/train/77643.png +../../data/yoloGtold1/train/77644.png +../../data/yoloGtold1/train/77645.png +../../data/yoloGtold1/train/77646.png +../../data/yoloGtold1/train/77647.png +../../data/yoloGtold1/train/77648.png +../../data/yoloGtold1/train/77649.png +../../data/yoloGtold1/train/77650.png +../../data/yoloGtold1/train/77651.png +../../data/yoloGtold1/train/77652.png +../../data/yoloGtold1/train/77653.png +../../data/yoloGtold1/train/77654.png +../../data/yoloGtold1/train/77655.png +../../data/yoloGtold1/train/77656.png +../../data/yoloGtold1/train/77657.png +../../data/yoloGtold1/train/77658.png +../../data/yoloGtold1/train/77659.png +../../data/yoloGtold1/train/77660.png +../../data/yoloGtold1/train/77661.png +../../data/yoloGtold1/train/77662.png +../../data/yoloGtold1/train/77663.png +../../data/yoloGtold1/train/77664.png +../../data/yoloGtold1/train/77665.png +../../data/yoloGtold1/train/77666.png +../../data/yoloGtold1/train/77667.png +../../data/yoloGtold1/train/77668.png +../../data/yoloGtold1/train/77669.png +../../data/yoloGtold1/train/77670.png +../../data/yoloGtold1/train/77671.png +../../data/yoloGtold1/train/77672.png +../../data/yoloGtold1/train/77673.png +../../data/yoloGtold1/train/77674.png +../../data/yoloGtold1/train/77675.png +../../data/yoloGtold1/train/77676.png +../../data/yoloGtold1/train/77677.png +../../data/yoloGtold1/train/77678.png +../../data/yoloGtold1/train/77679.png +../../data/yoloGtold1/train/77680.png +../../data/yoloGtold1/train/77681.png +../../data/yoloGtold1/train/77682.png +../../data/yoloGtold1/train/77683.png +../../data/yoloGtold1/train/77684.png +../../data/yoloGtold1/train/77685.png +../../data/yoloGtold1/train/77686.png +../../data/yoloGtold1/train/77687.png +../../data/yoloGtold1/train/77688.png +../../data/yoloGtold1/train/77689.png +../../data/yoloGtold1/train/77690.png +../../data/yoloGtold1/train/77691.png +../../data/yoloGtold1/train/77692.png +../../data/yoloGtold1/train/77693.png +../../data/yoloGtold1/train/77694.png +../../data/yoloGtold1/train/77695.png +../../data/yoloGtold1/train/77696.png +../../data/yoloGtold1/train/77697.png +../../data/yoloGtold1/train/77698.png +../../data/yoloGtold1/train/77699.png +../../data/yoloGtold1/train/77700.png +../../data/yoloGtold1/train/77701.png +../../data/yoloGtold1/train/77702.png +../../data/yoloGtold1/train/77703.png +../../data/yoloGtold1/train/77704.png +../../data/yoloGtold1/train/77705.png +../../data/yoloGtold1/train/77706.png +../../data/yoloGtold1/train/77707.png +../../data/yoloGtold1/train/77708.png +../../data/yoloGtold1/train/77709.png +../../data/yoloGtold1/train/77710.png +../../data/yoloGtold1/train/77711.png +../../data/yoloGtold1/train/77712.png +../../data/yoloGtold1/train/77713.png +../../data/yoloGtold1/train/77714.png +../../data/yoloGtold1/train/77715.png +../../data/yoloGtold1/train/77716.png +../../data/yoloGtold1/train/77717.png +../../data/yoloGtold1/train/77718.png +../../data/yoloGtold1/train/77719.png +../../data/yoloGtold1/train/77720.png +../../data/yoloGtold1/train/77721.png +../../data/yoloGtold1/train/77722.png +../../data/yoloGtold1/train/77723.png +../../data/yoloGtold1/train/77724.png +../../data/yoloGtold1/train/77725.png +../../data/yoloGtold1/train/77726.png +../../data/yoloGtold1/train/77727.png +../../data/yoloGtold1/train/77728.png +../../data/yoloGtold1/train/77729.png +../../data/yoloGtold1/train/77730.png +../../data/yoloGtold1/train/77731.png +../../data/yoloGtold1/train/77732.png +../../data/yoloGtold1/train/77733.png +../../data/yoloGtold1/train/77734.png +../../data/yoloGtold1/train/77735.png +../../data/yoloGtold1/train/77736.png +../../data/yoloGtold1/train/77737.png +../../data/yoloGtold1/train/77738.png +../../data/yoloGtold1/train/77739.png +../../data/yoloGtold1/train/77740.png +../../data/yoloGtold1/train/77741.png +../../data/yoloGtold1/train/77742.png +../../data/yoloGtold1/train/77743.png +../../data/yoloGtold1/train/77744.png +../../data/yoloGtold1/train/77745.png +../../data/yoloGtold1/train/77746.png +../../data/yoloGtold1/train/77747.png +../../data/yoloGtold1/train/77748.png +../../data/yoloGtold1/train/77749.png +../../data/yoloGtold1/train/77750.png +../../data/yoloGtold1/train/77751.png +../../data/yoloGtold1/train/77752.png +../../data/yoloGtold1/train/77753.png +../../data/yoloGtold1/train/77754.png +../../data/yoloGtold1/train/77755.png +../../data/yoloGtold1/train/77756.png +../../data/yoloGtold1/train/77757.png +../../data/yoloGtold1/train/77758.png +../../data/yoloGtold1/train/77759.png +../../data/yoloGtold1/train/77760.png +../../data/yoloGtold1/train/77761.png +../../data/yoloGtold1/train/77762.png +../../data/yoloGtold1/train/77763.png +../../data/yoloGtold1/train/77764.png +../../data/yoloGtold1/train/77765.png +../../data/yoloGtold1/train/77766.png +../../data/yoloGtold1/train/77767.png +../../data/yoloGtold1/train/77768.png +../../data/yoloGtold1/train/77769.png +../../data/yoloGtold1/train/77770.png +../../data/yoloGtold1/train/77771.png +../../data/yoloGtold1/train/77772.png +../../data/yoloGtold1/train/77773.png +../../data/yoloGtold1/train/77774.png +../../data/yoloGtold1/train/77775.png +../../data/yoloGtold1/train/77776.png +../../data/yoloGtold1/train/77777.png +../../data/yoloGtold1/train/77778.png +../../data/yoloGtold1/train/77779.png +../../data/yoloGtold1/train/77780.png +../../data/yoloGtold1/train/77781.png +../../data/yoloGtold1/train/77782.png +../../data/yoloGtold1/train/77783.png +../../data/yoloGtold1/train/77784.png +../../data/yoloGtold1/train/77785.png +../../data/yoloGtold1/train/77786.png +../../data/yoloGtold1/train/77787.png +../../data/yoloGtold1/train/77788.png +../../data/yoloGtold1/train/77789.png +../../data/yoloGtold1/train/77790.png +../../data/yoloGtold1/train/77791.png +../../data/yoloGtold1/train/77792.png +../../data/yoloGtold1/train/77793.png +../../data/yoloGtold1/train/77794.png +../../data/yoloGtold1/train/77795.png +../../data/yoloGtold1/train/77796.png +../../data/yoloGtold1/train/77797.png +../../data/yoloGtold1/train/77798.png +../../data/yoloGtold1/train/77799.png +../../data/yoloGtold1/train/77800.png +../../data/yoloGtold1/train/77801.png +../../data/yoloGtold1/train/77802.png +../../data/yoloGtold1/train/77803.png +../../data/yoloGtold1/train/77804.png +../../data/yoloGtold1/train/77805.png +../../data/yoloGtold1/train/77806.png +../../data/yoloGtold1/train/77807.png +../../data/yoloGtold1/train/77808.png +../../data/yoloGtold1/train/77809.png +../../data/yoloGtold1/train/77810.png +../../data/yoloGtold1/train/77811.png +../../data/yoloGtold1/train/77812.png +../../data/yoloGtold1/train/77813.png +../../data/yoloGtold1/train/77814.png +../../data/yoloGtold1/train/77815.png +../../data/yoloGtold1/train/77816.png +../../data/yoloGtold1/train/77817.png +../../data/yoloGtold1/train/77818.png +../../data/yoloGtold1/train/77819.png +../../data/yoloGtold1/train/77820.png +../../data/yoloGtold1/train/77821.png +../../data/yoloGtold1/train/77822.png +../../data/yoloGtold1/train/77823.png +../../data/yoloGtold1/train/77824.png +../../data/yoloGtold1/train/77825.png +../../data/yoloGtold1/train/77826.png +../../data/yoloGtold1/train/77827.png +../../data/yoloGtold1/train/77828.png +../../data/yoloGtold1/train/77829.png +../../data/yoloGtold1/train/77830.png +../../data/yoloGtold1/train/77831.png +../../data/yoloGtold1/train/77832.png +../../data/yoloGtold1/train/77833.png +../../data/yoloGtold1/train/77834.png +../../data/yoloGtold1/train/77835.png +../../data/yoloGtold1/train/77836.png +../../data/yoloGtold1/train/77837.png +../../data/yoloGtold1/train/77838.png +../../data/yoloGtold1/train/77839.png +../../data/yoloGtold1/train/77840.png +../../data/yoloGtold1/train/77841.png +../../data/yoloGtold1/train/77842.png +../../data/yoloGtold1/train/77843.png +../../data/yoloGtold1/train/77844.png +../../data/yoloGtold1/train/77845.png +../../data/yoloGtold1/train/77846.png +../../data/yoloGtold1/train/77847.png +../../data/yoloGtold1/train/77848.png +../../data/yoloGtold1/train/77849.png +../../data/yoloGtold1/train/77850.png +../../data/yoloGtold1/train/77851.png +../../data/yoloGtold1/train/77852.png +../../data/yoloGtold1/train/77853.png +../../data/yoloGtold1/train/77854.png +../../data/yoloGtold1/train/77855.png +../../data/yoloGtold1/train/77856.png +../../data/yoloGtold1/train/77857.png +../../data/yoloGtold1/train/77858.png +../../data/yoloGtold1/train/77859.png +../../data/yoloGtold1/train/77860.png +../../data/yoloGtold1/train/77861.png +../../data/yoloGtold1/train/77862.png +../../data/yoloGtold1/train/77863.png +../../data/yoloGtold1/train/77864.png +../../data/yoloGtold1/train/77865.png +../../data/yoloGtold1/train/77866.png +../../data/yoloGtold1/train/77867.png +../../data/yoloGtold1/train/77868.png +../../data/yoloGtold1/train/77869.png +../../data/yoloGtold1/train/77870.png +../../data/yoloGtold1/train/77871.png +../../data/yoloGtold1/train/77872.png +../../data/yoloGtold1/train/77873.png +../../data/yoloGtold1/train/77874.png +../../data/yoloGtold1/train/77875.png +../../data/yoloGtold1/train/77876.png +../../data/yoloGtold1/train/77877.png +../../data/yoloGtold1/train/77878.png +../../data/yoloGtold1/train/77879.png +../../data/yoloGtold1/train/77880.png +../../data/yoloGtold1/train/77881.png +../../data/yoloGtold1/train/77882.png +../../data/yoloGtold1/train/77883.png +../../data/yoloGtold1/train/77884.png +../../data/yoloGtold1/train/77885.png +../../data/yoloGtold1/train/77886.png +../../data/yoloGtold1/train/77887.png +../../data/yoloGtold1/train/77888.png +../../data/yoloGtold1/train/77889.png +../../data/yoloGtold1/train/77890.png +../../data/yoloGtold1/train/77891.png +../../data/yoloGtold1/train/77892.png +../../data/yoloGtold1/train/77893.png +../../data/yoloGtold1/train/77894.png +../../data/yoloGtold1/train/77895.png +../../data/yoloGtold1/train/77896.png +../../data/yoloGtold1/train/77897.png +../../data/yoloGtold1/train/77898.png +../../data/yoloGtold1/train/77899.png +../../data/yoloGtold1/train/77900.png +../../data/yoloGtold1/train/77901.png +../../data/yoloGtold1/train/77902.png +../../data/yoloGtold1/train/77903.png +../../data/yoloGtold1/train/77904.png +../../data/yoloGtold1/train/77905.png +../../data/yoloGtold1/train/77906.png +../../data/yoloGtold1/train/77907.png +../../data/yoloGtold1/train/77908.png +../../data/yoloGtold1/train/77909.png +../../data/yoloGtold1/train/77910.png +../../data/yoloGtold1/train/77911.png +../../data/yoloGtold1/train/77912.png +../../data/yoloGtold1/train/77913.png +../../data/yoloGtold1/train/77914.png +../../data/yoloGtold1/train/77915.png +../../data/yoloGtold1/train/77916.png +../../data/yoloGtold1/train/77917.png +../../data/yoloGtold1/train/77918.png +../../data/yoloGtold1/train/77919.png +../../data/yoloGtold1/train/77920.png +../../data/yoloGtold1/train/77921.png +../../data/yoloGtold1/train/77922.png +../../data/yoloGtold1/train/77923.png +../../data/yoloGtold1/train/77924.png +../../data/yoloGtold1/train/77925.png +../../data/yoloGtold1/train/77926.png +../../data/yoloGtold1/train/77927.png +../../data/yoloGtold1/train/77928.png +../../data/yoloGtold1/train/77929.png +../../data/yoloGtold1/train/77930.png +../../data/yoloGtold1/train/77931.png +../../data/yoloGtold1/train/77932.png +../../data/yoloGtold1/train/77933.png +../../data/yoloGtold1/train/77934.png +../../data/yoloGtold1/train/77935.png +../../data/yoloGtold1/train/77936.png +../../data/yoloGtold1/train/77937.png +../../data/yoloGtold1/train/77938.png +../../data/yoloGtold1/train/77939.png +../../data/yoloGtold1/train/77940.png +../../data/yoloGtold1/train/77941.png +../../data/yoloGtold1/train/77942.png +../../data/yoloGtold1/train/77943.png +../../data/yoloGtold1/train/77944.png +../../data/yoloGtold1/train/77945.png +../../data/yoloGtold1/train/77946.png +../../data/yoloGtold1/train/77947.png +../../data/yoloGtold1/train/77948.png +../../data/yoloGtold1/train/77949.png +../../data/yoloGtold1/train/77950.png +../../data/yoloGtold1/train/77951.png +../../data/yoloGtold1/train/77952.png +../../data/yoloGtold1/train/77953.png +../../data/yoloGtold1/train/77954.png +../../data/yoloGtold1/train/77955.png +../../data/yoloGtold1/train/77956.png +../../data/yoloGtold1/train/77957.png +../../data/yoloGtold1/train/77958.png +../../data/yoloGtold1/train/77959.png +../../data/yoloGtold1/train/77960.png +../../data/yoloGtold1/train/77961.png +../../data/yoloGtold1/train/77962.png +../../data/yoloGtold1/train/77963.png +../../data/yoloGtold1/train/77964.png +../../data/yoloGtold1/train/77965.png +../../data/yoloGtold1/train/77966.png +../../data/yoloGtold1/train/77967.png +../../data/yoloGtold1/train/77968.png +../../data/yoloGtold1/train/77969.png +../../data/yoloGtold1/train/77970.png +../../data/yoloGtold1/train/77971.png +../../data/yoloGtold1/train/77972.png +../../data/yoloGtold1/train/77973.png +../../data/yoloGtold1/train/77974.png +../../data/yoloGtold1/train/77975.png +../../data/yoloGtold1/train/77976.png +../../data/yoloGtold1/train/77977.png +../../data/yoloGtold1/train/77978.png +../../data/yoloGtold1/train/77979.png +../../data/yoloGtold1/train/77980.png +../../data/yoloGtold1/train/77981.png +../../data/yoloGtold1/train/77982.png +../../data/yoloGtold1/train/77983.png +../../data/yoloGtold1/train/77984.png +../../data/yoloGtold1/train/77985.png +../../data/yoloGtold1/train/77986.png +../../data/yoloGtold1/train/77987.png +../../data/yoloGtold1/train/77988.png +../../data/yoloGtold1/train/77989.png +../../data/yoloGtold1/train/77990.png +../../data/yoloGtold1/train/77991.png +../../data/yoloGtold1/train/77992.png +../../data/yoloGtold1/train/77993.png +../../data/yoloGtold1/train/77994.png +../../data/yoloGtold1/train/77995.png +../../data/yoloGtold1/train/77996.png +../../data/yoloGtold1/train/77997.png +../../data/yoloGtold1/train/77998.png +../../data/yoloGtold1/train/77999.png +../../data/yoloGtold1/train/78000.png +../../data/yoloGtold1/train/78001.png +../../data/yoloGtold1/train/78002.png +../../data/yoloGtold1/train/78003.png +../../data/yoloGtold1/train/78004.png +../../data/yoloGtold1/train/78005.png +../../data/yoloGtold1/train/78006.png +../../data/yoloGtold1/train/78007.png +../../data/yoloGtold1/train/78008.png +../../data/yoloGtold1/train/78009.png +../../data/yoloGtold1/train/78010.png +../../data/yoloGtold1/train/78011.png +../../data/yoloGtold1/train/78012.png +../../data/yoloGtold1/train/78013.png +../../data/yoloGtold1/train/78014.png +../../data/yoloGtold1/train/78015.png +../../data/yoloGtold1/train/78016.png +../../data/yoloGtold1/train/78017.png +../../data/yoloGtold1/train/78018.png +../../data/yoloGtold1/train/78019.png +../../data/yoloGtold1/train/78020.png +../../data/yoloGtold1/train/78021.png +../../data/yoloGtold1/train/78022.png +../../data/yoloGtold1/train/78023.png +../../data/yoloGtold1/train/78024.png +../../data/yoloGtold1/train/78025.png +../../data/yoloGtold1/train/78026.png +../../data/yoloGtold1/train/78027.png +../../data/yoloGtold1/train/78028.png +../../data/yoloGtold1/train/78029.png +../../data/yoloGtold1/train/78030.png +../../data/yoloGtold1/train/78031.png +../../data/yoloGtold1/train/78032.png +../../data/yoloGtold1/train/78033.png +../../data/yoloGtold1/train/78034.png +../../data/yoloGtold1/train/78035.png +../../data/yoloGtold1/train/78036.png +../../data/yoloGtold1/train/78037.png +../../data/yoloGtold1/train/78038.png +../../data/yoloGtold1/train/78039.png +../../data/yoloGtold1/train/78040.png +../../data/yoloGtold1/train/78041.png +../../data/yoloGtold1/train/78042.png +../../data/yoloGtold1/train/78043.png +../../data/yoloGtold1/train/78044.png +../../data/yoloGtold1/train/78045.png +../../data/yoloGtold1/train/78046.png +../../data/yoloGtold1/train/78047.png +../../data/yoloGtold1/train/78048.png +../../data/yoloGtold1/train/78049.png +../../data/yoloGtold1/train/78050.png +../../data/yoloGtold1/train/78051.png +../../data/yoloGtold1/train/78052.png +../../data/yoloGtold1/train/78053.png +../../data/yoloGtold1/train/78054.png +../../data/yoloGtold1/train/78055.png +../../data/yoloGtold1/train/78056.png +../../data/yoloGtold1/train/78057.png +../../data/yoloGtold1/train/78058.png +../../data/yoloGtold1/train/78059.png +../../data/yoloGtold1/train/78060.png +../../data/yoloGtold1/train/78061.png +../../data/yoloGtold1/train/78062.png +../../data/yoloGtold1/train/78063.png +../../data/yoloGtold1/train/78064.png +../../data/yoloGtold1/train/78065.png +../../data/yoloGtold1/train/78066.png +../../data/yoloGtold1/train/78067.png +../../data/yoloGtold1/train/78068.png +../../data/yoloGtold1/train/78069.png +../../data/yoloGtold1/train/78070.png +../../data/yoloGtold1/train/78071.png +../../data/yoloGtold1/train/78072.png +../../data/yoloGtold1/train/78073.png +../../data/yoloGtold1/train/78074.png +../../data/yoloGtold1/train/78075.png +../../data/yoloGtold1/train/78076.png +../../data/yoloGtold1/train/78077.png +../../data/yoloGtold1/train/78078.png +../../data/yoloGtold1/train/78079.png +../../data/yoloGtold1/train/78080.png +../../data/yoloGtold1/train/78081.png +../../data/yoloGtold1/train/78082.png +../../data/yoloGtold1/train/78083.png +../../data/yoloGtold1/train/78084.png +../../data/yoloGtold1/train/78085.png +../../data/yoloGtold1/train/78086.png +../../data/yoloGtold1/train/78087.png +../../data/yoloGtold1/train/78088.png +../../data/yoloGtold1/train/78089.png +../../data/yoloGtold1/train/78090.png +../../data/yoloGtold1/train/78091.png +../../data/yoloGtold1/train/78092.png +../../data/yoloGtold1/train/78093.png +../../data/yoloGtold1/train/78094.png +../../data/yoloGtold1/train/78095.png +../../data/yoloGtold1/train/78096.png +../../data/yoloGtold1/train/78097.png +../../data/yoloGtold1/train/78098.png +../../data/yoloGtold1/train/78099.png +../../data/yoloGtold1/train/78100.png +../../data/yoloGtold1/train/78101.png +../../data/yoloGtold1/train/78102.png +../../data/yoloGtold1/train/78103.png +../../data/yoloGtold1/train/78104.png +../../data/yoloGtold1/train/78105.png +../../data/yoloGtold1/train/78106.png +../../data/yoloGtold1/train/78107.png +../../data/yoloGtold1/train/78108.png +../../data/yoloGtold1/train/78109.png +../../data/yoloGtold1/train/78110.png +../../data/yoloGtold1/train/78111.png +../../data/yoloGtold1/train/78112.png +../../data/yoloGtold1/train/78113.png +../../data/yoloGtold1/train/78114.png +../../data/yoloGtold1/train/78115.png +../../data/yoloGtold1/train/78116.png +../../data/yoloGtold1/train/78117.png +../../data/yoloGtold1/train/78118.png +../../data/yoloGtold1/train/78119.png +../../data/yoloGtold1/train/78120.png +../../data/yoloGtold1/train/78121.png +../../data/yoloGtold1/train/78122.png +../../data/yoloGtold1/train/78123.png +../../data/yoloGtold1/train/78124.png +../../data/yoloGtold1/train/78125.png +../../data/yoloGtold1/train/78126.png +../../data/yoloGtold1/train/78127.png +../../data/yoloGtold1/train/78128.png +../../data/yoloGtold1/train/78129.png +../../data/yoloGtold1/train/78130.png +../../data/yoloGtold1/train/78131.png +../../data/yoloGtold1/train/78132.png +../../data/yoloGtold1/train/78133.png +../../data/yoloGtold1/train/78134.png +../../data/yoloGtold1/train/78135.png +../../data/yoloGtold1/train/78136.png +../../data/yoloGtold1/train/78137.png +../../data/yoloGtold1/train/78138.png +../../data/yoloGtold1/train/78139.png +../../data/yoloGtold1/train/78140.png +../../data/yoloGtold1/train/78141.png +../../data/yoloGtold1/train/78142.png +../../data/yoloGtold1/train/78143.png +../../data/yoloGtold1/train/78144.png +../../data/yoloGtold1/train/78145.png +../../data/yoloGtold1/train/78146.png +../../data/yoloGtold1/train/78147.png +../../data/yoloGtold1/train/78148.png +../../data/yoloGtold1/train/78149.png +../../data/yoloGtold1/train/78150.png +../../data/yoloGtold1/train/78151.png +../../data/yoloGtold1/train/78152.png +../../data/yoloGtold1/train/78153.png +../../data/yoloGtold1/train/78154.png +../../data/yoloGtold1/train/78155.png +../../data/yoloGtold1/train/78156.png +../../data/yoloGtold1/train/78157.png +../../data/yoloGtold1/train/78158.png +../../data/yoloGtold1/train/78159.png +../../data/yoloGtold1/train/78160.png +../../data/yoloGtold1/train/78161.png +../../data/yoloGtold1/train/78162.png +../../data/yoloGtold1/train/78163.png +../../data/yoloGtold1/train/78164.png +../../data/yoloGtold1/train/78165.png +../../data/yoloGtold1/train/78166.png +../../data/yoloGtold1/train/78167.png +../../data/yoloGtold1/train/78168.png +../../data/yoloGtold1/train/78169.png +../../data/yoloGtold1/train/78170.png +../../data/yoloGtold1/train/78171.png +../../data/yoloGtold1/train/78172.png +../../data/yoloGtold1/train/78173.png +../../data/yoloGtold1/train/78174.png +../../data/yoloGtold1/train/78175.png +../../data/yoloGtold1/train/78176.png +../../data/yoloGtold1/train/78177.png +../../data/yoloGtold1/train/78178.png +../../data/yoloGtold1/train/78179.png +../../data/yoloGtold1/train/78180.png +../../data/yoloGtold1/train/78181.png +../../data/yoloGtold1/train/78182.png +../../data/yoloGtold1/train/78183.png +../../data/yoloGtold1/train/78184.png +../../data/yoloGtold1/train/78185.png +../../data/yoloGtold1/train/78186.png +../../data/yoloGtold1/train/78187.png +../../data/yoloGtold1/train/78188.png +../../data/yoloGtold1/train/78189.png +../../data/yoloGtold1/train/78190.png +../../data/yoloGtold1/train/78191.png +../../data/yoloGtold1/train/78192.png +../../data/yoloGtold1/train/78193.png +../../data/yoloGtold1/train/78194.png +../../data/yoloGtold1/train/78195.png +../../data/yoloGtold1/train/78196.png +../../data/yoloGtold1/train/78197.png +../../data/yoloGtold1/train/78198.png +../../data/yoloGtold1/train/78199.png +../../data/yoloGtold1/train/78200.png +../../data/yoloGtold1/train/78201.png +../../data/yoloGtold1/train/78202.png +../../data/yoloGtold1/train/78203.png +../../data/yoloGtold1/train/78204.png +../../data/yoloGtold1/train/78205.png +../../data/yoloGtold1/train/78206.png +../../data/yoloGtold1/train/78207.png +../../data/yoloGtold1/train/78208.png +../../data/yoloGtold1/train/78209.png +../../data/yoloGtold1/train/78210.png +../../data/yoloGtold1/train/78211.png +../../data/yoloGtold1/train/78212.png +../../data/yoloGtold1/train/78213.png +../../data/yoloGtold1/train/78214.png +../../data/yoloGtold1/train/78215.png +../../data/yoloGtold1/train/78216.png +../../data/yoloGtold1/train/78217.png +../../data/yoloGtold1/train/78218.png +../../data/yoloGtold1/train/78219.png +../../data/yoloGtold1/train/78220.png +../../data/yoloGtold1/train/78221.png +../../data/yoloGtold1/train/78222.png +../../data/yoloGtold1/train/78223.png +../../data/yoloGtold1/train/78224.png +../../data/yoloGtold1/train/78225.png +../../data/yoloGtold1/train/78226.png +../../data/yoloGtold1/train/78227.png +../../data/yoloGtold1/train/78228.png +../../data/yoloGtold1/train/78229.png +../../data/yoloGtold1/train/78230.png +../../data/yoloGtold1/train/78231.png +../../data/yoloGtold1/train/78232.png +../../data/yoloGtold1/train/78233.png +../../data/yoloGtold1/train/78234.png +../../data/yoloGtold1/train/78235.png +../../data/yoloGtold1/train/78236.png +../../data/yoloGtold1/train/78237.png +../../data/yoloGtold1/train/78238.png +../../data/yoloGtold1/train/78239.png +../../data/yoloGtold1/train/78240.png +../../data/yoloGtold1/train/78241.png +../../data/yoloGtold1/train/78242.png +../../data/yoloGtold1/train/78243.png +../../data/yoloGtold1/train/78244.png +../../data/yoloGtold1/train/78245.png +../../data/yoloGtold1/train/78246.png +../../data/yoloGtold1/train/78247.png +../../data/yoloGtold1/train/78248.png +../../data/yoloGtold1/train/78249.png +../../data/yoloGtold1/train/78250.png +../../data/yoloGtold1/train/78251.png +../../data/yoloGtold1/train/78252.png +../../data/yoloGtold1/train/78253.png +../../data/yoloGtold1/train/78254.png +../../data/yoloGtold1/train/78255.png +../../data/yoloGtold1/train/78256.png +../../data/yoloGtold1/train/78257.png +../../data/yoloGtold1/train/78258.png +../../data/yoloGtold1/train/78259.png +../../data/yoloGtold1/train/78260.png +../../data/yoloGtold1/train/78261.png +../../data/yoloGtold1/train/78262.png +../../data/yoloGtold1/train/78263.png +../../data/yoloGtold1/train/78264.png +../../data/yoloGtold1/train/78265.png +../../data/yoloGtold1/train/78266.png +../../data/yoloGtold1/train/78267.png +../../data/yoloGtold1/train/78268.png +../../data/yoloGtold1/train/78269.png +../../data/yoloGtold1/train/78270.png +../../data/yoloGtold1/train/78271.png +../../data/yoloGtold1/train/78272.png +../../data/yoloGtold1/train/78273.png +../../data/yoloGtold1/train/78274.png +../../data/yoloGtold1/train/78275.png +../../data/yoloGtold1/train/78276.png +../../data/yoloGtold1/train/78277.png +../../data/yoloGtold1/train/78278.png +../../data/yoloGtold1/train/78279.png +../../data/yoloGtold1/train/78280.png +../../data/yoloGtold1/train/78281.png +../../data/yoloGtold1/train/78282.png +../../data/yoloGtold1/train/78283.png +../../data/yoloGtold1/train/78284.png +../../data/yoloGtold1/train/78285.png +../../data/yoloGtold1/train/78286.png +../../data/yoloGtold1/train/78287.png +../../data/yoloGtold1/train/78288.png +../../data/yoloGtold1/train/78289.png +../../data/yoloGtold1/train/78290.png +../../data/yoloGtold1/train/78291.png +../../data/yoloGtold1/train/78292.png +../../data/yoloGtold1/train/78293.png +../../data/yoloGtold1/train/78294.png +../../data/yoloGtold1/train/78295.png +../../data/yoloGtold1/train/78296.png +../../data/yoloGtold1/train/78297.png +../../data/yoloGtold1/train/78298.png +../../data/yoloGtold1/train/78299.png +../../data/yoloGtold1/train/78300.png +../../data/yoloGtold1/train/78301.png +../../data/yoloGtold1/train/78302.png +../../data/yoloGtold1/train/78303.png +../../data/yoloGtold1/train/78304.png +../../data/yoloGtold1/train/78305.png +../../data/yoloGtold1/train/78306.png +../../data/yoloGtold1/train/78307.png +../../data/yoloGtold1/train/78308.png +../../data/yoloGtold1/train/78309.png +../../data/yoloGtold1/train/78310.png +../../data/yoloGtold1/train/78311.png +../../data/yoloGtold1/train/78312.png +../../data/yoloGtold1/train/78313.png +../../data/yoloGtold1/train/78314.png +../../data/yoloGtold1/train/78315.png +../../data/yoloGtold1/train/78316.png +../../data/yoloGtold1/train/78317.png +../../data/yoloGtold1/train/78318.png +../../data/yoloGtold1/train/78319.png +../../data/yoloGtold1/train/78320.png +../../data/yoloGtold1/train/78321.png +../../data/yoloGtold1/train/78322.png +../../data/yoloGtold1/train/78323.png +../../data/yoloGtold1/train/78324.png +../../data/yoloGtold1/train/78325.png +../../data/yoloGtold1/train/78326.png +../../data/yoloGtold1/train/78327.png +../../data/yoloGtold1/train/78328.png +../../data/yoloGtold1/train/78329.png +../../data/yoloGtold1/train/78330.png +../../data/yoloGtold1/train/78331.png +../../data/yoloGtold1/train/78332.png +../../data/yoloGtold1/train/78333.png +../../data/yoloGtold1/train/78334.png +../../data/yoloGtold1/train/78335.png +../../data/yoloGtold1/train/78336.png +../../data/yoloGtold1/train/78337.png +../../data/yoloGtold1/train/78338.png +../../data/yoloGtold1/train/78339.png +../../data/yoloGtold1/train/78340.png +../../data/yoloGtold1/train/78341.png +../../data/yoloGtold1/train/78342.png +../../data/yoloGtold1/train/78343.png +../../data/yoloGtold1/train/78344.png +../../data/yoloGtold1/train/78345.png +../../data/yoloGtold1/train/78346.png +../../data/yoloGtold1/train/78347.png +../../data/yoloGtold1/train/78348.png +../../data/yoloGtold1/train/78349.png +../../data/yoloGtold1/train/78350.png +../../data/yoloGtold1/train/78351.png +../../data/yoloGtold1/train/78352.png +../../data/yoloGtold1/train/78353.png +../../data/yoloGtold1/train/78354.png +../../data/yoloGtold1/train/78355.png +../../data/yoloGtold1/train/78356.png +../../data/yoloGtold1/train/78357.png +../../data/yoloGtold1/train/78358.png +../../data/yoloGtold1/train/78359.png +../../data/yoloGtold1/train/78360.png +../../data/yoloGtold1/train/78361.png +../../data/yoloGtold1/train/78362.png +../../data/yoloGtold1/train/78363.png +../../data/yoloGtold1/train/78364.png +../../data/yoloGtold1/train/78365.png +../../data/yoloGtold1/train/78366.png +../../data/yoloGtold1/train/78367.png +../../data/yoloGtold1/train/78368.png +../../data/yoloGtold1/train/78369.png +../../data/yoloGtold1/train/78370.png +../../data/yoloGtold1/train/78371.png +../../data/yoloGtold1/train/78372.png +../../data/yoloGtold1/train/78373.png +../../data/yoloGtold1/train/78374.png +../../data/yoloGtold1/train/78375.png +../../data/yoloGtold1/train/78376.png +../../data/yoloGtold1/train/78377.png +../../data/yoloGtold1/train/78378.png +../../data/yoloGtold1/train/78379.png +../../data/yoloGtold1/train/78380.png +../../data/yoloGtold1/train/78381.png +../../data/yoloGtold1/train/78382.png +../../data/yoloGtold1/train/78383.png +../../data/yoloGtold1/train/78384.png +../../data/yoloGtold1/train/78385.png +../../data/yoloGtold1/train/78386.png +../../data/yoloGtold1/train/78387.png +../../data/yoloGtold1/train/78388.png +../../data/yoloGtold1/train/78389.png +../../data/yoloGtold1/train/78390.png +../../data/yoloGtold1/train/78391.png +../../data/yoloGtold1/train/78392.png +../../data/yoloGtold1/train/78393.png +../../data/yoloGtold1/train/78394.png +../../data/yoloGtold1/train/78395.png +../../data/yoloGtold1/train/78396.png +../../data/yoloGtold1/train/78397.png +../../data/yoloGtold1/train/78398.png +../../data/yoloGtold1/train/78399.png +../../data/yoloGtold1/train/78400.png +../../data/yoloGtold1/train/78401.png +../../data/yoloGtold1/train/78402.png +../../data/yoloGtold1/train/78403.png +../../data/yoloGtold1/train/78404.png +../../data/yoloGtold1/train/78405.png +../../data/yoloGtold1/train/78406.png +../../data/yoloGtold1/train/78407.png +../../data/yoloGtold1/train/78408.png +../../data/yoloGtold1/train/78409.png +../../data/yoloGtold1/train/78410.png +../../data/yoloGtold1/train/78411.png +../../data/yoloGtold1/train/78412.png +../../data/yoloGtold1/train/78413.png +../../data/yoloGtold1/train/78414.png +../../data/yoloGtold1/train/78415.png +../../data/yoloGtold1/train/78416.png +../../data/yoloGtold1/train/78417.png +../../data/yoloGtold1/train/78418.png +../../data/yoloGtold1/train/78419.png +../../data/yoloGtold1/train/78420.png +../../data/yoloGtold1/train/78421.png +../../data/yoloGtold1/train/78422.png +../../data/yoloGtold1/train/78423.png +../../data/yoloGtold1/train/78424.png +../../data/yoloGtold1/train/78425.png +../../data/yoloGtold1/train/78426.png +../../data/yoloGtold1/train/78427.png +../../data/yoloGtold1/train/78428.png +../../data/yoloGtold1/train/78429.png +../../data/yoloGtold1/train/78430.png +../../data/yoloGtold1/train/78431.png +../../data/yoloGtold1/train/78432.png +../../data/yoloGtold1/train/78433.png +../../data/yoloGtold1/train/78434.png +../../data/yoloGtold1/train/78435.png +../../data/yoloGtold1/train/78436.png +../../data/yoloGtold1/train/78437.png +../../data/yoloGtold1/train/78438.png +../../data/yoloGtold1/train/78439.png +../../data/yoloGtold1/train/78440.png +../../data/yoloGtold1/train/78441.png +../../data/yoloGtold1/train/78442.png +../../data/yoloGtold1/train/78443.png +../../data/yoloGtold1/train/78444.png +../../data/yoloGtold1/train/78445.png +../../data/yoloGtold1/train/78446.png +../../data/yoloGtold1/train/78447.png +../../data/yoloGtold1/train/78448.png +../../data/yoloGtold1/train/78449.png +../../data/yoloGtold1/train/78450.png +../../data/yoloGtold1/train/78451.png +../../data/yoloGtold1/train/78452.png +../../data/yoloGtold1/train/78453.png +../../data/yoloGtold1/train/78454.png +../../data/yoloGtold1/train/78455.png +../../data/yoloGtold1/train/78456.png +../../data/yoloGtold1/train/78457.png +../../data/yoloGtold1/train/78458.png +../../data/yoloGtold1/train/78459.png +../../data/yoloGtold1/train/78460.png +../../data/yoloGtold1/train/78461.png +../../data/yoloGtold1/train/78462.png +../../data/yoloGtold1/train/78463.png +../../data/yoloGtold1/train/78464.png +../../data/yoloGtold1/train/78465.png +../../data/yoloGtold1/train/78466.png +../../data/yoloGtold1/train/78467.png +../../data/yoloGtold1/train/78468.png +../../data/yoloGtold1/train/78469.png +../../data/yoloGtold1/train/78470.png +../../data/yoloGtold1/train/78471.png +../../data/yoloGtold1/train/78472.png +../../data/yoloGtold1/train/78473.png +../../data/yoloGtold1/train/78474.png +../../data/yoloGtold1/train/78475.png +../../data/yoloGtold1/train/78476.png +../../data/yoloGtold1/train/78477.png +../../data/yoloGtold1/train/78478.png +../../data/yoloGtold1/train/78479.png +../../data/yoloGtold1/train/78480.png +../../data/yoloGtold1/train/78481.png +../../data/yoloGtold1/train/78482.png +../../data/yoloGtold1/train/78483.png +../../data/yoloGtold1/train/78484.png +../../data/yoloGtold1/train/78485.png +../../data/yoloGtold1/train/78486.png +../../data/yoloGtold1/train/78487.png +../../data/yoloGtold1/train/78488.png +../../data/yoloGtold1/train/78489.png +../../data/yoloGtold1/train/78490.png +../../data/yoloGtold1/train/78491.png +../../data/yoloGtold1/train/78492.png +../../data/yoloGtold1/train/78493.png +../../data/yoloGtold1/train/78494.png +../../data/yoloGtold1/train/78495.png +../../data/yoloGtold1/train/78496.png +../../data/yoloGtold1/train/78497.png +../../data/yoloGtold1/train/78498.png +../../data/yoloGtold1/train/78499.png +../../data/yoloGtold1/train/78500.png +../../data/yoloGtold1/train/78501.png +../../data/yoloGtold1/train/78502.png +../../data/yoloGtold1/train/78503.png +../../data/yoloGtold1/train/78504.png +../../data/yoloGtold1/train/78505.png +../../data/yoloGtold1/train/78506.png +../../data/yoloGtold1/train/78507.png +../../data/yoloGtold1/train/78508.png +../../data/yoloGtold1/train/78509.png +../../data/yoloGtold1/train/78510.png +../../data/yoloGtold1/train/78511.png +../../data/yoloGtold1/train/78512.png +../../data/yoloGtold1/train/78513.png +../../data/yoloGtold1/train/78514.png +../../data/yoloGtold1/train/78515.png +../../data/yoloGtold1/train/78516.png +../../data/yoloGtold1/train/78517.png +../../data/yoloGtold1/train/78518.png +../../data/yoloGtold1/train/78519.png +../../data/yoloGtold1/train/78520.png +../../data/yoloGtold1/train/78521.png +../../data/yoloGtold1/train/78522.png +../../data/yoloGtold1/train/78523.png +../../data/yoloGtold1/train/78524.png +../../data/yoloGtold1/train/78525.png +../../data/yoloGtold1/train/78526.png +../../data/yoloGtold1/train/78527.png +../../data/yoloGtold1/train/78528.png +../../data/yoloGtold1/train/78529.png +../../data/yoloGtold1/train/78530.png +../../data/yoloGtold1/train/78531.png +../../data/yoloGtold1/train/78532.png +../../data/yoloGtold1/train/78533.png +../../data/yoloGtold1/train/78534.png +../../data/yoloGtold1/train/78535.png +../../data/yoloGtold1/train/78536.png +../../data/yoloGtold1/train/78537.png +../../data/yoloGtold1/train/78538.png +../../data/yoloGtold1/train/78539.png +../../data/yoloGtold1/train/78540.png +../../data/yoloGtold1/train/78541.png +../../data/yoloGtold1/train/78542.png +../../data/yoloGtold1/train/78543.png +../../data/yoloGtold1/train/78544.png +../../data/yoloGtold1/train/78545.png +../../data/yoloGtold1/train/78546.png +../../data/yoloGtold1/train/78547.png +../../data/yoloGtold1/train/78548.png +../../data/yoloGtold1/train/78549.png +../../data/yoloGtold1/train/78550.png +../../data/yoloGtold1/train/78551.png +../../data/yoloGtold1/train/78552.png +../../data/yoloGtold1/train/78553.png +../../data/yoloGtold1/train/78554.png +../../data/yoloGtold1/train/78555.png +../../data/yoloGtold1/train/78556.png +../../data/yoloGtold1/train/78557.png +../../data/yoloGtold1/train/78558.png +../../data/yoloGtold1/train/78559.png +../../data/yoloGtold1/train/78560.png +../../data/yoloGtold1/train/78561.png +../../data/yoloGtold1/train/78562.png +../../data/yoloGtold1/train/78563.png +../../data/yoloGtold1/train/78564.png +../../data/yoloGtold1/train/78565.png +../../data/yoloGtold1/train/78566.png +../../data/yoloGtold1/train/78567.png +../../data/yoloGtold1/train/78568.png +../../data/yoloGtold1/train/78569.png +../../data/yoloGtold1/train/78570.png +../../data/yoloGtold1/train/78571.png +../../data/yoloGtold1/train/78572.png +../../data/yoloGtold1/train/78573.png +../../data/yoloGtold1/train/78574.png +../../data/yoloGtold1/train/78575.png +../../data/yoloGtold1/train/78576.png +../../data/yoloGtold1/train/78577.png +../../data/yoloGtold1/train/78578.png +../../data/yoloGtold1/train/78579.png +../../data/yoloGtold1/train/78580.png +../../data/yoloGtold1/train/78581.png +../../data/yoloGtold1/train/78582.png +../../data/yoloGtold1/train/78583.png +../../data/yoloGtold1/train/78584.png +../../data/yoloGtold1/train/78585.png +../../data/yoloGtold1/train/78586.png +../../data/yoloGtold1/train/78587.png +../../data/yoloGtold1/train/78588.png +../../data/yoloGtold1/train/78589.png +../../data/yoloGtold1/train/78590.png +../../data/yoloGtold1/train/78591.png +../../data/yoloGtold1/train/78592.png +../../data/yoloGtold1/train/78593.png +../../data/yoloGtold1/train/78594.png +../../data/yoloGtold1/train/78595.png +../../data/yoloGtold1/train/78596.png +../../data/yoloGtold1/train/78597.png +../../data/yoloGtold1/train/78598.png +../../data/yoloGtold1/train/78599.png +../../data/yoloGtold1/train/78600.png +../../data/yoloGtold1/train/78601.png +../../data/yoloGtold1/train/78602.png +../../data/yoloGtold1/train/78603.png +../../data/yoloGtold1/train/78604.png +../../data/yoloGtold1/train/78605.png +../../data/yoloGtold1/train/78606.png +../../data/yoloGtold1/train/78607.png +../../data/yoloGtold1/train/78608.png +../../data/yoloGtold1/train/78609.png +../../data/yoloGtold1/train/78610.png +../../data/yoloGtold1/train/78611.png +../../data/yoloGtold1/train/78612.png +../../data/yoloGtold1/train/78613.png +../../data/yoloGtold1/train/78614.png +../../data/yoloGtold1/train/78615.png +../../data/yoloGtold1/train/78616.png +../../data/yoloGtold1/train/78617.png +../../data/yoloGtold1/train/78618.png +../../data/yoloGtold1/train/78619.png +../../data/yoloGtold1/train/78620.png +../../data/yoloGtold1/train/78621.png +../../data/yoloGtold1/train/78622.png +../../data/yoloGtold1/train/78623.png +../../data/yoloGtold1/train/78624.png +../../data/yoloGtold1/train/78625.png +../../data/yoloGtold1/train/78626.png +../../data/yoloGtold1/train/78627.png +../../data/yoloGtold1/train/78628.png +../../data/yoloGtold1/train/78629.png +../../data/yoloGtold1/train/78630.png +../../data/yoloGtold1/train/78631.png +../../data/yoloGtold1/train/78632.png +../../data/yoloGtold1/train/78633.png +../../data/yoloGtold1/train/78634.png +../../data/yoloGtold1/train/78635.png +../../data/yoloGtold1/train/78636.png +../../data/yoloGtold1/train/78637.png +../../data/yoloGtold1/train/78638.png +../../data/yoloGtold1/train/78639.png +../../data/yoloGtold1/train/78640.png +../../data/yoloGtold1/train/78641.png +../../data/yoloGtold1/train/78642.png +../../data/yoloGtold1/train/78643.png +../../data/yoloGtold1/train/78644.png +../../data/yoloGtold1/train/78645.png +../../data/yoloGtold1/train/78646.png +../../data/yoloGtold1/train/78647.png +../../data/yoloGtold1/train/78648.png +../../data/yoloGtold1/train/78649.png +../../data/yoloGtold1/train/78650.png +../../data/yoloGtold1/train/78651.png +../../data/yoloGtold1/train/78652.png +../../data/yoloGtold1/train/78653.png +../../data/yoloGtold1/train/78654.png +../../data/yoloGtold1/train/78655.png +../../data/yoloGtold1/train/78656.png +../../data/yoloGtold1/train/78657.png +../../data/yoloGtold1/train/78658.png +../../data/yoloGtold1/train/78659.png +../../data/yoloGtold1/train/78660.png +../../data/yoloGtold1/train/78661.png +../../data/yoloGtold1/train/78662.png +../../data/yoloGtold1/train/78663.png +../../data/yoloGtold1/train/78664.png +../../data/yoloGtold1/train/78665.png +../../data/yoloGtold1/train/78666.png +../../data/yoloGtold1/train/78667.png +../../data/yoloGtold1/train/78668.png +../../data/yoloGtold1/train/78669.png +../../data/yoloGtold1/train/78670.png +../../data/yoloGtold1/train/78671.png +../../data/yoloGtold1/train/78672.png +../../data/yoloGtold1/train/78673.png +../../data/yoloGtold1/train/78674.png +../../data/yoloGtold1/train/78675.png +../../data/yoloGtold1/train/78676.png +../../data/yoloGtold1/train/78677.png +../../data/yoloGtold1/train/78678.png +../../data/yoloGtold1/train/78679.png +../../data/yoloGtold1/train/78680.png +../../data/yoloGtold1/train/78681.png +../../data/yoloGtold1/train/78682.png +../../data/yoloGtold1/train/78683.png +../../data/yoloGtold1/train/78684.png +../../data/yoloGtold1/train/78685.png +../../data/yoloGtold1/train/78686.png +../../data/yoloGtold1/train/78687.png +../../data/yoloGtold1/train/78688.png +../../data/yoloGtold1/train/78689.png +../../data/yoloGtold1/train/78690.png +../../data/yoloGtold1/train/78691.png +../../data/yoloGtold1/train/78692.png +../../data/yoloGtold1/train/78693.png +../../data/yoloGtold1/train/78694.png +../../data/yoloGtold1/train/78695.png +../../data/yoloGtold1/train/78696.png +../../data/yoloGtold1/train/78697.png +../../data/yoloGtold1/train/78698.png +../../data/yoloGtold1/train/78699.png +../../data/yoloGtold1/train/78700.png +../../data/yoloGtold1/train/78701.png +../../data/yoloGtold1/train/78702.png +../../data/yoloGtold1/train/78703.png +../../data/yoloGtold1/train/78704.png +../../data/yoloGtold1/train/78705.png +../../data/yoloGtold1/train/78706.png +../../data/yoloGtold1/train/78707.png +../../data/yoloGtold1/train/78708.png +../../data/yoloGtold1/train/78709.png +../../data/yoloGtold1/train/78710.png +../../data/yoloGtold1/train/78711.png +../../data/yoloGtold1/train/78712.png +../../data/yoloGtold1/train/78713.png +../../data/yoloGtold1/train/78714.png +../../data/yoloGtold1/train/78715.png +../../data/yoloGtold1/train/78716.png +../../data/yoloGtold1/train/78717.png +../../data/yoloGtold1/train/78718.png +../../data/yoloGtold1/train/78719.png +../../data/yoloGtold1/train/78720.png +../../data/yoloGtold1/train/78721.png +../../data/yoloGtold1/train/78722.png +../../data/yoloGtold1/train/78723.png +../../data/yoloGtold1/train/78724.png +../../data/yoloGtold1/train/78725.png +../../data/yoloGtold1/train/78726.png +../../data/yoloGtold1/train/78727.png +../../data/yoloGtold1/train/78728.png +../../data/yoloGtold1/train/78729.png +../../data/yoloGtold1/train/78730.png +../../data/yoloGtold1/train/78731.png +../../data/yoloGtold1/train/78732.png +../../data/yoloGtold1/train/78733.png +../../data/yoloGtold1/train/78734.png +../../data/yoloGtold1/train/78735.png +../../data/yoloGtold1/train/78736.png +../../data/yoloGtold1/train/78737.png +../../data/yoloGtold1/train/78738.png +../../data/yoloGtold1/train/78739.png +../../data/yoloGtold1/train/78740.png +../../data/yoloGtold1/train/78741.png +../../data/yoloGtold1/train/78742.png +../../data/yoloGtold1/train/78743.png +../../data/yoloGtold1/train/78744.png +../../data/yoloGtold1/train/78745.png +../../data/yoloGtold1/train/78746.png +../../data/yoloGtold1/train/78747.png +../../data/yoloGtold1/train/78748.png +../../data/yoloGtold1/train/78749.png +../../data/yoloGtold1/train/78750.png +../../data/yoloGtold1/train/78751.png +../../data/yoloGtold1/train/78752.png +../../data/yoloGtold1/train/78753.png +../../data/yoloGtold1/train/78754.png +../../data/yoloGtold1/train/78755.png +../../data/yoloGtold1/train/78756.png +../../data/yoloGtold1/train/78757.png +../../data/yoloGtold1/train/78758.png +../../data/yoloGtold1/train/78759.png +../../data/yoloGtold1/train/78760.png +../../data/yoloGtold1/train/78761.png +../../data/yoloGtold1/train/78762.png +../../data/yoloGtold1/train/78763.png +../../data/yoloGtold1/train/78764.png +../../data/yoloGtold1/train/78765.png +../../data/yoloGtold1/train/78766.png +../../data/yoloGtold1/train/78767.png +../../data/yoloGtold1/train/78768.png +../../data/yoloGtold1/train/78769.png +../../data/yoloGtold1/train/78770.png +../../data/yoloGtold1/train/78771.png +../../data/yoloGtold1/train/78772.png +../../data/yoloGtold1/train/78773.png +../../data/yoloGtold1/train/78774.png +../../data/yoloGtold1/train/78775.png +../../data/yoloGtold1/train/78776.png +../../data/yoloGtold1/train/78777.png +../../data/yoloGtold1/train/78778.png +../../data/yoloGtold1/train/78779.png +../../data/yoloGtold1/train/78780.png +../../data/yoloGtold1/train/78781.png +../../data/yoloGtold1/train/78782.png +../../data/yoloGtold1/train/78783.png +../../data/yoloGtold1/train/78784.png +../../data/yoloGtold1/train/78785.png +../../data/yoloGtold1/train/78786.png +../../data/yoloGtold1/train/78787.png +../../data/yoloGtold1/train/78788.png +../../data/yoloGtold1/train/78789.png +../../data/yoloGtold1/train/78790.png +../../data/yoloGtold1/train/78791.png +../../data/yoloGtold1/train/78792.png +../../data/yoloGtold1/train/78793.png +../../data/yoloGtold1/train/78794.png +../../data/yoloGtold1/train/78795.png +../../data/yoloGtold1/train/78796.png +../../data/yoloGtold1/train/78797.png +../../data/yoloGtold1/train/78798.png +../../data/yoloGtold1/train/78799.png +../../data/yoloGtold1/train/78800.png +../../data/yoloGtold1/train/78801.png +../../data/yoloGtold1/train/78802.png +../../data/yoloGtold1/train/78803.png +../../data/yoloGtold1/train/78804.png +../../data/yoloGtold1/train/78805.png +../../data/yoloGtold1/train/78806.png +../../data/yoloGtold1/train/78807.png +../../data/yoloGtold1/train/78808.png +../../data/yoloGtold1/train/78809.png +../../data/yoloGtold1/train/78810.png +../../data/yoloGtold1/train/78811.png +../../data/yoloGtold1/train/78812.png +../../data/yoloGtold1/train/78813.png +../../data/yoloGtold1/train/78814.png +../../data/yoloGtold1/train/78815.png +../../data/yoloGtold1/train/78816.png +../../data/yoloGtold1/train/78817.png +../../data/yoloGtold1/train/78818.png +../../data/yoloGtold1/train/78819.png +../../data/yoloGtold1/train/78820.png +../../data/yoloGtold1/train/78821.png +../../data/yoloGtold1/train/78822.png +../../data/yoloGtold1/train/78823.png +../../data/yoloGtold1/train/78824.png +../../data/yoloGtold1/train/78825.png +../../data/yoloGtold1/train/78826.png +../../data/yoloGtold1/train/78827.png +../../data/yoloGtold1/train/78828.png +../../data/yoloGtold1/train/78829.png +../../data/yoloGtold1/train/78830.png +../../data/yoloGtold1/train/78831.png +../../data/yoloGtold1/train/78832.png +../../data/yoloGtold1/train/78833.png +../../data/yoloGtold1/train/78834.png +../../data/yoloGtold1/train/78835.png +../../data/yoloGtold1/train/78836.png +../../data/yoloGtold1/train/78837.png +../../data/yoloGtold1/train/78838.png +../../data/yoloGtold1/train/78839.png +../../data/yoloGtold1/train/78840.png +../../data/yoloGtold1/train/78841.png +../../data/yoloGtold1/train/78842.png +../../data/yoloGtold1/train/78843.png +../../data/yoloGtold1/train/78844.png +../../data/yoloGtold1/train/78845.png +../../data/yoloGtold1/train/78846.png +../../data/yoloGtold1/train/78847.png +../../data/yoloGtold1/train/78848.png +../../data/yoloGtold1/train/78849.png +../../data/yoloGtold1/train/78850.png +../../data/yoloGtold1/train/78851.png +../../data/yoloGtold1/train/78852.png +../../data/yoloGtold1/train/78853.png +../../data/yoloGtold1/train/78854.png +../../data/yoloGtold1/train/78855.png +../../data/yoloGtold1/train/78856.png +../../data/yoloGtold1/train/78857.png +../../data/yoloGtold1/train/78858.png +../../data/yoloGtold1/train/78859.png +../../data/yoloGtold1/train/78860.png +../../data/yoloGtold1/train/78861.png +../../data/yoloGtold1/train/78862.png +../../data/yoloGtold1/train/78863.png +../../data/yoloGtold1/train/78864.png +../../data/yoloGtold1/train/78865.png +../../data/yoloGtold1/train/78866.png +../../data/yoloGtold1/train/78867.png +../../data/yoloGtold1/train/78868.png +../../data/yoloGtold1/train/78869.png +../../data/yoloGtold1/train/78870.png +../../data/yoloGtold1/train/78871.png +../../data/yoloGtold1/train/78872.png +../../data/yoloGtold1/train/78873.png +../../data/yoloGtold1/train/78874.png +../../data/yoloGtold1/train/78875.png +../../data/yoloGtold1/train/78876.png +../../data/yoloGtold1/train/78877.png +../../data/yoloGtold1/train/78878.png +../../data/yoloGtold1/train/78879.png +../../data/yoloGtold1/train/78880.png +../../data/yoloGtold1/train/78881.png +../../data/yoloGtold1/train/78882.png +../../data/yoloGtold1/train/78883.png +../../data/yoloGtold1/train/78884.png +../../data/yoloGtold1/train/78885.png +../../data/yoloGtold1/train/78886.png +../../data/yoloGtold1/train/78887.png +../../data/yoloGtold1/train/78888.png +../../data/yoloGtold1/train/78889.png +../../data/yoloGtold1/train/78890.png +../../data/yoloGtold1/train/78891.png +../../data/yoloGtold1/train/78892.png +../../data/yoloGtold1/train/78893.png +../../data/yoloGtold1/train/78894.png +../../data/yoloGtold1/train/78895.png +../../data/yoloGtold1/train/78896.png +../../data/yoloGtold1/train/78897.png +../../data/yoloGtold1/train/78898.png +../../data/yoloGtold1/train/78899.png +../../data/yoloGtold1/train/78900.png +../../data/yoloGtold1/train/78901.png +../../data/yoloGtold1/train/78902.png +../../data/yoloGtold1/train/78903.png +../../data/yoloGtold1/train/78904.png +../../data/yoloGtold1/train/78905.png +../../data/yoloGtold1/train/78906.png +../../data/yoloGtold1/train/78907.png +../../data/yoloGtold1/train/78908.png +../../data/yoloGtold1/train/78909.png +../../data/yoloGtold1/train/78910.png +../../data/yoloGtold1/train/78911.png +../../data/yoloGtold1/train/78912.png +../../data/yoloGtold1/train/78913.png +../../data/yoloGtold1/train/78914.png +../../data/yoloGtold1/train/78915.png +../../data/yoloGtold1/train/78916.png +../../data/yoloGtold1/train/78917.png +../../data/yoloGtold1/train/78918.png +../../data/yoloGtold1/train/78919.png +../../data/yoloGtold1/train/78920.png +../../data/yoloGtold1/train/78921.png +../../data/yoloGtold1/train/78922.png +../../data/yoloGtold1/train/78923.png +../../data/yoloGtold1/train/78924.png +../../data/yoloGtold1/train/78925.png +../../data/yoloGtold1/train/78926.png +../../data/yoloGtold1/train/78927.png +../../data/yoloGtold1/train/78928.png +../../data/yoloGtold1/train/78929.png +../../data/yoloGtold1/train/78930.png +../../data/yoloGtold1/train/78931.png +../../data/yoloGtold1/train/78932.png +../../data/yoloGtold1/train/78933.png +../../data/yoloGtold1/train/78934.png +../../data/yoloGtold1/train/78935.png +../../data/yoloGtold1/train/78936.png +../../data/yoloGtold1/train/78937.png +../../data/yoloGtold1/train/78938.png +../../data/yoloGtold1/train/78939.png +../../data/yoloGtold1/train/78940.png +../../data/yoloGtold1/train/78941.png +../../data/yoloGtold1/train/78942.png +../../data/yoloGtold1/train/78943.png +../../data/yoloGtold1/train/78944.png +../../data/yoloGtold1/train/78945.png +../../data/yoloGtold1/train/78946.png +../../data/yoloGtold1/train/78947.png +../../data/yoloGtold1/train/78948.png +../../data/yoloGtold1/train/78949.png +../../data/yoloGtold1/train/78950.png +../../data/yoloGtold1/train/78951.png +../../data/yoloGtold1/train/78952.png +../../data/yoloGtold1/train/78953.png +../../data/yoloGtold1/train/78954.png +../../data/yoloGtold1/train/78955.png +../../data/yoloGtold1/train/78956.png +../../data/yoloGtold1/train/78957.png +../../data/yoloGtold1/train/78958.png +../../data/yoloGtold1/train/78959.png +../../data/yoloGtold1/train/78960.png +../../data/yoloGtold1/train/78961.png +../../data/yoloGtold1/train/78962.png +../../data/yoloGtold1/train/78963.png +../../data/yoloGtold1/train/78964.png +../../data/yoloGtold1/train/78965.png +../../data/yoloGtold1/train/78966.png +../../data/yoloGtold1/train/78967.png +../../data/yoloGtold1/train/78968.png +../../data/yoloGtold1/train/78969.png +../../data/yoloGtold1/train/78970.png +../../data/yoloGtold1/train/78971.png +../../data/yoloGtold1/train/78972.png +../../data/yoloGtold1/train/78973.png +../../data/yoloGtold1/train/78974.png +../../data/yoloGtold1/train/78975.png +../../data/yoloGtold1/train/78976.png +../../data/yoloGtold1/train/78977.png +../../data/yoloGtold1/train/78978.png +../../data/yoloGtold1/train/78979.png +../../data/yoloGtold1/train/78980.png +../../data/yoloGtold1/train/78981.png +../../data/yoloGtold1/train/78982.png +../../data/yoloGtold1/train/78983.png +../../data/yoloGtold1/train/78984.png +../../data/yoloGtold1/train/78985.png +../../data/yoloGtold1/train/78986.png +../../data/yoloGtold1/train/78987.png +../../data/yoloGtold1/train/78988.png +../../data/yoloGtold1/train/78989.png +../../data/yoloGtold1/train/78990.png +../../data/yoloGtold1/train/78991.png +../../data/yoloGtold1/train/78992.png +../../data/yoloGtold1/train/78993.png +../../data/yoloGtold1/train/78994.png +../../data/yoloGtold1/train/78995.png +../../data/yoloGtold1/train/78996.png +../../data/yoloGtold1/train/78997.png +../../data/yoloGtold1/train/78998.png +../../data/yoloGtold1/train/78999.png +../../data/yoloGtold1/train/79000.png +../../data/yoloGtold1/train/79001.png +../../data/yoloGtold1/train/79002.png +../../data/yoloGtold1/train/79003.png +../../data/yoloGtold1/train/79004.png +../../data/yoloGtold1/train/79005.png +../../data/yoloGtold1/train/79006.png +../../data/yoloGtold1/train/79007.png +../../data/yoloGtold1/train/79008.png +../../data/yoloGtold1/train/79009.png +../../data/yoloGtold1/train/79010.png +../../data/yoloGtold1/train/79011.png +../../data/yoloGtold1/train/79012.png +../../data/yoloGtold1/train/79013.png +../../data/yoloGtold1/train/79014.png +../../data/yoloGtold1/train/79015.png +../../data/yoloGtold1/train/79016.png +../../data/yoloGtold1/train/79017.png +../../data/yoloGtold1/train/79018.png +../../data/yoloGtold1/train/79019.png +../../data/yoloGtold1/train/79020.png +../../data/yoloGtold1/train/79021.png +../../data/yoloGtold1/train/79022.png +../../data/yoloGtold1/train/79023.png +../../data/yoloGtold1/train/79024.png +../../data/yoloGtold1/train/79025.png +../../data/yoloGtold1/train/79026.png +../../data/yoloGtold1/train/79027.png +../../data/yoloGtold1/train/79028.png +../../data/yoloGtold1/train/79029.png +../../data/yoloGtold1/train/79030.png +../../data/yoloGtold1/train/79031.png +../../data/yoloGtold1/train/79032.png +../../data/yoloGtold1/train/79033.png +../../data/yoloGtold1/train/79034.png +../../data/yoloGtold1/train/79035.png +../../data/yoloGtold1/train/79036.png +../../data/yoloGtold1/train/79037.png +../../data/yoloGtold1/train/79038.png +../../data/yoloGtold1/train/79039.png +../../data/yoloGtold1/train/79040.png +../../data/yoloGtold1/train/79041.png +../../data/yoloGtold1/train/79042.png +../../data/yoloGtold1/train/79043.png +../../data/yoloGtold1/train/79044.png +../../data/yoloGtold1/train/79045.png +../../data/yoloGtold1/train/79046.png +../../data/yoloGtold1/train/79047.png +../../data/yoloGtold1/train/79048.png +../../data/yoloGtold1/train/79049.png +../../data/yoloGtold1/train/79050.png +../../data/yoloGtold1/train/79051.png +../../data/yoloGtold1/train/79052.png +../../data/yoloGtold1/train/79053.png +../../data/yoloGtold1/train/79054.png +../../data/yoloGtold1/train/79055.png +../../data/yoloGtold1/train/79056.png +../../data/yoloGtold1/train/79057.png +../../data/yoloGtold1/train/79058.png +../../data/yoloGtold1/train/79059.png +../../data/yoloGtold1/train/79060.png +../../data/yoloGtold1/train/79061.png +../../data/yoloGtold1/train/79062.png +../../data/yoloGtold1/train/79063.png +../../data/yoloGtold1/train/79064.png +../../data/yoloGtold1/train/79065.png +../../data/yoloGtold1/train/79066.png +../../data/yoloGtold1/train/79067.png +../../data/yoloGtold1/train/79068.png +../../data/yoloGtold1/train/79069.png +../../data/yoloGtold1/train/79070.png +../../data/yoloGtold1/train/79071.png +../../data/yoloGtold1/train/79072.png +../../data/yoloGtold1/train/79073.png +../../data/yoloGtold1/train/79074.png +../../data/yoloGtold1/train/79075.png +../../data/yoloGtold1/train/79076.png +../../data/yoloGtold1/train/79077.png +../../data/yoloGtold1/train/79078.png +../../data/yoloGtold1/train/79079.png +../../data/yoloGtold1/train/79080.png +../../data/yoloGtold1/train/79081.png +../../data/yoloGtold1/train/79082.png +../../data/yoloGtold1/train/79083.png +../../data/yoloGtold1/train/79084.png +../../data/yoloGtold1/train/79085.png +../../data/yoloGtold1/train/79086.png +../../data/yoloGtold1/train/79087.png +../../data/yoloGtold1/train/79088.png +../../data/yoloGtold1/train/79089.png +../../data/yoloGtold1/train/79090.png +../../data/yoloGtold1/train/79091.png +../../data/yoloGtold1/train/79092.png +../../data/yoloGtold1/train/79093.png +../../data/yoloGtold1/train/79094.png +../../data/yoloGtold1/train/79095.png +../../data/yoloGtold1/train/79096.png +../../data/yoloGtold1/train/79097.png +../../data/yoloGtold1/train/79098.png +../../data/yoloGtold1/train/79099.png +../../data/yoloGtold1/train/79100.png +../../data/yoloGtold1/train/79101.png +../../data/yoloGtold1/train/79102.png +../../data/yoloGtold1/train/79103.png +../../data/yoloGtold1/train/79104.png +../../data/yoloGtold1/train/79105.png +../../data/yoloGtold1/train/79106.png +../../data/yoloGtold1/train/79107.png +../../data/yoloGtold1/train/79108.png +../../data/yoloGtold1/train/79109.png +../../data/yoloGtold1/train/79110.png +../../data/yoloGtold1/train/79111.png +../../data/yoloGtold1/train/79112.png +../../data/yoloGtold1/train/79113.png +../../data/yoloGtold1/train/79114.png +../../data/yoloGtold1/train/79115.png +../../data/yoloGtold1/train/79116.png +../../data/yoloGtold1/train/79117.png +../../data/yoloGtold1/train/79118.png +../../data/yoloGtold1/train/79119.png +../../data/yoloGtold1/train/79120.png +../../data/yoloGtold1/train/79121.png +../../data/yoloGtold1/train/79122.png +../../data/yoloGtold1/train/79123.png +../../data/yoloGtold1/train/79124.png +../../data/yoloGtold1/train/79125.png +../../data/yoloGtold1/train/79126.png +../../data/yoloGtold1/train/79127.png +../../data/yoloGtold1/train/79128.png +../../data/yoloGtold1/train/79129.png +../../data/yoloGtold1/train/79130.png +../../data/yoloGtold1/train/79131.png +../../data/yoloGtold1/train/79132.png +../../data/yoloGtold1/train/79133.png +../../data/yoloGtold1/train/79134.png +../../data/yoloGtold1/train/79135.png +../../data/yoloGtold1/train/79136.png +../../data/yoloGtold1/train/79137.png +../../data/yoloGtold1/train/79138.png +../../data/yoloGtold1/train/79139.png +../../data/yoloGtold1/train/79140.png +../../data/yoloGtold1/train/79141.png +../../data/yoloGtold1/train/79142.png +../../data/yoloGtold1/train/79143.png +../../data/yoloGtold1/train/79144.png +../../data/yoloGtold1/train/79145.png +../../data/yoloGtold1/train/79146.png +../../data/yoloGtold1/train/79147.png +../../data/yoloGtold1/train/79148.png +../../data/yoloGtold1/train/79149.png +../../data/yoloGtold1/train/79150.png +../../data/yoloGtold1/train/79151.png +../../data/yoloGtold1/train/79152.png +../../data/yoloGtold1/train/79153.png +../../data/yoloGtold1/train/79154.png +../../data/yoloGtold1/train/79155.png +../../data/yoloGtold1/train/79156.png +../../data/yoloGtold1/train/79157.png +../../data/yoloGtold1/train/79158.png +../../data/yoloGtold1/train/79159.png +../../data/yoloGtold1/train/79160.png +../../data/yoloGtold1/train/79161.png +../../data/yoloGtold1/train/79162.png +../../data/yoloGtold1/train/79163.png +../../data/yoloGtold1/train/79164.png +../../data/yoloGtold1/train/79165.png +../../data/yoloGtold1/train/79166.png +../../data/yoloGtold1/train/79167.png +../../data/yoloGtold1/train/79168.png +../../data/yoloGtold1/train/79169.png +../../data/yoloGtold1/train/79170.png +../../data/yoloGtold1/train/79171.png +../../data/yoloGtold1/train/79172.png +../../data/yoloGtold1/train/79173.png +../../data/yoloGtold1/train/79174.png +../../data/yoloGtold1/train/79175.png +../../data/yoloGtold1/train/79176.png +../../data/yoloGtold1/train/79177.png +../../data/yoloGtold1/train/79178.png +../../data/yoloGtold1/train/79179.png +../../data/yoloGtold1/train/79180.png +../../data/yoloGtold1/train/79181.png +../../data/yoloGtold1/train/79182.png +../../data/yoloGtold1/train/79183.png +../../data/yoloGtold1/train/79184.png +../../data/yoloGtold1/train/79185.png +../../data/yoloGtold1/train/79186.png +../../data/yoloGtold1/train/79187.png +../../data/yoloGtold1/train/79188.png +../../data/yoloGtold1/train/79189.png +../../data/yoloGtold1/train/79190.png +../../data/yoloGtold1/train/79191.png +../../data/yoloGtold1/train/79192.png +../../data/yoloGtold1/train/79193.png +../../data/yoloGtold1/train/79194.png +../../data/yoloGtold1/train/79195.png +../../data/yoloGtold1/train/79196.png +../../data/yoloGtold1/train/79197.png +../../data/yoloGtold1/train/79198.png +../../data/yoloGtold1/train/79199.png +../../data/yoloGtold1/train/79200.png +../../data/yoloGtold1/train/79201.png +../../data/yoloGtold1/train/79202.png +../../data/yoloGtold1/train/79203.png +../../data/yoloGtold1/train/79204.png +../../data/yoloGtold1/train/79205.png +../../data/yoloGtold1/train/79206.png +../../data/yoloGtold1/train/79207.png +../../data/yoloGtold1/train/79208.png +../../data/yoloGtold1/train/79209.png +../../data/yoloGtold1/train/79210.png +../../data/yoloGtold1/train/79211.png +../../data/yoloGtold1/train/79212.png +../../data/yoloGtold1/train/79213.png +../../data/yoloGtold1/train/79214.png +../../data/yoloGtold1/train/79215.png +../../data/yoloGtold1/train/79216.png +../../data/yoloGtold1/train/79217.png +../../data/yoloGtold1/train/79218.png +../../data/yoloGtold1/train/79219.png +../../data/yoloGtold1/train/79220.png +../../data/yoloGtold1/train/79221.png +../../data/yoloGtold1/train/79222.png +../../data/yoloGtold1/train/79223.png +../../data/yoloGtold1/train/79224.png +../../data/yoloGtold1/train/79225.png +../../data/yoloGtold1/train/79226.png +../../data/yoloGtold1/train/79227.png +../../data/yoloGtold1/train/79228.png +../../data/yoloGtold1/train/79229.png +../../data/yoloGtold1/train/79230.png +../../data/yoloGtold1/train/79231.png +../../data/yoloGtold1/train/79232.png +../../data/yoloGtold1/train/79233.png +../../data/yoloGtold1/train/79234.png +../../data/yoloGtold1/train/79235.png +../../data/yoloGtold1/train/79236.png +../../data/yoloGtold1/train/79237.png +../../data/yoloGtold1/train/79238.png +../../data/yoloGtold1/train/79239.png +../../data/yoloGtold1/train/79240.png +../../data/yoloGtold1/train/79241.png +../../data/yoloGtold1/train/79242.png +../../data/yoloGtold1/train/79243.png +../../data/yoloGtold1/train/79244.png +../../data/yoloGtold1/train/79245.png +../../data/yoloGtold1/train/79246.png +../../data/yoloGtold1/train/79247.png +../../data/yoloGtold1/train/79248.png +../../data/yoloGtold1/train/79249.png +../../data/yoloGtold1/train/79250.png +../../data/yoloGtold1/train/79251.png +../../data/yoloGtold1/train/79252.png +../../data/yoloGtold1/train/79253.png +../../data/yoloGtold1/train/79254.png +../../data/yoloGtold1/train/79255.png +../../data/yoloGtold1/train/79256.png +../../data/yoloGtold1/train/79257.png +../../data/yoloGtold1/train/79258.png +../../data/yoloGtold1/train/79259.png +../../data/yoloGtold1/train/79260.png +../../data/yoloGtold1/train/79261.png +../../data/yoloGtold1/train/79262.png +../../data/yoloGtold1/train/79263.png +../../data/yoloGtold1/train/79264.png +../../data/yoloGtold1/train/79265.png +../../data/yoloGtold1/train/79266.png +../../data/yoloGtold1/train/79267.png +../../data/yoloGtold1/train/79268.png +../../data/yoloGtold1/train/79269.png +../../data/yoloGtold1/train/79270.png +../../data/yoloGtold1/train/79271.png +../../data/yoloGtold1/train/79272.png +../../data/yoloGtold1/train/79273.png +../../data/yoloGtold1/train/79274.png +../../data/yoloGtold1/train/79275.png +../../data/yoloGtold1/train/79276.png +../../data/yoloGtold1/train/79277.png +../../data/yoloGtold1/train/79278.png +../../data/yoloGtold1/train/79279.png +../../data/yoloGtold1/train/79280.png +../../data/yoloGtold1/train/79281.png +../../data/yoloGtold1/train/79282.png +../../data/yoloGtold1/train/79283.png +../../data/yoloGtold1/train/79284.png +../../data/yoloGtold1/train/79285.png +../../data/yoloGtold1/train/79286.png +../../data/yoloGtold1/train/79287.png +../../data/yoloGtold1/train/79288.png +../../data/yoloGtold1/train/79289.png +../../data/yoloGtold1/train/79290.png +../../data/yoloGtold1/train/79291.png +../../data/yoloGtold1/train/79292.png +../../data/yoloGtold1/train/79293.png +../../data/yoloGtold1/train/79294.png +../../data/yoloGtold1/train/79295.png +../../data/yoloGtold1/train/79296.png +../../data/yoloGtold1/train/79297.png +../../data/yoloGtold1/train/79298.png +../../data/yoloGtold1/train/79299.png +../../data/yoloGtold1/train/79300.png +../../data/yoloGtold1/train/79301.png +../../data/yoloGtold1/train/79302.png +../../data/yoloGtold1/train/79303.png +../../data/yoloGtold1/train/79304.png +../../data/yoloGtold1/train/79305.png +../../data/yoloGtold1/train/79306.png +../../data/yoloGtold1/train/79307.png +../../data/yoloGtold1/train/79308.png +../../data/yoloGtold1/train/79309.png +../../data/yoloGtold1/train/79310.png +../../data/yoloGtold1/train/79311.png +../../data/yoloGtold1/train/79312.png +../../data/yoloGtold1/train/79313.png +../../data/yoloGtold1/train/79314.png +../../data/yoloGtold1/train/79315.png +../../data/yoloGtold1/train/79316.png +../../data/yoloGtold1/train/79317.png +../../data/yoloGtold1/train/79318.png +../../data/yoloGtold1/train/79319.png +../../data/yoloGtold1/train/79320.png +../../data/yoloGtold1/train/79321.png +../../data/yoloGtold1/train/79322.png +../../data/yoloGtold1/train/79323.png +../../data/yoloGtold1/train/79324.png +../../data/yoloGtold1/train/79325.png +../../data/yoloGtold1/train/79326.png +../../data/yoloGtold1/train/79327.png +../../data/yoloGtold1/train/79328.png +../../data/yoloGtold1/train/79329.png +../../data/yoloGtold1/train/79330.png +../../data/yoloGtold1/train/79331.png +../../data/yoloGtold1/train/79332.png +../../data/yoloGtold1/train/79333.png +../../data/yoloGtold1/train/79334.png +../../data/yoloGtold1/train/79335.png +../../data/yoloGtold1/train/79336.png +../../data/yoloGtold1/train/79337.png +../../data/yoloGtold1/train/79338.png +../../data/yoloGtold1/train/79339.png +../../data/yoloGtold1/train/79340.png +../../data/yoloGtold1/train/79341.png +../../data/yoloGtold1/train/79342.png +../../data/yoloGtold1/train/79343.png +../../data/yoloGtold1/train/79344.png +../../data/yoloGtold1/train/79345.png +../../data/yoloGtold1/train/79346.png +../../data/yoloGtold1/train/79347.png +../../data/yoloGtold1/train/79348.png +../../data/yoloGtold1/train/79349.png +../../data/yoloGtold1/train/79350.png +../../data/yoloGtold1/train/79351.png +../../data/yoloGtold1/train/79352.png +../../data/yoloGtold1/train/79353.png +../../data/yoloGtold1/train/79354.png +../../data/yoloGtold1/train/79355.png +../../data/yoloGtold1/train/79356.png +../../data/yoloGtold1/train/79357.png +../../data/yoloGtold1/train/79358.png +../../data/yoloGtold1/train/79359.png +../../data/yoloGtold1/train/79360.png +../../data/yoloGtold1/train/79361.png +../../data/yoloGtold1/train/79362.png +../../data/yoloGtold1/train/79363.png +../../data/yoloGtold1/train/79364.png +../../data/yoloGtold1/train/79365.png +../../data/yoloGtold1/train/79366.png +../../data/yoloGtold1/train/79367.png +../../data/yoloGtold1/train/79368.png +../../data/yoloGtold1/train/79369.png +../../data/yoloGtold1/train/79370.png +../../data/yoloGtold1/train/79371.png +../../data/yoloGtold1/train/79372.png +../../data/yoloGtold1/train/79373.png +../../data/yoloGtold1/train/79374.png +../../data/yoloGtold1/train/79375.png +../../data/yoloGtold1/train/79376.png +../../data/yoloGtold1/train/79377.png +../../data/yoloGtold1/train/79378.png +../../data/yoloGtold1/train/79379.png +../../data/yoloGtold1/train/79380.png +../../data/yoloGtold1/train/79381.png +../../data/yoloGtold1/train/79382.png +../../data/yoloGtold1/train/79383.png +../../data/yoloGtold1/train/79384.png +../../data/yoloGtold1/train/79385.png +../../data/yoloGtold1/train/79386.png +../../data/yoloGtold1/train/79387.png +../../data/yoloGtold1/train/79388.png +../../data/yoloGtold1/train/79389.png +../../data/yoloGtold1/train/79390.png +../../data/yoloGtold1/train/79391.png +../../data/yoloGtold1/train/79392.png +../../data/yoloGtold1/train/79393.png +../../data/yoloGtold1/train/79394.png +../../data/yoloGtold1/train/79395.png +../../data/yoloGtold1/train/79396.png +../../data/yoloGtold1/train/79397.png +../../data/yoloGtold1/train/79398.png +../../data/yoloGtold1/train/79399.png +../../data/yoloGtold1/train/79400.png +../../data/yoloGtold1/train/79401.png +../../data/yoloGtold1/train/79402.png +../../data/yoloGtold1/train/79403.png +../../data/yoloGtold1/train/79404.png +../../data/yoloGtold1/train/79405.png +../../data/yoloGtold1/train/79406.png +../../data/yoloGtold1/train/79407.png +../../data/yoloGtold1/train/79408.png +../../data/yoloGtold1/train/79409.png +../../data/yoloGtold1/train/79410.png +../../data/yoloGtold1/train/79411.png +../../data/yoloGtold1/train/79412.png +../../data/yoloGtold1/train/79413.png +../../data/yoloGtold1/train/79414.png +../../data/yoloGtold1/train/79415.png +../../data/yoloGtold1/train/79416.png +../../data/yoloGtold1/train/79417.png +../../data/yoloGtold1/train/79418.png +../../data/yoloGtold1/train/79419.png +../../data/yoloGtold1/train/79420.png +../../data/yoloGtold1/train/79421.png +../../data/yoloGtold1/train/79422.png +../../data/yoloGtold1/train/79423.png +../../data/yoloGtold1/train/79424.png +../../data/yoloGtold1/train/79425.png +../../data/yoloGtold1/train/79426.png +../../data/yoloGtold1/train/79427.png +../../data/yoloGtold1/train/79428.png +../../data/yoloGtold1/train/79429.png +../../data/yoloGtold1/train/79430.png +../../data/yoloGtold1/train/79431.png +../../data/yoloGtold1/train/79432.png +../../data/yoloGtold1/train/79433.png +../../data/yoloGtold1/train/79434.png +../../data/yoloGtold1/train/79435.png +../../data/yoloGtold1/train/79436.png +../../data/yoloGtold1/train/79437.png +../../data/yoloGtold1/train/79438.png +../../data/yoloGtold1/train/79439.png +../../data/yoloGtold1/train/79440.png +../../data/yoloGtold1/train/79441.png +../../data/yoloGtold1/train/79442.png +../../data/yoloGtold1/train/79443.png +../../data/yoloGtold1/train/79444.png +../../data/yoloGtold1/train/79445.png +../../data/yoloGtold1/train/79446.png +../../data/yoloGtold1/train/79447.png +../../data/yoloGtold1/train/79448.png +../../data/yoloGtold1/train/79449.png +../../data/yoloGtold1/train/79450.png +../../data/yoloGtold1/train/79451.png +../../data/yoloGtold1/train/79452.png +../../data/yoloGtold1/train/79453.png +../../data/yoloGtold1/train/79454.png +../../data/yoloGtold1/train/79455.png +../../data/yoloGtold1/train/79456.png +../../data/yoloGtold1/train/79457.png +../../data/yoloGtold1/train/79458.png +../../data/yoloGtold1/train/79459.png +../../data/yoloGtold1/train/79460.png +../../data/yoloGtold1/train/79461.png +../../data/yoloGtold1/train/79462.png +../../data/yoloGtold1/train/79463.png +../../data/yoloGtold1/train/79464.png +../../data/yoloGtold1/train/79465.png +../../data/yoloGtold1/train/79466.png +../../data/yoloGtold1/train/79467.png +../../data/yoloGtold1/train/79468.png +../../data/yoloGtold1/train/79469.png +../../data/yoloGtold1/train/79470.png +../../data/yoloGtold1/train/79471.png +../../data/yoloGtold1/train/79472.png +../../data/yoloGtold1/train/79473.png +../../data/yoloGtold1/train/79474.png +../../data/yoloGtold1/train/79475.png +../../data/yoloGtold1/train/79476.png +../../data/yoloGtold1/train/79477.png +../../data/yoloGtold1/train/79478.png +../../data/yoloGtold1/train/79479.png +../../data/yoloGtold1/train/79480.png +../../data/yoloGtold1/train/79481.png +../../data/yoloGtold1/train/79482.png +../../data/yoloGtold1/train/79483.png +../../data/yoloGtold1/train/79484.png +../../data/yoloGtold1/train/79485.png +../../data/yoloGtold1/train/79486.png +../../data/yoloGtold1/train/79487.png +../../data/yoloGtold1/train/79488.png +../../data/yoloGtold1/train/79489.png +../../data/yoloGtold1/train/79490.png +../../data/yoloGtold1/train/79491.png +../../data/yoloGtold1/train/79492.png +../../data/yoloGtold1/train/79493.png +../../data/yoloGtold1/train/79494.png +../../data/yoloGtold1/train/79495.png +../../data/yoloGtold1/train/79496.png +../../data/yoloGtold1/train/79497.png +../../data/yoloGtold1/train/79498.png +../../data/yoloGtold1/train/79499.png +../../data/yoloGtold1/train/79500.png +../../data/yoloGtold1/train/79501.png +../../data/yoloGtold1/train/79502.png +../../data/yoloGtold1/train/79503.png +../../data/yoloGtold1/train/79504.png +../../data/yoloGtold1/train/79505.png +../../data/yoloGtold1/train/79506.png +../../data/yoloGtold1/train/79507.png +../../data/yoloGtold1/train/79508.png +../../data/yoloGtold1/train/79509.png +../../data/yoloGtold1/train/79510.png +../../data/yoloGtold1/train/79511.png +../../data/yoloGtold1/train/79512.png +../../data/yoloGtold1/train/79513.png +../../data/yoloGtold1/train/79514.png +../../data/yoloGtold1/train/79515.png +../../data/yoloGtold1/train/79516.png +../../data/yoloGtold1/train/79517.png +../../data/yoloGtold1/train/79518.png +../../data/yoloGtold1/train/79519.png +../../data/yoloGtold1/train/79520.png +../../data/yoloGtold1/train/79521.png +../../data/yoloGtold1/train/79522.png +../../data/yoloGtold1/train/79523.png +../../data/yoloGtold1/train/79524.png +../../data/yoloGtold1/train/79525.png +../../data/yoloGtold1/train/79526.png +../../data/yoloGtold1/train/79527.png +../../data/yoloGtold1/train/79528.png +../../data/yoloGtold1/train/79529.png +../../data/yoloGtold1/train/79530.png +../../data/yoloGtold1/train/79531.png +../../data/yoloGtold1/train/79532.png +../../data/yoloGtold1/train/79533.png +../../data/yoloGtold1/train/79534.png +../../data/yoloGtold1/train/79535.png +../../data/yoloGtold1/train/79536.png +../../data/yoloGtold1/train/79537.png +../../data/yoloGtold1/train/79538.png +../../data/yoloGtold1/train/79539.png +../../data/yoloGtold1/train/79540.png +../../data/yoloGtold1/train/79541.png +../../data/yoloGtold1/train/79542.png +../../data/yoloGtold1/train/79543.png +../../data/yoloGtold1/train/79544.png +../../data/yoloGtold1/train/79545.png +../../data/yoloGtold1/train/79546.png +../../data/yoloGtold1/train/79547.png +../../data/yoloGtold1/train/79548.png +../../data/yoloGtold1/train/79549.png +../../data/yoloGtold1/train/79550.png +../../data/yoloGtold1/train/79551.png +../../data/yoloGtold1/train/79552.png +../../data/yoloGtold1/train/79553.png +../../data/yoloGtold1/train/79554.png +../../data/yoloGtold1/train/79555.png +../../data/yoloGtold1/train/79556.png +../../data/yoloGtold1/train/79557.png +../../data/yoloGtold1/train/79558.png +../../data/yoloGtold1/train/79559.png +../../data/yoloGtold1/train/79560.png +../../data/yoloGtold1/train/79561.png +../../data/yoloGtold1/train/79562.png +../../data/yoloGtold1/train/79563.png +../../data/yoloGtold1/train/79564.png +../../data/yoloGtold1/train/79565.png +../../data/yoloGtold1/train/79566.png +../../data/yoloGtold1/train/79567.png +../../data/yoloGtold1/train/79568.png +../../data/yoloGtold1/train/79569.png +../../data/yoloGtold1/train/79570.png +../../data/yoloGtold1/train/79571.png +../../data/yoloGtold1/train/79572.png +../../data/yoloGtold1/train/79573.png +../../data/yoloGtold1/train/79574.png +../../data/yoloGtold1/train/79575.png +../../data/yoloGtold1/train/79576.png +../../data/yoloGtold1/train/79577.png +../../data/yoloGtold1/train/79578.png +../../data/yoloGtold1/train/79579.png +../../data/yoloGtold1/train/79580.png +../../data/yoloGtold1/train/79581.png +../../data/yoloGtold1/train/79582.png +../../data/yoloGtold1/train/79583.png +../../data/yoloGtold1/train/79584.png +../../data/yoloGtold1/train/79585.png +../../data/yoloGtold1/train/79586.png +../../data/yoloGtold1/train/79587.png +../../data/yoloGtold1/train/79588.png +../../data/yoloGtold1/train/79589.png +../../data/yoloGtold1/train/79590.png +../../data/yoloGtold1/train/79591.png +../../data/yoloGtold1/train/79592.png +../../data/yoloGtold1/train/79593.png +../../data/yoloGtold1/train/79594.png +../../data/yoloGtold1/train/79595.png +../../data/yoloGtold1/train/79596.png +../../data/yoloGtold1/train/79597.png +../../data/yoloGtold1/train/79598.png +../../data/yoloGtold1/train/79599.png +../../data/yoloGtold1/train/79600.png +../../data/yoloGtold1/train/79601.png +../../data/yoloGtold1/train/79602.png +../../data/yoloGtold1/train/79603.png +../../data/yoloGtold1/train/79604.png +../../data/yoloGtold1/train/79605.png +../../data/yoloGtold1/train/79606.png +../../data/yoloGtold1/train/79607.png +../../data/yoloGtold1/train/79608.png +../../data/yoloGtold1/train/79609.png +../../data/yoloGtold1/train/79610.png +../../data/yoloGtold1/train/79611.png +../../data/yoloGtold1/train/79612.png +../../data/yoloGtold1/train/79613.png +../../data/yoloGtold1/train/79614.png +../../data/yoloGtold1/train/79615.png +../../data/yoloGtold1/train/79616.png +../../data/yoloGtold1/train/79617.png +../../data/yoloGtold1/train/79618.png +../../data/yoloGtold1/train/79619.png +../../data/yoloGtold1/train/79620.png +../../data/yoloGtold1/train/79621.png +../../data/yoloGtold1/train/79622.png +../../data/yoloGtold1/train/79623.png +../../data/yoloGtold1/train/79624.png +../../data/yoloGtold1/train/79625.png +../../data/yoloGtold1/train/79626.png +../../data/yoloGtold1/train/79627.png +../../data/yoloGtold1/train/79628.png +../../data/yoloGtold1/train/79629.png +../../data/yoloGtold1/train/79630.png +../../data/yoloGtold1/train/79631.png +../../data/yoloGtold1/train/79632.png +../../data/yoloGtold1/train/79633.png +../../data/yoloGtold1/train/79634.png +../../data/yoloGtold1/train/79635.png +../../data/yoloGtold1/train/79636.png +../../data/yoloGtold1/train/79637.png +../../data/yoloGtold1/train/79638.png +../../data/yoloGtold1/train/79639.png +../../data/yoloGtold1/train/79640.png +../../data/yoloGtold1/train/79641.png +../../data/yoloGtold1/train/79642.png +../../data/yoloGtold1/train/79643.png +../../data/yoloGtold1/train/79644.png +../../data/yoloGtold1/train/79645.png +../../data/yoloGtold1/train/79646.png +../../data/yoloGtold1/train/79647.png +../../data/yoloGtold1/train/79648.png +../../data/yoloGtold1/train/79649.png +../../data/yoloGtold1/train/79650.png +../../data/yoloGtold1/train/79651.png +../../data/yoloGtold1/train/79652.png +../../data/yoloGtold1/train/79653.png +../../data/yoloGtold1/train/79654.png +../../data/yoloGtold1/train/79655.png +../../data/yoloGtold1/train/79656.png +../../data/yoloGtold1/train/79657.png +../../data/yoloGtold1/train/79658.png +../../data/yoloGtold1/train/79659.png +../../data/yoloGtold1/train/79660.png +../../data/yoloGtold1/train/79661.png +../../data/yoloGtold1/train/79662.png +../../data/yoloGtold1/train/79663.png +../../data/yoloGtold1/train/79664.png +../../data/yoloGtold1/train/79665.png +../../data/yoloGtold1/train/79666.png +../../data/yoloGtold1/train/79667.png +../../data/yoloGtold1/train/79668.png +../../data/yoloGtold1/train/79669.png +../../data/yoloGtold1/train/79670.png +../../data/yoloGtold1/train/79671.png +../../data/yoloGtold1/train/79672.png +../../data/yoloGtold1/train/79673.png +../../data/yoloGtold1/train/79674.png +../../data/yoloGtold1/train/79675.png +../../data/yoloGtold1/train/79676.png +../../data/yoloGtold1/train/79677.png +../../data/yoloGtold1/train/79678.png +../../data/yoloGtold1/train/79679.png +../../data/yoloGtold1/train/79680.png +../../data/yoloGtold1/train/79681.png +../../data/yoloGtold1/train/79682.png +../../data/yoloGtold1/train/79683.png +../../data/yoloGtold1/train/79684.png +../../data/yoloGtold1/train/79685.png +../../data/yoloGtold1/train/79686.png +../../data/yoloGtold1/train/79687.png +../../data/yoloGtold1/train/79688.png +../../data/yoloGtold1/train/79689.png +../../data/yoloGtold1/train/79690.png +../../data/yoloGtold1/train/79691.png +../../data/yoloGtold1/train/79692.png +../../data/yoloGtold1/train/79693.png +../../data/yoloGtold1/train/79694.png +../../data/yoloGtold1/train/79695.png +../../data/yoloGtold1/train/79696.png +../../data/yoloGtold1/train/79697.png +../../data/yoloGtold1/train/79698.png +../../data/yoloGtold1/train/79699.png +../../data/yoloGtold1/train/79700.png +../../data/yoloGtold1/train/79701.png +../../data/yoloGtold1/train/79702.png +../../data/yoloGtold1/train/79703.png +../../data/yoloGtold1/train/79704.png +../../data/yoloGtold1/train/79705.png +../../data/yoloGtold1/train/79706.png +../../data/yoloGtold1/train/79707.png +../../data/yoloGtold1/train/79708.png +../../data/yoloGtold1/train/79709.png +../../data/yoloGtold1/train/79710.png +../../data/yoloGtold1/train/79711.png +../../data/yoloGtold1/train/79712.png +../../data/yoloGtold1/train/79713.png +../../data/yoloGtold1/train/79714.png +../../data/yoloGtold1/train/79715.png +../../data/yoloGtold1/train/79716.png +../../data/yoloGtold1/train/79717.png +../../data/yoloGtold1/train/79718.png +../../data/yoloGtold1/train/79719.png +../../data/yoloGtold1/train/79720.png +../../data/yoloGtold1/train/79721.png +../../data/yoloGtold1/train/79722.png +../../data/yoloGtold1/train/79723.png +../../data/yoloGtold1/train/79724.png +../../data/yoloGtold1/train/79725.png +../../data/yoloGtold1/train/79726.png +../../data/yoloGtold1/train/79727.png +../../data/yoloGtold1/train/79728.png +../../data/yoloGtold1/train/79729.png +../../data/yoloGtold1/train/79730.png +../../data/yoloGtold1/train/79731.png +../../data/yoloGtold1/train/79732.png +../../data/yoloGtold1/train/79733.png +../../data/yoloGtold1/train/79734.png +../../data/yoloGtold1/train/79735.png +../../data/yoloGtold1/train/79736.png +../../data/yoloGtold1/train/79737.png +../../data/yoloGtold1/train/79738.png +../../data/yoloGtold1/train/79739.png +../../data/yoloGtold1/train/79740.png +../../data/yoloGtold1/train/79741.png +../../data/yoloGtold1/train/79742.png +../../data/yoloGtold1/train/79743.png +../../data/yoloGtold1/train/79744.png +../../data/yoloGtold1/train/79745.png +../../data/yoloGtold1/train/79746.png +../../data/yoloGtold1/train/79747.png +../../data/yoloGtold1/train/79748.png +../../data/yoloGtold1/train/79749.png +../../data/yoloGtold1/train/79750.png +../../data/yoloGtold1/train/79751.png +../../data/yoloGtold1/train/79752.png +../../data/yoloGtold1/train/79753.png +../../data/yoloGtold1/train/79754.png +../../data/yoloGtold1/train/79755.png +../../data/yoloGtold1/train/79756.png +../../data/yoloGtold1/train/79757.png +../../data/yoloGtold1/train/79758.png +../../data/yoloGtold1/train/79759.png +../../data/yoloGtold1/train/79760.png +../../data/yoloGtold1/train/79761.png +../../data/yoloGtold1/train/79762.png +../../data/yoloGtold1/train/79763.png +../../data/yoloGtold1/train/79764.png +../../data/yoloGtold1/train/79765.png +../../data/yoloGtold1/train/79766.png +../../data/yoloGtold1/train/79767.png +../../data/yoloGtold1/train/79768.png +../../data/yoloGtold1/train/79769.png +../../data/yoloGtold1/train/79770.png +../../data/yoloGtold1/train/79771.png +../../data/yoloGtold1/train/79772.png +../../data/yoloGtold1/train/79773.png +../../data/yoloGtold1/train/79774.png +../../data/yoloGtold1/train/79775.png +../../data/yoloGtold1/train/79776.png +../../data/yoloGtold1/train/79777.png +../../data/yoloGtold1/train/79778.png +../../data/yoloGtold1/train/79779.png +../../data/yoloGtold1/train/79780.png +../../data/yoloGtold1/train/79781.png +../../data/yoloGtold1/train/79782.png +../../data/yoloGtold1/train/79783.png +../../data/yoloGtold1/train/79784.png +../../data/yoloGtold1/train/79785.png +../../data/yoloGtold1/train/79786.png +../../data/yoloGtold1/train/79787.png +../../data/yoloGtold1/train/79788.png +../../data/yoloGtold1/train/79789.png +../../data/yoloGtold1/train/79790.png +../../data/yoloGtold1/train/79791.png +../../data/yoloGtold1/train/79792.png +../../data/yoloGtold1/train/79793.png +../../data/yoloGtold1/train/79794.png +../../data/yoloGtold1/train/79795.png +../../data/yoloGtold1/train/79796.png +../../data/yoloGtold1/train/79797.png +../../data/yoloGtold1/train/79798.png +../../data/yoloGtold1/train/79799.png +../../data/yoloGtold1/train/79800.png +../../data/yoloGtold1/train/79801.png +../../data/yoloGtold1/train/79802.png +../../data/yoloGtold1/train/79803.png +../../data/yoloGtold1/train/79804.png +../../data/yoloGtold1/train/79805.png +../../data/yoloGtold1/train/79806.png +../../data/yoloGtold1/train/79807.png +../../data/yoloGtold1/train/79808.png +../../data/yoloGtold1/train/79809.png +../../data/yoloGtold1/train/79810.png +../../data/yoloGtold1/train/79811.png +../../data/yoloGtold1/train/79812.png +../../data/yoloGtold1/train/79813.png +../../data/yoloGtold1/train/79814.png +../../data/yoloGtold1/train/79815.png +../../data/yoloGtold1/train/79816.png +../../data/yoloGtold1/train/79817.png +../../data/yoloGtold1/train/79818.png +../../data/yoloGtold1/train/79819.png +../../data/yoloGtold1/train/79820.png +../../data/yoloGtold1/train/79821.png +../../data/yoloGtold1/train/79822.png +../../data/yoloGtold1/train/79823.png +../../data/yoloGtold1/train/79824.png +../../data/yoloGtold1/train/79825.png +../../data/yoloGtold1/train/79826.png +../../data/yoloGtold1/train/79827.png +../../data/yoloGtold1/train/79828.png +../../data/yoloGtold1/train/79829.png +../../data/yoloGtold1/train/79830.png +../../data/yoloGtold1/train/79831.png +../../data/yoloGtold1/train/79832.png +../../data/yoloGtold1/train/79833.png +../../data/yoloGtold1/train/79834.png +../../data/yoloGtold1/train/79835.png +../../data/yoloGtold1/train/79836.png +../../data/yoloGtold1/train/79837.png +../../data/yoloGtold1/train/79838.png +../../data/yoloGtold1/train/79839.png +../../data/yoloGtold1/train/79840.png +../../data/yoloGtold1/train/79841.png +../../data/yoloGtold1/train/79842.png +../../data/yoloGtold1/train/79843.png +../../data/yoloGtold1/train/79844.png +../../data/yoloGtold1/train/79845.png +../../data/yoloGtold1/train/79846.png +../../data/yoloGtold1/train/79847.png +../../data/yoloGtold1/train/79848.png +../../data/yoloGtold1/train/79849.png +../../data/yoloGtold1/train/79850.png +../../data/yoloGtold1/train/79851.png +../../data/yoloGtold1/train/79852.png +../../data/yoloGtold1/train/79853.png +../../data/yoloGtold1/train/79854.png +../../data/yoloGtold1/train/79855.png +../../data/yoloGtold1/train/79856.png +../../data/yoloGtold1/train/79857.png +../../data/yoloGtold1/train/79858.png +../../data/yoloGtold1/train/79859.png +../../data/yoloGtold1/train/79860.png +../../data/yoloGtold1/train/79861.png +../../data/yoloGtold1/train/79862.png +../../data/yoloGtold1/train/79863.png +../../data/yoloGtold1/train/79864.png +../../data/yoloGtold1/train/79865.png +../../data/yoloGtold1/train/79866.png +../../data/yoloGtold1/train/79867.png +../../data/yoloGtold1/train/79868.png +../../data/yoloGtold1/train/79869.png +../../data/yoloGtold1/train/79870.png +../../data/yoloGtold1/train/79871.png +../../data/yoloGtold1/train/79872.png +../../data/yoloGtold1/train/79873.png +../../data/yoloGtold1/train/79874.png +../../data/yoloGtold1/train/79875.png +../../data/yoloGtold1/train/79876.png +../../data/yoloGtold1/train/79877.png +../../data/yoloGtold1/train/79878.png +../../data/yoloGtold1/train/79879.png +../../data/yoloGtold1/train/79880.png +../../data/yoloGtold1/train/79881.png +../../data/yoloGtold1/train/79882.png +../../data/yoloGtold1/train/79883.png +../../data/yoloGtold1/train/79884.png +../../data/yoloGtold1/train/79885.png +../../data/yoloGtold1/train/79886.png +../../data/yoloGtold1/train/79887.png +../../data/yoloGtold1/train/79888.png +../../data/yoloGtold1/train/79889.png +../../data/yoloGtold1/train/79890.png +../../data/yoloGtold1/train/79891.png +../../data/yoloGtold1/train/79892.png +../../data/yoloGtold1/train/79893.png +../../data/yoloGtold1/train/79894.png +../../data/yoloGtold1/train/79895.png +../../data/yoloGtold1/train/79896.png +../../data/yoloGtold1/train/79897.png +../../data/yoloGtold1/train/79898.png +../../data/yoloGtold1/train/79899.png +../../data/yoloGtold1/train/79900.png +../../data/yoloGtold1/train/79901.png +../../data/yoloGtold1/train/79902.png +../../data/yoloGtold1/train/79903.png +../../data/yoloGtold1/train/79904.png +../../data/yoloGtold1/train/79905.png +../../data/yoloGtold1/train/79906.png +../../data/yoloGtold1/train/79907.png +../../data/yoloGtold1/train/79908.png +../../data/yoloGtold1/train/79909.png +../../data/yoloGtold1/train/79910.png +../../data/yoloGtold1/train/79911.png +../../data/yoloGtold1/train/79912.png +../../data/yoloGtold1/train/79913.png +../../data/yoloGtold1/train/79914.png +../../data/yoloGtold1/train/79915.png +../../data/yoloGtold1/train/79916.png +../../data/yoloGtold1/train/79917.png +../../data/yoloGtold1/train/79918.png +../../data/yoloGtold1/train/79919.png +../../data/yoloGtold1/train/79920.png +../../data/yoloGtold1/train/79921.png +../../data/yoloGtold1/train/79922.png +../../data/yoloGtold1/train/79923.png +../../data/yoloGtold1/train/79924.png +../../data/yoloGtold1/train/79925.png +../../data/yoloGtold1/train/79926.png +../../data/yoloGtold1/train/79927.png +../../data/yoloGtold1/train/79928.png +../../data/yoloGtold1/train/79929.png +../../data/yoloGtold1/train/79930.png +../../data/yoloGtold1/train/79931.png +../../data/yoloGtold1/train/79932.png +../../data/yoloGtold1/train/79933.png +../../data/yoloGtold1/train/79934.png +../../data/yoloGtold1/train/79935.png +../../data/yoloGtold1/train/79936.png +../../data/yoloGtold1/train/79937.png +../../data/yoloGtold1/train/79938.png +../../data/yoloGtold1/train/79939.png +../../data/yoloGtold1/train/79940.png +../../data/yoloGtold1/train/79941.png +../../data/yoloGtold1/train/79942.png +../../data/yoloGtold1/train/79943.png +../../data/yoloGtold1/train/79944.png +../../data/yoloGtold1/train/79945.png +../../data/yoloGtold1/train/79946.png +../../data/yoloGtold1/train/79947.png +../../data/yoloGtold1/train/79948.png +../../data/yoloGtold1/train/79949.png +../../data/yoloGtold1/train/79950.png +../../data/yoloGtold1/train/79951.png +../../data/yoloGtold1/train/79952.png +../../data/yoloGtold1/train/79953.png +../../data/yoloGtold1/train/79954.png +../../data/yoloGtold1/train/79955.png +../../data/yoloGtold1/train/79956.png +../../data/yoloGtold1/train/79957.png +../../data/yoloGtold1/train/79958.png +../../data/yoloGtold1/train/79959.png +../../data/yoloGtold1/train/79960.png +../../data/yoloGtold1/train/79961.png +../../data/yoloGtold1/train/79962.png +../../data/yoloGtold1/train/79963.png +../../data/yoloGtold1/train/79964.png +../../data/yoloGtold1/train/79965.png +../../data/yoloGtold1/train/79966.png +../../data/yoloGtold1/train/79967.png +../../data/yoloGtold1/train/79968.png +../../data/yoloGtold1/train/79969.png +../../data/yoloGtold1/train/79970.png +../../data/yoloGtold1/train/79971.png +../../data/yoloGtold1/train/79972.png +../../data/yoloGtold1/train/79973.png +../../data/yoloGtold1/train/79974.png +../../data/yoloGtold1/train/79975.png +../../data/yoloGtold1/train/79976.png +../../data/yoloGtold1/train/79977.png +../../data/yoloGtold1/train/79978.png +../../data/yoloGtold1/train/79979.png +../../data/yoloGtold1/train/79980.png +../../data/yoloGtold1/train/79981.png +../../data/yoloGtold1/train/79982.png +../../data/yoloGtold1/train/79983.png +../../data/yoloGtold1/train/79984.png +../../data/yoloGtold1/train/79985.png +../../data/yoloGtold1/train/79986.png +../../data/yoloGtold1/train/79987.png +../../data/yoloGtold1/train/79988.png +../../data/yoloGtold1/train/79989.png +../../data/yoloGtold1/train/79990.png +../../data/yoloGtold1/train/79991.png +../../data/yoloGtold1/train/79992.png +../../data/yoloGtold1/train/79993.png +../../data/yoloGtold1/train/79994.png +../../data/yoloGtold1/train/79995.png +../../data/yoloGtold1/train/79996.png +../../data/yoloGtold1/train/79997.png +../../data/yoloGtold1/train/79998.png +../../data/yoloGtold1/train/79999.png +../../data/yoloGtold1/train/80000.png +../../data/yoloGtold1/train/80001.png +../../data/yoloGtold1/train/80002.png +../../data/yoloGtold1/train/80003.png +../../data/yoloGtold1/train/80004.png +../../data/yoloGtold1/train/80005.png +../../data/yoloGtold1/train/80006.png +../../data/yoloGtold1/train/80007.png +../../data/yoloGtold1/train/80008.png +../../data/yoloGtold1/train/80009.png +../../data/yoloGtold1/train/80010.png +../../data/yoloGtold1/train/80011.png +../../data/yoloGtold1/train/80012.png +../../data/yoloGtold1/train/80013.png +../../data/yoloGtold1/train/80014.png +../../data/yoloGtold1/train/80015.png +../../data/yoloGtold1/train/80016.png +../../data/yoloGtold1/train/80017.png +../../data/yoloGtold1/train/80018.png +../../data/yoloGtold1/train/80019.png +../../data/yoloGtold1/train/80020.png +../../data/yoloGtold1/train/80021.png +../../data/yoloGtold1/train/80022.png +../../data/yoloGtold1/train/80023.png +../../data/yoloGtold1/train/80024.png +../../data/yoloGtold1/train/80025.png +../../data/yoloGtold1/train/80026.png +../../data/yoloGtold1/train/80027.png +../../data/yoloGtold1/train/80028.png +../../data/yoloGtold1/train/80029.png +../../data/yoloGtold1/train/80030.png +../../data/yoloGtold1/train/80031.png +../../data/yoloGtold1/train/80032.png +../../data/yoloGtold1/train/80033.png +../../data/yoloGtold1/train/80034.png +../../data/yoloGtold1/train/80035.png +../../data/yoloGtold1/train/80036.png +../../data/yoloGtold1/train/80037.png +../../data/yoloGtold1/train/80038.png +../../data/yoloGtold1/train/80039.png +../../data/yoloGtold1/train/80040.png +../../data/yoloGtold1/train/80041.png +../../data/yoloGtold1/train/80042.png +../../data/yoloGtold1/train/80043.png +../../data/yoloGtold1/train/80044.png +../../data/yoloGtold1/train/80045.png +../../data/yoloGtold1/train/80046.png +../../data/yoloGtold1/train/80047.png +../../data/yoloGtold1/train/80048.png +../../data/yoloGtold1/train/80049.png +../../data/yoloGtold1/train/80050.png +../../data/yoloGtold1/train/80051.png +../../data/yoloGtold1/train/80052.png +../../data/yoloGtold1/train/80053.png +../../data/yoloGtold1/train/80054.png +../../data/yoloGtold1/train/80055.png +../../data/yoloGtold1/train/80056.png +../../data/yoloGtold1/train/80057.png +../../data/yoloGtold1/train/80058.png +../../data/yoloGtold1/train/80059.png +../../data/yoloGtold1/train/80060.png +../../data/yoloGtold1/train/80061.png +../../data/yoloGtold1/train/80062.png +../../data/yoloGtold1/train/80063.png +../../data/yoloGtold1/train/80064.png +../../data/yoloGtold1/train/80065.png +../../data/yoloGtold1/train/80066.png +../../data/yoloGtold1/train/80067.png +../../data/yoloGtold1/train/80068.png +../../data/yoloGtold1/train/80069.png +../../data/yoloGtold1/train/80070.png +../../data/yoloGtold1/train/80071.png +../../data/yoloGtold1/train/80072.png +../../data/yoloGtold1/train/80073.png +../../data/yoloGtold1/train/80074.png +../../data/yoloGtold1/train/80075.png +../../data/yoloGtold1/train/80076.png +../../data/yoloGtold1/train/80077.png +../../data/yoloGtold1/train/80078.png +../../data/yoloGtold1/train/80079.png +../../data/yoloGtold1/train/80080.png +../../data/yoloGtold1/train/80081.png +../../data/yoloGtold1/train/80082.png +../../data/yoloGtold1/train/80083.png +../../data/yoloGtold1/train/80084.png +../../data/yoloGtold1/train/80085.png +../../data/yoloGtold1/train/80086.png +../../data/yoloGtold1/train/80087.png +../../data/yoloGtold1/train/80088.png +../../data/yoloGtold1/train/80089.png +../../data/yoloGtold1/train/80090.png +../../data/yoloGtold1/train/80091.png +../../data/yoloGtold1/train/80092.png +../../data/yoloGtold1/train/80093.png +../../data/yoloGtold1/train/80094.png +../../data/yoloGtold1/train/80095.png +../../data/yoloGtold1/train/80096.png +../../data/yoloGtold1/train/80097.png +../../data/yoloGtold1/train/80098.png +../../data/yoloGtold1/train/80099.png +../../data/yoloGtold1/train/80100.png +../../data/yoloGtold1/train/80101.png +../../data/yoloGtold1/train/80102.png +../../data/yoloGtold1/train/80103.png +../../data/yoloGtold1/train/80104.png +../../data/yoloGtold1/train/80105.png +../../data/yoloGtold1/train/80106.png +../../data/yoloGtold1/train/80107.png +../../data/yoloGtold1/train/80108.png +../../data/yoloGtold1/train/80109.png +../../data/yoloGtold1/train/80110.png +../../data/yoloGtold1/train/80111.png +../../data/yoloGtold1/train/80112.png +../../data/yoloGtold1/train/80113.png +../../data/yoloGtold1/train/80114.png +../../data/yoloGtold1/train/80115.png +../../data/yoloGtold1/train/80116.png +../../data/yoloGtold1/train/80117.png +../../data/yoloGtold1/train/80118.png +../../data/yoloGtold1/train/80119.png +../../data/yoloGtold1/train/80120.png +../../data/yoloGtold1/train/80121.png +../../data/yoloGtold1/train/80122.png +../../data/yoloGtold1/train/80123.png +../../data/yoloGtold1/train/80124.png +../../data/yoloGtold1/train/80125.png +../../data/yoloGtold1/train/80126.png +../../data/yoloGtold1/train/80127.png +../../data/yoloGtold1/train/80128.png +../../data/yoloGtold1/train/80129.png +../../data/yoloGtold1/train/80130.png +../../data/yoloGtold1/train/80131.png +../../data/yoloGtold1/train/80132.png +../../data/yoloGtold1/train/80133.png +../../data/yoloGtold1/train/80134.png +../../data/yoloGtold1/train/80135.png +../../data/yoloGtold1/train/80136.png +../../data/yoloGtold1/train/80137.png +../../data/yoloGtold1/train/80138.png +../../data/yoloGtold1/train/80139.png +../../data/yoloGtold1/train/80140.png +../../data/yoloGtold1/train/80141.png +../../data/yoloGtold1/train/80142.png +../../data/yoloGtold1/train/80143.png +../../data/yoloGtold1/train/80144.png +../../data/yoloGtold1/train/80145.png +../../data/yoloGtold1/train/80146.png +../../data/yoloGtold1/train/80147.png +../../data/yoloGtold1/train/80148.png +../../data/yoloGtold1/train/80149.png +../../data/yoloGtold1/train/80150.png +../../data/yoloGtold1/train/80151.png +../../data/yoloGtold1/train/80152.png +../../data/yoloGtold1/train/80153.png +../../data/yoloGtold1/train/80154.png +../../data/yoloGtold1/train/80155.png +../../data/yoloGtold1/train/80156.png +../../data/yoloGtold1/train/80157.png +../../data/yoloGtold1/train/80158.png +../../data/yoloGtold1/train/80159.png +../../data/yoloGtold1/train/80160.png +../../data/yoloGtold1/train/80161.png +../../data/yoloGtold1/train/80162.png +../../data/yoloGtold1/train/80163.png +../../data/yoloGtold1/train/80164.png +../../data/yoloGtold1/train/80165.png +../../data/yoloGtold1/train/80166.png +../../data/yoloGtold1/train/80167.png +../../data/yoloGtold1/train/80168.png +../../data/yoloGtold1/train/80169.png +../../data/yoloGtold1/train/80170.png +../../data/yoloGtold1/train/80171.png +../../data/yoloGtold1/train/80172.png +../../data/yoloGtold1/train/80173.png +../../data/yoloGtold1/train/80174.png +../../data/yoloGtold1/train/80175.png +../../data/yoloGtold1/train/80176.png +../../data/yoloGtold1/train/80177.png +../../data/yoloGtold1/train/80178.png +../../data/yoloGtold1/train/80179.png +../../data/yoloGtold1/train/80180.png +../../data/yoloGtold1/train/80181.png +../../data/yoloGtold1/train/80182.png +../../data/yoloGtold1/train/80183.png +../../data/yoloGtold1/train/80184.png +../../data/yoloGtold1/train/80185.png +../../data/yoloGtold1/train/80186.png +../../data/yoloGtold1/train/80187.png +../../data/yoloGtold1/train/80188.png +../../data/yoloGtold1/train/80189.png +../../data/yoloGtold1/train/80190.png +../../data/yoloGtold1/train/80191.png +../../data/yoloGtold1/train/80192.png +../../data/yoloGtold1/train/80193.png +../../data/yoloGtold1/train/80194.png +../../data/yoloGtold1/train/80195.png +../../data/yoloGtold1/train/80196.png +../../data/yoloGtold1/train/80197.png +../../data/yoloGtold1/train/80198.png +../../data/yoloGtold1/train/80199.png +../../data/yoloGtold1/train/80200.png +../../data/yoloGtold1/train/80201.png +../../data/yoloGtold1/train/80202.png +../../data/yoloGtold1/train/80203.png +../../data/yoloGtold1/train/80204.png +../../data/yoloGtold1/train/80205.png +../../data/yoloGtold1/train/80206.png +../../data/yoloGtold1/train/80207.png +../../data/yoloGtold1/train/80208.png +../../data/yoloGtold1/train/80209.png +../../data/yoloGtold1/train/80210.png +../../data/yoloGtold1/train/80211.png +../../data/yoloGtold1/train/80212.png +../../data/yoloGtold1/train/80213.png +../../data/yoloGtold1/train/80214.png +../../data/yoloGtold1/train/80215.png +../../data/yoloGtold1/train/80216.png +../../data/yoloGtold1/train/80217.png +../../data/yoloGtold1/train/80218.png +../../data/yoloGtold1/train/80219.png +../../data/yoloGtold1/train/80220.png +../../data/yoloGtold1/train/80221.png +../../data/yoloGtold1/train/80222.png +../../data/yoloGtold1/train/80223.png +../../data/yoloGtold1/train/80224.png +../../data/yoloGtold1/train/80225.png +../../data/yoloGtold1/train/80226.png +../../data/yoloGtold1/train/80227.png +../../data/yoloGtold1/train/80228.png +../../data/yoloGtold1/train/80229.png +../../data/yoloGtold1/train/80230.png +../../data/yoloGtold1/train/80231.png +../../data/yoloGtold1/train/80232.png +../../data/yoloGtold1/train/80233.png +../../data/yoloGtold1/train/80234.png +../../data/yoloGtold1/train/80235.png +../../data/yoloGtold1/train/80236.png +../../data/yoloGtold1/train/80237.png +../../data/yoloGtold1/train/80238.png +../../data/yoloGtold1/train/80239.png +../../data/yoloGtold1/train/80240.png +../../data/yoloGtold1/train/80241.png +../../data/yoloGtold1/train/80242.png +../../data/yoloGtold1/train/80243.png +../../data/yoloGtold1/train/80244.png +../../data/yoloGtold1/train/80245.png +../../data/yoloGtold1/train/80246.png +../../data/yoloGtold1/train/80247.png +../../data/yoloGtold1/train/80248.png +../../data/yoloGtold1/train/80249.png +../../data/yoloGtold1/train/80250.png +../../data/yoloGtold1/train/80251.png +../../data/yoloGtold1/train/80252.png +../../data/yoloGtold1/train/80253.png +../../data/yoloGtold1/train/80254.png +../../data/yoloGtold1/train/80255.png +../../data/yoloGtold1/train/80256.png +../../data/yoloGtold1/train/80257.png +../../data/yoloGtold1/train/80258.png +../../data/yoloGtold1/train/80259.png +../../data/yoloGtold1/train/80260.png +../../data/yoloGtold1/train/80261.png +../../data/yoloGtold1/train/80262.png +../../data/yoloGtold1/train/80263.png +../../data/yoloGtold1/train/80264.png +../../data/yoloGtold1/train/80265.png +../../data/yoloGtold1/train/80266.png +../../data/yoloGtold1/train/80267.png +../../data/yoloGtold1/train/80268.png +../../data/yoloGtold1/train/80269.png +../../data/yoloGtold1/train/80270.png +../../data/yoloGtold1/train/80271.png +../../data/yoloGtold1/train/80272.png +../../data/yoloGtold1/train/80273.png +../../data/yoloGtold1/train/80274.png +../../data/yoloGtold1/train/80275.png +../../data/yoloGtold1/train/80276.png +../../data/yoloGtold1/train/80277.png +../../data/yoloGtold1/train/80278.png +../../data/yoloGtold1/train/80279.png +../../data/yoloGtold1/train/80280.png +../../data/yoloGtold1/train/80281.png +../../data/yoloGtold1/train/80282.png +../../data/yoloGtold1/train/80283.png +../../data/yoloGtold1/train/80284.png +../../data/yoloGtold1/train/80285.png +../../data/yoloGtold1/train/80286.png +../../data/yoloGtold1/train/80287.png +../../data/yoloGtold1/train/80288.png +../../data/yoloGtold1/train/80289.png +../../data/yoloGtold1/train/80290.png +../../data/yoloGtold1/train/80291.png +../../data/yoloGtold1/train/80292.png +../../data/yoloGtold1/train/80293.png +../../data/yoloGtold1/train/80294.png +../../data/yoloGtold1/train/80295.png +../../data/yoloGtold1/train/80296.png +../../data/yoloGtold1/train/80297.png +../../data/yoloGtold1/train/80298.png +../../data/yoloGtold1/train/80299.png +../../data/yoloGtold1/train/80300.png +../../data/yoloGtold1/train/80301.png +../../data/yoloGtold1/train/80302.png +../../data/yoloGtold1/train/80303.png +../../data/yoloGtold1/train/80304.png +../../data/yoloGtold1/train/80305.png +../../data/yoloGtold1/train/80306.png +../../data/yoloGtold1/train/80307.png +../../data/yoloGtold1/train/80308.png +../../data/yoloGtold1/train/80309.png +../../data/yoloGtold1/train/80310.png +../../data/yoloGtold1/train/80311.png +../../data/yoloGtold1/train/80312.png +../../data/yoloGtold1/train/80313.png +../../data/yoloGtold1/train/80314.png +../../data/yoloGtold1/train/80315.png +../../data/yoloGtold1/train/80316.png +../../data/yoloGtold1/train/80317.png +../../data/yoloGtold1/train/80318.png +../../data/yoloGtold1/train/80319.png +../../data/yoloGtold1/train/80320.png +../../data/yoloGtold1/train/80321.png +../../data/yoloGtold1/train/80322.png +../../data/yoloGtold1/train/80323.png +../../data/yoloGtold1/train/80324.png +../../data/yoloGtold1/train/80325.png +../../data/yoloGtold1/train/80326.png +../../data/yoloGtold1/train/80327.png +../../data/yoloGtold1/train/80328.png +../../data/yoloGtold1/train/80329.png +../../data/yoloGtold1/train/80330.png +../../data/yoloGtold1/train/80331.png +../../data/yoloGtold1/train/80332.png +../../data/yoloGtold1/train/80333.png +../../data/yoloGtold1/train/80334.png +../../data/yoloGtold1/train/80335.png +../../data/yoloGtold1/train/80336.png +../../data/yoloGtold1/train/80337.png +../../data/yoloGtold1/train/80338.png +../../data/yoloGtold1/train/80339.png +../../data/yoloGtold1/train/80340.png +../../data/yoloGtold1/train/80341.png +../../data/yoloGtold1/train/80342.png +../../data/yoloGtold1/train/80343.png +../../data/yoloGtold1/train/80344.png +../../data/yoloGtold1/train/80345.png +../../data/yoloGtold1/train/80346.png +../../data/yoloGtold1/train/80347.png +../../data/yoloGtold1/train/80348.png +../../data/yoloGtold1/train/80349.png +../../data/yoloGtold1/train/80350.png +../../data/yoloGtold1/train/80351.png +../../data/yoloGtold1/train/80352.png +../../data/yoloGtold1/train/80353.png +../../data/yoloGtold1/train/80354.png +../../data/yoloGtold1/train/80355.png +../../data/yoloGtold1/train/80356.png +../../data/yoloGtold1/train/80357.png +../../data/yoloGtold1/train/80358.png +../../data/yoloGtold1/train/80359.png +../../data/yoloGtold1/train/80360.png +../../data/yoloGtold1/train/80361.png +../../data/yoloGtold1/train/80362.png +../../data/yoloGtold1/train/80363.png +../../data/yoloGtold1/train/80364.png +../../data/yoloGtold1/train/80365.png +../../data/yoloGtold1/train/80366.png +../../data/yoloGtold1/train/80367.png +../../data/yoloGtold1/train/80368.png +../../data/yoloGtold1/train/80369.png +../../data/yoloGtold1/train/80370.png +../../data/yoloGtold1/train/80371.png +../../data/yoloGtold1/train/80372.png +../../data/yoloGtold1/train/80373.png +../../data/yoloGtold1/train/80374.png +../../data/yoloGtold1/train/80375.png +../../data/yoloGtold1/train/80376.png +../../data/yoloGtold1/train/80377.png +../../data/yoloGtold1/train/80378.png +../../data/yoloGtold1/train/80379.png +../../data/yoloGtold1/train/80380.png +../../data/yoloGtold1/train/80381.png +../../data/yoloGtold1/train/80382.png +../../data/yoloGtold1/train/80383.png +../../data/yoloGtold1/train/80384.png +../../data/yoloGtold1/train/80385.png +../../data/yoloGtold1/train/80386.png +../../data/yoloGtold1/train/80387.png +../../data/yoloGtold1/train/80388.png +../../data/yoloGtold1/train/80389.png +../../data/yoloGtold1/train/80390.png +../../data/yoloGtold1/train/80391.png +../../data/yoloGtold1/train/80392.png +../../data/yoloGtold1/train/80393.png +../../data/yoloGtold1/train/80394.png +../../data/yoloGtold1/train/80395.png +../../data/yoloGtold1/train/80396.png +../../data/yoloGtold1/train/80397.png +../../data/yoloGtold1/train/80398.png +../../data/yoloGtold1/train/80399.png +../../data/yoloGtold1/train/80400.png +../../data/yoloGtold1/train/80401.png +../../data/yoloGtold1/train/80402.png +../../data/yoloGtold1/train/80403.png +../../data/yoloGtold1/train/80404.png +../../data/yoloGtold1/train/80405.png +../../data/yoloGtold1/train/80406.png +../../data/yoloGtold1/train/80407.png +../../data/yoloGtold1/train/80408.png +../../data/yoloGtold1/train/80409.png +../../data/yoloGtold1/train/80410.png +../../data/yoloGtold1/train/80411.png +../../data/yoloGtold1/train/80412.png +../../data/yoloGtold1/train/80413.png +../../data/yoloGtold1/train/80414.png +../../data/yoloGtold1/train/80415.png +../../data/yoloGtold1/train/80416.png +../../data/yoloGtold1/train/80417.png +../../data/yoloGtold1/train/80418.png +../../data/yoloGtold1/train/80419.png +../../data/yoloGtold1/train/80420.png +../../data/yoloGtold1/train/80421.png +../../data/yoloGtold1/train/80422.png +../../data/yoloGtold1/train/80423.png +../../data/yoloGtold1/train/80424.png +../../data/yoloGtold1/train/80425.png +../../data/yoloGtold1/train/80426.png +../../data/yoloGtold1/train/80427.png +../../data/yoloGtold1/train/80428.png +../../data/yoloGtold1/train/80429.png +../../data/yoloGtold1/train/80430.png +../../data/yoloGtold1/train/80431.png +../../data/yoloGtold1/train/80432.png +../../data/yoloGtold1/train/80433.png +../../data/yoloGtold1/train/80434.png +../../data/yoloGtold1/train/80435.png +../../data/yoloGtold1/train/80436.png +../../data/yoloGtold1/train/80437.png +../../data/yoloGtold1/train/80438.png +../../data/yoloGtold1/train/80439.png +../../data/yoloGtold1/train/80440.png +../../data/yoloGtold1/train/80441.png +../../data/yoloGtold1/train/80442.png +../../data/yoloGtold1/train/80443.png +../../data/yoloGtold1/train/80444.png +../../data/yoloGtold1/train/80445.png +../../data/yoloGtold1/train/80446.png +../../data/yoloGtold1/train/80447.png +../../data/yoloGtold1/train/80448.png +../../data/yoloGtold1/train/80449.png +../../data/yoloGtold1/train/80450.png +../../data/yoloGtold1/train/80451.png +../../data/yoloGtold1/train/80452.png +../../data/yoloGtold1/train/80453.png +../../data/yoloGtold1/train/80454.png +../../data/yoloGtold1/train/80455.png +../../data/yoloGtold1/train/80456.png +../../data/yoloGtold1/train/80457.png +../../data/yoloGtold1/train/80458.png +../../data/yoloGtold1/train/80459.png +../../data/yoloGtold1/train/80460.png +../../data/yoloGtold1/train/80461.png +../../data/yoloGtold1/train/80462.png +../../data/yoloGtold1/train/80463.png +../../data/yoloGtold1/train/80464.png +../../data/yoloGtold1/train/80465.png +../../data/yoloGtold1/train/80466.png +../../data/yoloGtold1/train/80467.png +../../data/yoloGtold1/train/80468.png +../../data/yoloGtold1/train/80469.png +../../data/yoloGtold1/train/80470.png +../../data/yoloGtold1/train/80471.png +../../data/yoloGtold1/train/80472.png +../../data/yoloGtold1/train/80473.png +../../data/yoloGtold1/train/80474.png +../../data/yoloGtold1/train/80475.png +../../data/yoloGtold1/train/80476.png +../../data/yoloGtold1/train/80477.png +../../data/yoloGtold1/train/80478.png +../../data/yoloGtold1/train/80479.png +../../data/yoloGtold1/train/80480.png +../../data/yoloGtold1/train/80481.png +../../data/yoloGtold1/train/80482.png +../../data/yoloGtold1/train/80483.png +../../data/yoloGtold1/train/80484.png +../../data/yoloGtold1/train/80485.png +../../data/yoloGtold1/train/80486.png +../../data/yoloGtold1/train/80487.png +../../data/yoloGtold1/train/80488.png +../../data/yoloGtold1/train/80489.png +../../data/yoloGtold1/train/80490.png +../../data/yoloGtold1/train/80491.png +../../data/yoloGtold1/train/80492.png +../../data/yoloGtold1/train/80493.png +../../data/yoloGtold1/train/80494.png +../../data/yoloGtold1/train/80495.png +../../data/yoloGtold1/train/80496.png +../../data/yoloGtold1/train/80497.png +../../data/yoloGtold1/train/80498.png +../../data/yoloGtold1/train/80499.png +../../data/yoloGtold1/train/80500.png +../../data/yoloGtold1/train/80501.png +../../data/yoloGtold1/train/80502.png +../../data/yoloGtold1/train/80503.png +../../data/yoloGtold1/train/80504.png +../../data/yoloGtold1/train/80505.png +../../data/yoloGtold1/train/80506.png +../../data/yoloGtold1/train/80507.png +../../data/yoloGtold1/train/80508.png +../../data/yoloGtold1/train/80509.png +../../data/yoloGtold1/train/80510.png +../../data/yoloGtold1/train/80511.png +../../data/yoloGtold1/train/80512.png +../../data/yoloGtold1/train/80513.png +../../data/yoloGtold1/train/80514.png +../../data/yoloGtold1/train/80515.png +../../data/yoloGtold1/train/80516.png +../../data/yoloGtold1/train/80517.png +../../data/yoloGtold1/train/80518.png +../../data/yoloGtold1/train/80519.png +../../data/yoloGtold1/train/80520.png +../../data/yoloGtold1/train/80521.png +../../data/yoloGtold1/train/80522.png +../../data/yoloGtold1/train/80523.png +../../data/yoloGtold1/train/80524.png +../../data/yoloGtold1/train/80525.png +../../data/yoloGtold1/train/80526.png +../../data/yoloGtold1/train/80527.png +../../data/yoloGtold1/train/80528.png +../../data/yoloGtold1/train/80529.png +../../data/yoloGtold1/train/80530.png +../../data/yoloGtold1/train/80531.png +../../data/yoloGtold1/train/80532.png +../../data/yoloGtold1/train/80533.png +../../data/yoloGtold1/train/80534.png +../../data/yoloGtold1/train/80535.png +../../data/yoloGtold1/train/80536.png +../../data/yoloGtold1/train/80537.png +../../data/yoloGtold1/train/80538.png +../../data/yoloGtold1/train/80539.png +../../data/yoloGtold1/train/80540.png +../../data/yoloGtold1/train/80541.png +../../data/yoloGtold1/train/80542.png +../../data/yoloGtold1/train/80543.png +../../data/yoloGtold1/train/80544.png +../../data/yoloGtold1/train/80545.png +../../data/yoloGtold1/train/80546.png +../../data/yoloGtold1/train/80547.png +../../data/yoloGtold1/train/80548.png +../../data/yoloGtold1/train/80549.png +../../data/yoloGtold1/train/80550.png +../../data/yoloGtold1/train/80551.png +../../data/yoloGtold1/train/80552.png +../../data/yoloGtold1/train/80553.png +../../data/yoloGtold1/train/80554.png +../../data/yoloGtold1/train/80555.png +../../data/yoloGtold1/train/80556.png +../../data/yoloGtold1/train/80557.png +../../data/yoloGtold1/train/80558.png +../../data/yoloGtold1/train/80559.png +../../data/yoloGtold1/train/80560.png +../../data/yoloGtold1/train/80561.png +../../data/yoloGtold1/train/80562.png +../../data/yoloGtold1/train/80563.png +../../data/yoloGtold1/train/80564.png +../../data/yoloGtold1/train/80565.png +../../data/yoloGtold1/train/80566.png +../../data/yoloGtold1/train/80567.png +../../data/yoloGtold1/train/80568.png +../../data/yoloGtold1/train/80569.png +../../data/yoloGtold1/train/80570.png +../../data/yoloGtold1/train/80571.png +../../data/yoloGtold1/train/80572.png +../../data/yoloGtold1/train/80573.png +../../data/yoloGtold1/train/80574.png +../../data/yoloGtold1/train/80575.png +../../data/yoloGtold1/train/80576.png +../../data/yoloGtold1/train/80577.png +../../data/yoloGtold1/train/80578.png +../../data/yoloGtold1/train/80579.png +../../data/yoloGtold1/train/80580.png +../../data/yoloGtold1/train/80581.png +../../data/yoloGtold1/train/80582.png +../../data/yoloGtold1/train/80583.png +../../data/yoloGtold1/train/80584.png +../../data/yoloGtold1/train/80585.png +../../data/yoloGtold1/train/80586.png +../../data/yoloGtold1/train/80587.png +../../data/yoloGtold1/train/80588.png +../../data/yoloGtold1/train/80589.png +../../data/yoloGtold1/train/80590.png +../../data/yoloGtold1/train/80591.png +../../data/yoloGtold1/train/80592.png +../../data/yoloGtold1/train/80593.png +../../data/yoloGtold1/train/80594.png +../../data/yoloGtold1/train/80595.png +../../data/yoloGtold1/train/80596.png +../../data/yoloGtold1/train/80597.png +../../data/yoloGtold1/train/80598.png +../../data/yoloGtold1/train/80599.png +../../data/yoloGtold1/train/80600.png +../../data/yoloGtold1/train/80601.png +../../data/yoloGtold1/train/80602.png +../../data/yoloGtold1/train/80603.png +../../data/yoloGtold1/train/80604.png +../../data/yoloGtold1/train/80605.png +../../data/yoloGtold1/train/80606.png +../../data/yoloGtold1/train/80607.png +../../data/yoloGtold1/train/80608.png +../../data/yoloGtold1/train/80609.png +../../data/yoloGtold1/train/80610.png +../../data/yoloGtold1/train/80611.png +../../data/yoloGtold1/train/80612.png +../../data/yoloGtold1/train/80613.png +../../data/yoloGtold1/train/80614.png +../../data/yoloGtold1/train/80615.png +../../data/yoloGtold1/train/80616.png +../../data/yoloGtold1/train/80617.png +../../data/yoloGtold1/train/80618.png +../../data/yoloGtold1/train/80619.png +../../data/yoloGtold1/train/80620.png +../../data/yoloGtold1/train/80621.png +../../data/yoloGtold1/train/80622.png +../../data/yoloGtold1/train/80623.png +../../data/yoloGtold1/train/80624.png +../../data/yoloGtold1/train/80625.png +../../data/yoloGtold1/train/80626.png +../../data/yoloGtold1/train/80627.png +../../data/yoloGtold1/train/80628.png +../../data/yoloGtold1/train/80629.png +../../data/yoloGtold1/train/80630.png +../../data/yoloGtold1/train/80631.png +../../data/yoloGtold1/train/80632.png +../../data/yoloGtold1/train/80633.png +../../data/yoloGtold1/train/80634.png +../../data/yoloGtold1/train/80635.png +../../data/yoloGtold1/train/80636.png +../../data/yoloGtold1/train/80637.png +../../data/yoloGtold1/train/80638.png +../../data/yoloGtold1/train/80639.png +../../data/yoloGtold1/train/80640.png +../../data/yoloGtold1/train/80641.png +../../data/yoloGtold1/train/80642.png +../../data/yoloGtold1/train/80643.png +../../data/yoloGtold1/train/80644.png +../../data/yoloGtold1/train/80645.png +../../data/yoloGtold1/train/80646.png +../../data/yoloGtold1/train/80647.png +../../data/yoloGtold1/train/80648.png +../../data/yoloGtold1/train/80649.png +../../data/yoloGtold1/train/80650.png +../../data/yoloGtold1/train/80651.png +../../data/yoloGtold1/train/80652.png +../../data/yoloGtold1/train/80653.png +../../data/yoloGtold1/train/80654.png +../../data/yoloGtold1/train/80655.png +../../data/yoloGtold1/train/80656.png +../../data/yoloGtold1/train/80657.png +../../data/yoloGtold1/train/80658.png +../../data/yoloGtold1/train/80659.png +../../data/yoloGtold1/train/80660.png +../../data/yoloGtold1/train/80661.png +../../data/yoloGtold1/train/80662.png +../../data/yoloGtold1/train/80663.png +../../data/yoloGtold1/train/80664.png +../../data/yoloGtold1/train/80665.png +../../data/yoloGtold1/train/80666.png +../../data/yoloGtold1/train/80667.png +../../data/yoloGtold1/train/80668.png +../../data/yoloGtold1/train/80669.png +../../data/yoloGtold1/train/80670.png +../../data/yoloGtold1/train/80671.png +../../data/yoloGtold1/train/80672.png +../../data/yoloGtold1/train/80673.png +../../data/yoloGtold1/train/80674.png +../../data/yoloGtold1/train/80675.png +../../data/yoloGtold1/train/80676.png +../../data/yoloGtold1/train/80677.png +../../data/yoloGtold1/train/80678.png +../../data/yoloGtold1/train/80679.png +../../data/yoloGtold1/train/80680.png +../../data/yoloGtold1/train/80681.png +../../data/yoloGtold1/train/80682.png +../../data/yoloGtold1/train/80683.png +../../data/yoloGtold1/train/80684.png +../../data/yoloGtold1/train/80685.png +../../data/yoloGtold1/train/80686.png +../../data/yoloGtold1/train/80687.png +../../data/yoloGtold1/train/80688.png +../../data/yoloGtold1/train/80689.png +../../data/yoloGtold1/train/80690.png +../../data/yoloGtold1/train/80691.png +../../data/yoloGtold1/train/80692.png +../../data/yoloGtold1/train/80693.png +../../data/yoloGtold1/train/80694.png +../../data/yoloGtold1/train/80695.png +../../data/yoloGtold1/train/80696.png +../../data/yoloGtold1/train/80697.png +../../data/yoloGtold1/train/80698.png +../../data/yoloGtold1/train/80699.png +../../data/yoloGtold1/train/80700.png +../../data/yoloGtold1/train/80701.png +../../data/yoloGtold1/train/80702.png +../../data/yoloGtold1/train/80703.png +../../data/yoloGtold1/train/80704.png +../../data/yoloGtold1/train/80705.png +../../data/yoloGtold1/train/80706.png +../../data/yoloGtold1/train/80707.png +../../data/yoloGtold1/train/80708.png +../../data/yoloGtold1/train/80709.png +../../data/yoloGtold1/train/80710.png +../../data/yoloGtold1/train/80711.png +../../data/yoloGtold1/train/80712.png +../../data/yoloGtold1/train/80713.png +../../data/yoloGtold1/train/80714.png +../../data/yoloGtold1/train/80715.png +../../data/yoloGtold1/train/80716.png +../../data/yoloGtold1/train/80717.png +../../data/yoloGtold1/train/80718.png +../../data/yoloGtold1/train/80719.png +../../data/yoloGtold1/train/80720.png +../../data/yoloGtold1/train/80721.png +../../data/yoloGtold1/train/80722.png +../../data/yoloGtold1/train/80723.png +../../data/yoloGtold1/train/80724.png +../../data/yoloGtold1/train/80725.png +../../data/yoloGtold1/train/80726.png +../../data/yoloGtold1/train/80727.png +../../data/yoloGtold1/train/80728.png +../../data/yoloGtold1/train/80729.png +../../data/yoloGtold1/train/80730.png +../../data/yoloGtold1/train/80731.png +../../data/yoloGtold1/train/80732.png +../../data/yoloGtold1/train/80733.png +../../data/yoloGtold1/train/80734.png +../../data/yoloGtold1/train/80735.png +../../data/yoloGtold1/train/80736.png +../../data/yoloGtold1/train/80737.png +../../data/yoloGtold1/train/80738.png +../../data/yoloGtold1/train/80739.png +../../data/yoloGtold1/train/80740.png +../../data/yoloGtold1/train/80741.png +../../data/yoloGtold1/train/80742.png +../../data/yoloGtold1/train/80743.png +../../data/yoloGtold1/train/80744.png +../../data/yoloGtold1/train/80745.png +../../data/yoloGtold1/train/80746.png +../../data/yoloGtold1/train/80747.png +../../data/yoloGtold1/train/80748.png +../../data/yoloGtold1/train/80749.png +../../data/yoloGtold1/train/80750.png +../../data/yoloGtold1/train/80751.png +../../data/yoloGtold1/train/80752.png +../../data/yoloGtold1/train/80753.png +../../data/yoloGtold1/train/80754.png +../../data/yoloGtold1/train/80755.png +../../data/yoloGtold1/train/80756.png +../../data/yoloGtold1/train/80757.png +../../data/yoloGtold1/train/80758.png +../../data/yoloGtold1/train/80759.png +../../data/yoloGtold1/train/80760.png +../../data/yoloGtold1/train/80761.png +../../data/yoloGtold1/train/80762.png +../../data/yoloGtold1/train/80763.png +../../data/yoloGtold1/train/80764.png +../../data/yoloGtold1/train/80765.png +../../data/yoloGtold1/train/80766.png +../../data/yoloGtold1/train/80767.png +../../data/yoloGtold1/train/80768.png +../../data/yoloGtold1/train/80769.png +../../data/yoloGtold1/train/80770.png +../../data/yoloGtold1/train/80771.png +../../data/yoloGtold1/train/80772.png +../../data/yoloGtold1/train/80773.png +../../data/yoloGtold1/train/80774.png +../../data/yoloGtold1/train/80775.png +../../data/yoloGtold1/train/80776.png +../../data/yoloGtold1/train/80777.png +../../data/yoloGtold1/train/80778.png +../../data/yoloGtold1/train/80779.png +../../data/yoloGtold1/train/80780.png +../../data/yoloGtold1/train/80781.png +../../data/yoloGtold1/train/80782.png +../../data/yoloGtold1/train/80783.png +../../data/yoloGtold1/train/80784.png +../../data/yoloGtold1/train/80785.png +../../data/yoloGtold1/train/80786.png +../../data/yoloGtold1/train/80787.png +../../data/yoloGtold1/train/80788.png +../../data/yoloGtold1/train/80789.png +../../data/yoloGtold1/train/80790.png +../../data/yoloGtold1/train/80791.png +../../data/yoloGtold1/train/80792.png +../../data/yoloGtold1/train/80793.png +../../data/yoloGtold1/train/80794.png +../../data/yoloGtold1/train/80795.png +../../data/yoloGtold1/train/80796.png +../../data/yoloGtold1/train/80797.png +../../data/yoloGtold1/train/80798.png +../../data/yoloGtold1/train/80799.png +../../data/yoloGtold1/train/80800.png +../../data/yoloGtold1/train/80801.png +../../data/yoloGtold1/train/80802.png +../../data/yoloGtold1/train/80803.png +../../data/yoloGtold1/train/80804.png +../../data/yoloGtold1/train/80805.png +../../data/yoloGtold1/train/80806.png +../../data/yoloGtold1/train/80807.png +../../data/yoloGtold1/train/80808.png +../../data/yoloGtold1/train/80809.png +../../data/yoloGtold1/train/80810.png +../../data/yoloGtold1/train/80811.png +../../data/yoloGtold1/train/80812.png +../../data/yoloGtold1/train/80813.png +../../data/yoloGtold1/train/80814.png +../../data/yoloGtold1/train/80815.png +../../data/yoloGtold1/train/80816.png +../../data/yoloGtold1/train/80817.png +../../data/yoloGtold1/train/80818.png +../../data/yoloGtold1/train/80819.png +../../data/yoloGtold1/train/80820.png +../../data/yoloGtold1/train/80821.png +../../data/yoloGtold1/train/80822.png +../../data/yoloGtold1/train/80823.png +../../data/yoloGtold1/train/80824.png +../../data/yoloGtold1/train/80825.png +../../data/yoloGtold1/train/80826.png +../../data/yoloGtold1/train/80827.png +../../data/yoloGtold1/train/80828.png +../../data/yoloGtold1/train/80829.png +../../data/yoloGtold1/train/80830.png +../../data/yoloGtold1/train/80831.png +../../data/yoloGtold1/train/80832.png +../../data/yoloGtold1/train/80833.png +../../data/yoloGtold1/train/80834.png +../../data/yoloGtold1/train/80835.png +../../data/yoloGtold1/train/80836.png +../../data/yoloGtold1/train/80837.png +../../data/yoloGtold1/train/80838.png +../../data/yoloGtold1/train/80839.png +../../data/yoloGtold1/train/80840.png +../../data/yoloGtold1/train/80841.png +../../data/yoloGtold1/train/80842.png +../../data/yoloGtold1/train/80843.png +../../data/yoloGtold1/train/80844.png +../../data/yoloGtold1/train/80845.png +../../data/yoloGtold1/train/80846.png +../../data/yoloGtold1/train/80847.png +../../data/yoloGtold1/train/80848.png +../../data/yoloGtold1/train/80849.png +../../data/yoloGtold1/train/80850.png +../../data/yoloGtold1/train/80851.png +../../data/yoloGtold1/train/80852.png +../../data/yoloGtold1/train/80853.png +../../data/yoloGtold1/train/80854.png +../../data/yoloGtold1/train/80855.png +../../data/yoloGtold1/train/80856.png +../../data/yoloGtold1/train/80857.png +../../data/yoloGtold1/train/80858.png +../../data/yoloGtold1/train/80859.png +../../data/yoloGtold1/train/80860.png +../../data/yoloGtold1/train/80861.png +../../data/yoloGtold1/train/80862.png +../../data/yoloGtold1/train/80863.png +../../data/yoloGtold1/train/80864.png +../../data/yoloGtold1/train/80865.png +../../data/yoloGtold1/train/80866.png +../../data/yoloGtold1/train/80867.png +../../data/yoloGtold1/train/80868.png +../../data/yoloGtold1/train/80869.png +../../data/yoloGtold1/train/80870.png +../../data/yoloGtold1/train/80871.png +../../data/yoloGtold1/train/80872.png +../../data/yoloGtold1/train/80873.png +../../data/yoloGtold1/train/80874.png +../../data/yoloGtold1/train/80875.png +../../data/yoloGtold1/train/80876.png +../../data/yoloGtold1/train/80877.png +../../data/yoloGtold1/train/80878.png +../../data/yoloGtold1/train/80879.png +../../data/yoloGtold1/train/80880.png +../../data/yoloGtold1/train/80881.png +../../data/yoloGtold1/train/80882.png +../../data/yoloGtold1/train/80883.png +../../data/yoloGtold1/train/80884.png +../../data/yoloGtold1/train/80885.png +../../data/yoloGtold1/train/80886.png +../../data/yoloGtold1/train/80887.png +../../data/yoloGtold1/train/80888.png +../../data/yoloGtold1/train/80889.png +../../data/yoloGtold1/train/80890.png +../../data/yoloGtold1/train/80891.png +../../data/yoloGtold1/train/80892.png +../../data/yoloGtold1/train/80893.png +../../data/yoloGtold1/train/80894.png +../../data/yoloGtold1/train/80895.png +../../data/yoloGtold1/train/80896.png +../../data/yoloGtold1/train/80897.png +../../data/yoloGtold1/train/80898.png +../../data/yoloGtold1/train/80899.png +../../data/yoloGtold1/train/80900.png +../../data/yoloGtold1/train/80901.png +../../data/yoloGtold1/train/80902.png +../../data/yoloGtold1/train/80903.png +../../data/yoloGtold1/train/80904.png +../../data/yoloGtold1/train/80905.png +../../data/yoloGtold1/train/80906.png +../../data/yoloGtold1/train/80907.png +../../data/yoloGtold1/train/80908.png +../../data/yoloGtold1/train/80909.png +../../data/yoloGtold1/train/80910.png +../../data/yoloGtold1/train/80911.png +../../data/yoloGtold1/train/80912.png +../../data/yoloGtold1/train/80913.png +../../data/yoloGtold1/train/80914.png +../../data/yoloGtold1/train/80915.png +../../data/yoloGtold1/train/80916.png +../../data/yoloGtold1/train/80917.png +../../data/yoloGtold1/train/80918.png +../../data/yoloGtold1/train/80919.png +../../data/yoloGtold1/train/80920.png +../../data/yoloGtold1/train/80921.png +../../data/yoloGtold1/train/80922.png +../../data/yoloGtold1/train/80923.png +../../data/yoloGtold1/train/80924.png +../../data/yoloGtold1/train/80925.png +../../data/yoloGtold1/train/80926.png +../../data/yoloGtold1/train/80927.png +../../data/yoloGtold1/train/80928.png +../../data/yoloGtold1/train/80929.png +../../data/yoloGtold1/train/80930.png +../../data/yoloGtold1/train/80931.png +../../data/yoloGtold1/train/80932.png +../../data/yoloGtold1/train/80933.png +../../data/yoloGtold1/train/80934.png +../../data/yoloGtold1/train/80935.png +../../data/yoloGtold1/train/80936.png +../../data/yoloGtold1/train/80937.png +../../data/yoloGtold1/train/80938.png +../../data/yoloGtold1/train/80939.png +../../data/yoloGtold1/train/80940.png +../../data/yoloGtold1/train/80941.png +../../data/yoloGtold1/train/80942.png +../../data/yoloGtold1/train/80943.png +../../data/yoloGtold1/train/80944.png +../../data/yoloGtold1/train/80945.png +../../data/yoloGtold1/train/80946.png +../../data/yoloGtold1/train/80947.png +../../data/yoloGtold1/train/80948.png +../../data/yoloGtold1/train/80949.png +../../data/yoloGtold1/train/80950.png +../../data/yoloGtold1/train/80951.png +../../data/yoloGtold1/train/80952.png +../../data/yoloGtold1/train/80953.png +../../data/yoloGtold1/train/80954.png +../../data/yoloGtold1/train/80955.png +../../data/yoloGtold1/train/80956.png +../../data/yoloGtold1/train/80957.png +../../data/yoloGtold1/train/80958.png +../../data/yoloGtold1/train/80959.png +../../data/yoloGtold1/train/80960.png +../../data/yoloGtold1/train/80961.png +../../data/yoloGtold1/train/80962.png +../../data/yoloGtold1/train/80963.png +../../data/yoloGtold1/train/80964.png +../../data/yoloGtold1/train/80965.png +../../data/yoloGtold1/train/80966.png +../../data/yoloGtold1/train/80967.png +../../data/yoloGtold1/train/80968.png +../../data/yoloGtold1/train/80969.png +../../data/yoloGtold1/train/80970.png +../../data/yoloGtold1/train/80971.png +../../data/yoloGtold1/train/80972.png +../../data/yoloGtold1/train/80973.png +../../data/yoloGtold1/train/80974.png +../../data/yoloGtold1/train/80975.png +../../data/yoloGtold1/train/80976.png +../../data/yoloGtold1/train/80977.png +../../data/yoloGtold1/train/80978.png +../../data/yoloGtold1/train/80979.png +../../data/yoloGtold1/train/80980.png +../../data/yoloGtold1/train/80981.png +../../data/yoloGtold1/train/80982.png +../../data/yoloGtold1/train/80983.png +../../data/yoloGtold1/train/80984.png +../../data/yoloGtold1/train/80985.png +../../data/yoloGtold1/train/80986.png +../../data/yoloGtold1/train/80987.png +../../data/yoloGtold1/train/80988.png +../../data/yoloGtold1/train/80989.png +../../data/yoloGtold1/train/80990.png +../../data/yoloGtold1/train/80991.png +../../data/yoloGtold1/train/80992.png +../../data/yoloGtold1/train/80993.png +../../data/yoloGtold1/train/80994.png +../../data/yoloGtold1/train/80995.png +../../data/yoloGtold1/train/80996.png +../../data/yoloGtold1/train/80997.png +../../data/yoloGtold1/train/80998.png +../../data/yoloGtold1/train/80999.png +../../data/yoloGtold1/train/81000.png +../../data/yoloGtold1/train/81001.png +../../data/yoloGtold1/train/81002.png +../../data/yoloGtold1/train/81003.png +../../data/yoloGtold1/train/81004.png +../../data/yoloGtold1/train/81005.png +../../data/yoloGtold1/train/81006.png +../../data/yoloGtold1/train/81007.png +../../data/yoloGtold1/train/81008.png +../../data/yoloGtold1/train/81009.png +../../data/yoloGtold1/train/81010.png +../../data/yoloGtold1/train/81011.png +../../data/yoloGtold1/train/81012.png +../../data/yoloGtold1/train/81013.png +../../data/yoloGtold1/train/81014.png +../../data/yoloGtold1/train/81015.png +../../data/yoloGtold1/train/81016.png +../../data/yoloGtold1/train/81017.png +../../data/yoloGtold1/train/81018.png +../../data/yoloGtold1/train/81019.png +../../data/yoloGtold1/train/81020.png +../../data/yoloGtold1/train/81021.png +../../data/yoloGtold1/train/81022.png +../../data/yoloGtold1/train/81023.png +../../data/yoloGtold1/train/81024.png +../../data/yoloGtold1/train/81025.png +../../data/yoloGtold1/train/81026.png +../../data/yoloGtold1/train/81027.png +../../data/yoloGtold1/train/81028.png +../../data/yoloGtold1/train/81029.png +../../data/yoloGtold1/train/81030.png +../../data/yoloGtold1/train/81031.png +../../data/yoloGtold1/train/81032.png +../../data/yoloGtold1/train/81033.png +../../data/yoloGtold1/train/81034.png +../../data/yoloGtold1/train/81035.png +../../data/yoloGtold1/train/81036.png +../../data/yoloGtold1/train/81037.png +../../data/yoloGtold1/train/81038.png +../../data/yoloGtold1/train/81039.png +../../data/yoloGtold1/train/81040.png +../../data/yoloGtold1/train/81041.png +../../data/yoloGtold1/train/81042.png +../../data/yoloGtold1/train/81043.png +../../data/yoloGtold1/train/81044.png +../../data/yoloGtold1/train/81045.png +../../data/yoloGtold1/train/81046.png +../../data/yoloGtold1/train/81047.png +../../data/yoloGtold1/train/81048.png +../../data/yoloGtold1/train/81049.png +../../data/yoloGtold1/train/81050.png +../../data/yoloGtold1/train/81051.png +../../data/yoloGtold1/train/81052.png +../../data/yoloGtold1/train/81053.png +../../data/yoloGtold1/train/81054.png +../../data/yoloGtold1/train/81055.png +../../data/yoloGtold1/train/81056.png +../../data/yoloGtold1/train/81057.png +../../data/yoloGtold1/train/81058.png +../../data/yoloGtold1/train/81059.png +../../data/yoloGtold1/train/81060.png +../../data/yoloGtold1/train/81061.png +../../data/yoloGtold1/train/81062.png +../../data/yoloGtold1/train/81063.png +../../data/yoloGtold1/train/81064.png +../../data/yoloGtold1/train/81065.png +../../data/yoloGtold1/train/81066.png +../../data/yoloGtold1/train/81067.png +../../data/yoloGtold1/train/81068.png +../../data/yoloGtold1/train/81069.png +../../data/yoloGtold1/train/81070.png +../../data/yoloGtold1/train/81071.png +../../data/yoloGtold1/train/81072.png +../../data/yoloGtold1/train/81073.png +../../data/yoloGtold1/train/81074.png +../../data/yoloGtold1/train/81075.png +../../data/yoloGtold1/train/81076.png +../../data/yoloGtold1/train/81077.png +../../data/yoloGtold1/train/81078.png +../../data/yoloGtold1/train/81079.png +../../data/yoloGtold1/train/81080.png +../../data/yoloGtold1/train/81081.png +../../data/yoloGtold1/train/81082.png +../../data/yoloGtold1/train/81083.png +../../data/yoloGtold1/train/81084.png +../../data/yoloGtold1/train/81085.png +../../data/yoloGtold1/train/81086.png +../../data/yoloGtold1/train/81087.png +../../data/yoloGtold1/train/81088.png +../../data/yoloGtold1/train/81089.png +../../data/yoloGtold1/train/81090.png +../../data/yoloGtold1/train/81091.png +../../data/yoloGtold1/train/81092.png +../../data/yoloGtold1/train/81093.png +../../data/yoloGtold1/train/81094.png +../../data/yoloGtold1/train/81095.png +../../data/yoloGtold1/train/81096.png +../../data/yoloGtold1/train/81097.png +../../data/yoloGtold1/train/81098.png +../../data/yoloGtold1/train/81099.png +../../data/yoloGtold1/train/81100.png +../../data/yoloGtold1/train/81101.png +../../data/yoloGtold1/train/81102.png +../../data/yoloGtold1/train/81103.png +../../data/yoloGtold1/train/81104.png +../../data/yoloGtold1/train/81105.png +../../data/yoloGtold1/train/81106.png +../../data/yoloGtold1/train/81107.png +../../data/yoloGtold1/train/81108.png +../../data/yoloGtold1/train/81109.png +../../data/yoloGtold1/train/81110.png +../../data/yoloGtold1/train/81111.png +../../data/yoloGtold1/train/81112.png +../../data/yoloGtold1/train/81113.png +../../data/yoloGtold1/train/81114.png +../../data/yoloGtold1/train/81115.png +../../data/yoloGtold1/train/81116.png +../../data/yoloGtold1/train/81117.png +../../data/yoloGtold1/train/81118.png +../../data/yoloGtold1/train/81119.png +../../data/yoloGtold1/train/81120.png +../../data/yoloGtold1/train/81121.png +../../data/yoloGtold1/train/81122.png +../../data/yoloGtold1/train/81123.png +../../data/yoloGtold1/train/81124.png +../../data/yoloGtold1/train/81125.png +../../data/yoloGtold1/train/81126.png +../../data/yoloGtold1/train/81127.png +../../data/yoloGtold1/train/81128.png +../../data/yoloGtold1/train/81129.png +../../data/yoloGtold1/train/81130.png +../../data/yoloGtold1/train/81131.png +../../data/yoloGtold1/train/81132.png +../../data/yoloGtold1/train/81133.png +../../data/yoloGtold1/train/81134.png +../../data/yoloGtold1/train/81135.png +../../data/yoloGtold1/train/81136.png +../../data/yoloGtold1/train/81137.png +../../data/yoloGtold1/train/81138.png +../../data/yoloGtold1/train/81139.png +../../data/yoloGtold1/train/81140.png +../../data/yoloGtold1/train/81141.png +../../data/yoloGtold1/train/81142.png +../../data/yoloGtold1/train/81143.png +../../data/yoloGtold1/train/81144.png +../../data/yoloGtold1/train/81145.png +../../data/yoloGtold1/train/81146.png +../../data/yoloGtold1/train/81147.png +../../data/yoloGtold1/train/81148.png +../../data/yoloGtold1/train/81149.png +../../data/yoloGtold1/train/81150.png +../../data/yoloGtold1/train/81151.png +../../data/yoloGtold1/train/81152.png +../../data/yoloGtold1/train/81153.png +../../data/yoloGtold1/train/81154.png +../../data/yoloGtold1/train/81155.png +../../data/yoloGtold1/train/81156.png +../../data/yoloGtold1/train/81157.png +../../data/yoloGtold1/train/81158.png +../../data/yoloGtold1/train/81159.png +../../data/yoloGtold1/train/81160.png +../../data/yoloGtold1/train/81161.png +../../data/yoloGtold1/train/81162.png +../../data/yoloGtold1/train/81163.png +../../data/yoloGtold1/train/81164.png +../../data/yoloGtold1/train/81165.png +../../data/yoloGtold1/train/81166.png +../../data/yoloGtold1/train/81167.png +../../data/yoloGtold1/train/81168.png +../../data/yoloGtold1/train/81169.png +../../data/yoloGtold1/train/81170.png +../../data/yoloGtold1/train/81171.png +../../data/yoloGtold1/train/81172.png +../../data/yoloGtold1/train/81173.png +../../data/yoloGtold1/train/81174.png +../../data/yoloGtold1/train/81175.png +../../data/yoloGtold1/train/81176.png +../../data/yoloGtold1/train/81177.png +../../data/yoloGtold1/train/81178.png +../../data/yoloGtold1/train/81179.png +../../data/yoloGtold1/train/81180.png +../../data/yoloGtold1/train/81181.png +../../data/yoloGtold1/train/81182.png +../../data/yoloGtold1/train/81183.png +../../data/yoloGtold1/train/81184.png +../../data/yoloGtold1/train/81185.png +../../data/yoloGtold1/train/81186.png +../../data/yoloGtold1/train/81187.png +../../data/yoloGtold1/train/81188.png +../../data/yoloGtold1/train/81189.png +../../data/yoloGtold1/train/81190.png +../../data/yoloGtold1/train/81191.png +../../data/yoloGtold1/train/81192.png +../../data/yoloGtold1/train/81193.png +../../data/yoloGtold1/train/81194.png +../../data/yoloGtold1/train/81195.png +../../data/yoloGtold1/train/81196.png +../../data/yoloGtold1/train/81197.png +../../data/yoloGtold1/train/81198.png +../../data/yoloGtold1/train/81199.png +../../data/yoloGtold1/train/81200.png +../../data/yoloGtold1/train/81201.png +../../data/yoloGtold1/train/81202.png +../../data/yoloGtold1/train/81203.png +../../data/yoloGtold1/train/81204.png +../../data/yoloGtold1/train/81205.png +../../data/yoloGtold1/train/81206.png +../../data/yoloGtold1/train/81207.png +../../data/yoloGtold1/train/81208.png +../../data/yoloGtold1/train/81209.png +../../data/yoloGtold1/train/81210.png +../../data/yoloGtold1/train/81211.png +../../data/yoloGtold1/train/81212.png +../../data/yoloGtold1/train/81213.png +../../data/yoloGtold1/train/81214.png +../../data/yoloGtold1/train/81215.png +../../data/yoloGtold1/train/81216.png +../../data/yoloGtold1/train/81217.png +../../data/yoloGtold1/train/81218.png +../../data/yoloGtold1/train/81219.png +../../data/yoloGtold1/train/81220.png +../../data/yoloGtold1/train/81221.png +../../data/yoloGtold1/train/81222.png +../../data/yoloGtold1/train/81223.png +../../data/yoloGtold1/train/81224.png +../../data/yoloGtold1/train/81225.png +../../data/yoloGtold1/train/81226.png +../../data/yoloGtold1/train/81227.png +../../data/yoloGtold1/train/81228.png +../../data/yoloGtold1/train/81229.png +../../data/yoloGtold1/train/81230.png +../../data/yoloGtold1/train/81231.png +../../data/yoloGtold1/train/81232.png +../../data/yoloGtold1/train/81233.png +../../data/yoloGtold1/train/81234.png +../../data/yoloGtold1/train/81235.png +../../data/yoloGtold1/train/81236.png +../../data/yoloGtold1/train/81237.png +../../data/yoloGtold1/train/81238.png +../../data/yoloGtold1/train/81239.png +../../data/yoloGtold1/train/81240.png +../../data/yoloGtold1/train/81241.png +../../data/yoloGtold1/train/81242.png +../../data/yoloGtold1/train/81243.png +../../data/yoloGtold1/train/81244.png +../../data/yoloGtold1/train/81245.png +../../data/yoloGtold1/train/81246.png +../../data/yoloGtold1/train/81247.png +../../data/yoloGtold1/train/81248.png +../../data/yoloGtold1/train/81249.png +../../data/yoloGtold1/train/81250.png +../../data/yoloGtold1/train/81251.png +../../data/yoloGtold1/train/81252.png +../../data/yoloGtold1/train/81253.png +../../data/yoloGtold1/train/81254.png +../../data/yoloGtold1/train/81255.png +../../data/yoloGtold1/train/81256.png +../../data/yoloGtold1/train/81257.png +../../data/yoloGtold1/train/81258.png +../../data/yoloGtold1/train/81259.png +../../data/yoloGtold1/train/81260.png +../../data/yoloGtold1/train/81261.png +../../data/yoloGtold1/train/81262.png +../../data/yoloGtold1/train/81263.png +../../data/yoloGtold1/train/81264.png +../../data/yoloGtold1/train/81265.png +../../data/yoloGtold1/train/81266.png +../../data/yoloGtold1/train/81267.png +../../data/yoloGtold1/train/81268.png +../../data/yoloGtold1/train/81269.png +../../data/yoloGtold1/train/81270.png +../../data/yoloGtold1/train/81271.png +../../data/yoloGtold1/train/81272.png +../../data/yoloGtold1/train/81273.png +../../data/yoloGtold1/train/81274.png +../../data/yoloGtold1/train/81275.png +../../data/yoloGtold1/train/81276.png +../../data/yoloGtold1/train/81277.png +../../data/yoloGtold1/train/81278.png +../../data/yoloGtold1/train/81279.png +../../data/yoloGtold1/train/81280.png +../../data/yoloGtold1/train/81281.png +../../data/yoloGtold1/train/81282.png +../../data/yoloGtold1/train/81283.png +../../data/yoloGtold1/train/81284.png +../../data/yoloGtold1/train/81285.png +../../data/yoloGtold1/train/81286.png +../../data/yoloGtold1/train/81287.png +../../data/yoloGtold1/train/81288.png +../../data/yoloGtold1/train/81289.png +../../data/yoloGtold1/train/81290.png +../../data/yoloGtold1/train/81291.png +../../data/yoloGtold1/train/81292.png +../../data/yoloGtold1/train/81293.png +../../data/yoloGtold1/train/81294.png +../../data/yoloGtold1/train/81295.png +../../data/yoloGtold1/train/81296.png +../../data/yoloGtold1/train/81297.png +../../data/yoloGtold1/train/81298.png +../../data/yoloGtold1/train/81299.png +../../data/yoloGtold1/train/81300.png +../../data/yoloGtold1/train/81301.png +../../data/yoloGtold1/train/81302.png +../../data/yoloGtold1/train/81303.png +../../data/yoloGtold1/train/81304.png +../../data/yoloGtold1/train/81305.png +../../data/yoloGtold1/train/81306.png +../../data/yoloGtold1/train/81307.png +../../data/yoloGtold1/train/81308.png +../../data/yoloGtold1/train/81309.png +../../data/yoloGtold1/train/81310.png +../../data/yoloGtold1/train/81311.png +../../data/yoloGtold1/train/81312.png +../../data/yoloGtold1/train/81313.png +../../data/yoloGtold1/train/81314.png +../../data/yoloGtold1/train/81315.png +../../data/yoloGtold1/train/81316.png +../../data/yoloGtold1/train/81317.png +../../data/yoloGtold1/train/81318.png +../../data/yoloGtold1/train/81319.png +../../data/yoloGtold1/train/81320.png +../../data/yoloGtold1/train/81321.png +../../data/yoloGtold1/train/81322.png +../../data/yoloGtold1/train/81323.png +../../data/yoloGtold1/train/81324.png +../../data/yoloGtold1/train/81325.png +../../data/yoloGtold1/train/81326.png +../../data/yoloGtold1/train/81327.png +../../data/yoloGtold1/train/81328.png +../../data/yoloGtold1/train/81329.png +../../data/yoloGtold1/train/81330.png +../../data/yoloGtold1/train/81331.png +../../data/yoloGtold1/train/81332.png +../../data/yoloGtold1/train/81333.png +../../data/yoloGtold1/train/81334.png +../../data/yoloGtold1/train/81335.png +../../data/yoloGtold1/train/81336.png +../../data/yoloGtold1/train/81337.png +../../data/yoloGtold1/train/81338.png +../../data/yoloGtold1/train/81339.png +../../data/yoloGtold1/train/81340.png +../../data/yoloGtold1/train/81341.png +../../data/yoloGtold1/train/81342.png +../../data/yoloGtold1/train/81343.png +../../data/yoloGtold1/train/81344.png +../../data/yoloGtold1/train/81345.png +../../data/yoloGtold1/train/81346.png +../../data/yoloGtold1/train/81347.png +../../data/yoloGtold1/train/81348.png +../../data/yoloGtold1/train/81349.png +../../data/yoloGtold1/train/81350.png +../../data/yoloGtold1/train/81351.png +../../data/yoloGtold1/train/81352.png +../../data/yoloGtold1/train/81353.png +../../data/yoloGtold1/train/81354.png +../../data/yoloGtold1/train/81355.png +../../data/yoloGtold1/train/81356.png +../../data/yoloGtold1/train/81357.png +../../data/yoloGtold1/train/81358.png +../../data/yoloGtold1/train/81359.png +../../data/yoloGtold1/train/81360.png +../../data/yoloGtold1/train/81361.png +../../data/yoloGtold1/train/81362.png +../../data/yoloGtold1/train/81363.png +../../data/yoloGtold1/train/81364.png +../../data/yoloGtold1/train/81365.png +../../data/yoloGtold1/train/81366.png +../../data/yoloGtold1/train/81367.png +../../data/yoloGtold1/train/81368.png +../../data/yoloGtold1/train/81369.png +../../data/yoloGtold1/train/81370.png +../../data/yoloGtold1/train/81371.png +../../data/yoloGtold1/train/81372.png +../../data/yoloGtold1/train/81373.png +../../data/yoloGtold1/train/81374.png +../../data/yoloGtold1/train/81375.png +../../data/yoloGtold1/train/81376.png +../../data/yoloGtold1/train/81377.png +../../data/yoloGtold1/train/81378.png +../../data/yoloGtold1/train/81379.png +../../data/yoloGtold1/train/81380.png +../../data/yoloGtold1/train/81381.png +../../data/yoloGtold1/train/81382.png +../../data/yoloGtold1/train/81383.png +../../data/yoloGtold1/train/81384.png +../../data/yoloGtold1/train/81385.png +../../data/yoloGtold1/train/81386.png +../../data/yoloGtold1/train/81387.png +../../data/yoloGtold1/train/81388.png +../../data/yoloGtold1/train/81389.png +../../data/yoloGtold1/train/81390.png +../../data/yoloGtold1/train/81391.png +../../data/yoloGtold1/train/81392.png +../../data/yoloGtold1/train/81393.png +../../data/yoloGtold1/train/81394.png +../../data/yoloGtold1/train/81395.png +../../data/yoloGtold1/train/81396.png +../../data/yoloGtold1/train/81397.png +../../data/yoloGtold1/train/81398.png +../../data/yoloGtold1/train/81399.png +../../data/yoloGtold1/train/81400.png +../../data/yoloGtold1/train/81401.png +../../data/yoloGtold1/train/81402.png +../../data/yoloGtold1/train/81403.png +../../data/yoloGtold1/train/81404.png +../../data/yoloGtold1/train/81405.png +../../data/yoloGtold1/train/81406.png +../../data/yoloGtold1/train/81407.png +../../data/yoloGtold1/train/81408.png +../../data/yoloGtold1/train/81409.png +../../data/yoloGtold1/train/81410.png +../../data/yoloGtold1/train/81411.png +../../data/yoloGtold1/train/81412.png +../../data/yoloGtold1/train/81413.png +../../data/yoloGtold1/train/81414.png +../../data/yoloGtold1/train/81415.png +../../data/yoloGtold1/train/81416.png +../../data/yoloGtold1/train/81417.png +../../data/yoloGtold1/train/81418.png +../../data/yoloGtold1/train/81419.png +../../data/yoloGtold1/train/81420.png +../../data/yoloGtold1/train/81421.png +../../data/yoloGtold1/train/81422.png +../../data/yoloGtold1/train/81423.png +../../data/yoloGtold1/train/81424.png +../../data/yoloGtold1/train/81425.png +../../data/yoloGtold1/train/81426.png +../../data/yoloGtold1/train/81427.png +../../data/yoloGtold1/train/81428.png +../../data/yoloGtold1/train/81429.png +../../data/yoloGtold1/train/81430.png +../../data/yoloGtold1/train/81431.png +../../data/yoloGtold1/train/81432.png +../../data/yoloGtold1/train/81433.png +../../data/yoloGtold1/train/81434.png +../../data/yoloGtold1/train/81435.png +../../data/yoloGtold1/train/81436.png +../../data/yoloGtold1/train/81437.png +../../data/yoloGtold1/train/81438.png +../../data/yoloGtold1/train/81439.png +../../data/yoloGtold1/train/81440.png +../../data/yoloGtold1/train/81441.png +../../data/yoloGtold1/train/81442.png +../../data/yoloGtold1/train/81443.png +../../data/yoloGtold1/train/81444.png +../../data/yoloGtold1/train/81445.png +../../data/yoloGtold1/train/81446.png +../../data/yoloGtold1/train/81447.png +../../data/yoloGtold1/train/81448.png +../../data/yoloGtold1/train/81449.png +../../data/yoloGtold1/train/81450.png +../../data/yoloGtold1/train/81451.png +../../data/yoloGtold1/train/81452.png +../../data/yoloGtold1/train/81453.png +../../data/yoloGtold1/train/81454.png +../../data/yoloGtold1/train/81455.png +../../data/yoloGtold1/train/81456.png +../../data/yoloGtold1/train/81457.png +../../data/yoloGtold1/train/81458.png +../../data/yoloGtold1/train/81459.png +../../data/yoloGtold1/train/81460.png +../../data/yoloGtold1/train/81461.png +../../data/yoloGtold1/train/81462.png +../../data/yoloGtold1/train/81463.png +../../data/yoloGtold1/train/81464.png +../../data/yoloGtold1/train/81465.png +../../data/yoloGtold1/train/81466.png +../../data/yoloGtold1/train/81467.png +../../data/yoloGtold1/train/81468.png +../../data/yoloGtold1/train/81469.png +../../data/yoloGtold1/train/81470.png +../../data/yoloGtold1/train/81471.png +../../data/yoloGtold1/train/81472.png +../../data/yoloGtold1/train/81473.png +../../data/yoloGtold1/train/81474.png +../../data/yoloGtold1/train/81475.png +../../data/yoloGtold1/train/81476.png +../../data/yoloGtold1/train/81477.png +../../data/yoloGtold1/train/81478.png +../../data/yoloGtold1/train/81479.png +../../data/yoloGtold1/train/81480.png +../../data/yoloGtold1/train/81481.png +../../data/yoloGtold1/train/81482.png +../../data/yoloGtold1/train/81483.png +../../data/yoloGtold1/train/81484.png +../../data/yoloGtold1/train/81485.png +../../data/yoloGtold1/train/81486.png +../../data/yoloGtold1/train/81487.png +../../data/yoloGtold1/train/81488.png +../../data/yoloGtold1/train/81489.png +../../data/yoloGtold1/train/81490.png +../../data/yoloGtold1/train/81491.png +../../data/yoloGtold1/train/81492.png +../../data/yoloGtold1/train/81493.png +../../data/yoloGtold1/train/81494.png +../../data/yoloGtold1/train/81495.png +../../data/yoloGtold1/train/81496.png +../../data/yoloGtold1/train/81497.png +../../data/yoloGtold1/train/81498.png +../../data/yoloGtold1/train/81499.png +../../data/yoloGtold1/train/81500.png +../../data/yoloGtold1/train/81501.png +../../data/yoloGtold1/train/81502.png +../../data/yoloGtold1/train/81503.png +../../data/yoloGtold1/train/81504.png +../../data/yoloGtold1/train/81505.png +../../data/yoloGtold1/train/81506.png +../../data/yoloGtold1/train/81507.png +../../data/yoloGtold1/train/81508.png +../../data/yoloGtold1/train/81509.png +../../data/yoloGtold1/train/81510.png +../../data/yoloGtold1/train/81511.png +../../data/yoloGtold1/train/81512.png +../../data/yoloGtold1/train/81513.png +../../data/yoloGtold1/train/81514.png +../../data/yoloGtold1/train/81515.png +../../data/yoloGtold1/train/81516.png +../../data/yoloGtold1/train/81517.png +../../data/yoloGtold1/train/81518.png +../../data/yoloGtold1/train/81519.png +../../data/yoloGtold1/train/81520.png +../../data/yoloGtold1/train/81521.png +../../data/yoloGtold1/train/81522.png +../../data/yoloGtold1/train/81523.png +../../data/yoloGtold1/train/81524.png +../../data/yoloGtold1/train/81525.png +../../data/yoloGtold1/train/81526.png +../../data/yoloGtold1/train/81527.png +../../data/yoloGtold1/train/81528.png +../../data/yoloGtold1/train/81529.png +../../data/yoloGtold1/train/81530.png +../../data/yoloGtold1/train/81531.png +../../data/yoloGtold1/train/81532.png +../../data/yoloGtold1/train/81533.png +../../data/yoloGtold1/train/81534.png +../../data/yoloGtold1/train/81535.png +../../data/yoloGtold1/train/81536.png +../../data/yoloGtold1/train/81537.png +../../data/yoloGtold1/train/81538.png +../../data/yoloGtold1/train/81539.png +../../data/yoloGtold1/train/81540.png +../../data/yoloGtold1/train/81541.png +../../data/yoloGtold1/train/81542.png +../../data/yoloGtold1/train/81543.png +../../data/yoloGtold1/train/81544.png +../../data/yoloGtold1/train/81545.png +../../data/yoloGtold1/train/81546.png +../../data/yoloGtold1/train/81547.png +../../data/yoloGtold1/train/81548.png +../../data/yoloGtold1/train/81549.png +../../data/yoloGtold1/train/81550.png +../../data/yoloGtold1/train/81551.png +../../data/yoloGtold1/train/81552.png +../../data/yoloGtold1/train/81553.png +../../data/yoloGtold1/train/81554.png +../../data/yoloGtold1/train/81555.png +../../data/yoloGtold1/train/81556.png +../../data/yoloGtold1/train/81557.png +../../data/yoloGtold1/train/81558.png +../../data/yoloGtold1/train/81559.png +../../data/yoloGtold1/train/81560.png +../../data/yoloGtold1/train/81561.png +../../data/yoloGtold1/train/81562.png +../../data/yoloGtold1/train/81563.png +../../data/yoloGtold1/train/81564.png +../../data/yoloGtold1/train/81565.png +../../data/yoloGtold1/train/81566.png +../../data/yoloGtold1/train/81567.png +../../data/yoloGtold1/train/81568.png +../../data/yoloGtold1/train/81569.png +../../data/yoloGtold1/train/81570.png +../../data/yoloGtold1/train/81571.png +../../data/yoloGtold1/train/81572.png +../../data/yoloGtold1/train/81573.png +../../data/yoloGtold1/train/81574.png +../../data/yoloGtold1/train/81575.png +../../data/yoloGtold1/train/81576.png +../../data/yoloGtold1/train/81577.png +../../data/yoloGtold1/train/81578.png +../../data/yoloGtold1/train/81579.png +../../data/yoloGtold1/train/81580.png +../../data/yoloGtold1/train/81581.png +../../data/yoloGtold1/train/81582.png +../../data/yoloGtold1/train/81583.png +../../data/yoloGtold1/train/81584.png +../../data/yoloGtold1/train/81585.png +../../data/yoloGtold1/train/81586.png +../../data/yoloGtold1/train/81587.png +../../data/yoloGtold1/train/81588.png +../../data/yoloGtold1/train/81589.png +../../data/yoloGtold1/train/81590.png +../../data/yoloGtold1/train/81591.png +../../data/yoloGtold1/train/81592.png +../../data/yoloGtold1/train/81593.png +../../data/yoloGtold1/train/81594.png +../../data/yoloGtold1/train/81595.png +../../data/yoloGtold1/train/81596.png +../../data/yoloGtold1/train/81597.png +../../data/yoloGtold1/train/81598.png +../../data/yoloGtold1/train/81599.png +../../data/yoloGtold1/train/81600.png +../../data/yoloGtold1/train/81601.png +../../data/yoloGtold1/train/81602.png +../../data/yoloGtold1/train/81603.png +../../data/yoloGtold1/train/81604.png +../../data/yoloGtold1/train/81605.png +../../data/yoloGtold1/train/81606.png +../../data/yoloGtold1/train/81607.png +../../data/yoloGtold1/train/81608.png +../../data/yoloGtold1/train/81609.png +../../data/yoloGtold1/train/81610.png +../../data/yoloGtold1/train/81611.png +../../data/yoloGtold1/train/81612.png +../../data/yoloGtold1/train/81613.png +../../data/yoloGtold1/train/81614.png +../../data/yoloGtold1/train/81615.png +../../data/yoloGtold1/train/81616.png +../../data/yoloGtold1/train/81617.png +../../data/yoloGtold1/train/81618.png +../../data/yoloGtold1/train/81619.png +../../data/yoloGtold1/train/81620.png +../../data/yoloGtold1/train/81621.png +../../data/yoloGtold1/train/81622.png +../../data/yoloGtold1/train/81623.png +../../data/yoloGtold1/train/81624.png +../../data/yoloGtold1/train/81625.png +../../data/yoloGtold1/train/81626.png +../../data/yoloGtold1/train/81627.png +../../data/yoloGtold1/train/81628.png +../../data/yoloGtold1/train/81629.png +../../data/yoloGtold1/train/81630.png +../../data/yoloGtold1/train/81631.png +../../data/yoloGtold1/train/81632.png +../../data/yoloGtold1/train/81633.png +../../data/yoloGtold1/train/81634.png +../../data/yoloGtold1/train/81635.png +../../data/yoloGtold1/train/81636.png +../../data/yoloGtold1/train/81637.png +../../data/yoloGtold1/train/81638.png +../../data/yoloGtold1/train/81639.png +../../data/yoloGtold1/train/81640.png +../../data/yoloGtold1/train/81641.png +../../data/yoloGtold1/train/81642.png +../../data/yoloGtold1/train/81643.png +../../data/yoloGtold1/train/81644.png +../../data/yoloGtold1/train/81645.png +../../data/yoloGtold1/train/81646.png +../../data/yoloGtold1/train/81647.png +../../data/yoloGtold1/train/81648.png +../../data/yoloGtold1/train/81649.png +../../data/yoloGtold1/train/81650.png +../../data/yoloGtold1/train/81651.png +../../data/yoloGtold1/train/81652.png +../../data/yoloGtold1/train/81653.png +../../data/yoloGtold1/train/81654.png +../../data/yoloGtold1/train/81655.png +../../data/yoloGtold1/train/81656.png +../../data/yoloGtold1/train/81657.png +../../data/yoloGtold1/train/81658.png +../../data/yoloGtold1/train/81659.png +../../data/yoloGtold1/train/81660.png +../../data/yoloGtold1/train/81661.png +../../data/yoloGtold1/train/81662.png +../../data/yoloGtold1/train/81663.png +../../data/yoloGtold1/train/81664.png +../../data/yoloGtold1/train/81665.png +../../data/yoloGtold1/train/81666.png +../../data/yoloGtold1/train/81667.png +../../data/yoloGtold1/train/81668.png +../../data/yoloGtold1/train/81669.png +../../data/yoloGtold1/train/81670.png +../../data/yoloGtold1/train/81671.png +../../data/yoloGtold1/train/81672.png +../../data/yoloGtold1/train/81673.png +../../data/yoloGtold1/train/81674.png +../../data/yoloGtold1/train/81675.png +../../data/yoloGtold1/train/81676.png +../../data/yoloGtold1/train/81677.png +../../data/yoloGtold1/train/81678.png +../../data/yoloGtold1/train/81679.png +../../data/yoloGtold1/train/81680.png +../../data/yoloGtold1/train/81681.png +../../data/yoloGtold1/train/81682.png +../../data/yoloGtold1/train/81683.png +../../data/yoloGtold1/train/81684.png +../../data/yoloGtold1/train/81685.png +../../data/yoloGtold1/train/81686.png +../../data/yoloGtold1/train/81687.png +../../data/yoloGtold1/train/81688.png +../../data/yoloGtold1/train/81689.png +../../data/yoloGtold1/train/81690.png +../../data/yoloGtold1/train/81691.png +../../data/yoloGtold1/train/81692.png +../../data/yoloGtold1/train/81693.png +../../data/yoloGtold1/train/81694.png +../../data/yoloGtold1/train/81695.png +../../data/yoloGtold1/train/81696.png +../../data/yoloGtold1/train/81697.png +../../data/yoloGtold1/train/81698.png +../../data/yoloGtold1/train/81699.png +../../data/yoloGtold1/train/81700.png +../../data/yoloGtold1/train/81701.png +../../data/yoloGtold1/train/81702.png +../../data/yoloGtold1/train/81703.png +../../data/yoloGtold1/train/81704.png +../../data/yoloGtold1/train/81705.png +../../data/yoloGtold1/train/81706.png +../../data/yoloGtold1/train/81707.png +../../data/yoloGtold1/train/81708.png +../../data/yoloGtold1/train/81709.png +../../data/yoloGtold1/train/81710.png +../../data/yoloGtold1/train/81711.png +../../data/yoloGtold1/train/81712.png +../../data/yoloGtold1/train/81713.png +../../data/yoloGtold1/train/81714.png +../../data/yoloGtold1/train/81715.png +../../data/yoloGtold1/train/81716.png +../../data/yoloGtold1/train/81717.png +../../data/yoloGtold1/train/81718.png +../../data/yoloGtold1/train/81719.png +../../data/yoloGtold1/train/81720.png +../../data/yoloGtold1/train/81721.png +../../data/yoloGtold1/train/81722.png +../../data/yoloGtold1/train/81723.png +../../data/yoloGtold1/train/81724.png +../../data/yoloGtold1/train/81725.png +../../data/yoloGtold1/train/81726.png +../../data/yoloGtold1/train/81727.png +../../data/yoloGtold1/train/81728.png +../../data/yoloGtold1/train/81729.png +../../data/yoloGtold1/train/81730.png +../../data/yoloGtold1/train/81731.png +../../data/yoloGtold1/train/81732.png +../../data/yoloGtold1/train/81733.png +../../data/yoloGtold1/train/81734.png +../../data/yoloGtold1/train/81735.png +../../data/yoloGtold1/train/81736.png +../../data/yoloGtold1/train/81737.png +../../data/yoloGtold1/train/81738.png +../../data/yoloGtold1/train/81739.png +../../data/yoloGtold1/train/81740.png +../../data/yoloGtold1/train/81741.png +../../data/yoloGtold1/train/81742.png +../../data/yoloGtold1/train/81743.png +../../data/yoloGtold1/train/81744.png +../../data/yoloGtold1/train/81745.png +../../data/yoloGtold1/train/81746.png +../../data/yoloGtold1/train/81747.png +../../data/yoloGtold1/train/81748.png +../../data/yoloGtold1/train/81749.png +../../data/yoloGtold1/train/81750.png +../../data/yoloGtold1/train/81751.png +../../data/yoloGtold1/train/81752.png +../../data/yoloGtold1/train/81753.png +../../data/yoloGtold1/train/81754.png +../../data/yoloGtold1/train/81755.png +../../data/yoloGtold1/train/81756.png +../../data/yoloGtold1/train/81757.png +../../data/yoloGtold1/train/81758.png +../../data/yoloGtold1/train/81759.png +../../data/yoloGtold1/train/81760.png +../../data/yoloGtold1/train/81761.png +../../data/yoloGtold1/train/81762.png +../../data/yoloGtold1/train/81763.png +../../data/yoloGtold1/train/81764.png +../../data/yoloGtold1/train/81765.png +../../data/yoloGtold1/train/81766.png +../../data/yoloGtold1/train/81767.png +../../data/yoloGtold1/train/81768.png +../../data/yoloGtold1/train/81769.png +../../data/yoloGtold1/train/81770.png +../../data/yoloGtold1/train/81771.png +../../data/yoloGtold1/train/81772.png +../../data/yoloGtold1/train/81773.png +../../data/yoloGtold1/train/81774.png +../../data/yoloGtold1/train/81775.png +../../data/yoloGtold1/train/81776.png +../../data/yoloGtold1/train/81777.png +../../data/yoloGtold1/train/81778.png +../../data/yoloGtold1/train/81779.png +../../data/yoloGtold1/train/81780.png +../../data/yoloGtold1/train/81781.png +../../data/yoloGtold1/train/81782.png +../../data/yoloGtold1/train/81783.png +../../data/yoloGtold1/train/81784.png +../../data/yoloGtold1/train/81785.png +../../data/yoloGtold1/train/81786.png +../../data/yoloGtold1/train/81787.png +../../data/yoloGtold1/train/81788.png +../../data/yoloGtold1/train/81789.png +../../data/yoloGtold1/train/81790.png +../../data/yoloGtold1/train/81791.png +../../data/yoloGtold1/train/81792.png +../../data/yoloGtold1/train/81793.png +../../data/yoloGtold1/train/81794.png +../../data/yoloGtold1/train/81795.png +../../data/yoloGtold1/train/81796.png +../../data/yoloGtold1/train/81797.png +../../data/yoloGtold1/train/81798.png +../../data/yoloGtold1/train/81799.png +../../data/yoloGtold1/train/81800.png +../../data/yoloGtold1/train/81801.png +../../data/yoloGtold1/train/81802.png +../../data/yoloGtold1/train/81803.png +../../data/yoloGtold1/train/81804.png +../../data/yoloGtold1/train/81805.png +../../data/yoloGtold1/train/81806.png +../../data/yoloGtold1/train/81807.png +../../data/yoloGtold1/train/81808.png +../../data/yoloGtold1/train/81809.png +../../data/yoloGtold1/train/81810.png +../../data/yoloGtold1/train/81811.png +../../data/yoloGtold1/train/81812.png +../../data/yoloGtold1/train/81813.png +../../data/yoloGtold1/train/81814.png +../../data/yoloGtold1/train/81815.png +../../data/yoloGtold1/train/81816.png +../../data/yoloGtold1/train/81817.png +../../data/yoloGtold1/train/81818.png +../../data/yoloGtold1/train/81819.png +../../data/yoloGtold1/train/81820.png +../../data/yoloGtold1/train/81821.png +../../data/yoloGtold1/train/81822.png +../../data/yoloGtold1/train/81823.png +../../data/yoloGtold1/train/81824.png +../../data/yoloGtold1/train/81825.png +../../data/yoloGtold1/train/81826.png +../../data/yoloGtold1/train/81827.png +../../data/yoloGtold1/train/81828.png +../../data/yoloGtold1/train/81829.png +../../data/yoloGtold1/train/81830.png +../../data/yoloGtold1/train/81831.png +../../data/yoloGtold1/train/81832.png +../../data/yoloGtold1/train/81833.png +../../data/yoloGtold1/train/81834.png +../../data/yoloGtold1/train/81835.png +../../data/yoloGtold1/train/81836.png +../../data/yoloGtold1/train/81837.png +../../data/yoloGtold1/train/81838.png +../../data/yoloGtold1/train/81839.png +../../data/yoloGtold1/train/81840.png +../../data/yoloGtold1/train/81841.png +../../data/yoloGtold1/train/81842.png +../../data/yoloGtold1/train/81843.png +../../data/yoloGtold1/train/81844.png +../../data/yoloGtold1/train/81845.png +../../data/yoloGtold1/train/81846.png +../../data/yoloGtold1/train/81847.png +../../data/yoloGtold1/train/81848.png +../../data/yoloGtold1/train/81849.png +../../data/yoloGtold1/train/81850.png +../../data/yoloGtold1/train/81851.png +../../data/yoloGtold1/train/81852.png +../../data/yoloGtold1/train/81853.png +../../data/yoloGtold1/train/81854.png +../../data/yoloGtold1/train/81855.png +../../data/yoloGtold1/train/81856.png +../../data/yoloGtold1/train/81857.png +../../data/yoloGtold1/train/81858.png +../../data/yoloGtold1/train/81859.png +../../data/yoloGtold1/train/81860.png +../../data/yoloGtold1/train/81861.png +../../data/yoloGtold1/train/81862.png +../../data/yoloGtold1/train/81863.png +../../data/yoloGtold1/train/81864.png +../../data/yoloGtold1/train/81865.png +../../data/yoloGtold1/train/81866.png +../../data/yoloGtold1/train/81867.png +../../data/yoloGtold1/train/81868.png +../../data/yoloGtold1/train/81869.png +../../data/yoloGtold1/train/81870.png +../../data/yoloGtold1/train/81871.png +../../data/yoloGtold1/train/81872.png +../../data/yoloGtold1/train/81873.png +../../data/yoloGtold1/train/81874.png +../../data/yoloGtold1/train/81875.png +../../data/yoloGtold1/train/81876.png +../../data/yoloGtold1/train/81877.png +../../data/yoloGtold1/train/81878.png +../../data/yoloGtold1/train/81879.png +../../data/yoloGtold1/train/81880.png +../../data/yoloGtold1/train/81881.png +../../data/yoloGtold1/train/81882.png +../../data/yoloGtold1/train/81883.png +../../data/yoloGtold1/train/81884.png +../../data/yoloGtold1/train/81885.png +../../data/yoloGtold1/train/81886.png +../../data/yoloGtold1/train/81887.png +../../data/yoloGtold1/train/81888.png +../../data/yoloGtold1/train/81889.png +../../data/yoloGtold1/train/81890.png +../../data/yoloGtold1/train/81891.png +../../data/yoloGtold1/train/81892.png +../../data/yoloGtold1/train/81893.png +../../data/yoloGtold1/train/81894.png +../../data/yoloGtold1/train/81895.png +../../data/yoloGtold1/train/81896.png +../../data/yoloGtold1/train/81897.png +../../data/yoloGtold1/train/81898.png +../../data/yoloGtold1/train/81899.png +../../data/yoloGtold1/train/81900.png +../../data/yoloGtold1/train/81901.png +../../data/yoloGtold1/train/81902.png +../../data/yoloGtold1/train/81903.png +../../data/yoloGtold1/train/81904.png +../../data/yoloGtold1/train/81905.png +../../data/yoloGtold1/train/81906.png +../../data/yoloGtold1/train/81907.png +../../data/yoloGtold1/train/81908.png +../../data/yoloGtold1/train/81909.png +../../data/yoloGtold1/train/81910.png +../../data/yoloGtold1/train/81911.png +../../data/yoloGtold1/train/81912.png +../../data/yoloGtold1/train/81913.png +../../data/yoloGtold1/train/81914.png +../../data/yoloGtold1/train/81915.png +../../data/yoloGtold1/train/81916.png +../../data/yoloGtold1/train/81917.png +../../data/yoloGtold1/train/81918.png +../../data/yoloGtold1/train/81919.png +../../data/yoloGtold1/train/81920.png +../../data/yoloGtold1/train/81921.png +../../data/yoloGtold1/train/81922.png +../../data/yoloGtold1/train/81923.png +../../data/yoloGtold1/train/81924.png +../../data/yoloGtold1/train/81925.png +../../data/yoloGtold1/train/81926.png +../../data/yoloGtold1/train/81927.png +../../data/yoloGtold1/train/81928.png +../../data/yoloGtold1/train/81929.png +../../data/yoloGtold1/train/81930.png +../../data/yoloGtold1/train/81931.png +../../data/yoloGtold1/train/81932.png +../../data/yoloGtold1/train/81933.png +../../data/yoloGtold1/train/81934.png +../../data/yoloGtold1/train/81935.png +../../data/yoloGtold1/train/81936.png +../../data/yoloGtold1/train/81937.png +../../data/yoloGtold1/train/81938.png +../../data/yoloGtold1/train/81939.png +../../data/yoloGtold1/train/81940.png +../../data/yoloGtold1/train/81941.png +../../data/yoloGtold1/train/81942.png +../../data/yoloGtold1/train/81943.png +../../data/yoloGtold1/train/81944.png +../../data/yoloGtold1/train/81945.png +../../data/yoloGtold1/train/81946.png +../../data/yoloGtold1/train/81947.png +../../data/yoloGtold1/train/81948.png +../../data/yoloGtold1/train/81949.png +../../data/yoloGtold1/train/81950.png +../../data/yoloGtold1/train/81951.png +../../data/yoloGtold1/train/81952.png +../../data/yoloGtold1/train/81953.png +../../data/yoloGtold1/train/81954.png +../../data/yoloGtold1/train/81955.png +../../data/yoloGtold1/train/81956.png +../../data/yoloGtold1/train/81957.png +../../data/yoloGtold1/train/81958.png +../../data/yoloGtold1/train/81959.png +../../data/yoloGtold1/train/81960.png +../../data/yoloGtold1/train/81961.png +../../data/yoloGtold1/train/81962.png +../../data/yoloGtold1/train/81963.png +../../data/yoloGtold1/train/81964.png +../../data/yoloGtold1/train/81965.png +../../data/yoloGtold1/train/81966.png +../../data/yoloGtold1/train/81967.png +../../data/yoloGtold1/train/81968.png +../../data/yoloGtold1/train/81969.png +../../data/yoloGtold1/train/81970.png +../../data/yoloGtold1/train/81971.png +../../data/yoloGtold1/train/81972.png +../../data/yoloGtold1/train/81973.png +../../data/yoloGtold1/train/81974.png +../../data/yoloGtold1/train/81975.png +../../data/yoloGtold1/train/81976.png +../../data/yoloGtold1/train/81977.png +../../data/yoloGtold1/train/81978.png +../../data/yoloGtold1/train/81979.png +../../data/yoloGtold1/train/81980.png +../../data/yoloGtold1/train/81981.png +../../data/yoloGtold1/train/81982.png +../../data/yoloGtold1/train/81983.png +../../data/yoloGtold1/train/81984.png +../../data/yoloGtold1/train/81985.png +../../data/yoloGtold1/train/81986.png +../../data/yoloGtold1/train/81987.png +../../data/yoloGtold1/train/81988.png +../../data/yoloGtold1/train/81989.png +../../data/yoloGtold1/train/81990.png +../../data/yoloGtold1/train/81991.png +../../data/yoloGtold1/train/81992.png +../../data/yoloGtold1/train/81993.png +../../data/yoloGtold1/train/81994.png +../../data/yoloGtold1/train/81995.png +../../data/yoloGtold1/train/81996.png +../../data/yoloGtold1/train/81997.png +../../data/yoloGtold1/train/81998.png +../../data/yoloGtold1/train/81999.png +../../data/yoloGtold1/train/82000.png +../../data/yoloGtold1/train/82001.png +../../data/yoloGtold1/train/82002.png +../../data/yoloGtold1/train/82003.png +../../data/yoloGtold1/train/82004.png +../../data/yoloGtold1/train/82005.png +../../data/yoloGtold1/train/82006.png +../../data/yoloGtold1/train/82007.png +../../data/yoloGtold1/train/82008.png +../../data/yoloGtold1/train/82009.png +../../data/yoloGtold1/train/82010.png +../../data/yoloGtold1/train/82011.png +../../data/yoloGtold1/train/82012.png +../../data/yoloGtold1/train/82013.png +../../data/yoloGtold1/train/82014.png +../../data/yoloGtold1/train/82015.png +../../data/yoloGtold1/train/82016.png +../../data/yoloGtold1/train/82017.png +../../data/yoloGtold1/train/82018.png +../../data/yoloGtold1/train/82019.png +../../data/yoloGtold1/train/82020.png +../../data/yoloGtold1/train/82021.png +../../data/yoloGtold1/train/82022.png +../../data/yoloGtold1/train/82023.png +../../data/yoloGtold1/train/82024.png +../../data/yoloGtold1/train/82025.png +../../data/yoloGtold1/train/82026.png +../../data/yoloGtold1/train/82027.png +../../data/yoloGtold1/train/82028.png +../../data/yoloGtold1/train/82029.png +../../data/yoloGtold1/train/82030.png +../../data/yoloGtold1/train/82031.png +../../data/yoloGtold1/train/82032.png +../../data/yoloGtold1/train/82033.png +../../data/yoloGtold1/train/82034.png +../../data/yoloGtold1/train/82035.png +../../data/yoloGtold1/train/82036.png +../../data/yoloGtold1/train/82037.png +../../data/yoloGtold1/train/82038.png +../../data/yoloGtold1/train/82039.png +../../data/yoloGtold1/train/82040.png +../../data/yoloGtold1/train/82041.png +../../data/yoloGtold1/train/82042.png +../../data/yoloGtold1/train/82043.png +../../data/yoloGtold1/train/82044.png +../../data/yoloGtold1/train/82045.png +../../data/yoloGtold1/train/82046.png +../../data/yoloGtold1/train/82047.png +../../data/yoloGtold1/train/82048.png +../../data/yoloGtold1/train/82049.png +../../data/yoloGtold1/train/82050.png +../../data/yoloGtold1/train/82051.png +../../data/yoloGtold1/train/82052.png +../../data/yoloGtold1/train/82053.png +../../data/yoloGtold1/train/82054.png +../../data/yoloGtold1/train/82055.png +../../data/yoloGtold1/train/82056.png +../../data/yoloGtold1/train/82057.png +../../data/yoloGtold1/train/82058.png +../../data/yoloGtold1/train/82059.png +../../data/yoloGtold1/train/82060.png +../../data/yoloGtold1/train/82061.png +../../data/yoloGtold1/train/82062.png +../../data/yoloGtold1/train/82063.png +../../data/yoloGtold1/train/82064.png +../../data/yoloGtold1/train/82065.png +../../data/yoloGtold1/train/82066.png +../../data/yoloGtold1/train/82067.png +../../data/yoloGtold1/train/82068.png +../../data/yoloGtold1/train/82069.png +../../data/yoloGtold1/train/82070.png +../../data/yoloGtold1/train/82071.png +../../data/yoloGtold1/train/82072.png +../../data/yoloGtold1/train/82073.png +../../data/yoloGtold1/train/82074.png +../../data/yoloGtold1/train/82075.png +../../data/yoloGtold1/train/82076.png +../../data/yoloGtold1/train/82077.png +../../data/yoloGtold1/train/82078.png +../../data/yoloGtold1/train/82079.png +../../data/yoloGtold1/train/82080.png +../../data/yoloGtold1/train/82081.png +../../data/yoloGtold1/train/82082.png +../../data/yoloGtold1/train/82083.png +../../data/yoloGtold1/train/82084.png +../../data/yoloGtold1/train/82085.png +../../data/yoloGtold1/train/82086.png +../../data/yoloGtold1/train/82087.png +../../data/yoloGtold1/train/82088.png +../../data/yoloGtold1/train/82089.png +../../data/yoloGtold1/train/82090.png +../../data/yoloGtold1/train/82091.png +../../data/yoloGtold1/train/82092.png +../../data/yoloGtold1/train/82093.png +../../data/yoloGtold1/train/82094.png +../../data/yoloGtold1/train/82095.png +../../data/yoloGtold1/train/82096.png +../../data/yoloGtold1/train/82097.png +../../data/yoloGtold1/train/82098.png +../../data/yoloGtold1/train/82099.png +../../data/yoloGtold1/train/82100.png +../../data/yoloGtold1/train/82101.png +../../data/yoloGtold1/train/82102.png +../../data/yoloGtold1/train/82103.png +../../data/yoloGtold1/train/82104.png +../../data/yoloGtold1/train/82105.png +../../data/yoloGtold1/train/82106.png +../../data/yoloGtold1/train/82107.png +../../data/yoloGtold1/train/82108.png +../../data/yoloGtold1/train/82109.png +../../data/yoloGtold1/train/82110.png +../../data/yoloGtold1/train/82111.png +../../data/yoloGtold1/train/82112.png +../../data/yoloGtold1/train/82113.png +../../data/yoloGtold1/train/82114.png +../../data/yoloGtold1/train/82115.png +../../data/yoloGtold1/train/82116.png +../../data/yoloGtold1/train/82117.png +../../data/yoloGtold1/train/82118.png +../../data/yoloGtold1/train/82119.png +../../data/yoloGtold1/train/82120.png +../../data/yoloGtold1/train/82121.png +../../data/yoloGtold1/train/82122.png +../../data/yoloGtold1/train/82123.png +../../data/yoloGtold1/train/82124.png +../../data/yoloGtold1/train/82125.png +../../data/yoloGtold1/train/82126.png +../../data/yoloGtold1/train/82127.png +../../data/yoloGtold1/train/82128.png +../../data/yoloGtold1/train/82129.png +../../data/yoloGtold1/train/82130.png +../../data/yoloGtold1/train/82131.png +../../data/yoloGtold1/train/82132.png +../../data/yoloGtold1/train/82133.png +../../data/yoloGtold1/train/82134.png +../../data/yoloGtold1/train/82135.png +../../data/yoloGtold1/train/82136.png +../../data/yoloGtold1/train/82137.png +../../data/yoloGtold1/train/82138.png +../../data/yoloGtold1/train/82139.png +../../data/yoloGtold1/train/82140.png +../../data/yoloGtold1/train/82141.png +../../data/yoloGtold1/train/82142.png +../../data/yoloGtold1/train/82143.png +../../data/yoloGtold1/train/82144.png +../../data/yoloGtold1/train/82145.png +../../data/yoloGtold1/train/82146.png +../../data/yoloGtold1/train/82147.png +../../data/yoloGtold1/train/82148.png +../../data/yoloGtold1/train/82149.png +../../data/yoloGtold1/train/82150.png +../../data/yoloGtold1/train/82151.png +../../data/yoloGtold1/train/82152.png +../../data/yoloGtold1/train/82153.png +../../data/yoloGtold1/train/82154.png +../../data/yoloGtold1/train/82155.png +../../data/yoloGtold1/train/82156.png +../../data/yoloGtold1/train/82157.png +../../data/yoloGtold1/train/82158.png +../../data/yoloGtold1/train/82159.png +../../data/yoloGtold1/train/82160.png +../../data/yoloGtold1/train/82161.png +../../data/yoloGtold1/train/82162.png +../../data/yoloGtold1/train/82163.png +../../data/yoloGtold1/train/82164.png +../../data/yoloGtold1/train/82165.png +../../data/yoloGtold1/train/82166.png +../../data/yoloGtold1/train/82167.png +../../data/yoloGtold1/train/82168.png +../../data/yoloGtold1/train/82169.png +../../data/yoloGtold1/train/82170.png +../../data/yoloGtold1/train/82171.png +../../data/yoloGtold1/train/82172.png +../../data/yoloGtold1/train/82173.png +../../data/yoloGtold1/train/82174.png +../../data/yoloGtold1/train/82175.png +../../data/yoloGtold1/train/82176.png +../../data/yoloGtold1/train/82177.png +../../data/yoloGtold1/train/82178.png +../../data/yoloGtold1/train/82179.png +../../data/yoloGtold1/train/82180.png +../../data/yoloGtold1/train/82181.png +../../data/yoloGtold1/train/82182.png +../../data/yoloGtold1/train/82183.png +../../data/yoloGtold1/train/82184.png +../../data/yoloGtold1/train/82185.png +../../data/yoloGtold1/train/82186.png +../../data/yoloGtold1/train/82187.png +../../data/yoloGtold1/train/82188.png +../../data/yoloGtold1/train/82189.png +../../data/yoloGtold1/train/82190.png +../../data/yoloGtold1/train/82191.png +../../data/yoloGtold1/train/82192.png +../../data/yoloGtold1/train/82193.png +../../data/yoloGtold1/train/82194.png +../../data/yoloGtold1/train/82195.png +../../data/yoloGtold1/train/82196.png +../../data/yoloGtold1/train/82197.png +../../data/yoloGtold1/train/82198.png +../../data/yoloGtold1/train/82199.png +../../data/yoloGtold1/train/82200.png +../../data/yoloGtold1/train/82201.png +../../data/yoloGtold1/train/82202.png +../../data/yoloGtold1/train/82203.png +../../data/yoloGtold1/train/82204.png +../../data/yoloGtold1/train/82205.png +../../data/yoloGtold1/train/82206.png +../../data/yoloGtold1/train/82207.png +../../data/yoloGtold1/train/82208.png +../../data/yoloGtold1/train/82209.png +../../data/yoloGtold1/train/82210.png +../../data/yoloGtold1/train/82211.png +../../data/yoloGtold1/train/82212.png +../../data/yoloGtold1/train/82213.png +../../data/yoloGtold1/train/82214.png +../../data/yoloGtold1/train/82215.png +../../data/yoloGtold1/train/82216.png +../../data/yoloGtold1/train/82217.png +../../data/yoloGtold1/train/82218.png +../../data/yoloGtold1/train/82219.png +../../data/yoloGtold1/train/82220.png +../../data/yoloGtold1/train/82221.png +../../data/yoloGtold1/train/82222.png +../../data/yoloGtold1/train/82223.png +../../data/yoloGtold1/train/82224.png +../../data/yoloGtold1/train/82225.png +../../data/yoloGtold1/train/82226.png +../../data/yoloGtold1/train/82227.png +../../data/yoloGtold1/train/82228.png +../../data/yoloGtold1/train/82229.png +../../data/yoloGtold1/train/82230.png +../../data/yoloGtold1/train/82231.png +../../data/yoloGtold1/train/82232.png +../../data/yoloGtold1/train/82233.png +../../data/yoloGtold1/train/82234.png +../../data/yoloGtold1/train/82235.png +../../data/yoloGtold1/train/82236.png +../../data/yoloGtold1/train/82237.png +../../data/yoloGtold1/train/82238.png +../../data/yoloGtold1/train/82239.png +../../data/yoloGtold1/train/82240.png +../../data/yoloGtold1/train/82241.png +../../data/yoloGtold1/train/82242.png +../../data/yoloGtold1/train/82243.png +../../data/yoloGtold1/train/82244.png +../../data/yoloGtold1/train/82245.png +../../data/yoloGtold1/train/82246.png +../../data/yoloGtold1/train/82247.png +../../data/yoloGtold1/train/82248.png +../../data/yoloGtold1/train/82249.png +../../data/yoloGtold1/train/82250.png +../../data/yoloGtold1/train/82251.png +../../data/yoloGtold1/train/82252.png +../../data/yoloGtold1/train/82253.png +../../data/yoloGtold1/train/82254.png +../../data/yoloGtold1/train/82255.png +../../data/yoloGtold1/train/82256.png +../../data/yoloGtold1/train/82257.png +../../data/yoloGtold1/train/82258.png +../../data/yoloGtold1/train/82259.png +../../data/yoloGtold1/train/82260.png +../../data/yoloGtold1/train/82261.png +../../data/yoloGtold1/train/82262.png +../../data/yoloGtold1/train/82263.png +../../data/yoloGtold1/train/82264.png +../../data/yoloGtold1/train/82265.png +../../data/yoloGtold1/train/82266.png +../../data/yoloGtold1/train/82267.png +../../data/yoloGtold1/train/82268.png +../../data/yoloGtold1/train/82269.png +../../data/yoloGtold1/train/82270.png +../../data/yoloGtold1/train/82271.png +../../data/yoloGtold1/train/82272.png +../../data/yoloGtold1/train/82273.png +../../data/yoloGtold1/train/82274.png +../../data/yoloGtold1/train/82275.png +../../data/yoloGtold1/train/82276.png +../../data/yoloGtold1/train/82277.png +../../data/yoloGtold1/train/82278.png +../../data/yoloGtold1/train/82279.png +../../data/yoloGtold1/train/82280.png +../../data/yoloGtold1/train/82281.png +../../data/yoloGtold1/train/82282.png +../../data/yoloGtold1/train/82283.png +../../data/yoloGtold1/train/82284.png +../../data/yoloGtold1/train/82285.png +../../data/yoloGtold1/train/82286.png +../../data/yoloGtold1/train/82287.png +../../data/yoloGtold1/train/82288.png +../../data/yoloGtold1/train/82289.png +../../data/yoloGtold1/train/82290.png +../../data/yoloGtold1/train/82291.png +../../data/yoloGtold1/train/82292.png +../../data/yoloGtold1/train/82293.png +../../data/yoloGtold1/train/82294.png +../../data/yoloGtold1/train/82295.png +../../data/yoloGtold1/train/82296.png +../../data/yoloGtold1/train/82297.png +../../data/yoloGtold1/train/82298.png +../../data/yoloGtold1/train/82299.png +../../data/yoloGtold1/train/82300.png +../../data/yoloGtold1/train/82301.png +../../data/yoloGtold1/train/82302.png +../../data/yoloGtold1/train/82303.png +../../data/yoloGtold1/train/82304.png +../../data/yoloGtold1/train/82305.png +../../data/yoloGtold1/train/82306.png +../../data/yoloGtold1/train/82307.png +../../data/yoloGtold1/train/82308.png +../../data/yoloGtold1/train/82309.png +../../data/yoloGtold1/train/82310.png +../../data/yoloGtold1/train/82311.png +../../data/yoloGtold1/train/82312.png +../../data/yoloGtold1/train/82313.png +../../data/yoloGtold1/train/82314.png +../../data/yoloGtold1/train/82315.png +../../data/yoloGtold1/train/82316.png +../../data/yoloGtold1/train/82317.png +../../data/yoloGtold1/train/82318.png +../../data/yoloGtold1/train/82319.png +../../data/yoloGtold1/train/82320.png +../../data/yoloGtold1/train/82321.png +../../data/yoloGtold1/train/82322.png +../../data/yoloGtold1/train/82323.png +../../data/yoloGtold1/train/82324.png +../../data/yoloGtold1/train/82325.png +../../data/yoloGtold1/train/82326.png +../../data/yoloGtold1/train/82327.png +../../data/yoloGtold1/train/82328.png +../../data/yoloGtold1/train/82329.png +../../data/yoloGtold1/train/82330.png +../../data/yoloGtold1/train/82331.png +../../data/yoloGtold1/train/82332.png +../../data/yoloGtold1/train/82333.png +../../data/yoloGtold1/train/82334.png +../../data/yoloGtold1/train/82335.png +../../data/yoloGtold1/train/82336.png +../../data/yoloGtold1/train/82337.png +../../data/yoloGtold1/train/82338.png +../../data/yoloGtold1/train/82339.png +../../data/yoloGtold1/train/82340.png +../../data/yoloGtold1/train/82341.png +../../data/yoloGtold1/train/82342.png +../../data/yoloGtold1/train/82343.png +../../data/yoloGtold1/train/82344.png +../../data/yoloGtold1/train/82345.png +../../data/yoloGtold1/train/82346.png +../../data/yoloGtold1/train/82347.png +../../data/yoloGtold1/train/82348.png +../../data/yoloGtold1/train/82349.png +../../data/yoloGtold1/train/82350.png +../../data/yoloGtold1/train/82351.png +../../data/yoloGtold1/train/82352.png +../../data/yoloGtold1/train/82353.png +../../data/yoloGtold1/train/82354.png +../../data/yoloGtold1/train/82355.png +../../data/yoloGtold1/train/82356.png +../../data/yoloGtold1/train/82357.png +../../data/yoloGtold1/train/82358.png +../../data/yoloGtold1/train/82359.png +../../data/yoloGtold1/train/82360.png +../../data/yoloGtold1/train/82361.png +../../data/yoloGtold1/train/82362.png +../../data/yoloGtold1/train/82363.png +../../data/yoloGtold1/train/82364.png +../../data/yoloGtold1/train/82365.png +../../data/yoloGtold1/train/82366.png +../../data/yoloGtold1/train/82367.png +../../data/yoloGtold1/train/82368.png +../../data/yoloGtold1/train/82369.png +../../data/yoloGtold1/train/82370.png +../../data/yoloGtold1/train/82371.png +../../data/yoloGtold1/train/82372.png +../../data/yoloGtold1/train/82373.png +../../data/yoloGtold1/train/82374.png +../../data/yoloGtold1/train/82375.png +../../data/yoloGtold1/train/82376.png +../../data/yoloGtold1/train/82377.png +../../data/yoloGtold1/train/82378.png +../../data/yoloGtold1/train/82379.png +../../data/yoloGtold1/train/82380.png +../../data/yoloGtold1/train/82381.png +../../data/yoloGtold1/train/82382.png +../../data/yoloGtold1/train/82383.png +../../data/yoloGtold1/train/82384.png +../../data/yoloGtold1/train/82385.png +../../data/yoloGtold1/train/82386.png +../../data/yoloGtold1/train/82387.png +../../data/yoloGtold1/train/82388.png +../../data/yoloGtold1/train/82389.png +../../data/yoloGtold1/train/82390.png +../../data/yoloGtold1/train/82391.png +../../data/yoloGtold1/train/82392.png +../../data/yoloGtold1/train/82393.png +../../data/yoloGtold1/train/82394.png +../../data/yoloGtold1/train/82395.png +../../data/yoloGtold1/train/82396.png +../../data/yoloGtold1/train/82397.png +../../data/yoloGtold1/train/82398.png +../../data/yoloGtold1/train/82399.png +../../data/yoloGtold1/train/82400.png +../../data/yoloGtold1/train/82401.png +../../data/yoloGtold1/train/82402.png +../../data/yoloGtold1/train/82403.png +../../data/yoloGtold1/train/82404.png +../../data/yoloGtold1/train/82405.png +../../data/yoloGtold1/train/82406.png +../../data/yoloGtold1/train/82407.png +../../data/yoloGtold1/train/82408.png +../../data/yoloGtold1/train/82409.png +../../data/yoloGtold1/train/82410.png +../../data/yoloGtold1/train/82411.png +../../data/yoloGtold1/train/82412.png +../../data/yoloGtold1/train/82413.png +../../data/yoloGtold1/train/82414.png +../../data/yoloGtold1/train/82415.png +../../data/yoloGtold1/train/82416.png +../../data/yoloGtold1/train/82417.png +../../data/yoloGtold1/train/82418.png +../../data/yoloGtold1/train/82419.png +../../data/yoloGtold1/train/82420.png +../../data/yoloGtold1/train/82421.png +../../data/yoloGtold1/train/82422.png +../../data/yoloGtold1/train/82423.png +../../data/yoloGtold1/train/82424.png +../../data/yoloGtold1/train/82425.png +../../data/yoloGtold1/train/82426.png +../../data/yoloGtold1/train/82427.png +../../data/yoloGtold1/train/82428.png +../../data/yoloGtold1/train/82429.png +../../data/yoloGtold1/train/82430.png +../../data/yoloGtold1/train/82431.png +../../data/yoloGtold1/train/82432.png +../../data/yoloGtold1/train/82433.png +../../data/yoloGtold1/train/82434.png +../../data/yoloGtold1/train/82435.png +../../data/yoloGtold1/train/82436.png +../../data/yoloGtold1/train/82437.png +../../data/yoloGtold1/train/82438.png +../../data/yoloGtold1/train/82439.png +../../data/yoloGtold1/train/82440.png +../../data/yoloGtold1/train/82441.png +../../data/yoloGtold1/train/82442.png +../../data/yoloGtold1/train/82443.png +../../data/yoloGtold1/train/82444.png +../../data/yoloGtold1/train/82445.png +../../data/yoloGtold1/train/82446.png +../../data/yoloGtold1/train/82447.png +../../data/yoloGtold1/train/82448.png +../../data/yoloGtold1/train/82449.png +../../data/yoloGtold1/train/82450.png +../../data/yoloGtold1/train/82451.png +../../data/yoloGtold1/train/82452.png +../../data/yoloGtold1/train/82453.png +../../data/yoloGtold1/train/82454.png +../../data/yoloGtold1/train/82455.png +../../data/yoloGtold1/train/82456.png +../../data/yoloGtold1/train/82457.png +../../data/yoloGtold1/train/82458.png +../../data/yoloGtold1/train/82459.png +../../data/yoloGtold1/train/82460.png +../../data/yoloGtold1/train/82461.png +../../data/yoloGtold1/train/82462.png +../../data/yoloGtold1/train/82463.png +../../data/yoloGtold1/train/82464.png +../../data/yoloGtold1/train/82465.png +../../data/yoloGtold1/train/82466.png +../../data/yoloGtold1/train/82467.png +../../data/yoloGtold1/train/82468.png +../../data/yoloGtold1/train/82469.png +../../data/yoloGtold1/train/82470.png +../../data/yoloGtold1/train/82471.png +../../data/yoloGtold1/train/82472.png +../../data/yoloGtold1/train/82473.png +../../data/yoloGtold1/train/82474.png +../../data/yoloGtold1/train/82475.png +../../data/yoloGtold1/train/82476.png +../../data/yoloGtold1/train/82477.png +../../data/yoloGtold1/train/82478.png +../../data/yoloGtold1/train/82479.png +../../data/yoloGtold1/train/82480.png +../../data/yoloGtold1/train/82481.png +../../data/yoloGtold1/train/82482.png +../../data/yoloGtold1/train/82483.png +../../data/yoloGtold1/train/82484.png +../../data/yoloGtold1/train/82485.png +../../data/yoloGtold1/train/82486.png +../../data/yoloGtold1/train/82487.png +../../data/yoloGtold1/train/82488.png +../../data/yoloGtold1/train/82489.png +../../data/yoloGtold1/train/82490.png +../../data/yoloGtold1/train/82491.png +../../data/yoloGtold1/train/82492.png +../../data/yoloGtold1/train/82493.png +../../data/yoloGtold1/train/82494.png +../../data/yoloGtold1/train/82495.png +../../data/yoloGtold1/train/82496.png +../../data/yoloGtold1/train/82497.png +../../data/yoloGtold1/train/82498.png +../../data/yoloGtold1/train/82499.png +../../data/yoloGtold1/train/82500.png +../../data/yoloGtold1/train/82501.png +../../data/yoloGtold1/train/82502.png +../../data/yoloGtold1/train/82503.png +../../data/yoloGtold1/train/82504.png +../../data/yoloGtold1/train/82505.png +../../data/yoloGtold1/train/82506.png +../../data/yoloGtold1/train/82507.png +../../data/yoloGtold1/train/82508.png +../../data/yoloGtold1/train/82509.png +../../data/yoloGtold1/train/82510.png +../../data/yoloGtold1/train/82511.png +../../data/yoloGtold1/train/82512.png +../../data/yoloGtold1/train/82513.png +../../data/yoloGtold1/train/82514.png +../../data/yoloGtold1/train/82515.png +../../data/yoloGtold1/train/82516.png +../../data/yoloGtold1/train/82517.png +../../data/yoloGtold1/train/82518.png +../../data/yoloGtold1/train/82519.png +../../data/yoloGtold1/train/82520.png +../../data/yoloGtold1/train/82521.png +../../data/yoloGtold1/train/82522.png +../../data/yoloGtold1/train/82523.png +../../data/yoloGtold1/train/82524.png +../../data/yoloGtold1/train/82525.png +../../data/yoloGtold1/train/82526.png +../../data/yoloGtold1/train/82527.png +../../data/yoloGtold1/train/82528.png +../../data/yoloGtold1/train/82529.png +../../data/yoloGtold1/train/82530.png +../../data/yoloGtold1/train/82531.png +../../data/yoloGtold1/train/82532.png +../../data/yoloGtold1/train/82533.png +../../data/yoloGtold1/train/82534.png +../../data/yoloGtold1/train/82535.png +../../data/yoloGtold1/train/82536.png +../../data/yoloGtold1/train/82537.png +../../data/yoloGtold1/train/82538.png +../../data/yoloGtold1/train/82539.png +../../data/yoloGtold1/train/82540.png +../../data/yoloGtold1/train/82541.png +../../data/yoloGtold1/train/82542.png +../../data/yoloGtold1/train/82543.png +../../data/yoloGtold1/train/82544.png +../../data/yoloGtold1/train/82545.png +../../data/yoloGtold1/train/82546.png +../../data/yoloGtold1/train/82547.png +../../data/yoloGtold1/train/82548.png +../../data/yoloGtold1/train/82549.png +../../data/yoloGtold1/train/82550.png +../../data/yoloGtold1/train/82551.png +../../data/yoloGtold1/train/82552.png +../../data/yoloGtold1/train/82553.png +../../data/yoloGtold1/train/82554.png +../../data/yoloGtold1/train/82555.png +../../data/yoloGtold1/train/82556.png +../../data/yoloGtold1/train/82557.png +../../data/yoloGtold1/train/82558.png +../../data/yoloGtold1/train/82559.png +../../data/yoloGtold1/train/82560.png +../../data/yoloGtold1/train/82561.png +../../data/yoloGtold1/train/82562.png +../../data/yoloGtold1/train/82563.png +../../data/yoloGtold1/train/82564.png +../../data/yoloGtold1/train/82565.png +../../data/yoloGtold1/train/82566.png +../../data/yoloGtold1/train/82567.png +../../data/yoloGtold1/train/82568.png +../../data/yoloGtold1/train/82569.png +../../data/yoloGtold1/train/82570.png +../../data/yoloGtold1/train/82571.png +../../data/yoloGtold1/train/82572.png +../../data/yoloGtold1/train/82573.png +../../data/yoloGtold1/train/82574.png +../../data/yoloGtold1/train/82575.png +../../data/yoloGtold1/train/82576.png +../../data/yoloGtold1/train/82577.png +../../data/yoloGtold1/train/82578.png +../../data/yoloGtold1/train/82579.png +../../data/yoloGtold1/train/82580.png +../../data/yoloGtold1/train/82581.png +../../data/yoloGtold1/train/82582.png +../../data/yoloGtold1/train/82583.png +../../data/yoloGtold1/train/82584.png +../../data/yoloGtold1/train/82585.png +../../data/yoloGtold1/train/82586.png +../../data/yoloGtold1/train/82587.png +../../data/yoloGtold1/train/82588.png +../../data/yoloGtold1/train/82589.png +../../data/yoloGtold1/train/82590.png +../../data/yoloGtold1/train/82591.png +../../data/yoloGtold1/train/82592.png +../../data/yoloGtold1/train/82593.png +../../data/yoloGtold1/train/82594.png +../../data/yoloGtold1/train/82595.png +../../data/yoloGtold1/train/82596.png +../../data/yoloGtold1/train/82597.png +../../data/yoloGtold1/train/82598.png +../../data/yoloGtold1/train/82599.png +../../data/yoloGtold1/train/82600.png +../../data/yoloGtold1/train/82601.png +../../data/yoloGtold1/train/82602.png +../../data/yoloGtold1/train/82603.png +../../data/yoloGtold1/train/82604.png +../../data/yoloGtold1/train/82605.png +../../data/yoloGtold1/train/82606.png +../../data/yoloGtold1/train/82607.png +../../data/yoloGtold1/train/82608.png +../../data/yoloGtold1/train/82609.png +../../data/yoloGtold1/train/82610.png +../../data/yoloGtold1/train/82611.png +../../data/yoloGtold1/train/82612.png +../../data/yoloGtold1/train/82613.png +../../data/yoloGtold1/train/82614.png +../../data/yoloGtold1/train/82615.png +../../data/yoloGtold1/train/82616.png +../../data/yoloGtold1/train/82617.png +../../data/yoloGtold1/train/82618.png +../../data/yoloGtold1/train/82619.png +../../data/yoloGtold1/train/82620.png +../../data/yoloGtold1/train/82621.png +../../data/yoloGtold1/train/82622.png +../../data/yoloGtold1/train/82623.png +../../data/yoloGtold1/train/82624.png +../../data/yoloGtold1/train/82625.png +../../data/yoloGtold1/train/82626.png +../../data/yoloGtold1/train/82627.png +../../data/yoloGtold1/train/82628.png +../../data/yoloGtold1/train/82629.png +../../data/yoloGtold1/train/82630.png +../../data/yoloGtold1/train/82631.png +../../data/yoloGtold1/train/82632.png +../../data/yoloGtold1/train/82633.png +../../data/yoloGtold1/train/82634.png +../../data/yoloGtold1/train/82635.png +../../data/yoloGtold1/train/82636.png +../../data/yoloGtold1/train/82637.png +../../data/yoloGtold1/train/82638.png +../../data/yoloGtold1/train/82639.png +../../data/yoloGtold1/train/82640.png +../../data/yoloGtold1/train/82641.png +../../data/yoloGtold1/train/82642.png +../../data/yoloGtold1/train/82643.png +../../data/yoloGtold1/train/82644.png +../../data/yoloGtold1/train/82645.png +../../data/yoloGtold1/train/82646.png +../../data/yoloGtold1/train/82647.png +../../data/yoloGtold1/train/82648.png +../../data/yoloGtold1/train/82649.png +../../data/yoloGtold1/train/82650.png +../../data/yoloGtold1/train/82651.png +../../data/yoloGtold1/train/82652.png +../../data/yoloGtold1/train/82653.png +../../data/yoloGtold1/train/82654.png +../../data/yoloGtold1/train/82655.png +../../data/yoloGtold1/train/82656.png +../../data/yoloGtold1/train/82657.png +../../data/yoloGtold1/train/82658.png +../../data/yoloGtold1/train/82659.png +../../data/yoloGtold1/train/82660.png +../../data/yoloGtold1/train/82661.png +../../data/yoloGtold1/train/82662.png +../../data/yoloGtold1/train/82663.png +../../data/yoloGtold1/train/82664.png +../../data/yoloGtold1/train/82665.png +../../data/yoloGtold1/train/82666.png +../../data/yoloGtold1/train/82667.png +../../data/yoloGtold1/train/82668.png +../../data/yoloGtold1/train/82669.png +../../data/yoloGtold1/train/82670.png +../../data/yoloGtold1/train/82671.png +../../data/yoloGtold1/train/82672.png +../../data/yoloGtold1/train/82673.png +../../data/yoloGtold1/train/82674.png +../../data/yoloGtold1/train/82675.png +../../data/yoloGtold1/train/82676.png +../../data/yoloGtold1/train/82677.png +../../data/yoloGtold1/train/82678.png +../../data/yoloGtold1/train/82679.png +../../data/yoloGtold1/train/82680.png +../../data/yoloGtold1/train/82681.png +../../data/yoloGtold1/train/82682.png +../../data/yoloGtold1/train/82683.png +../../data/yoloGtold1/train/82684.png +../../data/yoloGtold1/train/82685.png +../../data/yoloGtold1/train/82686.png +../../data/yoloGtold1/train/82687.png +../../data/yoloGtold1/train/82688.png +../../data/yoloGtold1/train/82689.png +../../data/yoloGtold1/train/82690.png +../../data/yoloGtold1/train/82691.png +../../data/yoloGtold1/train/82692.png +../../data/yoloGtold1/train/82693.png +../../data/yoloGtold1/train/82694.png +../../data/yoloGtold1/train/82695.png +../../data/yoloGtold1/train/82696.png +../../data/yoloGtold1/train/82697.png +../../data/yoloGtold1/train/82698.png +../../data/yoloGtold1/train/82699.png +../../data/yoloGtold1/train/82700.png +../../data/yoloGtold1/train/82701.png +../../data/yoloGtold1/train/82702.png +../../data/yoloGtold1/train/82703.png +../../data/yoloGtold1/train/82704.png +../../data/yoloGtold1/train/82705.png +../../data/yoloGtold1/train/82706.png +../../data/yoloGtold1/train/82707.png +../../data/yoloGtold1/train/82708.png +../../data/yoloGtold1/train/82709.png +../../data/yoloGtold1/train/82710.png +../../data/yoloGtold1/train/82711.png +../../data/yoloGtold1/train/82712.png +../../data/yoloGtold1/train/82713.png +../../data/yoloGtold1/train/82714.png +../../data/yoloGtold1/train/82715.png +../../data/yoloGtold1/train/82716.png +../../data/yoloGtold1/train/82717.png +../../data/yoloGtold1/train/82718.png +../../data/yoloGtold1/train/82719.png +../../data/yoloGtold1/train/82720.png +../../data/yoloGtold1/train/82721.png +../../data/yoloGtold1/train/82722.png +../../data/yoloGtold1/train/82723.png +../../data/yoloGtold1/train/82724.png +../../data/yoloGtold1/train/82725.png +../../data/yoloGtold1/train/82726.png +../../data/yoloGtold1/train/82727.png +../../data/yoloGtold1/train/82728.png +../../data/yoloGtold1/train/82729.png +../../data/yoloGtold1/train/82730.png +../../data/yoloGtold1/train/82731.png +../../data/yoloGtold1/train/82732.png +../../data/yoloGtold1/train/82733.png +../../data/yoloGtold1/train/82734.png +../../data/yoloGtold1/train/82735.png +../../data/yoloGtold1/train/82736.png +../../data/yoloGtold1/train/82737.png +../../data/yoloGtold1/train/82738.png +../../data/yoloGtold1/train/82739.png +../../data/yoloGtold1/train/82740.png +../../data/yoloGtold1/train/82741.png +../../data/yoloGtold1/train/82742.png +../../data/yoloGtold1/train/82743.png +../../data/yoloGtold1/train/82744.png +../../data/yoloGtold1/train/82745.png +../../data/yoloGtold1/train/82746.png +../../data/yoloGtold1/train/82747.png +../../data/yoloGtold1/train/82748.png +../../data/yoloGtold1/train/82749.png +../../data/yoloGtold1/train/82750.png +../../data/yoloGtold1/train/82751.png +../../data/yoloGtold1/train/82752.png +../../data/yoloGtold1/train/82753.png +../../data/yoloGtold1/train/82754.png +../../data/yoloGtold1/train/82755.png +../../data/yoloGtold1/train/82756.png +../../data/yoloGtold1/train/82757.png +../../data/yoloGtold1/train/82758.png +../../data/yoloGtold1/train/82759.png +../../data/yoloGtold1/train/82760.png +../../data/yoloGtold1/train/82761.png +../../data/yoloGtold1/train/82762.png +../../data/yoloGtold1/train/82763.png +../../data/yoloGtold1/train/82764.png +../../data/yoloGtold1/train/82765.png +../../data/yoloGtold1/train/82766.png +../../data/yoloGtold1/train/82767.png +../../data/yoloGtold1/train/82768.png +../../data/yoloGtold1/train/82769.png +../../data/yoloGtold1/train/82770.png +../../data/yoloGtold1/train/82771.png +../../data/yoloGtold1/train/82772.png +../../data/yoloGtold1/train/82773.png +../../data/yoloGtold1/train/82774.png +../../data/yoloGtold1/train/82775.png +../../data/yoloGtold1/train/82776.png +../../data/yoloGtold1/train/82777.png +../../data/yoloGtold1/train/82778.png +../../data/yoloGtold1/train/82779.png +../../data/yoloGtold1/train/82780.png +../../data/yoloGtold1/train/82781.png +../../data/yoloGtold1/train/82782.png +../../data/yoloGtold1/train/82783.png +../../data/yoloGtold1/train/82784.png +../../data/yoloGtold1/train/82785.png +../../data/yoloGtold1/train/82786.png +../../data/yoloGtold1/train/82787.png +../../data/yoloGtold1/train/82788.png +../../data/yoloGtold1/train/82789.png +../../data/yoloGtold1/train/82790.png +../../data/yoloGtold1/train/82791.png +../../data/yoloGtold1/train/82792.png +../../data/yoloGtold1/train/82793.png +../../data/yoloGtold1/train/82794.png +../../data/yoloGtold1/train/82795.png +../../data/yoloGtold1/train/82796.png +../../data/yoloGtold1/train/82797.png +../../data/yoloGtold1/train/82798.png +../../data/yoloGtold1/train/82799.png +../../data/yoloGtold1/train/82800.png +../../data/yoloGtold1/train/82801.png +../../data/yoloGtold1/train/82802.png +../../data/yoloGtold1/train/82803.png +../../data/yoloGtold1/train/82804.png +../../data/yoloGtold1/train/82805.png +../../data/yoloGtold1/train/82806.png +../../data/yoloGtold1/train/82807.png +../../data/yoloGtold1/train/82808.png +../../data/yoloGtold1/train/82809.png +../../data/yoloGtold1/train/82810.png +../../data/yoloGtold1/train/82811.png +../../data/yoloGtold1/train/82812.png +../../data/yoloGtold1/train/82813.png +../../data/yoloGtold1/train/82814.png +../../data/yoloGtold1/train/82815.png +../../data/yoloGtold1/train/82816.png +../../data/yoloGtold1/train/82817.png +../../data/yoloGtold1/train/82818.png +../../data/yoloGtold1/train/82819.png +../../data/yoloGtold1/train/82820.png +../../data/yoloGtold1/train/82821.png +../../data/yoloGtold1/train/82822.png +../../data/yoloGtold1/train/82823.png +../../data/yoloGtold1/train/82824.png +../../data/yoloGtold1/train/82825.png +../../data/yoloGtold1/train/82826.png +../../data/yoloGtold1/train/82827.png +../../data/yoloGtold1/train/82828.png +../../data/yoloGtold1/train/82829.png +../../data/yoloGtold1/train/82830.png +../../data/yoloGtold1/train/82831.png +../../data/yoloGtold1/train/82832.png +../../data/yoloGtold1/train/82833.png +../../data/yoloGtold1/train/82834.png +../../data/yoloGtold1/train/82835.png +../../data/yoloGtold1/train/82836.png +../../data/yoloGtold1/train/82837.png +../../data/yoloGtold1/train/82838.png +../../data/yoloGtold1/train/82839.png +../../data/yoloGtold1/train/82840.png +../../data/yoloGtold1/train/82841.png +../../data/yoloGtold1/train/82842.png +../../data/yoloGtold1/train/82843.png +../../data/yoloGtold1/train/82844.png +../../data/yoloGtold1/train/82845.png +../../data/yoloGtold1/train/82846.png +../../data/yoloGtold1/train/82847.png +../../data/yoloGtold1/train/82848.png +../../data/yoloGtold1/train/82849.png +../../data/yoloGtold1/train/82850.png +../../data/yoloGtold1/train/82851.png +../../data/yoloGtold1/train/82852.png +../../data/yoloGtold1/train/82853.png +../../data/yoloGtold1/train/82854.png +../../data/yoloGtold1/train/82855.png +../../data/yoloGtold1/train/82856.png +../../data/yoloGtold1/train/82857.png +../../data/yoloGtold1/train/82858.png +../../data/yoloGtold1/train/82859.png +../../data/yoloGtold1/train/82860.png +../../data/yoloGtold1/train/82861.png +../../data/yoloGtold1/train/82862.png +../../data/yoloGtold1/train/82863.png +../../data/yoloGtold1/train/82864.png +../../data/yoloGtold1/train/82865.png +../../data/yoloGtold1/train/82866.png +../../data/yoloGtold1/train/82867.png +../../data/yoloGtold1/train/82868.png +../../data/yoloGtold1/train/82869.png +../../data/yoloGtold1/train/82870.png +../../data/yoloGtold1/train/82871.png +../../data/yoloGtold1/train/82872.png +../../data/yoloGtold1/train/82873.png +../../data/yoloGtold1/train/82874.png +../../data/yoloGtold1/train/82875.png +../../data/yoloGtold1/train/82876.png +../../data/yoloGtold1/train/82877.png +../../data/yoloGtold1/train/82878.png +../../data/yoloGtold1/train/82879.png +../../data/yoloGtold1/train/82880.png +../../data/yoloGtold1/train/82881.png +../../data/yoloGtold1/train/82882.png +../../data/yoloGtold1/train/82883.png +../../data/yoloGtold1/train/82884.png +../../data/yoloGtold1/train/82885.png +../../data/yoloGtold1/train/82886.png +../../data/yoloGtold1/train/82887.png +../../data/yoloGtold1/train/82888.png +../../data/yoloGtold1/train/82889.png +../../data/yoloGtold1/train/82890.png +../../data/yoloGtold1/train/82891.png +../../data/yoloGtold1/train/82892.png +../../data/yoloGtold1/train/82893.png +../../data/yoloGtold1/train/82894.png +../../data/yoloGtold1/train/82895.png +../../data/yoloGtold1/train/82896.png +../../data/yoloGtold1/train/82897.png +../../data/yoloGtold1/train/82898.png +../../data/yoloGtold1/train/82899.png +../../data/yoloGtold1/train/82900.png +../../data/yoloGtold1/train/82901.png +../../data/yoloGtold1/train/82902.png +../../data/yoloGtold1/train/82903.png +../../data/yoloGtold1/train/82904.png +../../data/yoloGtold1/train/82905.png +../../data/yoloGtold1/train/82906.png +../../data/yoloGtold1/train/82907.png +../../data/yoloGtold1/train/82908.png +../../data/yoloGtold1/train/82909.png +../../data/yoloGtold1/train/82910.png +../../data/yoloGtold1/train/82911.png +../../data/yoloGtold1/train/82912.png +../../data/yoloGtold1/train/82913.png +../../data/yoloGtold1/train/82914.png +../../data/yoloGtold1/train/82915.png +../../data/yoloGtold1/train/82916.png +../../data/yoloGtold1/train/82917.png +../../data/yoloGtold1/train/82918.png +../../data/yoloGtold1/train/82919.png +../../data/yoloGtold1/train/82920.png +../../data/yoloGtold1/train/82921.png +../../data/yoloGtold1/train/82922.png +../../data/yoloGtold1/train/82923.png +../../data/yoloGtold1/train/82924.png +../../data/yoloGtold1/train/82925.png +../../data/yoloGtold1/train/82926.png +../../data/yoloGtold1/train/82927.png +../../data/yoloGtold1/train/82928.png +../../data/yoloGtold1/train/82929.png +../../data/yoloGtold1/train/82930.png +../../data/yoloGtold1/train/82931.png +../../data/yoloGtold1/train/82932.png +../../data/yoloGtold1/train/82933.png +../../data/yoloGtold1/train/82934.png +../../data/yoloGtold1/train/82935.png +../../data/yoloGtold1/train/82936.png +../../data/yoloGtold1/train/82937.png +../../data/yoloGtold1/train/82938.png +../../data/yoloGtold1/train/82939.png +../../data/yoloGtold1/train/82940.png +../../data/yoloGtold1/train/82941.png +../../data/yoloGtold1/train/82942.png +../../data/yoloGtold1/train/82943.png +../../data/yoloGtold1/train/82944.png +../../data/yoloGtold1/train/82945.png +../../data/yoloGtold1/train/82946.png +../../data/yoloGtold1/train/82947.png +../../data/yoloGtold1/train/82948.png +../../data/yoloGtold1/train/82949.png +../../data/yoloGtold1/train/82950.png +../../data/yoloGtold1/train/82951.png +../../data/yoloGtold1/train/82952.png +../../data/yoloGtold1/train/82953.png +../../data/yoloGtold1/train/82954.png +../../data/yoloGtold1/train/82955.png +../../data/yoloGtold1/train/82956.png +../../data/yoloGtold1/train/82957.png +../../data/yoloGtold1/train/82958.png +../../data/yoloGtold1/train/82959.png +../../data/yoloGtold1/train/82960.png +../../data/yoloGtold1/train/82961.png +../../data/yoloGtold1/train/82962.png +../../data/yoloGtold1/train/82963.png +../../data/yoloGtold1/train/82964.png +../../data/yoloGtold1/train/82965.png +../../data/yoloGtold1/train/82966.png +../../data/yoloGtold1/train/82967.png +../../data/yoloGtold1/train/82968.png +../../data/yoloGtold1/train/82969.png +../../data/yoloGtold1/train/82970.png +../../data/yoloGtold1/train/82971.png +../../data/yoloGtold1/train/82972.png +../../data/yoloGtold1/train/82973.png +../../data/yoloGtold1/train/82974.png +../../data/yoloGtold1/train/82975.png +../../data/yoloGtold1/train/82976.png +../../data/yoloGtold1/train/82977.png +../../data/yoloGtold1/train/82978.png +../../data/yoloGtold1/train/82979.png +../../data/yoloGtold1/train/82980.png +../../data/yoloGtold1/train/82981.png +../../data/yoloGtold1/train/82982.png +../../data/yoloGtold1/train/82983.png +../../data/yoloGtold1/train/82984.png +../../data/yoloGtold1/train/82985.png +../../data/yoloGtold1/train/82986.png +../../data/yoloGtold1/train/82987.png +../../data/yoloGtold1/train/82988.png +../../data/yoloGtold1/train/82989.png +../../data/yoloGtold1/train/82990.png +../../data/yoloGtold1/train/82991.png +../../data/yoloGtold1/train/82992.png +../../data/yoloGtold1/train/82993.png +../../data/yoloGtold1/train/82994.png +../../data/yoloGtold1/train/82995.png +../../data/yoloGtold1/train/82996.png +../../data/yoloGtold1/train/82997.png +../../data/yoloGtold1/train/82998.png +../../data/yoloGtold1/train/82999.png +../../data/yoloGtold1/train/83000.png +../../data/yoloGtold1/train/83001.png +../../data/yoloGtold1/train/83002.png +../../data/yoloGtold1/train/83003.png +../../data/yoloGtold1/train/83004.png +../../data/yoloGtold1/train/83005.png +../../data/yoloGtold1/train/83006.png +../../data/yoloGtold1/train/83007.png +../../data/yoloGtold1/train/83008.png +../../data/yoloGtold1/train/83009.png +../../data/yoloGtold1/train/83010.png +../../data/yoloGtold1/train/83011.png +../../data/yoloGtold1/train/83012.png +../../data/yoloGtold1/train/83013.png +../../data/yoloGtold1/train/83014.png +../../data/yoloGtold1/train/83015.png +../../data/yoloGtold1/train/83016.png +../../data/yoloGtold1/train/83017.png +../../data/yoloGtold1/train/83018.png +../../data/yoloGtold1/train/83019.png +../../data/yoloGtold1/train/83020.png +../../data/yoloGtold1/train/83021.png +../../data/yoloGtold1/train/83022.png +../../data/yoloGtold1/train/83023.png +../../data/yoloGtold1/train/83024.png +../../data/yoloGtold1/train/83025.png +../../data/yoloGtold1/train/83026.png +../../data/yoloGtold1/train/83027.png +../../data/yoloGtold1/train/83028.png +../../data/yoloGtold1/train/83029.png +../../data/yoloGtold1/train/83030.png +../../data/yoloGtold1/train/83031.png +../../data/yoloGtold1/train/83032.png +../../data/yoloGtold1/train/83033.png +../../data/yoloGtold1/train/83034.png +../../data/yoloGtold1/train/83035.png +../../data/yoloGtold1/train/83036.png +../../data/yoloGtold1/train/83037.png +../../data/yoloGtold1/train/83038.png +../../data/yoloGtold1/train/83039.png +../../data/yoloGtold1/train/83040.png +../../data/yoloGtold1/train/83041.png +../../data/yoloGtold1/train/83042.png +../../data/yoloGtold1/train/83043.png +../../data/yoloGtold1/train/83044.png +../../data/yoloGtold1/train/83045.png +../../data/yoloGtold1/train/83046.png +../../data/yoloGtold1/train/83047.png +../../data/yoloGtold1/train/83048.png +../../data/yoloGtold1/train/83049.png +../../data/yoloGtold1/train/83050.png +../../data/yoloGtold1/train/83051.png +../../data/yoloGtold1/train/83052.png +../../data/yoloGtold1/train/83053.png +../../data/yoloGtold1/train/83054.png +../../data/yoloGtold1/train/83055.png +../../data/yoloGtold1/train/83056.png +../../data/yoloGtold1/train/83057.png +../../data/yoloGtold1/train/83058.png +../../data/yoloGtold1/train/83059.png +../../data/yoloGtold1/train/83060.png +../../data/yoloGtold1/train/83061.png +../../data/yoloGtold1/train/83062.png +../../data/yoloGtold1/train/83063.png +../../data/yoloGtold1/train/83064.png +../../data/yoloGtold1/train/83065.png +../../data/yoloGtold1/train/83066.png +../../data/yoloGtold1/train/83067.png +../../data/yoloGtold1/train/83068.png +../../data/yoloGtold1/train/83069.png +../../data/yoloGtold1/train/83070.png +../../data/yoloGtold1/train/83071.png +../../data/yoloGtold1/train/83072.png +../../data/yoloGtold1/train/83073.png +../../data/yoloGtold1/train/83074.png +../../data/yoloGtold1/train/83075.png +../../data/yoloGtold1/train/83076.png +../../data/yoloGtold1/train/83077.png +../../data/yoloGtold1/train/83078.png +../../data/yoloGtold1/train/83079.png +../../data/yoloGtold1/train/83080.png +../../data/yoloGtold1/train/83081.png +../../data/yoloGtold1/train/83082.png +../../data/yoloGtold1/train/83083.png +../../data/yoloGtold1/train/83084.png +../../data/yoloGtold1/train/83085.png +../../data/yoloGtold1/train/83086.png +../../data/yoloGtold1/train/83087.png +../../data/yoloGtold1/train/83088.png +../../data/yoloGtold1/train/83089.png +../../data/yoloGtold1/train/83090.png +../../data/yoloGtold1/train/83091.png +../../data/yoloGtold1/train/83092.png +../../data/yoloGtold1/train/83093.png +../../data/yoloGtold1/train/83094.png +../../data/yoloGtold1/train/83095.png +../../data/yoloGtold1/train/83096.png +../../data/yoloGtold1/train/83097.png +../../data/yoloGtold1/train/83098.png +../../data/yoloGtold1/train/83099.png +../../data/yoloGtold1/train/83100.png +../../data/yoloGtold1/train/83101.png +../../data/yoloGtold1/train/83102.png +../../data/yoloGtold1/train/83103.png +../../data/yoloGtold1/train/83104.png +../../data/yoloGtold1/train/83105.png +../../data/yoloGtold1/train/83106.png +../../data/yoloGtold1/train/83107.png +../../data/yoloGtold1/train/83108.png +../../data/yoloGtold1/train/83109.png +../../data/yoloGtold1/train/83110.png +../../data/yoloGtold1/train/83111.png +../../data/yoloGtold1/train/83112.png +../../data/yoloGtold1/train/83113.png +../../data/yoloGtold1/train/83114.png +../../data/yoloGtold1/train/83115.png +../../data/yoloGtold1/train/83116.png +../../data/yoloGtold1/train/83117.png +../../data/yoloGtold1/train/83118.png +../../data/yoloGtold1/train/83119.png +../../data/yoloGtold1/train/83120.png +../../data/yoloGtold1/train/83121.png +../../data/yoloGtold1/train/83122.png +../../data/yoloGtold1/train/83123.png +../../data/yoloGtold1/train/83124.png +../../data/yoloGtold1/train/83125.png +../../data/yoloGtold1/train/83126.png +../../data/yoloGtold1/train/83127.png +../../data/yoloGtold1/train/83128.png +../../data/yoloGtold1/train/83129.png +../../data/yoloGtold1/train/83130.png +../../data/yoloGtold1/train/83131.png +../../data/yoloGtold1/train/83132.png +../../data/yoloGtold1/train/83133.png +../../data/yoloGtold1/train/83134.png +../../data/yoloGtold1/train/83135.png +../../data/yoloGtold1/train/83136.png +../../data/yoloGtold1/train/83137.png +../../data/yoloGtold1/train/83138.png +../../data/yoloGtold1/train/83139.png +../../data/yoloGtold1/train/83140.png +../../data/yoloGtold1/train/83141.png +../../data/yoloGtold1/train/83142.png +../../data/yoloGtold1/train/83143.png +../../data/yoloGtold1/train/83144.png +../../data/yoloGtold1/train/83145.png +../../data/yoloGtold1/train/83146.png +../../data/yoloGtold1/train/83147.png +../../data/yoloGtold1/train/83148.png +../../data/yoloGtold1/train/83149.png +../../data/yoloGtold1/train/83150.png +../../data/yoloGtold1/train/83151.png +../../data/yoloGtold1/train/83152.png +../../data/yoloGtold1/train/83153.png +../../data/yoloGtold1/train/83154.png +../../data/yoloGtold1/train/83155.png +../../data/yoloGtold1/train/83156.png +../../data/yoloGtold1/train/83157.png +../../data/yoloGtold1/train/83158.png +../../data/yoloGtold1/train/83159.png +../../data/yoloGtold1/train/83160.png +../../data/yoloGtold1/train/83161.png +../../data/yoloGtold1/train/83162.png +../../data/yoloGtold1/train/83163.png +../../data/yoloGtold1/train/83164.png +../../data/yoloGtold1/train/83165.png +../../data/yoloGtold1/train/83166.png +../../data/yoloGtold1/train/83167.png +../../data/yoloGtold1/train/83168.png +../../data/yoloGtold1/train/83169.png +../../data/yoloGtold1/train/83170.png +../../data/yoloGtold1/train/83171.png +../../data/yoloGtold1/train/83172.png +../../data/yoloGtold1/train/83173.png +../../data/yoloGtold1/train/83174.png +../../data/yoloGtold1/train/83175.png +../../data/yoloGtold1/train/83176.png +../../data/yoloGtold1/train/83177.png +../../data/yoloGtold1/train/83178.png +../../data/yoloGtold1/train/83179.png +../../data/yoloGtold1/train/83180.png +../../data/yoloGtold1/train/83181.png +../../data/yoloGtold1/train/83182.png +../../data/yoloGtold1/train/83183.png +../../data/yoloGtold1/train/83184.png +../../data/yoloGtold1/train/83185.png +../../data/yoloGtold1/train/83186.png +../../data/yoloGtold1/train/83187.png +../../data/yoloGtold1/train/83188.png +../../data/yoloGtold1/train/83189.png +../../data/yoloGtold1/train/83190.png +../../data/yoloGtold1/train/83191.png +../../data/yoloGtold1/train/83192.png +../../data/yoloGtold1/train/83193.png +../../data/yoloGtold1/train/83194.png +../../data/yoloGtold1/train/83195.png +../../data/yoloGtold1/train/83196.png +../../data/yoloGtold1/train/83197.png +../../data/yoloGtold1/train/83198.png +../../data/yoloGtold1/train/83199.png +../../data/yoloGtold1/train/83200.png +../../data/yoloGtold1/train/83201.png +../../data/yoloGtold1/train/83202.png +../../data/yoloGtold1/train/83203.png +../../data/yoloGtold1/train/83204.png +../../data/yoloGtold1/train/83205.png +../../data/yoloGtold1/train/83206.png +../../data/yoloGtold1/train/83207.png +../../data/yoloGtold1/train/83208.png +../../data/yoloGtold1/train/83209.png +../../data/yoloGtold1/train/83210.png +../../data/yoloGtold1/train/83211.png +../../data/yoloGtold1/train/83212.png +../../data/yoloGtold1/train/83213.png +../../data/yoloGtold1/train/83214.png +../../data/yoloGtold1/train/83215.png +../../data/yoloGtold1/train/83216.png +../../data/yoloGtold1/train/83217.png +../../data/yoloGtold1/train/83218.png +../../data/yoloGtold1/train/83219.png +../../data/yoloGtold1/train/83220.png +../../data/yoloGtold1/train/83221.png +../../data/yoloGtold1/train/83222.png +../../data/yoloGtold1/train/83223.png +../../data/yoloGtold1/train/83224.png +../../data/yoloGtold1/train/83225.png +../../data/yoloGtold1/train/83226.png +../../data/yoloGtold1/train/83227.png +../../data/yoloGtold1/train/83228.png +../../data/yoloGtold1/train/83229.png +../../data/yoloGtold1/train/83230.png +../../data/yoloGtold1/train/83231.png +../../data/yoloGtold1/train/83232.png +../../data/yoloGtold1/train/83233.png +../../data/yoloGtold1/train/83234.png +../../data/yoloGtold1/train/83235.png +../../data/yoloGtold1/train/83236.png +../../data/yoloGtold1/train/83237.png +../../data/yoloGtold1/train/83238.png +../../data/yoloGtold1/train/83239.png +../../data/yoloGtold1/train/83240.png +../../data/yoloGtold1/train/83241.png +../../data/yoloGtold1/train/83242.png +../../data/yoloGtold1/train/83243.png +../../data/yoloGtold1/train/83244.png +../../data/yoloGtold1/train/83245.png +../../data/yoloGtold1/train/83246.png +../../data/yoloGtold1/train/83247.png +../../data/yoloGtold1/train/83248.png +../../data/yoloGtold1/train/83249.png +../../data/yoloGtold1/train/83250.png +../../data/yoloGtold1/train/83251.png +../../data/yoloGtold1/train/83252.png +../../data/yoloGtold1/train/83253.png +../../data/yoloGtold1/train/83254.png +../../data/yoloGtold1/train/83255.png +../../data/yoloGtold1/train/83256.png +../../data/yoloGtold1/train/83257.png +../../data/yoloGtold1/train/83258.png +../../data/yoloGtold1/train/83259.png +../../data/yoloGtold1/train/83260.png +../../data/yoloGtold1/train/83261.png +../../data/yoloGtold1/train/83262.png +../../data/yoloGtold1/train/83263.png +../../data/yoloGtold1/train/83264.png +../../data/yoloGtold1/train/83265.png +../../data/yoloGtold1/train/83266.png +../../data/yoloGtold1/train/83267.png +../../data/yoloGtold1/train/83268.png +../../data/yoloGtold1/train/83269.png +../../data/yoloGtold1/train/83270.png +../../data/yoloGtold1/train/83271.png +../../data/yoloGtold1/train/83272.png +../../data/yoloGtold1/train/83273.png +../../data/yoloGtold1/train/83274.png +../../data/yoloGtold1/train/83275.png +../../data/yoloGtold1/train/83276.png +../../data/yoloGtold1/train/83277.png +../../data/yoloGtold1/train/83278.png +../../data/yoloGtold1/train/83279.png +../../data/yoloGtold1/train/83280.png +../../data/yoloGtold1/train/83281.png +../../data/yoloGtold1/train/83282.png +../../data/yoloGtold1/train/83283.png +../../data/yoloGtold1/train/83284.png +../../data/yoloGtold1/train/83285.png +../../data/yoloGtold1/train/83286.png +../../data/yoloGtold1/train/83287.png +../../data/yoloGtold1/train/83288.png +../../data/yoloGtold1/train/83289.png +../../data/yoloGtold1/train/83290.png +../../data/yoloGtold1/train/83291.png +../../data/yoloGtold1/train/83292.png +../../data/yoloGtold1/train/83293.png +../../data/yoloGtold1/train/83294.png +../../data/yoloGtold1/train/83295.png +../../data/yoloGtold1/train/83296.png +../../data/yoloGtold1/train/83297.png +../../data/yoloGtold1/train/83298.png +../../data/yoloGtold1/train/83299.png +../../data/yoloGtold1/train/83300.png +../../data/yoloGtold1/train/83301.png +../../data/yoloGtold1/train/83302.png +../../data/yoloGtold1/train/83303.png +../../data/yoloGtold1/train/83304.png +../../data/yoloGtold1/train/83305.png +../../data/yoloGtold1/train/83306.png +../../data/yoloGtold1/train/83307.png +../../data/yoloGtold1/train/83308.png +../../data/yoloGtold1/train/83309.png +../../data/yoloGtold1/train/83310.png +../../data/yoloGtold1/train/83311.png +../../data/yoloGtold1/train/83312.png +../../data/yoloGtold1/train/83313.png +../../data/yoloGtold1/train/83314.png +../../data/yoloGtold1/train/83315.png +../../data/yoloGtold1/train/83316.png +../../data/yoloGtold1/train/83317.png +../../data/yoloGtold1/train/83318.png +../../data/yoloGtold1/train/83319.png +../../data/yoloGtold1/train/83320.png +../../data/yoloGtold1/train/83321.png +../../data/yoloGtold1/train/83322.png +../../data/yoloGtold1/train/83323.png +../../data/yoloGtold1/train/83324.png +../../data/yoloGtold1/train/83325.png +../../data/yoloGtold1/train/83326.png +../../data/yoloGtold1/train/83327.png +../../data/yoloGtold1/train/83328.png +../../data/yoloGtold1/train/83329.png +../../data/yoloGtold1/train/83330.png +../../data/yoloGtold1/train/83331.png +../../data/yoloGtold1/train/83332.png +../../data/yoloGtold1/train/83333.png +../../data/yoloGtold1/train/83334.png +../../data/yoloGtold1/train/83335.png +../../data/yoloGtold1/train/83336.png +../../data/yoloGtold1/train/83337.png +../../data/yoloGtold1/train/83338.png +../../data/yoloGtold1/train/83339.png +../../data/yoloGtold1/train/83340.png +../../data/yoloGtold1/train/83341.png +../../data/yoloGtold1/train/83342.png +../../data/yoloGtold1/train/83343.png +../../data/yoloGtold1/train/83344.png +../../data/yoloGtold1/train/83345.png +../../data/yoloGtold1/train/83346.png +../../data/yoloGtold1/train/83347.png +../../data/yoloGtold1/train/83348.png +../../data/yoloGtold1/train/83349.png +../../data/yoloGtold1/train/83350.png +../../data/yoloGtold1/train/83351.png +../../data/yoloGtold1/train/83352.png +../../data/yoloGtold1/train/83353.png +../../data/yoloGtold1/train/83354.png +../../data/yoloGtold1/train/83355.png +../../data/yoloGtold1/train/83356.png +../../data/yoloGtold1/train/83357.png +../../data/yoloGtold1/train/83358.png +../../data/yoloGtold1/train/83359.png +../../data/yoloGtold1/train/83360.png +../../data/yoloGtold1/train/83361.png +../../data/yoloGtold1/train/83362.png +../../data/yoloGtold1/train/83363.png +../../data/yoloGtold1/train/83364.png +../../data/yoloGtold1/train/83365.png +../../data/yoloGtold1/train/83366.png +../../data/yoloGtold1/train/83367.png +../../data/yoloGtold1/train/83368.png +../../data/yoloGtold1/train/83369.png +../../data/yoloGtold1/train/83370.png +../../data/yoloGtold1/train/83371.png +../../data/yoloGtold1/train/83372.png +../../data/yoloGtold1/train/83373.png +../../data/yoloGtold1/train/83374.png +../../data/yoloGtold1/train/83375.png +../../data/yoloGtold1/train/83376.png +../../data/yoloGtold1/train/83377.png +../../data/yoloGtold1/train/83378.png +../../data/yoloGtold1/train/83379.png +../../data/yoloGtold1/train/83380.png +../../data/yoloGtold1/train/83381.png +../../data/yoloGtold1/train/83382.png +../../data/yoloGtold1/train/83383.png +../../data/yoloGtold1/train/83384.png +../../data/yoloGtold1/train/83385.png +../../data/yoloGtold1/train/83386.png +../../data/yoloGtold1/train/83387.png +../../data/yoloGtold1/train/83388.png +../../data/yoloGtold1/train/83389.png +../../data/yoloGtold1/train/83390.png +../../data/yoloGtold1/train/83391.png +../../data/yoloGtold1/train/83392.png +../../data/yoloGtold1/train/83393.png +../../data/yoloGtold1/train/83394.png +../../data/yoloGtold1/train/83395.png +../../data/yoloGtold1/train/83396.png +../../data/yoloGtold1/train/83397.png +../../data/yoloGtold1/train/83398.png +../../data/yoloGtold1/train/83399.png +../../data/yoloGtold1/train/83400.png +../../data/yoloGtold1/train/83401.png +../../data/yoloGtold1/train/83402.png +../../data/yoloGtold1/train/83403.png +../../data/yoloGtold1/train/83404.png +../../data/yoloGtold1/train/83405.png +../../data/yoloGtold1/train/83406.png +../../data/yoloGtold1/train/83407.png +../../data/yoloGtold1/train/83408.png +../../data/yoloGtold1/train/83409.png +../../data/yoloGtold1/train/83410.png +../../data/yoloGtold1/train/83411.png +../../data/yoloGtold1/train/83412.png +../../data/yoloGtold1/train/83413.png +../../data/yoloGtold1/train/83414.png +../../data/yoloGtold1/train/83415.png +../../data/yoloGtold1/train/83416.png +../../data/yoloGtold1/train/83417.png +../../data/yoloGtold1/train/83418.png +../../data/yoloGtold1/train/83419.png +../../data/yoloGtold1/train/83420.png +../../data/yoloGtold1/train/83421.png +../../data/yoloGtold1/train/83422.png +../../data/yoloGtold1/train/83423.png +../../data/yoloGtold1/train/83424.png +../../data/yoloGtold1/train/83425.png +../../data/yoloGtold1/train/83426.png +../../data/yoloGtold1/train/83427.png +../../data/yoloGtold1/train/83428.png +../../data/yoloGtold1/train/83429.png +../../data/yoloGtold1/train/83430.png +../../data/yoloGtold1/train/83431.png +../../data/yoloGtold1/train/83432.png +../../data/yoloGtold1/train/83433.png +../../data/yoloGtold1/train/83434.png +../../data/yoloGtold1/train/83435.png +../../data/yoloGtold1/train/83436.png +../../data/yoloGtold1/train/83437.png +../../data/yoloGtold1/train/83438.png +../../data/yoloGtold1/train/83439.png +../../data/yoloGtold1/train/83440.png +../../data/yoloGtold1/train/83441.png +../../data/yoloGtold1/train/83442.png +../../data/yoloGtold1/train/83443.png +../../data/yoloGtold1/train/83444.png +../../data/yoloGtold1/train/83445.png +../../data/yoloGtold1/train/83446.png +../../data/yoloGtold1/train/83447.png +../../data/yoloGtold1/train/83448.png +../../data/yoloGtold1/train/83449.png +../../data/yoloGtold1/train/83450.png +../../data/yoloGtold1/train/83451.png +../../data/yoloGtold1/train/83452.png +../../data/yoloGtold1/train/83453.png +../../data/yoloGtold1/train/83454.png +../../data/yoloGtold1/train/83455.png +../../data/yoloGtold1/train/83456.png +../../data/yoloGtold1/train/83457.png +../../data/yoloGtold1/train/83458.png +../../data/yoloGtold1/train/83459.png +../../data/yoloGtold1/train/83460.png +../../data/yoloGtold1/train/83461.png +../../data/yoloGtold1/train/83462.png +../../data/yoloGtold1/train/83463.png +../../data/yoloGtold1/train/83464.png +../../data/yoloGtold1/train/83465.png +../../data/yoloGtold1/train/83466.png +../../data/yoloGtold1/train/83467.png +../../data/yoloGtold1/train/83468.png +../../data/yoloGtold1/train/83469.png +../../data/yoloGtold1/train/83470.png +../../data/yoloGtold1/train/83471.png +../../data/yoloGtold1/train/83472.png +../../data/yoloGtold1/train/83473.png +../../data/yoloGtold1/train/83474.png +../../data/yoloGtold1/train/83475.png +../../data/yoloGtold1/train/83476.png +../../data/yoloGtold1/train/83477.png +../../data/yoloGtold1/train/83478.png +../../data/yoloGtold1/train/83479.png +../../data/yoloGtold1/train/83480.png +../../data/yoloGtold1/train/83481.png +../../data/yoloGtold1/train/83482.png +../../data/yoloGtold1/train/83483.png +../../data/yoloGtold1/train/83484.png +../../data/yoloGtold1/train/83485.png +../../data/yoloGtold1/train/83486.png +../../data/yoloGtold1/train/83487.png +../../data/yoloGtold1/train/83488.png +../../data/yoloGtold1/train/83489.png +../../data/yoloGtold1/train/83490.png +../../data/yoloGtold1/train/83491.png +../../data/yoloGtold1/train/83492.png +../../data/yoloGtold1/train/83493.png +../../data/yoloGtold1/train/83494.png +../../data/yoloGtold1/train/83495.png +../../data/yoloGtold1/train/83496.png +../../data/yoloGtold1/train/83497.png +../../data/yoloGtold1/train/83498.png +../../data/yoloGtold1/train/83499.png +../../data/yoloGtold1/train/83500.png +../../data/yoloGtold1/train/83501.png +../../data/yoloGtold1/train/83502.png +../../data/yoloGtold1/train/83503.png +../../data/yoloGtold1/train/83504.png +../../data/yoloGtold1/train/83505.png +../../data/yoloGtold1/train/83506.png +../../data/yoloGtold1/train/83507.png +../../data/yoloGtold1/train/83508.png +../../data/yoloGtold1/train/83509.png +../../data/yoloGtold1/train/83510.png +../../data/yoloGtold1/train/83511.png +../../data/yoloGtold1/train/83512.png +../../data/yoloGtold1/train/83513.png +../../data/yoloGtold1/train/83514.png +../../data/yoloGtold1/train/83515.png +../../data/yoloGtold1/train/83516.png +../../data/yoloGtold1/train/83517.png +../../data/yoloGtold1/train/83518.png +../../data/yoloGtold1/train/83519.png +../../data/yoloGtold1/train/83520.png +../../data/yoloGtold1/train/83521.png +../../data/yoloGtold1/train/83522.png +../../data/yoloGtold1/train/83523.png +../../data/yoloGtold1/train/83524.png +../../data/yoloGtold1/train/83525.png +../../data/yoloGtold1/train/83526.png +../../data/yoloGtold1/train/83527.png +../../data/yoloGtold1/train/83528.png +../../data/yoloGtold1/train/83529.png +../../data/yoloGtold1/train/83530.png +../../data/yoloGtold1/train/83531.png +../../data/yoloGtold1/train/83532.png +../../data/yoloGtold1/train/83533.png +../../data/yoloGtold1/train/83534.png +../../data/yoloGtold1/train/83535.png +../../data/yoloGtold1/train/83536.png +../../data/yoloGtold1/train/83537.png +../../data/yoloGtold1/train/83538.png +../../data/yoloGtold1/train/83539.png +../../data/yoloGtold1/train/83540.png +../../data/yoloGtold1/train/83541.png +../../data/yoloGtold1/train/83542.png +../../data/yoloGtold1/train/83543.png +../../data/yoloGtold1/train/83544.png +../../data/yoloGtold1/train/83545.png +../../data/yoloGtold1/train/83546.png +../../data/yoloGtold1/train/83547.png +../../data/yoloGtold1/train/83548.png +../../data/yoloGtold1/train/83549.png +../../data/yoloGtold1/train/83550.png +../../data/yoloGtold1/train/83551.png +../../data/yoloGtold1/train/83552.png +../../data/yoloGtold1/train/83553.png +../../data/yoloGtold1/train/83554.png +../../data/yoloGtold1/train/83555.png +../../data/yoloGtold1/train/83556.png +../../data/yoloGtold1/train/83557.png +../../data/yoloGtold1/train/83558.png +../../data/yoloGtold1/train/83559.png +../../data/yoloGtold1/train/83560.png +../../data/yoloGtold1/train/83561.png +../../data/yoloGtold1/train/83562.png +../../data/yoloGtold1/train/83563.png +../../data/yoloGtold1/train/83564.png +../../data/yoloGtold1/train/83565.png +../../data/yoloGtold1/train/83566.png +../../data/yoloGtold1/train/83567.png +../../data/yoloGtold1/train/83568.png +../../data/yoloGtold1/train/83569.png +../../data/yoloGtold1/train/83570.png +../../data/yoloGtold1/train/83571.png +../../data/yoloGtold1/train/83572.png +../../data/yoloGtold1/train/83573.png +../../data/yoloGtold1/train/83574.png +../../data/yoloGtold1/train/83575.png +../../data/yoloGtold1/train/83576.png +../../data/yoloGtold1/train/83577.png +../../data/yoloGtold1/train/83578.png +../../data/yoloGtold1/train/83579.png +../../data/yoloGtold1/train/83580.png +../../data/yoloGtold1/train/83581.png +../../data/yoloGtold1/train/83582.png +../../data/yoloGtold1/train/83583.png +../../data/yoloGtold1/train/83584.png +../../data/yoloGtold1/train/83585.png +../../data/yoloGtold1/train/83586.png +../../data/yoloGtold1/train/83587.png +../../data/yoloGtold1/train/83588.png +../../data/yoloGtold1/train/83589.png +../../data/yoloGtold1/train/83590.png +../../data/yoloGtold1/train/83591.png +../../data/yoloGtold1/train/83592.png +../../data/yoloGtold1/train/83593.png +../../data/yoloGtold1/train/83594.png +../../data/yoloGtold1/train/83595.png +../../data/yoloGtold1/train/83596.png +../../data/yoloGtold1/train/83597.png +../../data/yoloGtold1/train/83598.png +../../data/yoloGtold1/train/83599.png +../../data/yoloGtold1/train/83600.png +../../data/yoloGtold1/train/83601.png +../../data/yoloGtold1/train/83602.png +../../data/yoloGtold1/train/83603.png +../../data/yoloGtold1/train/83604.png +../../data/yoloGtold1/train/83605.png +../../data/yoloGtold1/train/83606.png +../../data/yoloGtold1/train/83607.png +../../data/yoloGtold1/train/83608.png +../../data/yoloGtold1/train/83609.png +../../data/yoloGtold1/train/83610.png +../../data/yoloGtold1/train/83611.png +../../data/yoloGtold1/train/83612.png +../../data/yoloGtold1/train/83613.png +../../data/yoloGtold1/train/83614.png +../../data/yoloGtold1/train/83615.png +../../data/yoloGtold1/train/83616.png +../../data/yoloGtold1/train/83617.png +../../data/yoloGtold1/train/83618.png +../../data/yoloGtold1/train/83619.png +../../data/yoloGtold1/train/83620.png +../../data/yoloGtold1/train/83621.png +../../data/yoloGtold1/train/83622.png +../../data/yoloGtold1/train/83623.png +../../data/yoloGtold1/train/83624.png +../../data/yoloGtold1/train/83625.png +../../data/yoloGtold1/train/83626.png +../../data/yoloGtold1/train/83627.png +../../data/yoloGtold1/train/83628.png +../../data/yoloGtold1/train/83629.png +../../data/yoloGtold1/train/83630.png +../../data/yoloGtold1/train/83631.png +../../data/yoloGtold1/train/83632.png +../../data/yoloGtold1/train/83633.png +../../data/yoloGtold1/train/83634.png +../../data/yoloGtold1/train/83635.png +../../data/yoloGtold1/train/83636.png +../../data/yoloGtold1/train/83637.png +../../data/yoloGtold1/train/83638.png +../../data/yoloGtold1/train/83639.png +../../data/yoloGtold1/train/83640.png +../../data/yoloGtold1/train/83641.png +../../data/yoloGtold1/train/83642.png +../../data/yoloGtold1/train/83643.png +../../data/yoloGtold1/train/83644.png +../../data/yoloGtold1/train/83645.png +../../data/yoloGtold1/train/83646.png +../../data/yoloGtold1/train/83647.png +../../data/yoloGtold1/train/83648.png +../../data/yoloGtold1/train/83649.png +../../data/yoloGtold1/train/83650.png +../../data/yoloGtold1/train/83651.png +../../data/yoloGtold1/train/83652.png +../../data/yoloGtold1/train/83653.png +../../data/yoloGtold1/train/83654.png +../../data/yoloGtold1/train/83655.png +../../data/yoloGtold1/train/83656.png +../../data/yoloGtold1/train/83657.png +../../data/yoloGtold1/train/83658.png +../../data/yoloGtold1/train/83659.png +../../data/yoloGtold1/train/83660.png +../../data/yoloGtold1/train/83661.png +../../data/yoloGtold1/train/83662.png +../../data/yoloGtold1/train/83663.png +../../data/yoloGtold1/train/83664.png +../../data/yoloGtold1/train/83665.png +../../data/yoloGtold1/train/83666.png +../../data/yoloGtold1/train/83667.png +../../data/yoloGtold1/train/83668.png +../../data/yoloGtold1/train/83669.png +../../data/yoloGtold1/train/83670.png +../../data/yoloGtold1/train/83671.png +../../data/yoloGtold1/train/83672.png +../../data/yoloGtold1/train/83673.png +../../data/yoloGtold1/train/83674.png +../../data/yoloGtold1/train/83675.png +../../data/yoloGtold1/train/83676.png +../../data/yoloGtold1/train/83677.png +../../data/yoloGtold1/train/83678.png +../../data/yoloGtold1/train/83679.png +../../data/yoloGtold1/train/83680.png +../../data/yoloGtold1/train/83681.png +../../data/yoloGtold1/train/83682.png +../../data/yoloGtold1/train/83683.png +../../data/yoloGtold1/train/83684.png +../../data/yoloGtold1/train/83685.png +../../data/yoloGtold1/train/83686.png +../../data/yoloGtold1/train/83687.png +../../data/yoloGtold1/train/83688.png +../../data/yoloGtold1/train/83689.png +../../data/yoloGtold1/train/83690.png +../../data/yoloGtold1/train/83691.png +../../data/yoloGtold1/train/83692.png +../../data/yoloGtold1/train/83693.png +../../data/yoloGtold1/train/83694.png +../../data/yoloGtold1/train/83695.png +../../data/yoloGtold1/train/83696.png +../../data/yoloGtold1/train/83697.png +../../data/yoloGtold1/train/83698.png +../../data/yoloGtold1/train/83699.png +../../data/yoloGtold1/train/83700.png +../../data/yoloGtold1/train/83701.png +../../data/yoloGtold1/train/83702.png +../../data/yoloGtold1/train/83703.png +../../data/yoloGtold1/train/83704.png +../../data/yoloGtold1/train/83705.png +../../data/yoloGtold1/train/83706.png +../../data/yoloGtold1/train/83707.png +../../data/yoloGtold1/train/83708.png +../../data/yoloGtold1/train/83709.png +../../data/yoloGtold1/train/83710.png +../../data/yoloGtold1/train/83711.png +../../data/yoloGtold1/train/83712.png +../../data/yoloGtold1/train/83713.png +../../data/yoloGtold1/train/83714.png +../../data/yoloGtold1/train/83715.png +../../data/yoloGtold1/train/83716.png +../../data/yoloGtold1/train/83717.png +../../data/yoloGtold1/train/83718.png +../../data/yoloGtold1/train/83719.png +../../data/yoloGtold1/train/83720.png +../../data/yoloGtold1/train/83721.png +../../data/yoloGtold1/train/83722.png +../../data/yoloGtold1/train/83723.png +../../data/yoloGtold1/train/83724.png +../../data/yoloGtold1/train/83725.png +../../data/yoloGtold1/train/83726.png +../../data/yoloGtold1/train/83727.png +../../data/yoloGtold1/train/83728.png +../../data/yoloGtold1/train/83729.png +../../data/yoloGtold1/train/83730.png +../../data/yoloGtold1/train/83731.png +../../data/yoloGtold1/train/83732.png +../../data/yoloGtold1/train/83733.png +../../data/yoloGtold1/train/83734.png +../../data/yoloGtold1/train/83735.png +../../data/yoloGtold1/train/83736.png +../../data/yoloGtold1/train/83737.png +../../data/yoloGtold1/train/83738.png +../../data/yoloGtold1/train/83739.png +../../data/yoloGtold1/train/83740.png +../../data/yoloGtold1/train/83741.png +../../data/yoloGtold1/train/83742.png +../../data/yoloGtold1/train/83743.png +../../data/yoloGtold1/train/83744.png +../../data/yoloGtold1/train/83745.png +../../data/yoloGtold1/train/83746.png +../../data/yoloGtold1/train/83747.png +../../data/yoloGtold1/train/83748.png +../../data/yoloGtold1/train/83749.png +../../data/yoloGtold1/train/83750.png +../../data/yoloGtold1/train/83751.png +../../data/yoloGtold1/train/83752.png +../../data/yoloGtold1/train/83753.png +../../data/yoloGtold1/train/83754.png +../../data/yoloGtold1/train/83755.png +../../data/yoloGtold1/train/83756.png +../../data/yoloGtold1/train/83757.png +../../data/yoloGtold1/train/83758.png +../../data/yoloGtold1/train/83759.png +../../data/yoloGtold1/train/83760.png +../../data/yoloGtold1/train/83761.png +../../data/yoloGtold1/train/83762.png +../../data/yoloGtold1/train/83763.png +../../data/yoloGtold1/train/83764.png +../../data/yoloGtold1/train/83765.png +../../data/yoloGtold1/train/83766.png +../../data/yoloGtold1/train/83767.png +../../data/yoloGtold1/train/83768.png +../../data/yoloGtold1/train/83769.png +../../data/yoloGtold1/train/83770.png +../../data/yoloGtold1/train/83771.png +../../data/yoloGtold1/train/83772.png +../../data/yoloGtold1/train/83773.png +../../data/yoloGtold1/train/83774.png +../../data/yoloGtold1/train/83775.png +../../data/yoloGtold1/train/83776.png +../../data/yoloGtold1/train/83777.png +../../data/yoloGtold1/train/83778.png +../../data/yoloGtold1/train/83779.png +../../data/yoloGtold1/train/83780.png +../../data/yoloGtold1/train/83781.png +../../data/yoloGtold1/train/83782.png +../../data/yoloGtold1/train/83783.png +../../data/yoloGtold1/train/83784.png +../../data/yoloGtold1/train/83785.png +../../data/yoloGtold1/train/83786.png +../../data/yoloGtold1/train/83787.png +../../data/yoloGtold1/train/83788.png +../../data/yoloGtold1/train/83789.png +../../data/yoloGtold1/train/83790.png +../../data/yoloGtold1/train/83791.png +../../data/yoloGtold1/train/83792.png +../../data/yoloGtold1/train/83793.png +../../data/yoloGtold1/train/83794.png +../../data/yoloGtold1/train/83795.png +../../data/yoloGtold1/train/83796.png +../../data/yoloGtold1/train/83797.png +../../data/yoloGtold1/train/83798.png +../../data/yoloGtold1/train/83799.png +../../data/yoloGtold1/train/83800.png +../../data/yoloGtold1/train/83801.png +../../data/yoloGtold1/train/83802.png +../../data/yoloGtold1/train/83803.png +../../data/yoloGtold1/train/83804.png +../../data/yoloGtold1/train/83805.png +../../data/yoloGtold1/train/83806.png +../../data/yoloGtold1/train/83807.png +../../data/yoloGtold1/train/83808.png +../../data/yoloGtold1/train/83809.png +../../data/yoloGtold1/train/83810.png +../../data/yoloGtold1/train/83811.png +../../data/yoloGtold1/train/83812.png +../../data/yoloGtold1/train/83813.png +../../data/yoloGtold1/train/83814.png +../../data/yoloGtold1/train/83815.png +../../data/yoloGtold1/train/83816.png +../../data/yoloGtold1/train/83817.png +../../data/yoloGtold1/train/83818.png +../../data/yoloGtold1/train/83819.png +../../data/yoloGtold1/train/83820.png +../../data/yoloGtold1/train/83821.png +../../data/yoloGtold1/train/83822.png +../../data/yoloGtold1/train/83823.png +../../data/yoloGtold1/train/83824.png +../../data/yoloGtold1/train/83825.png +../../data/yoloGtold1/train/83826.png +../../data/yoloGtold1/train/83827.png +../../data/yoloGtold1/train/83828.png +../../data/yoloGtold1/train/83829.png +../../data/yoloGtold1/train/83830.png +../../data/yoloGtold1/train/83831.png +../../data/yoloGtold1/train/83832.png +../../data/yoloGtold1/train/83833.png +../../data/yoloGtold1/train/83834.png +../../data/yoloGtold1/train/83835.png +../../data/yoloGtold1/train/83836.png +../../data/yoloGtold1/train/83837.png +../../data/yoloGtold1/train/83838.png +../../data/yoloGtold1/train/83839.png +../../data/yoloGtold1/train/83840.png +../../data/yoloGtold1/train/83841.png +../../data/yoloGtold1/train/83842.png +../../data/yoloGtold1/train/83843.png +../../data/yoloGtold1/train/83844.png +../../data/yoloGtold1/train/83845.png +../../data/yoloGtold1/train/83846.png +../../data/yoloGtold1/train/83847.png +../../data/yoloGtold1/train/83848.png +../../data/yoloGtold1/train/83849.png +../../data/yoloGtold1/train/83850.png +../../data/yoloGtold1/train/83851.png +../../data/yoloGtold1/train/83852.png +../../data/yoloGtold1/train/83853.png +../../data/yoloGtold1/train/83854.png +../../data/yoloGtold1/train/83855.png +../../data/yoloGtold1/train/83856.png +../../data/yoloGtold1/train/83857.png +../../data/yoloGtold1/train/83858.png +../../data/yoloGtold1/train/83859.png +../../data/yoloGtold1/train/83860.png +../../data/yoloGtold1/train/83861.png +../../data/yoloGtold1/train/83862.png +../../data/yoloGtold1/train/83863.png +../../data/yoloGtold1/train/83864.png +../../data/yoloGtold1/train/83865.png +../../data/yoloGtold1/train/83866.png +../../data/yoloGtold1/train/83867.png +../../data/yoloGtold1/train/83868.png +../../data/yoloGtold1/train/83869.png +../../data/yoloGtold1/train/83870.png +../../data/yoloGtold1/train/83871.png +../../data/yoloGtold1/train/83872.png +../../data/yoloGtold1/train/83873.png +../../data/yoloGtold1/train/83874.png +../../data/yoloGtold1/train/83875.png +../../data/yoloGtold1/train/83876.png +../../data/yoloGtold1/train/83877.png +../../data/yoloGtold1/train/83878.png +../../data/yoloGtold1/train/83879.png +../../data/yoloGtold1/train/83880.png +../../data/yoloGtold1/train/83881.png +../../data/yoloGtold1/train/83882.png +../../data/yoloGtold1/train/83883.png +../../data/yoloGtold1/train/83884.png +../../data/yoloGtold1/train/83885.png +../../data/yoloGtold1/train/83886.png +../../data/yoloGtold1/train/83887.png +../../data/yoloGtold1/train/83888.png +../../data/yoloGtold1/train/83889.png +../../data/yoloGtold1/train/83890.png +../../data/yoloGtold1/train/83891.png +../../data/yoloGtold1/train/83892.png +../../data/yoloGtold1/train/83893.png +../../data/yoloGtold1/train/83894.png +../../data/yoloGtold1/train/83895.png +../../data/yoloGtold1/train/83896.png +../../data/yoloGtold1/train/83897.png +../../data/yoloGtold1/train/83898.png +../../data/yoloGtold1/train/83899.png +../../data/yoloGtold1/train/83900.png +../../data/yoloGtold1/train/83901.png +../../data/yoloGtold1/train/83902.png +../../data/yoloGtold1/train/83903.png +../../data/yoloGtold1/train/83904.png +../../data/yoloGtold1/train/83905.png +../../data/yoloGtold1/train/83906.png +../../data/yoloGtold1/train/83907.png +../../data/yoloGtold1/train/83908.png +../../data/yoloGtold1/train/83909.png +../../data/yoloGtold1/train/83910.png +../../data/yoloGtold1/train/83911.png +../../data/yoloGtold1/train/83912.png +../../data/yoloGtold1/train/83913.png +../../data/yoloGtold1/train/83914.png +../../data/yoloGtold1/train/83915.png +../../data/yoloGtold1/train/83916.png +../../data/yoloGtold1/train/83917.png +../../data/yoloGtold1/train/83918.png +../../data/yoloGtold1/train/83919.png +../../data/yoloGtold1/train/83920.png +../../data/yoloGtold1/train/83921.png +../../data/yoloGtold1/train/83922.png +../../data/yoloGtold1/train/83923.png +../../data/yoloGtold1/train/83924.png +../../data/yoloGtold1/train/83925.png +../../data/yoloGtold1/train/83926.png +../../data/yoloGtold1/train/83927.png +../../data/yoloGtold1/train/83928.png +../../data/yoloGtold1/train/83929.png +../../data/yoloGtold1/train/83930.png +../../data/yoloGtold1/train/83931.png +../../data/yoloGtold1/train/83932.png +../../data/yoloGtold1/train/83933.png +../../data/yoloGtold1/train/83934.png +../../data/yoloGtold1/train/83935.png +../../data/yoloGtold1/train/83936.png +../../data/yoloGtold1/train/83937.png +../../data/yoloGtold1/train/83938.png +../../data/yoloGtold1/train/83939.png +../../data/yoloGtold1/train/83940.png +../../data/yoloGtold1/train/83941.png +../../data/yoloGtold1/train/83942.png +../../data/yoloGtold1/train/83943.png +../../data/yoloGtold1/train/83944.png +../../data/yoloGtold1/train/83945.png +../../data/yoloGtold1/train/83946.png +../../data/yoloGtold1/train/83947.png +../../data/yoloGtold1/train/83948.png +../../data/yoloGtold1/train/83949.png +../../data/yoloGtold1/train/83950.png +../../data/yoloGtold1/train/83951.png +../../data/yoloGtold1/train/83952.png +../../data/yoloGtold1/train/83953.png +../../data/yoloGtold1/train/83954.png +../../data/yoloGtold1/train/83955.png +../../data/yoloGtold1/train/83956.png +../../data/yoloGtold1/train/83957.png +../../data/yoloGtold1/train/83958.png +../../data/yoloGtold1/train/83959.png +../../data/yoloGtold1/train/83960.png +../../data/yoloGtold1/train/83961.png +../../data/yoloGtold1/train/83962.png +../../data/yoloGtold1/train/83963.png +../../data/yoloGtold1/train/83964.png +../../data/yoloGtold1/train/83965.png +../../data/yoloGtold1/train/83966.png +../../data/yoloGtold1/train/83967.png +../../data/yoloGtold1/train/83968.png +../../data/yoloGtold1/train/83969.png +../../data/yoloGtold1/train/83970.png +../../data/yoloGtold1/train/83971.png +../../data/yoloGtold1/train/83972.png +../../data/yoloGtold1/train/83973.png +../../data/yoloGtold1/train/83974.png +../../data/yoloGtold1/train/83975.png +../../data/yoloGtold1/train/83976.png +../../data/yoloGtold1/train/83977.png +../../data/yoloGtold1/train/83978.png +../../data/yoloGtold1/train/83979.png +../../data/yoloGtold1/train/83980.png +../../data/yoloGtold1/train/83981.png +../../data/yoloGtold1/train/83982.png +../../data/yoloGtold1/train/83983.png +../../data/yoloGtold1/train/83984.png +../../data/yoloGtold1/train/83985.png +../../data/yoloGtold1/train/83986.png +../../data/yoloGtold1/train/83987.png +../../data/yoloGtold1/train/83988.png +../../data/yoloGtold1/train/83989.png +../../data/yoloGtold1/train/83990.png +../../data/yoloGtold1/train/83991.png +../../data/yoloGtold1/train/83992.png +../../data/yoloGtold1/train/83993.png +../../data/yoloGtold1/train/83994.png +../../data/yoloGtold1/train/83995.png +../../data/yoloGtold1/train/83996.png +../../data/yoloGtold1/train/83997.png +../../data/yoloGtold1/train/83998.png +../../data/yoloGtold1/train/83999.png +../../data/yoloGtold1/train/84000.png +../../data/yoloGtold1/train/84001.png +../../data/yoloGtold1/train/84002.png +../../data/yoloGtold1/train/84003.png +../../data/yoloGtold1/train/84004.png +../../data/yoloGtold1/train/84005.png +../../data/yoloGtold1/train/84006.png +../../data/yoloGtold1/train/84007.png +../../data/yoloGtold1/train/84008.png +../../data/yoloGtold1/train/84009.png +../../data/yoloGtold1/train/84010.png +../../data/yoloGtold1/train/84011.png +../../data/yoloGtold1/train/84012.png +../../data/yoloGtold1/train/84013.png +../../data/yoloGtold1/train/84014.png +../../data/yoloGtold1/train/84015.png +../../data/yoloGtold1/train/84016.png +../../data/yoloGtold1/train/84017.png +../../data/yoloGtold1/train/84018.png +../../data/yoloGtold1/train/84019.png +../../data/yoloGtold1/train/84020.png +../../data/yoloGtold1/train/84021.png +../../data/yoloGtold1/train/84022.png +../../data/yoloGtold1/train/84023.png +../../data/yoloGtold1/train/84024.png +../../data/yoloGtold1/train/84025.png +../../data/yoloGtold1/train/84026.png +../../data/yoloGtold1/train/84027.png +../../data/yoloGtold1/train/84028.png +../../data/yoloGtold1/train/84029.png +../../data/yoloGtold1/train/84030.png +../../data/yoloGtold1/train/84031.png +../../data/yoloGtold1/train/84032.png +../../data/yoloGtold1/train/84033.png +../../data/yoloGtold1/train/84034.png +../../data/yoloGtold1/train/84035.png +../../data/yoloGtold1/train/84036.png +../../data/yoloGtold1/train/84037.png +../../data/yoloGtold1/train/84038.png +../../data/yoloGtold1/train/84039.png +../../data/yoloGtold1/train/84040.png +../../data/yoloGtold1/train/84041.png +../../data/yoloGtold1/train/84042.png +../../data/yoloGtold1/train/84043.png +../../data/yoloGtold1/train/84044.png +../../data/yoloGtold1/train/84045.png +../../data/yoloGtold1/train/84046.png +../../data/yoloGtold1/train/84047.png +../../data/yoloGtold1/train/84048.png +../../data/yoloGtold1/train/84049.png +../../data/yoloGtold1/train/84050.png +../../data/yoloGtold1/train/84051.png +../../data/yoloGtold1/train/84052.png +../../data/yoloGtold1/train/84053.png +../../data/yoloGtold1/train/84054.png +../../data/yoloGtold1/train/84055.png +../../data/yoloGtold1/train/84056.png +../../data/yoloGtold1/train/84057.png +../../data/yoloGtold1/train/84058.png +../../data/yoloGtold1/train/84059.png +../../data/yoloGtold1/train/84060.png +../../data/yoloGtold1/train/84061.png +../../data/yoloGtold1/train/84062.png +../../data/yoloGtold1/train/84063.png +../../data/yoloGtold1/train/84064.png +../../data/yoloGtold1/train/84065.png +../../data/yoloGtold1/train/84066.png +../../data/yoloGtold1/train/84067.png +../../data/yoloGtold1/train/84068.png +../../data/yoloGtold1/train/84069.png +../../data/yoloGtold1/train/84070.png +../../data/yoloGtold1/train/84071.png +../../data/yoloGtold1/train/84072.png +../../data/yoloGtold1/train/84073.png +../../data/yoloGtold1/train/84074.png +../../data/yoloGtold1/train/84075.png +../../data/yoloGtold1/train/84076.png +../../data/yoloGtold1/train/84077.png +../../data/yoloGtold1/train/84078.png +../../data/yoloGtold1/train/84079.png +../../data/yoloGtold1/train/84080.png +../../data/yoloGtold1/train/84081.png +../../data/yoloGtold1/train/84082.png +../../data/yoloGtold1/train/84083.png +../../data/yoloGtold1/train/84084.png +../../data/yoloGtold1/train/84085.png +../../data/yoloGtold1/train/84086.png +../../data/yoloGtold1/train/84087.png +../../data/yoloGtold1/train/84088.png +../../data/yoloGtold1/train/84089.png +../../data/yoloGtold1/train/84090.png +../../data/yoloGtold1/train/84091.png +../../data/yoloGtold1/train/84092.png +../../data/yoloGtold1/train/84093.png +../../data/yoloGtold1/train/84094.png +../../data/yoloGtold1/train/84095.png +../../data/yoloGtold1/train/84096.png +../../data/yoloGtold1/train/84097.png +../../data/yoloGtold1/train/84098.png +../../data/yoloGtold1/train/84099.png +../../data/yoloGtold1/train/84100.png +../../data/yoloGtold1/train/84101.png +../../data/yoloGtold1/train/84102.png +../../data/yoloGtold1/train/84103.png +../../data/yoloGtold1/train/84104.png +../../data/yoloGtold1/train/84105.png +../../data/yoloGtold1/train/84106.png +../../data/yoloGtold1/train/84107.png +../../data/yoloGtold1/train/84108.png +../../data/yoloGtold1/train/84109.png +../../data/yoloGtold1/train/84110.png +../../data/yoloGtold1/train/84111.png +../../data/yoloGtold1/train/84112.png +../../data/yoloGtold1/train/84113.png +../../data/yoloGtold1/train/84114.png +../../data/yoloGtold1/train/84115.png +../../data/yoloGtold1/train/84116.png +../../data/yoloGtold1/train/84117.png +../../data/yoloGtold1/train/84118.png +../../data/yoloGtold1/train/84119.png +../../data/yoloGtold1/train/84120.png +../../data/yoloGtold1/train/84121.png +../../data/yoloGtold1/train/84122.png +../../data/yoloGtold1/train/84123.png +../../data/yoloGtold1/train/84124.png +../../data/yoloGtold1/train/84125.png +../../data/yoloGtold1/train/84126.png +../../data/yoloGtold1/train/84127.png +../../data/yoloGtold1/train/84128.png +../../data/yoloGtold1/train/84129.png +../../data/yoloGtold1/train/84130.png +../../data/yoloGtold1/train/84131.png +../../data/yoloGtold1/train/84132.png +../../data/yoloGtold1/train/84133.png +../../data/yoloGtold1/train/84134.png +../../data/yoloGtold1/train/84135.png +../../data/yoloGtold1/train/84136.png +../../data/yoloGtold1/train/84137.png +../../data/yoloGtold1/train/84138.png +../../data/yoloGtold1/train/84139.png +../../data/yoloGtold1/train/84140.png +../../data/yoloGtold1/train/84141.png +../../data/yoloGtold1/train/84142.png +../../data/yoloGtold1/train/84143.png +../../data/yoloGtold1/train/84144.png +../../data/yoloGtold1/train/84145.png +../../data/yoloGtold1/train/84146.png +../../data/yoloGtold1/train/84147.png +../../data/yoloGtold1/train/84148.png +../../data/yoloGtold1/train/84149.png +../../data/yoloGtold1/train/84150.png +../../data/yoloGtold1/train/84151.png +../../data/yoloGtold1/train/84152.png +../../data/yoloGtold1/train/84153.png +../../data/yoloGtold1/train/84154.png +../../data/yoloGtold1/train/84155.png +../../data/yoloGtold1/train/84156.png +../../data/yoloGtold1/train/84157.png +../../data/yoloGtold1/train/84158.png +../../data/yoloGtold1/train/84159.png +../../data/yoloGtold1/train/84160.png +../../data/yoloGtold1/train/84161.png +../../data/yoloGtold1/train/84162.png +../../data/yoloGtold1/train/84163.png +../../data/yoloGtold1/train/84164.png +../../data/yoloGtold1/train/84165.png +../../data/yoloGtold1/train/84166.png +../../data/yoloGtold1/train/84167.png +../../data/yoloGtold1/train/84168.png +../../data/yoloGtold1/train/84169.png +../../data/yoloGtold1/train/84170.png +../../data/yoloGtold1/train/84171.png +../../data/yoloGtold1/train/84172.png +../../data/yoloGtold1/train/84173.png +../../data/yoloGtold1/train/84174.png +../../data/yoloGtold1/train/84175.png +../../data/yoloGtold1/train/84176.png +../../data/yoloGtold1/train/84177.png +../../data/yoloGtold1/train/84178.png +../../data/yoloGtold1/train/84179.png +../../data/yoloGtold1/train/84180.png +../../data/yoloGtold1/train/84181.png +../../data/yoloGtold1/train/84182.png +../../data/yoloGtold1/train/84183.png +../../data/yoloGtold1/train/84184.png +../../data/yoloGtold1/train/84185.png +../../data/yoloGtold1/train/84186.png +../../data/yoloGtold1/train/84187.png +../../data/yoloGtold1/train/84188.png +../../data/yoloGtold1/train/84189.png +../../data/yoloGtold1/train/84190.png +../../data/yoloGtold1/train/84191.png +../../data/yoloGtold1/train/84192.png +../../data/yoloGtold1/train/84193.png +../../data/yoloGtold1/train/84194.png +../../data/yoloGtold1/train/84195.png +../../data/yoloGtold1/train/84196.png +../../data/yoloGtold1/train/84197.png +../../data/yoloGtold1/train/84198.png +../../data/yoloGtold1/train/84199.png +../../data/yoloGtold1/train/84200.png +../../data/yoloGtold1/train/84201.png +../../data/yoloGtold1/train/84202.png +../../data/yoloGtold1/train/84203.png +../../data/yoloGtold1/train/84204.png +../../data/yoloGtold1/train/84205.png +../../data/yoloGtold1/train/84206.png +../../data/yoloGtold1/train/84207.png +../../data/yoloGtold1/train/84208.png +../../data/yoloGtold1/train/84209.png +../../data/yoloGtold1/train/84210.png +../../data/yoloGtold1/train/84211.png +../../data/yoloGtold1/train/84212.png +../../data/yoloGtold1/train/84213.png +../../data/yoloGtold1/train/84214.png +../../data/yoloGtold1/train/84215.png +../../data/yoloGtold1/train/84216.png +../../data/yoloGtold1/train/84217.png +../../data/yoloGtold1/train/84218.png +../../data/yoloGtold1/train/84219.png +../../data/yoloGtold1/train/84220.png +../../data/yoloGtold1/train/84221.png +../../data/yoloGtold1/train/84222.png +../../data/yoloGtold1/train/84223.png +../../data/yoloGtold1/train/84224.png +../../data/yoloGtold1/train/84225.png +../../data/yoloGtold1/train/84226.png +../../data/yoloGtold1/train/84227.png +../../data/yoloGtold1/train/84228.png +../../data/yoloGtold1/train/84229.png +../../data/yoloGtold1/train/84230.png +../../data/yoloGtold1/train/84231.png +../../data/yoloGtold1/train/84232.png +../../data/yoloGtold1/train/84233.png +../../data/yoloGtold1/train/84234.png +../../data/yoloGtold1/train/84235.png +../../data/yoloGtold1/train/84236.png +../../data/yoloGtold1/train/84237.png +../../data/yoloGtold1/train/84238.png +../../data/yoloGtold1/train/84239.png +../../data/yoloGtold1/train/84240.png +../../data/yoloGtold1/train/84241.png +../../data/yoloGtold1/train/84242.png +../../data/yoloGtold1/train/84243.png +../../data/yoloGtold1/train/84244.png +../../data/yoloGtold1/train/84245.png +../../data/yoloGtold1/train/84246.png +../../data/yoloGtold1/train/84247.png +../../data/yoloGtold1/train/84248.png +../../data/yoloGtold1/train/84249.png +../../data/yoloGtold1/train/84250.png +../../data/yoloGtold1/train/84251.png +../../data/yoloGtold1/train/84252.png +../../data/yoloGtold1/train/84253.png +../../data/yoloGtold1/train/84254.png +../../data/yoloGtold1/train/84255.png +../../data/yoloGtold1/train/84256.png +../../data/yoloGtold1/train/84257.png +../../data/yoloGtold1/train/84258.png +../../data/yoloGtold1/train/84259.png +../../data/yoloGtold1/train/84260.png +../../data/yoloGtold1/train/84261.png +../../data/yoloGtold1/train/84262.png +../../data/yoloGtold1/train/84263.png +../../data/yoloGtold1/train/84264.png +../../data/yoloGtold1/train/84265.png +../../data/yoloGtold1/train/84266.png +../../data/yoloGtold1/train/84267.png +../../data/yoloGtold1/train/84268.png +../../data/yoloGtold1/train/84269.png +../../data/yoloGtold1/train/84270.png +../../data/yoloGtold1/train/84271.png +../../data/yoloGtold1/train/84272.png +../../data/yoloGtold1/train/84273.png +../../data/yoloGtold1/train/84274.png +../../data/yoloGtold1/train/84275.png +../../data/yoloGtold1/train/84276.png +../../data/yoloGtold1/train/84277.png +../../data/yoloGtold1/train/84278.png +../../data/yoloGtold1/train/84279.png +../../data/yoloGtold1/train/84280.png +../../data/yoloGtold1/train/84281.png +../../data/yoloGtold1/train/84282.png +../../data/yoloGtold1/train/84283.png +../../data/yoloGtold1/train/84284.png +../../data/yoloGtold1/train/84285.png +../../data/yoloGtold1/train/84286.png +../../data/yoloGtold1/train/84287.png +../../data/yoloGtold1/train/84288.png +../../data/yoloGtold1/train/84289.png +../../data/yoloGtold1/train/84290.png +../../data/yoloGtold1/train/84291.png +../../data/yoloGtold1/train/84292.png +../../data/yoloGtold1/train/84293.png +../../data/yoloGtold1/train/84294.png +../../data/yoloGtold1/train/84295.png +../../data/yoloGtold1/train/84296.png +../../data/yoloGtold1/train/84297.png +../../data/yoloGtold1/train/84298.png +../../data/yoloGtold1/train/84299.png +../../data/yoloGtold1/train/84300.png +../../data/yoloGtold1/train/84301.png +../../data/yoloGtold1/train/84302.png +../../data/yoloGtold1/train/84303.png +../../data/yoloGtold1/train/84304.png +../../data/yoloGtold1/train/84305.png +../../data/yoloGtold1/train/84306.png +../../data/yoloGtold1/train/84307.png +../../data/yoloGtold1/train/84308.png +../../data/yoloGtold1/train/84309.png +../../data/yoloGtold1/train/84310.png +../../data/yoloGtold1/train/84311.png +../../data/yoloGtold1/train/84312.png +../../data/yoloGtold1/train/84313.png +../../data/yoloGtold1/train/84314.png +../../data/yoloGtold1/train/84315.png +../../data/yoloGtold1/train/84316.png +../../data/yoloGtold1/train/84317.png +../../data/yoloGtold1/train/84318.png +../../data/yoloGtold1/train/84319.png +../../data/yoloGtold1/train/84320.png +../../data/yoloGtold1/train/84321.png +../../data/yoloGtold1/train/84322.png +../../data/yoloGtold1/train/84323.png +../../data/yoloGtold1/train/84324.png +../../data/yoloGtold1/train/84325.png +../../data/yoloGtold1/train/84326.png +../../data/yoloGtold1/train/84327.png +../../data/yoloGtold1/train/84328.png +../../data/yoloGtold1/train/84329.png +../../data/yoloGtold1/train/84330.png +../../data/yoloGtold1/train/84331.png +../../data/yoloGtold1/train/84332.png +../../data/yoloGtold1/train/84333.png +../../data/yoloGtold1/train/84334.png +../../data/yoloGtold1/train/84335.png +../../data/yoloGtold1/train/84336.png +../../data/yoloGtold1/train/84337.png +../../data/yoloGtold1/train/84338.png +../../data/yoloGtold1/train/84339.png +../../data/yoloGtold1/train/84340.png +../../data/yoloGtold1/train/84341.png +../../data/yoloGtold1/train/84342.png +../../data/yoloGtold1/train/84343.png +../../data/yoloGtold1/train/84344.png +../../data/yoloGtold1/train/84345.png +../../data/yoloGtold1/train/84346.png +../../data/yoloGtold1/train/84347.png +../../data/yoloGtold1/train/84348.png +../../data/yoloGtold1/train/84349.png +../../data/yoloGtold1/train/84350.png +../../data/yoloGtold1/train/84351.png +../../data/yoloGtold1/train/84352.png +../../data/yoloGtold1/train/84353.png +../../data/yoloGtold1/train/84354.png +../../data/yoloGtold1/train/84355.png +../../data/yoloGtold1/train/84356.png +../../data/yoloGtold1/train/84357.png +../../data/yoloGtold1/train/84358.png +../../data/yoloGtold1/train/84359.png +../../data/yoloGtold1/train/84360.png +../../data/yoloGtold1/train/84361.png +../../data/yoloGtold1/train/84362.png +../../data/yoloGtold1/train/84363.png +../../data/yoloGtold1/train/84364.png +../../data/yoloGtold1/train/84365.png +../../data/yoloGtold1/train/84366.png +../../data/yoloGtold1/train/84367.png +../../data/yoloGtold1/train/84368.png +../../data/yoloGtold1/train/84369.png +../../data/yoloGtold1/train/84370.png +../../data/yoloGtold1/train/84371.png +../../data/yoloGtold1/train/84372.png +../../data/yoloGtold1/train/84373.png +../../data/yoloGtold1/train/84374.png +../../data/yoloGtold1/train/84375.png +../../data/yoloGtold1/train/84376.png +../../data/yoloGtold1/train/84377.png +../../data/yoloGtold1/train/84378.png +../../data/yoloGtold1/train/84379.png +../../data/yoloGtold1/train/84380.png +../../data/yoloGtold1/train/84381.png +../../data/yoloGtold1/train/84382.png +../../data/yoloGtold1/train/84383.png +../../data/yoloGtold1/train/84384.png +../../data/yoloGtold1/train/84385.png +../../data/yoloGtold1/train/84386.png +../../data/yoloGtold1/train/84387.png +../../data/yoloGtold1/train/84388.png +../../data/yoloGtold1/train/84389.png +../../data/yoloGtold1/train/84390.png +../../data/yoloGtold1/train/84391.png +../../data/yoloGtold1/train/84392.png +../../data/yoloGtold1/train/84393.png +../../data/yoloGtold1/train/84394.png +../../data/yoloGtold1/train/84395.png +../../data/yoloGtold1/train/84396.png +../../data/yoloGtold1/train/84397.png +../../data/yoloGtold1/train/84398.png +../../data/yoloGtold1/train/84399.png +../../data/yoloGtold1/train/84400.png +../../data/yoloGtold1/train/84401.png +../../data/yoloGtold1/train/84402.png +../../data/yoloGtold1/train/84403.png +../../data/yoloGtold1/train/84404.png +../../data/yoloGtold1/train/84405.png +../../data/yoloGtold1/train/84406.png +../../data/yoloGtold1/train/84407.png +../../data/yoloGtold1/train/84408.png +../../data/yoloGtold1/train/84409.png +../../data/yoloGtold1/train/84410.png +../../data/yoloGtold1/train/84411.png +../../data/yoloGtold1/train/84412.png +../../data/yoloGtold1/train/84413.png +../../data/yoloGtold1/train/84414.png +../../data/yoloGtold1/train/84415.png +../../data/yoloGtold1/train/84416.png +../../data/yoloGtold1/train/84417.png +../../data/yoloGtold1/train/84418.png +../../data/yoloGtold1/train/84419.png +../../data/yoloGtold1/train/84420.png +../../data/yoloGtold1/train/84421.png +../../data/yoloGtold1/train/84422.png +../../data/yoloGtold1/train/84423.png +../../data/yoloGtold1/train/84424.png +../../data/yoloGtold1/train/84425.png +../../data/yoloGtold1/train/84426.png +../../data/yoloGtold1/train/84427.png +../../data/yoloGtold1/train/84428.png +../../data/yoloGtold1/train/84429.png +../../data/yoloGtold1/train/84430.png +../../data/yoloGtold1/train/84431.png +../../data/yoloGtold1/train/84432.png +../../data/yoloGtold1/train/84433.png +../../data/yoloGtold1/train/84434.png +../../data/yoloGtold1/train/84435.png +../../data/yoloGtold1/train/84436.png +../../data/yoloGtold1/train/84437.png +../../data/yoloGtold1/train/84438.png +../../data/yoloGtold1/train/84439.png +../../data/yoloGtold1/train/84440.png +../../data/yoloGtold1/train/84441.png +../../data/yoloGtold1/train/84442.png +../../data/yoloGtold1/train/84443.png +../../data/yoloGtold1/train/84444.png +../../data/yoloGtold1/train/84445.png +../../data/yoloGtold1/train/84446.png +../../data/yoloGtold1/train/84447.png +../../data/yoloGtold1/train/84448.png +../../data/yoloGtold1/train/84449.png +../../data/yoloGtold1/train/84450.png +../../data/yoloGtold1/train/84451.png +../../data/yoloGtold1/train/84452.png +../../data/yoloGtold1/train/84453.png +../../data/yoloGtold1/train/84454.png +../../data/yoloGtold1/train/84455.png +../../data/yoloGtold1/train/84456.png +../../data/yoloGtold1/train/84457.png +../../data/yoloGtold1/train/84458.png +../../data/yoloGtold1/train/84459.png +../../data/yoloGtold1/train/84460.png +../../data/yoloGtold1/train/84461.png +../../data/yoloGtold1/train/84462.png +../../data/yoloGtold1/train/84463.png +../../data/yoloGtold1/train/84464.png +../../data/yoloGtold1/train/84465.png +../../data/yoloGtold1/train/84466.png +../../data/yoloGtold1/train/84467.png +../../data/yoloGtold1/train/84468.png +../../data/yoloGtold1/train/84469.png +../../data/yoloGtold1/train/84470.png +../../data/yoloGtold1/train/84471.png +../../data/yoloGtold1/train/84472.png +../../data/yoloGtold1/train/84473.png +../../data/yoloGtold1/train/84474.png +../../data/yoloGtold1/train/84475.png +../../data/yoloGtold1/train/84476.png +../../data/yoloGtold1/train/84477.png +../../data/yoloGtold1/train/84478.png +../../data/yoloGtold1/train/84479.png +../../data/yoloGtold1/train/84480.png +../../data/yoloGtold1/train/84481.png +../../data/yoloGtold1/train/84482.png +../../data/yoloGtold1/train/84483.png +../../data/yoloGtold1/train/84484.png +../../data/yoloGtold1/train/84485.png +../../data/yoloGtold1/train/84486.png +../../data/yoloGtold1/train/84487.png +../../data/yoloGtold1/train/84488.png +../../data/yoloGtold1/train/84489.png +../../data/yoloGtold1/train/84490.png +../../data/yoloGtold1/train/84491.png +../../data/yoloGtold1/train/84492.png +../../data/yoloGtold1/train/84493.png +../../data/yoloGtold1/train/84494.png +../../data/yoloGtold1/train/84495.png +../../data/yoloGtold1/train/84496.png +../../data/yoloGtold1/train/84497.png +../../data/yoloGtold1/train/84498.png +../../data/yoloGtold1/train/84499.png +../../data/yoloGtold1/train/84500.png +../../data/yoloGtold1/train/84501.png +../../data/yoloGtold1/train/84502.png +../../data/yoloGtold1/train/84503.png +../../data/yoloGtold1/train/84504.png +../../data/yoloGtold1/train/84505.png +../../data/yoloGtold1/train/84506.png +../../data/yoloGtold1/train/84507.png +../../data/yoloGtold1/train/84508.png +../../data/yoloGtold1/train/84509.png +../../data/yoloGtold1/train/84510.png +../../data/yoloGtold1/train/84511.png +../../data/yoloGtold1/train/84512.png +../../data/yoloGtold1/train/84513.png +../../data/yoloGtold1/train/84514.png +../../data/yoloGtold1/train/84515.png +../../data/yoloGtold1/train/84516.png +../../data/yoloGtold1/train/84517.png +../../data/yoloGtold1/train/84518.png +../../data/yoloGtold1/train/84519.png +../../data/yoloGtold1/train/84520.png +../../data/yoloGtold1/train/84521.png +../../data/yoloGtold1/train/84522.png +../../data/yoloGtold1/train/84523.png +../../data/yoloGtold1/train/84524.png +../../data/yoloGtold1/train/84525.png +../../data/yoloGtold1/train/84526.png +../../data/yoloGtold1/train/84527.png +../../data/yoloGtold1/train/84528.png +../../data/yoloGtold1/train/84529.png +../../data/yoloGtold1/train/84530.png +../../data/yoloGtold1/train/84531.png +../../data/yoloGtold1/train/84532.png +../../data/yoloGtold1/train/84533.png +../../data/yoloGtold1/train/84534.png +../../data/yoloGtold1/train/84535.png +../../data/yoloGtold1/train/84536.png +../../data/yoloGtold1/train/84537.png +../../data/yoloGtold1/train/84538.png +../../data/yoloGtold1/train/84539.png +../../data/yoloGtold1/train/84540.png +../../data/yoloGtold1/train/84541.png +../../data/yoloGtold1/train/84542.png +../../data/yoloGtold1/train/84543.png +../../data/yoloGtold1/train/84544.png +../../data/yoloGtold1/train/84545.png +../../data/yoloGtold1/train/84546.png +../../data/yoloGtold1/train/84547.png +../../data/yoloGtold1/train/84548.png +../../data/yoloGtold1/train/84549.png +../../data/yoloGtold1/train/84550.png +../../data/yoloGtold1/train/84551.png +../../data/yoloGtold1/train/84552.png +../../data/yoloGtold1/train/84553.png +../../data/yoloGtold1/train/84554.png +../../data/yoloGtold1/train/84555.png +../../data/yoloGtold1/train/84556.png +../../data/yoloGtold1/train/84557.png +../../data/yoloGtold1/train/84558.png +../../data/yoloGtold1/train/84559.png +../../data/yoloGtold1/train/84560.png +../../data/yoloGtold1/train/84561.png +../../data/yoloGtold1/train/84562.png +../../data/yoloGtold1/train/84563.png +../../data/yoloGtold1/train/84564.png +../../data/yoloGtold1/train/84565.png +../../data/yoloGtold1/train/84566.png +../../data/yoloGtold1/train/84567.png +../../data/yoloGtold1/train/84568.png +../../data/yoloGtold1/train/84569.png +../../data/yoloGtold1/train/84570.png +../../data/yoloGtold1/train/84571.png +../../data/yoloGtold1/train/84572.png +../../data/yoloGtold1/train/84573.png +../../data/yoloGtold1/train/84574.png +../../data/yoloGtold1/train/84575.png +../../data/yoloGtold1/train/84576.png +../../data/yoloGtold1/train/84577.png +../../data/yoloGtold1/train/84578.png +../../data/yoloGtold1/train/84579.png +../../data/yoloGtold1/train/84580.png +../../data/yoloGtold1/train/84581.png +../../data/yoloGtold1/train/84582.png +../../data/yoloGtold1/train/84583.png +../../data/yoloGtold1/train/84584.png +../../data/yoloGtold1/train/84585.png +../../data/yoloGtold1/train/84586.png +../../data/yoloGtold1/train/84587.png +../../data/yoloGtold1/train/84588.png +../../data/yoloGtold1/train/84589.png +../../data/yoloGtold1/train/84590.png +../../data/yoloGtold1/train/84591.png +../../data/yoloGtold1/train/84592.png +../../data/yoloGtold1/train/84593.png +../../data/yoloGtold1/train/84594.png +../../data/yoloGtold1/train/84595.png +../../data/yoloGtold1/train/84596.png +../../data/yoloGtold1/train/84597.png +../../data/yoloGtold1/train/84598.png +../../data/yoloGtold1/train/84599.png +../../data/yoloGtold1/train/84600.png +../../data/yoloGtold1/train/84601.png +../../data/yoloGtold1/train/84602.png +../../data/yoloGtold1/train/84603.png +../../data/yoloGtold1/train/84604.png +../../data/yoloGtold1/train/84605.png +../../data/yoloGtold1/train/84606.png +../../data/yoloGtold1/train/84607.png +../../data/yoloGtold1/train/84608.png +../../data/yoloGtold1/train/84609.png +../../data/yoloGtold1/train/84610.png +../../data/yoloGtold1/train/84611.png +../../data/yoloGtold1/train/84612.png +../../data/yoloGtold1/train/84613.png +../../data/yoloGtold1/train/84614.png +../../data/yoloGtold1/train/84615.png +../../data/yoloGtold1/train/84616.png +../../data/yoloGtold1/train/84617.png +../../data/yoloGtold1/train/84618.png +../../data/yoloGtold1/train/84619.png +../../data/yoloGtold1/train/84620.png +../../data/yoloGtold1/train/84621.png +../../data/yoloGtold1/train/84622.png +../../data/yoloGtold1/train/84623.png +../../data/yoloGtold1/train/84624.png +../../data/yoloGtold1/train/84625.png +../../data/yoloGtold1/train/84626.png +../../data/yoloGtold1/train/84627.png +../../data/yoloGtold1/train/84628.png +../../data/yoloGtold1/train/84629.png +../../data/yoloGtold1/train/84630.png +../../data/yoloGtold1/train/84631.png +../../data/yoloGtold1/train/84632.png +../../data/yoloGtold1/train/84633.png +../../data/yoloGtold1/train/84634.png +../../data/yoloGtold1/train/84635.png +../../data/yoloGtold1/train/84636.png +../../data/yoloGtold1/train/84637.png +../../data/yoloGtold1/train/84638.png +../../data/yoloGtold1/train/84639.png +../../data/yoloGtold1/train/84640.png +../../data/yoloGtold1/train/84641.png +../../data/yoloGtold1/train/84642.png +../../data/yoloGtold1/train/84643.png +../../data/yoloGtold1/train/84644.png +../../data/yoloGtold1/train/84645.png +../../data/yoloGtold1/train/84646.png +../../data/yoloGtold1/train/84647.png +../../data/yoloGtold1/train/84648.png +../../data/yoloGtold1/train/84649.png +../../data/yoloGtold1/train/84650.png +../../data/yoloGtold1/train/84651.png +../../data/yoloGtold1/train/84652.png +../../data/yoloGtold1/train/84653.png +../../data/yoloGtold1/train/84654.png +../../data/yoloGtold1/train/84655.png +../../data/yoloGtold1/train/84656.png +../../data/yoloGtold1/train/84657.png +../../data/yoloGtold1/train/84658.png +../../data/yoloGtold1/train/84659.png +../../data/yoloGtold1/train/84660.png +../../data/yoloGtold1/train/84661.png +../../data/yoloGtold1/train/84662.png +../../data/yoloGtold1/train/84663.png +../../data/yoloGtold1/train/84664.png +../../data/yoloGtold1/train/84665.png +../../data/yoloGtold1/train/84666.png +../../data/yoloGtold1/train/84667.png +../../data/yoloGtold1/train/84668.png +../../data/yoloGtold1/train/84669.png +../../data/yoloGtold1/train/84670.png +../../data/yoloGtold1/train/84671.png +../../data/yoloGtold1/train/84672.png +../../data/yoloGtold1/train/84673.png +../../data/yoloGtold1/train/84674.png +../../data/yoloGtold1/train/84675.png +../../data/yoloGtold1/train/84676.png +../../data/yoloGtold1/train/84677.png +../../data/yoloGtold1/train/84678.png +../../data/yoloGtold1/train/84679.png +../../data/yoloGtold1/train/84680.png +../../data/yoloGtold1/train/84681.png +../../data/yoloGtold1/train/84682.png +../../data/yoloGtold1/train/84683.png +../../data/yoloGtold1/train/84684.png +../../data/yoloGtold1/train/84685.png +../../data/yoloGtold1/train/84686.png +../../data/yoloGtold1/train/84687.png +../../data/yoloGtold1/train/84688.png +../../data/yoloGtold1/train/84689.png +../../data/yoloGtold1/train/84690.png +../../data/yoloGtold1/train/84691.png +../../data/yoloGtold1/train/84692.png +../../data/yoloGtold1/train/84693.png +../../data/yoloGtold1/train/84694.png +../../data/yoloGtold1/train/84695.png +../../data/yoloGtold1/train/84696.png +../../data/yoloGtold1/train/84697.png +../../data/yoloGtold1/train/84698.png +../../data/yoloGtold1/train/84699.png +../../data/yoloGtold1/train/84700.png +../../data/yoloGtold1/train/84701.png +../../data/yoloGtold1/train/84702.png +../../data/yoloGtold1/train/84703.png +../../data/yoloGtold1/train/84704.png +../../data/yoloGtold1/train/84705.png +../../data/yoloGtold1/train/84706.png +../../data/yoloGtold1/train/84707.png +../../data/yoloGtold1/train/84708.png +../../data/yoloGtold1/train/84709.png +../../data/yoloGtold1/train/84710.png +../../data/yoloGtold1/train/84711.png +../../data/yoloGtold1/train/84712.png +../../data/yoloGtold1/train/84713.png +../../data/yoloGtold1/train/84714.png +../../data/yoloGtold1/train/84715.png +../../data/yoloGtold1/train/84716.png +../../data/yoloGtold1/train/84717.png +../../data/yoloGtold1/train/84718.png +../../data/yoloGtold1/train/84719.png +../../data/yoloGtold1/train/84720.png +../../data/yoloGtold1/train/84721.png +../../data/yoloGtold1/train/84722.png +../../data/yoloGtold1/train/84723.png +../../data/yoloGtold1/train/84724.png +../../data/yoloGtold1/train/84725.png +../../data/yoloGtold1/train/84726.png +../../data/yoloGtold1/train/84727.png +../../data/yoloGtold1/train/84728.png +../../data/yoloGtold1/train/84729.png +../../data/yoloGtold1/train/84730.png +../../data/yoloGtold1/train/84731.png +../../data/yoloGtold1/train/84732.png +../../data/yoloGtold1/train/84733.png +../../data/yoloGtold1/train/84734.png +../../data/yoloGtold1/train/84735.png +../../data/yoloGtold1/train/84736.png +../../data/yoloGtold1/train/84737.png +../../data/yoloGtold1/train/84738.png +../../data/yoloGtold1/train/84739.png +../../data/yoloGtold1/train/84740.png +../../data/yoloGtold1/train/84741.png +../../data/yoloGtold1/train/84742.png +../../data/yoloGtold1/train/84743.png +../../data/yoloGtold1/train/84744.png +../../data/yoloGtold1/train/84745.png +../../data/yoloGtold1/train/84746.png +../../data/yoloGtold1/train/84747.png +../../data/yoloGtold1/train/84748.png +../../data/yoloGtold1/train/84749.png +../../data/yoloGtold1/train/84750.png +../../data/yoloGtold1/train/84751.png +../../data/yoloGtold1/train/84752.png +../../data/yoloGtold1/train/84753.png +../../data/yoloGtold1/train/84754.png +../../data/yoloGtold1/train/84755.png +../../data/yoloGtold1/train/84756.png +../../data/yoloGtold1/train/84757.png +../../data/yoloGtold1/train/84758.png +../../data/yoloGtold1/train/84759.png +../../data/yoloGtold1/train/84760.png +../../data/yoloGtold1/train/84761.png +../../data/yoloGtold1/train/84762.png +../../data/yoloGtold1/train/84763.png +../../data/yoloGtold1/train/84764.png +../../data/yoloGtold1/train/84765.png +../../data/yoloGtold1/train/84766.png +../../data/yoloGtold1/train/84767.png +../../data/yoloGtold1/train/84768.png +../../data/yoloGtold1/train/84769.png +../../data/yoloGtold1/train/84770.png +../../data/yoloGtold1/train/84771.png +../../data/yoloGtold1/train/84772.png +../../data/yoloGtold1/train/84773.png +../../data/yoloGtold1/train/84774.png +../../data/yoloGtold1/train/84775.png +../../data/yoloGtold1/train/84776.png +../../data/yoloGtold1/train/84777.png +../../data/yoloGtold1/train/84778.png +../../data/yoloGtold1/train/84779.png +../../data/yoloGtold1/train/84780.png +../../data/yoloGtold1/train/84781.png +../../data/yoloGtold1/train/84782.png +../../data/yoloGtold1/train/84783.png +../../data/yoloGtold1/train/84784.png +../../data/yoloGtold1/train/84785.png +../../data/yoloGtold1/train/84786.png +../../data/yoloGtold1/train/84787.png +../../data/yoloGtold1/train/84788.png +../../data/yoloGtold1/train/84789.png +../../data/yoloGtold1/train/84790.png +../../data/yoloGtold1/train/84791.png +../../data/yoloGtold1/train/84792.png +../../data/yoloGtold1/train/84793.png +../../data/yoloGtold1/train/84794.png +../../data/yoloGtold1/train/84795.png +../../data/yoloGtold1/train/84796.png +../../data/yoloGtold1/train/84797.png +../../data/yoloGtold1/train/84798.png +../../data/yoloGtold1/train/84799.png +../../data/yoloGtold1/train/84800.png +../../data/yoloGtold1/train/84801.png +../../data/yoloGtold1/train/84802.png +../../data/yoloGtold1/train/84803.png +../../data/yoloGtold1/train/84804.png +../../data/yoloGtold1/train/84805.png +../../data/yoloGtold1/train/84806.png +../../data/yoloGtold1/train/84807.png +../../data/yoloGtold1/train/84808.png +../../data/yoloGtold1/train/84809.png +../../data/yoloGtold1/train/84810.png +../../data/yoloGtold1/train/84811.png +../../data/yoloGtold1/train/84812.png +../../data/yoloGtold1/train/84813.png +../../data/yoloGtold1/train/84814.png +../../data/yoloGtold1/train/84815.png +../../data/yoloGtold1/train/84816.png +../../data/yoloGtold1/train/84817.png +../../data/yoloGtold1/train/84818.png +../../data/yoloGtold1/train/84819.png +../../data/yoloGtold1/train/84820.png +../../data/yoloGtold1/train/84821.png +../../data/yoloGtold1/train/84822.png +../../data/yoloGtold1/train/84823.png +../../data/yoloGtold1/train/84824.png +../../data/yoloGtold1/train/84825.png +../../data/yoloGtold1/train/84826.png +../../data/yoloGtold1/train/84827.png +../../data/yoloGtold1/train/84828.png +../../data/yoloGtold1/train/84829.png +../../data/yoloGtold1/train/84830.png +../../data/yoloGtold1/train/84831.png +../../data/yoloGtold1/train/84832.png +../../data/yoloGtold1/train/84833.png +../../data/yoloGtold1/train/84834.png +../../data/yoloGtold1/train/84835.png +../../data/yoloGtold1/train/84836.png +../../data/yoloGtold1/train/84837.png +../../data/yoloGtold1/train/84838.png +../../data/yoloGtold1/train/84839.png +../../data/yoloGtold1/train/84840.png +../../data/yoloGtold1/train/84841.png +../../data/yoloGtold1/train/84842.png +../../data/yoloGtold1/train/84843.png +../../data/yoloGtold1/train/84844.png +../../data/yoloGtold1/train/84845.png +../../data/yoloGtold1/train/84846.png +../../data/yoloGtold1/train/84847.png +../../data/yoloGtold1/train/84848.png +../../data/yoloGtold1/train/84849.png +../../data/yoloGtold1/train/84850.png +../../data/yoloGtold1/train/84851.png +../../data/yoloGtold1/train/84852.png +../../data/yoloGtold1/train/84853.png +../../data/yoloGtold1/train/84854.png +../../data/yoloGtold1/train/84855.png +../../data/yoloGtold1/train/84856.png +../../data/yoloGtold1/train/84857.png +../../data/yoloGtold1/train/84858.png +../../data/yoloGtold1/train/84859.png +../../data/yoloGtold1/train/84860.png +../../data/yoloGtold1/train/84861.png +../../data/yoloGtold1/train/84862.png +../../data/yoloGtold1/train/84863.png +../../data/yoloGtold1/train/84864.png +../../data/yoloGtold1/train/84865.png +../../data/yoloGtold1/train/84866.png +../../data/yoloGtold1/train/84867.png +../../data/yoloGtold1/train/84868.png +../../data/yoloGtold1/train/84869.png +../../data/yoloGtold1/train/84870.png +../../data/yoloGtold1/train/84871.png +../../data/yoloGtold1/train/84872.png +../../data/yoloGtold1/train/84873.png +../../data/yoloGtold1/train/84874.png +../../data/yoloGtold1/train/84875.png +../../data/yoloGtold1/train/84876.png +../../data/yoloGtold1/train/84877.png +../../data/yoloGtold1/train/84878.png +../../data/yoloGtold1/train/84879.png +../../data/yoloGtold1/train/84880.png +../../data/yoloGtold1/train/84881.png +../../data/yoloGtold1/train/84882.png +../../data/yoloGtold1/train/84883.png +../../data/yoloGtold1/train/84884.png +../../data/yoloGtold1/train/84885.png +../../data/yoloGtold1/train/84886.png +../../data/yoloGtold1/train/84887.png +../../data/yoloGtold1/train/84888.png +../../data/yoloGtold1/train/84889.png +../../data/yoloGtold1/train/84890.png +../../data/yoloGtold1/train/84891.png +../../data/yoloGtold1/train/84892.png +../../data/yoloGtold1/train/84893.png +../../data/yoloGtold1/train/84894.png +../../data/yoloGtold1/train/84895.png +../../data/yoloGtold1/train/84896.png +../../data/yoloGtold1/train/84897.png +../../data/yoloGtold1/train/84898.png +../../data/yoloGtold1/train/84899.png +../../data/yoloGtold1/train/84900.png +../../data/yoloGtold1/train/84901.png +../../data/yoloGtold1/train/84902.png +../../data/yoloGtold1/train/84903.png +../../data/yoloGtold1/train/84904.png +../../data/yoloGtold1/train/84905.png +../../data/yoloGtold1/train/84906.png +../../data/yoloGtold1/train/84907.png +../../data/yoloGtold1/train/84908.png +../../data/yoloGtold1/train/84909.png +../../data/yoloGtold1/train/84910.png +../../data/yoloGtold1/train/84911.png +../../data/yoloGtold1/train/84912.png +../../data/yoloGtold1/train/84913.png +../../data/yoloGtold1/train/84914.png +../../data/yoloGtold1/train/84915.png +../../data/yoloGtold1/train/84916.png +../../data/yoloGtold1/train/84917.png +../../data/yoloGtold1/train/84918.png +../../data/yoloGtold1/train/84919.png +../../data/yoloGtold1/train/84920.png +../../data/yoloGtold1/train/84921.png +../../data/yoloGtold1/train/84922.png +../../data/yoloGtold1/train/84923.png +../../data/yoloGtold1/train/84924.png +../../data/yoloGtold1/train/84925.png +../../data/yoloGtold1/train/84926.png +../../data/yoloGtold1/train/84927.png +../../data/yoloGtold1/train/84928.png +../../data/yoloGtold1/train/84929.png +../../data/yoloGtold1/train/84930.png +../../data/yoloGtold1/train/84931.png +../../data/yoloGtold1/train/84932.png +../../data/yoloGtold1/train/84933.png +../../data/yoloGtold1/train/84934.png +../../data/yoloGtold1/train/84935.png +../../data/yoloGtold1/train/84936.png +../../data/yoloGtold1/train/84937.png +../../data/yoloGtold1/train/84938.png +../../data/yoloGtold1/train/84939.png +../../data/yoloGtold1/train/84940.png +../../data/yoloGtold1/train/84941.png +../../data/yoloGtold1/train/84942.png +../../data/yoloGtold1/train/84943.png +../../data/yoloGtold1/train/84944.png +../../data/yoloGtold1/train/84945.png +../../data/yoloGtold1/train/84946.png +../../data/yoloGtold1/train/84947.png +../../data/yoloGtold1/train/84948.png +../../data/yoloGtold1/train/84949.png +../../data/yoloGtold1/train/84950.png +../../data/yoloGtold1/train/84951.png +../../data/yoloGtold1/train/84952.png +../../data/yoloGtold1/train/84953.png +../../data/yoloGtold1/train/84954.png +../../data/yoloGtold1/train/84955.png +../../data/yoloGtold1/train/84956.png +../../data/yoloGtold1/train/84957.png +../../data/yoloGtold1/train/84958.png +../../data/yoloGtold1/train/84959.png +../../data/yoloGtold1/train/84960.png +../../data/yoloGtold1/train/84961.png +../../data/yoloGtold1/train/84962.png +../../data/yoloGtold1/train/84963.png +../../data/yoloGtold1/train/84964.png +../../data/yoloGtold1/train/84965.png +../../data/yoloGtold1/train/84966.png +../../data/yoloGtold1/train/84967.png +../../data/yoloGtold1/train/84968.png +../../data/yoloGtold1/train/84969.png +../../data/yoloGtold1/train/84970.png +../../data/yoloGtold1/train/84971.png +../../data/yoloGtold1/train/84972.png +../../data/yoloGtold1/train/84973.png +../../data/yoloGtold1/train/84974.png +../../data/yoloGtold1/train/84975.png +../../data/yoloGtold1/train/84976.png +../../data/yoloGtold1/train/84977.png +../../data/yoloGtold1/train/84978.png +../../data/yoloGtold1/train/84979.png +../../data/yoloGtold1/train/84980.png +../../data/yoloGtold1/train/84981.png +../../data/yoloGtold1/train/84982.png +../../data/yoloGtold1/train/84983.png +../../data/yoloGtold1/train/84984.png +../../data/yoloGtold1/train/84985.png +../../data/yoloGtold1/train/84986.png +../../data/yoloGtold1/train/84987.png +../../data/yoloGtold1/train/84988.png +../../data/yoloGtold1/train/84989.png +../../data/yoloGtold1/train/84990.png +../../data/yoloGtold1/train/84991.png +../../data/yoloGtold1/train/84992.png +../../data/yoloGtold1/train/84993.png +../../data/yoloGtold1/train/84994.png +../../data/yoloGtold1/train/84995.png +../../data/yoloGtold1/train/84996.png +../../data/yoloGtold1/train/84997.png +../../data/yoloGtold1/train/84998.png +../../data/yoloGtold1/train/84999.png +../../data/yoloGtold1/train/85000.png +../../data/yoloGtold1/train/85001.png +../../data/yoloGtold1/train/85002.png +../../data/yoloGtold1/train/85003.png +../../data/yoloGtold1/train/85004.png +../../data/yoloGtold1/train/85005.png +../../data/yoloGtold1/train/85006.png +../../data/yoloGtold1/train/85007.png +../../data/yoloGtold1/train/85008.png +../../data/yoloGtold1/train/85009.png +../../data/yoloGtold1/train/85010.png +../../data/yoloGtold1/train/85011.png +../../data/yoloGtold1/train/85012.png +../../data/yoloGtold1/train/85013.png +../../data/yoloGtold1/train/85014.png +../../data/yoloGtold1/train/85015.png +../../data/yoloGtold1/train/85016.png +../../data/yoloGtold1/train/85017.png +../../data/yoloGtold1/train/85018.png +../../data/yoloGtold1/train/85019.png +../../data/yoloGtold1/train/85020.png +../../data/yoloGtold1/train/85021.png +../../data/yoloGtold1/train/85022.png +../../data/yoloGtold1/train/85023.png +../../data/yoloGtold1/train/85024.png +../../data/yoloGtold1/train/85025.png +../../data/yoloGtold1/train/85026.png +../../data/yoloGtold1/train/85027.png +../../data/yoloGtold1/train/85028.png +../../data/yoloGtold1/train/85029.png +../../data/yoloGtold1/train/85030.png +../../data/yoloGtold1/train/85031.png +../../data/yoloGtold1/train/85032.png +../../data/yoloGtold1/train/85033.png +../../data/yoloGtold1/train/85034.png +../../data/yoloGtold1/train/85035.png +../../data/yoloGtold1/train/85036.png +../../data/yoloGtold1/train/85037.png +../../data/yoloGtold1/train/85038.png +../../data/yoloGtold1/train/85039.png +../../data/yoloGtold1/train/85040.png +../../data/yoloGtold1/train/85041.png +../../data/yoloGtold1/train/85042.png +../../data/yoloGtold1/train/85043.png +../../data/yoloGtold1/train/85044.png +../../data/yoloGtold1/train/85045.png +../../data/yoloGtold1/train/85046.png +../../data/yoloGtold1/train/85047.png +../../data/yoloGtold1/train/85048.png +../../data/yoloGtold1/train/85049.png +../../data/yoloGtold1/train/85050.png +../../data/yoloGtold1/train/85051.png +../../data/yoloGtold1/train/85052.png +../../data/yoloGtold1/train/85053.png +../../data/yoloGtold1/train/85054.png +../../data/yoloGtold1/train/85055.png +../../data/yoloGtold1/train/85056.png +../../data/yoloGtold1/train/85057.png +../../data/yoloGtold1/train/85058.png +../../data/yoloGtold1/train/85059.png +../../data/yoloGtold1/train/85060.png +../../data/yoloGtold1/train/85061.png +../../data/yoloGtold1/train/85062.png +../../data/yoloGtold1/train/85063.png +../../data/yoloGtold1/train/85064.png +../../data/yoloGtold1/train/85065.png +../../data/yoloGtold1/train/85066.png +../../data/yoloGtold1/train/85067.png +../../data/yoloGtold1/train/85068.png +../../data/yoloGtold1/train/85069.png +../../data/yoloGtold1/train/85070.png +../../data/yoloGtold1/train/85071.png +../../data/yoloGtold1/train/85072.png +../../data/yoloGtold1/train/85073.png +../../data/yoloGtold1/train/85074.png +../../data/yoloGtold1/train/85075.png +../../data/yoloGtold1/train/85076.png +../../data/yoloGtold1/train/85077.png +../../data/yoloGtold1/train/85078.png +../../data/yoloGtold1/train/85079.png +../../data/yoloGtold1/train/85080.png +../../data/yoloGtold1/train/85081.png +../../data/yoloGtold1/train/85082.png +../../data/yoloGtold1/train/85083.png +../../data/yoloGtold1/train/85084.png +../../data/yoloGtold1/train/85085.png +../../data/yoloGtold1/train/85086.png +../../data/yoloGtold1/train/85087.png +../../data/yoloGtold1/train/85088.png +../../data/yoloGtold1/train/85089.png +../../data/yoloGtold1/train/85090.png +../../data/yoloGtold1/train/85091.png +../../data/yoloGtold1/train/85092.png +../../data/yoloGtold1/train/85093.png +../../data/yoloGtold1/train/85094.png +../../data/yoloGtold1/train/85095.png +../../data/yoloGtold1/train/85096.png +../../data/yoloGtold1/train/85097.png +../../data/yoloGtold1/train/85098.png +../../data/yoloGtold1/train/85099.png +../../data/yoloGtold1/train/85100.png +../../data/yoloGtold1/train/85101.png +../../data/yoloGtold1/train/85102.png +../../data/yoloGtold1/train/85103.png +../../data/yoloGtold1/train/85104.png +../../data/yoloGtold1/train/85105.png +../../data/yoloGtold1/train/85106.png +../../data/yoloGtold1/train/85107.png +../../data/yoloGtold1/train/85108.png +../../data/yoloGtold1/train/85109.png +../../data/yoloGtold1/train/85110.png +../../data/yoloGtold1/train/85111.png +../../data/yoloGtold1/train/85112.png +../../data/yoloGtold1/train/85113.png +../../data/yoloGtold1/train/85114.png +../../data/yoloGtold1/train/85115.png +../../data/yoloGtold1/train/85116.png +../../data/yoloGtold1/train/85117.png +../../data/yoloGtold1/train/85118.png +../../data/yoloGtold1/train/85119.png +../../data/yoloGtold1/train/85120.png +../../data/yoloGtold1/train/85121.png +../../data/yoloGtold1/train/85122.png +../../data/yoloGtold1/train/85123.png +../../data/yoloGtold1/train/85124.png +../../data/yoloGtold1/train/85125.png +../../data/yoloGtold1/train/85126.png +../../data/yoloGtold1/train/85127.png +../../data/yoloGtold1/train/85128.png +../../data/yoloGtold1/train/85129.png +../../data/yoloGtold1/train/85130.png +../../data/yoloGtold1/train/85131.png +../../data/yoloGtold1/train/85132.png +../../data/yoloGtold1/train/85133.png +../../data/yoloGtold1/train/85134.png +../../data/yoloGtold1/train/85135.png +../../data/yoloGtold1/train/85136.png +../../data/yoloGtold1/train/85137.png +../../data/yoloGtold1/train/85138.png +../../data/yoloGtold1/train/85139.png +../../data/yoloGtold1/train/85140.png +../../data/yoloGtold1/train/85141.png +../../data/yoloGtold1/train/85142.png +../../data/yoloGtold1/train/85143.png +../../data/yoloGtold1/train/85144.png +../../data/yoloGtold1/train/85145.png +../../data/yoloGtold1/train/85146.png +../../data/yoloGtold1/train/85147.png +../../data/yoloGtold1/train/85148.png +../../data/yoloGtold1/train/85149.png +../../data/yoloGtold1/train/85150.png +../../data/yoloGtold1/train/85151.png +../../data/yoloGtold1/train/85152.png +../../data/yoloGtold1/train/85153.png +../../data/yoloGtold1/train/85154.png +../../data/yoloGtold1/train/85155.png +../../data/yoloGtold1/train/85156.png +../../data/yoloGtold1/train/85157.png +../../data/yoloGtold1/train/85158.png +../../data/yoloGtold1/train/85159.png +../../data/yoloGtold1/train/85160.png +../../data/yoloGtold1/train/85161.png +../../data/yoloGtold1/train/85162.png +../../data/yoloGtold1/train/85163.png +../../data/yoloGtold1/train/85164.png +../../data/yoloGtold1/train/85165.png +../../data/yoloGtold1/train/85166.png +../../data/yoloGtold1/train/85167.png +../../data/yoloGtold1/train/85168.png +../../data/yoloGtold1/train/85169.png +../../data/yoloGtold1/train/85170.png +../../data/yoloGtold1/train/85171.png +../../data/yoloGtold1/train/85172.png +../../data/yoloGtold1/train/85173.png +../../data/yoloGtold1/train/85174.png +../../data/yoloGtold1/train/85175.png +../../data/yoloGtold1/train/85176.png +../../data/yoloGtold1/train/85177.png +../../data/yoloGtold1/train/85178.png +../../data/yoloGtold1/train/85179.png +../../data/yoloGtold1/train/85180.png +../../data/yoloGtold1/train/85181.png +../../data/yoloGtold1/train/85182.png +../../data/yoloGtold1/train/85183.png +../../data/yoloGtold1/train/85184.png +../../data/yoloGtold1/train/85185.png +../../data/yoloGtold1/train/85186.png +../../data/yoloGtold1/train/85187.png +../../data/yoloGtold1/train/85188.png +../../data/yoloGtold1/train/85189.png +../../data/yoloGtold1/train/85190.png +../../data/yoloGtold1/train/85191.png +../../data/yoloGtold1/train/85192.png +../../data/yoloGtold1/train/85193.png +../../data/yoloGtold1/train/85194.png +../../data/yoloGtold1/train/85195.png +../../data/yoloGtold1/train/85196.png +../../data/yoloGtold1/train/85197.png +../../data/yoloGtold1/train/85198.png +../../data/yoloGtold1/train/85199.png +../../data/yoloGtold1/train/85200.png +../../data/yoloGtold1/train/85201.png +../../data/yoloGtold1/train/85202.png +../../data/yoloGtold1/train/85203.png +../../data/yoloGtold1/train/85204.png +../../data/yoloGtold1/train/85205.png +../../data/yoloGtold1/train/85206.png +../../data/yoloGtold1/train/85207.png +../../data/yoloGtold1/train/85208.png +../../data/yoloGtold1/train/85209.png +../../data/yoloGtold1/train/85210.png +../../data/yoloGtold1/train/85211.png +../../data/yoloGtold1/train/85212.png +../../data/yoloGtold1/train/85213.png +../../data/yoloGtold1/train/85214.png +../../data/yoloGtold1/train/85215.png +../../data/yoloGtold1/train/85216.png +../../data/yoloGtold1/train/85217.png +../../data/yoloGtold1/train/85218.png +../../data/yoloGtold1/train/85219.png +../../data/yoloGtold1/train/85220.png +../../data/yoloGtold1/train/85221.png +../../data/yoloGtold1/train/85222.png +../../data/yoloGtold1/train/85223.png +../../data/yoloGtold1/train/85224.png +../../data/yoloGtold1/train/85225.png +../../data/yoloGtold1/train/85226.png +../../data/yoloGtold1/train/85227.png +../../data/yoloGtold1/train/85228.png +../../data/yoloGtold1/train/85229.png +../../data/yoloGtold1/train/85230.png +../../data/yoloGtold1/train/85231.png +../../data/yoloGtold1/train/85232.png +../../data/yoloGtold1/train/85233.png +../../data/yoloGtold1/train/85234.png +../../data/yoloGtold1/train/85235.png +../../data/yoloGtold1/train/85236.png +../../data/yoloGtold1/train/85237.png +../../data/yoloGtold1/train/85238.png +../../data/yoloGtold1/train/85239.png +../../data/yoloGtold1/train/85240.png +../../data/yoloGtold1/train/85241.png +../../data/yoloGtold1/train/85242.png +../../data/yoloGtold1/train/85243.png +../../data/yoloGtold1/train/85244.png +../../data/yoloGtold1/train/85245.png +../../data/yoloGtold1/train/85246.png +../../data/yoloGtold1/train/85247.png +../../data/yoloGtold1/train/85248.png +../../data/yoloGtold1/train/85249.png +../../data/yoloGtold1/train/85250.png +../../data/yoloGtold1/train/85251.png +../../data/yoloGtold1/train/85252.png +../../data/yoloGtold1/train/85253.png +../../data/yoloGtold1/train/85254.png +../../data/yoloGtold1/train/85255.png +../../data/yoloGtold1/train/85256.png +../../data/yoloGtold1/train/85257.png +../../data/yoloGtold1/train/85258.png +../../data/yoloGtold1/train/85259.png +../../data/yoloGtold1/train/85260.png +../../data/yoloGtold1/train/85261.png +../../data/yoloGtold1/train/85262.png +../../data/yoloGtold1/train/85263.png +../../data/yoloGtold1/train/85264.png +../../data/yoloGtold1/train/85265.png +../../data/yoloGtold1/train/85266.png +../../data/yoloGtold1/train/85267.png +../../data/yoloGtold1/train/85268.png +../../data/yoloGtold1/train/85269.png +../../data/yoloGtold1/train/85270.png +../../data/yoloGtold1/train/85271.png +../../data/yoloGtold1/train/85272.png +../../data/yoloGtold1/train/85273.png +../../data/yoloGtold1/train/85274.png +../../data/yoloGtold1/train/85275.png +../../data/yoloGtold1/train/85276.png +../../data/yoloGtold1/train/85277.png +../../data/yoloGtold1/train/85278.png +../../data/yoloGtold1/train/85279.png +../../data/yoloGtold1/train/85280.png +../../data/yoloGtold1/train/85281.png +../../data/yoloGtold1/train/85282.png +../../data/yoloGtold1/train/85283.png +../../data/yoloGtold1/train/85284.png +../../data/yoloGtold1/train/85285.png +../../data/yoloGtold1/train/85286.png +../../data/yoloGtold1/train/85287.png +../../data/yoloGtold1/train/85288.png +../../data/yoloGtold1/train/85289.png +../../data/yoloGtold1/train/85290.png +../../data/yoloGtold1/train/85291.png +../../data/yoloGtold1/train/85292.png +../../data/yoloGtold1/train/85293.png +../../data/yoloGtold1/train/85294.png +../../data/yoloGtold1/train/85295.png +../../data/yoloGtold1/train/85296.png +../../data/yoloGtold1/train/85297.png +../../data/yoloGtold1/train/85298.png +../../data/yoloGtold1/train/85299.png +../../data/yoloGtold1/train/85300.png +../../data/yoloGtold1/train/85301.png +../../data/yoloGtold1/train/85302.png +../../data/yoloGtold1/train/85303.png +../../data/yoloGtold1/train/85304.png +../../data/yoloGtold1/train/85305.png +../../data/yoloGtold1/train/85306.png +../../data/yoloGtold1/train/85307.png +../../data/yoloGtold1/train/85308.png +../../data/yoloGtold1/train/85309.png +../../data/yoloGtold1/train/85310.png +../../data/yoloGtold1/train/85311.png +../../data/yoloGtold1/train/85312.png +../../data/yoloGtold1/train/85313.png +../../data/yoloGtold1/train/85314.png +../../data/yoloGtold1/train/85315.png +../../data/yoloGtold1/train/85316.png +../../data/yoloGtold1/train/85317.png +../../data/yoloGtold1/train/85318.png +../../data/yoloGtold1/train/85319.png +../../data/yoloGtold1/train/85320.png +../../data/yoloGtold1/train/85321.png +../../data/yoloGtold1/train/85322.png +../../data/yoloGtold1/train/85323.png +../../data/yoloGtold1/train/85324.png +../../data/yoloGtold1/train/85325.png +../../data/yoloGtold1/train/85326.png +../../data/yoloGtold1/train/85327.png +../../data/yoloGtold1/train/85328.png +../../data/yoloGtold1/train/85329.png +../../data/yoloGtold1/train/85330.png +../../data/yoloGtold1/train/85331.png +../../data/yoloGtold1/train/85332.png +../../data/yoloGtold1/train/85333.png +../../data/yoloGtold1/train/85334.png +../../data/yoloGtold1/train/85335.png +../../data/yoloGtold1/train/85336.png +../../data/yoloGtold1/train/85337.png +../../data/yoloGtold1/train/85338.png +../../data/yoloGtold1/train/85339.png +../../data/yoloGtold1/train/85340.png +../../data/yoloGtold1/train/85341.png +../../data/yoloGtold1/train/85342.png +../../data/yoloGtold1/train/85343.png +../../data/yoloGtold1/train/85344.png +../../data/yoloGtold1/train/85345.png +../../data/yoloGtold1/train/85346.png +../../data/yoloGtold1/train/85347.png +../../data/yoloGtold1/train/85348.png +../../data/yoloGtold1/train/85349.png +../../data/yoloGtold1/train/85350.png +../../data/yoloGtold1/train/85351.png +../../data/yoloGtold1/train/85352.png +../../data/yoloGtold1/train/85353.png +../../data/yoloGtold1/train/85354.png +../../data/yoloGtold1/train/85355.png +../../data/yoloGtold1/train/85356.png +../../data/yoloGtold1/train/85357.png +../../data/yoloGtold1/train/85358.png +../../data/yoloGtold1/train/85359.png +../../data/yoloGtold1/train/85360.png +../../data/yoloGtold1/train/85361.png +../../data/yoloGtold1/train/85362.png +../../data/yoloGtold1/train/85363.png +../../data/yoloGtold1/train/85364.png +../../data/yoloGtold1/train/85365.png +../../data/yoloGtold1/train/85366.png +../../data/yoloGtold1/train/85367.png +../../data/yoloGtold1/train/85368.png +../../data/yoloGtold1/train/85369.png +../../data/yoloGtold1/train/85370.png +../../data/yoloGtold1/train/85371.png +../../data/yoloGtold1/train/85372.png +../../data/yoloGtold1/train/85373.png +../../data/yoloGtold1/train/85374.png +../../data/yoloGtold1/train/85375.png +../../data/yoloGtold1/train/85376.png +../../data/yoloGtold1/train/85377.png +../../data/yoloGtold1/train/85378.png +../../data/yoloGtold1/train/85379.png +../../data/yoloGtold1/train/85380.png +../../data/yoloGtold1/train/85381.png +../../data/yoloGtold1/train/85382.png +../../data/yoloGtold1/train/85383.png +../../data/yoloGtold1/train/85384.png +../../data/yoloGtold1/train/85385.png +../../data/yoloGtold1/train/85386.png +../../data/yoloGtold1/train/85387.png +../../data/yoloGtold1/train/85388.png +../../data/yoloGtold1/train/85389.png +../../data/yoloGtold1/train/85390.png +../../data/yoloGtold1/train/85391.png +../../data/yoloGtold1/train/85392.png +../../data/yoloGtold1/train/85393.png +../../data/yoloGtold1/train/85394.png +../../data/yoloGtold1/train/85395.png +../../data/yoloGtold1/train/85396.png +../../data/yoloGtold1/train/85397.png +../../data/yoloGtold1/train/85398.png +../../data/yoloGtold1/train/85399.png +../../data/yoloGtold1/train/85400.png +../../data/yoloGtold1/train/85401.png +../../data/yoloGtold1/train/85402.png +../../data/yoloGtold1/train/85403.png +../../data/yoloGtold1/train/85404.png +../../data/yoloGtold1/train/85405.png +../../data/yoloGtold1/train/85406.png +../../data/yoloGtold1/train/85407.png +../../data/yoloGtold1/train/85408.png +../../data/yoloGtold1/train/85409.png +../../data/yoloGtold1/train/85410.png +../../data/yoloGtold1/train/85411.png +../../data/yoloGtold1/train/85412.png +../../data/yoloGtold1/train/85413.png +../../data/yoloGtold1/train/85414.png +../../data/yoloGtold1/train/85415.png +../../data/yoloGtold1/train/85416.png +../../data/yoloGtold1/train/85417.png +../../data/yoloGtold1/train/85418.png +../../data/yoloGtold1/train/85419.png +../../data/yoloGtold1/train/85420.png +../../data/yoloGtold1/train/85421.png +../../data/yoloGtold1/train/85422.png +../../data/yoloGtold1/train/85423.png +../../data/yoloGtold1/train/85424.png +../../data/yoloGtold1/train/85425.png +../../data/yoloGtold1/train/85426.png +../../data/yoloGtold1/train/85427.png +../../data/yoloGtold1/train/85428.png +../../data/yoloGtold1/train/85429.png +../../data/yoloGtold1/train/85430.png +../../data/yoloGtold1/train/85431.png +../../data/yoloGtold1/train/85432.png +../../data/yoloGtold1/train/85433.png +../../data/yoloGtold1/train/85434.png +../../data/yoloGtold1/train/85435.png +../../data/yoloGtold1/train/85436.png +../../data/yoloGtold1/train/85437.png +../../data/yoloGtold1/train/85438.png +../../data/yoloGtold1/train/85439.png +../../data/yoloGtold1/train/85440.png +../../data/yoloGtold1/train/85441.png +../../data/yoloGtold1/train/85442.png +../../data/yoloGtold1/train/85443.png +../../data/yoloGtold1/train/85444.png +../../data/yoloGtold1/train/85445.png +../../data/yoloGtold1/train/85446.png +../../data/yoloGtold1/train/85447.png +../../data/yoloGtold1/train/85448.png +../../data/yoloGtold1/train/85449.png +../../data/yoloGtold1/train/85450.png +../../data/yoloGtold1/train/85451.png +../../data/yoloGtold1/train/85452.png +../../data/yoloGtold1/train/85453.png +../../data/yoloGtold1/train/85454.png +../../data/yoloGtold1/train/85455.png +../../data/yoloGtold1/train/85456.png +../../data/yoloGtold1/train/85457.png +../../data/yoloGtold1/train/85458.png +../../data/yoloGtold1/train/85459.png +../../data/yoloGtold1/train/85460.png +../../data/yoloGtold1/train/85461.png +../../data/yoloGtold1/train/85462.png +../../data/yoloGtold1/train/85463.png +../../data/yoloGtold1/train/85464.png +../../data/yoloGtold1/train/85465.png +../../data/yoloGtold1/train/85466.png +../../data/yoloGtold1/train/85467.png +../../data/yoloGtold1/train/85468.png +../../data/yoloGtold1/train/85469.png +../../data/yoloGtold1/train/85470.png +../../data/yoloGtold1/train/85471.png +../../data/yoloGtold1/train/85472.png +../../data/yoloGtold1/train/85473.png +../../data/yoloGtold1/train/85474.png +../../data/yoloGtold1/train/85475.png +../../data/yoloGtold1/train/85476.png +../../data/yoloGtold1/train/85477.png +../../data/yoloGtold1/train/85478.png +../../data/yoloGtold1/train/85479.png +../../data/yoloGtold1/train/85480.png +../../data/yoloGtold1/train/85481.png +../../data/yoloGtold1/train/85482.png +../../data/yoloGtold1/train/85483.png +../../data/yoloGtold1/train/85484.png +../../data/yoloGtold1/train/85485.png +../../data/yoloGtold1/train/85486.png +../../data/yoloGtold1/train/85487.png +../../data/yoloGtold1/train/85488.png +../../data/yoloGtold1/train/85489.png +../../data/yoloGtold1/train/85490.png +../../data/yoloGtold1/train/85491.png +../../data/yoloGtold1/train/85492.png +../../data/yoloGtold1/train/85493.png +../../data/yoloGtold1/train/85494.png +../../data/yoloGtold1/train/85495.png +../../data/yoloGtold1/train/85496.png +../../data/yoloGtold1/train/85497.png +../../data/yoloGtold1/train/85498.png +../../data/yoloGtold1/train/85499.png +../../data/yoloGtold1/train/85500.png +../../data/yoloGtold1/train/85501.png +../../data/yoloGtold1/train/85502.png +../../data/yoloGtold1/train/85503.png +../../data/yoloGtold1/train/85504.png +../../data/yoloGtold1/train/85505.png +../../data/yoloGtold1/train/85506.png +../../data/yoloGtold1/train/85507.png +../../data/yoloGtold1/train/85508.png +../../data/yoloGtold1/train/85509.png +../../data/yoloGtold1/train/85510.png +../../data/yoloGtold1/train/85511.png +../../data/yoloGtold1/train/85512.png +../../data/yoloGtold1/train/85513.png +../../data/yoloGtold1/train/85514.png +../../data/yoloGtold1/train/85515.png +../../data/yoloGtold1/train/85516.png +../../data/yoloGtold1/train/85517.png +../../data/yoloGtold1/train/85518.png +../../data/yoloGtold1/train/85519.png +../../data/yoloGtold1/train/85520.png +../../data/yoloGtold1/train/85521.png +../../data/yoloGtold1/train/85522.png +../../data/yoloGtold1/train/85523.png +../../data/yoloGtold1/train/85524.png +../../data/yoloGtold1/train/85525.png +../../data/yoloGtold1/train/85526.png +../../data/yoloGtold1/train/85527.png +../../data/yoloGtold1/train/85528.png +../../data/yoloGtold1/train/85529.png +../../data/yoloGtold1/train/85530.png +../../data/yoloGtold1/train/85531.png +../../data/yoloGtold1/train/85532.png +../../data/yoloGtold1/train/85533.png +../../data/yoloGtold1/train/85534.png +../../data/yoloGtold1/train/85535.png +../../data/yoloGtold1/train/85536.png +../../data/yoloGtold1/train/85537.png +../../data/yoloGtold1/train/85538.png +../../data/yoloGtold1/train/85539.png +../../data/yoloGtold1/train/85540.png +../../data/yoloGtold1/train/85541.png +../../data/yoloGtold1/train/85542.png +../../data/yoloGtold1/train/85543.png +../../data/yoloGtold1/train/85544.png +../../data/yoloGtold1/train/85545.png +../../data/yoloGtold1/train/85546.png +../../data/yoloGtold1/train/85547.png +../../data/yoloGtold1/train/85548.png +../../data/yoloGtold1/train/85549.png +../../data/yoloGtold1/train/85550.png +../../data/yoloGtold1/train/85551.png +../../data/yoloGtold1/train/85552.png +../../data/yoloGtold1/train/85553.png +../../data/yoloGtold1/train/85554.png +../../data/yoloGtold1/train/85555.png +../../data/yoloGtold1/train/85556.png +../../data/yoloGtold1/train/85557.png +../../data/yoloGtold1/train/85558.png +../../data/yoloGtold1/train/85559.png +../../data/yoloGtold1/train/85560.png +../../data/yoloGtold1/train/85561.png +../../data/yoloGtold1/train/85562.png +../../data/yoloGtold1/train/85563.png +../../data/yoloGtold1/train/85564.png +../../data/yoloGtold1/train/85565.png +../../data/yoloGtold1/train/85566.png +../../data/yoloGtold1/train/85567.png +../../data/yoloGtold1/train/85568.png +../../data/yoloGtold1/train/85569.png +../../data/yoloGtold1/train/85570.png +../../data/yoloGtold1/train/85571.png +../../data/yoloGtold1/train/85572.png +../../data/yoloGtold1/train/85573.png +../../data/yoloGtold1/train/85574.png +../../data/yoloGtold1/train/85575.png +../../data/yoloGtold1/train/85576.png +../../data/yoloGtold1/train/85577.png +../../data/yoloGtold1/train/85578.png +../../data/yoloGtold1/train/85579.png +../../data/yoloGtold1/train/85580.png +../../data/yoloGtold1/train/85581.png +../../data/yoloGtold1/train/85582.png +../../data/yoloGtold1/train/85583.png +../../data/yoloGtold1/train/85584.png +../../data/yoloGtold1/train/85585.png +../../data/yoloGtold1/train/85586.png +../../data/yoloGtold1/train/85587.png +../../data/yoloGtold1/train/85588.png +../../data/yoloGtold1/train/85589.png +../../data/yoloGtold1/train/85590.png +../../data/yoloGtold1/train/85591.png +../../data/yoloGtold1/train/85592.png +../../data/yoloGtold1/train/85593.png +../../data/yoloGtold1/train/85594.png +../../data/yoloGtold1/train/85595.png +../../data/yoloGtold1/train/85596.png +../../data/yoloGtold1/train/85597.png +../../data/yoloGtold1/train/85598.png +../../data/yoloGtold1/train/85599.png +../../data/yoloGtold1/train/85600.png +../../data/yoloGtold1/train/85601.png +../../data/yoloGtold1/train/85602.png +../../data/yoloGtold1/train/85603.png +../../data/yoloGtold1/train/85604.png +../../data/yoloGtold1/train/85605.png +../../data/yoloGtold1/train/85606.png +../../data/yoloGtold1/train/85607.png +../../data/yoloGtold1/train/85608.png +../../data/yoloGtold1/train/85609.png +../../data/yoloGtold1/train/85610.png +../../data/yoloGtold1/train/85611.png +../../data/yoloGtold1/train/85612.png +../../data/yoloGtold1/train/85613.png +../../data/yoloGtold1/train/85614.png +../../data/yoloGtold1/train/85615.png +../../data/yoloGtold1/train/85616.png +../../data/yoloGtold1/train/85617.png +../../data/yoloGtold1/train/85618.png +../../data/yoloGtold1/train/85619.png +../../data/yoloGtold1/train/85620.png +../../data/yoloGtold1/train/85621.png +../../data/yoloGtold1/train/85622.png +../../data/yoloGtold1/train/85623.png +../../data/yoloGtold1/train/85624.png +../../data/yoloGtold1/train/85625.png +../../data/yoloGtold1/train/85626.png +../../data/yoloGtold1/train/85627.png +../../data/yoloGtold1/train/85628.png +../../data/yoloGtold1/train/85629.png +../../data/yoloGtold1/train/85630.png +../../data/yoloGtold1/train/85631.png +../../data/yoloGtold1/train/85632.png +../../data/yoloGtold1/train/85633.png +../../data/yoloGtold1/train/85634.png +../../data/yoloGtold1/train/85635.png +../../data/yoloGtold1/train/85636.png +../../data/yoloGtold1/train/85637.png +../../data/yoloGtold1/train/85638.png +../../data/yoloGtold1/train/85639.png +../../data/yoloGtold1/train/85640.png +../../data/yoloGtold1/train/85641.png +../../data/yoloGtold1/train/85642.png +../../data/yoloGtold1/train/85643.png +../../data/yoloGtold1/train/85644.png +../../data/yoloGtold1/train/85645.png +../../data/yoloGtold1/train/85646.png +../../data/yoloGtold1/train/85647.png +../../data/yoloGtold1/train/85648.png +../../data/yoloGtold1/train/85649.png +../../data/yoloGtold1/train/85650.png +../../data/yoloGtold1/train/85651.png +../../data/yoloGtold1/train/85652.png +../../data/yoloGtold1/train/85653.png +../../data/yoloGtold1/train/85654.png +../../data/yoloGtold1/train/85655.png +../../data/yoloGtold1/train/85656.png +../../data/yoloGtold1/train/85657.png +../../data/yoloGtold1/train/85658.png +../../data/yoloGtold1/train/85659.png +../../data/yoloGtold1/train/85660.png +../../data/yoloGtold1/train/85661.png +../../data/yoloGtold1/train/85662.png +../../data/yoloGtold1/train/85663.png +../../data/yoloGtold1/train/85664.png +../../data/yoloGtold1/train/85665.png +../../data/yoloGtold1/train/85666.png +../../data/yoloGtold1/train/85667.png +../../data/yoloGtold1/train/85668.png +../../data/yoloGtold1/train/85669.png +../../data/yoloGtold1/train/85670.png +../../data/yoloGtold1/train/85671.png +../../data/yoloGtold1/train/85672.png +../../data/yoloGtold1/train/85673.png +../../data/yoloGtold1/train/85674.png +../../data/yoloGtold1/train/85675.png +../../data/yoloGtold1/train/85676.png +../../data/yoloGtold1/train/85677.png +../../data/yoloGtold1/train/85678.png +../../data/yoloGtold1/train/85679.png +../../data/yoloGtold1/train/85680.png +../../data/yoloGtold1/train/85681.png +../../data/yoloGtold1/train/85682.png +../../data/yoloGtold1/train/85683.png +../../data/yoloGtold1/train/85684.png +../../data/yoloGtold1/train/85685.png +../../data/yoloGtold1/train/85686.png +../../data/yoloGtold1/train/85687.png +../../data/yoloGtold1/train/85688.png +../../data/yoloGtold1/train/85689.png +../../data/yoloGtold1/train/85690.png +../../data/yoloGtold1/train/85691.png +../../data/yoloGtold1/train/85692.png +../../data/yoloGtold1/train/85693.png +../../data/yoloGtold1/train/85694.png +../../data/yoloGtold1/train/85695.png +../../data/yoloGtold1/train/85696.png +../../data/yoloGtold1/train/85697.png +../../data/yoloGtold1/train/85698.png +../../data/yoloGtold1/train/85699.png +../../data/yoloGtold1/train/85700.png +../../data/yoloGtold1/train/85701.png +../../data/yoloGtold1/train/85702.png +../../data/yoloGtold1/train/85703.png +../../data/yoloGtold1/train/85704.png +../../data/yoloGtold1/train/85705.png +../../data/yoloGtold1/train/85706.png +../../data/yoloGtold1/train/85707.png +../../data/yoloGtold1/train/85708.png +../../data/yoloGtold1/train/85709.png +../../data/yoloGtold1/train/85710.png +../../data/yoloGtold1/train/85711.png +../../data/yoloGtold1/train/85712.png +../../data/yoloGtold1/train/85713.png +../../data/yoloGtold1/train/85714.png +../../data/yoloGtold1/train/85715.png +../../data/yoloGtold1/train/85716.png +../../data/yoloGtold1/train/85717.png +../../data/yoloGtold1/train/85718.png +../../data/yoloGtold1/train/85719.png +../../data/yoloGtold1/train/85720.png +../../data/yoloGtold1/train/85721.png +../../data/yoloGtold1/train/85722.png +../../data/yoloGtold1/train/85723.png +../../data/yoloGtold1/train/85724.png +../../data/yoloGtold1/train/85725.png +../../data/yoloGtold1/train/85726.png +../../data/yoloGtold1/train/85727.png +../../data/yoloGtold1/train/85728.png +../../data/yoloGtold1/train/85729.png +../../data/yoloGtold1/train/85730.png +../../data/yoloGtold1/train/85731.png +../../data/yoloGtold1/train/85732.png +../../data/yoloGtold1/train/85733.png +../../data/yoloGtold1/train/85734.png +../../data/yoloGtold1/train/85735.png +../../data/yoloGtold1/train/85736.png +../../data/yoloGtold1/train/85737.png +../../data/yoloGtold1/train/85738.png +../../data/yoloGtold1/train/85739.png +../../data/yoloGtold1/train/85740.png +../../data/yoloGtold1/train/85741.png +../../data/yoloGtold1/train/85742.png +../../data/yoloGtold1/train/85743.png +../../data/yoloGtold1/train/85744.png +../../data/yoloGtold1/train/85745.png +../../data/yoloGtold1/train/85746.png +../../data/yoloGtold1/train/85747.png +../../data/yoloGtold1/train/85748.png +../../data/yoloGtold1/train/85749.png +../../data/yoloGtold1/train/85750.png +../../data/yoloGtold1/train/85751.png +../../data/yoloGtold1/train/85752.png +../../data/yoloGtold1/train/85753.png +../../data/yoloGtold1/train/85754.png +../../data/yoloGtold1/train/85755.png +../../data/yoloGtold1/train/85756.png +../../data/yoloGtold1/train/85757.png +../../data/yoloGtold1/train/85758.png +../../data/yoloGtold1/train/85759.png +../../data/yoloGtold1/train/85760.png +../../data/yoloGtold1/train/85761.png +../../data/yoloGtold1/train/85762.png +../../data/yoloGtold1/train/85763.png +../../data/yoloGtold1/train/85764.png +../../data/yoloGtold1/train/85765.png +../../data/yoloGtold1/train/85766.png +../../data/yoloGtold1/train/85767.png +../../data/yoloGtold1/train/85768.png +../../data/yoloGtold1/train/85769.png +../../data/yoloGtold1/train/85770.png +../../data/yoloGtold1/train/85771.png +../../data/yoloGtold1/train/85772.png +../../data/yoloGtold1/train/85773.png +../../data/yoloGtold1/train/85774.png +../../data/yoloGtold1/train/85775.png +../../data/yoloGtold1/train/85776.png +../../data/yoloGtold1/train/85777.png +../../data/yoloGtold1/train/85778.png +../../data/yoloGtold1/train/85779.png +../../data/yoloGtold1/train/85780.png +../../data/yoloGtold1/train/85781.png +../../data/yoloGtold1/train/85782.png +../../data/yoloGtold1/train/85783.png +../../data/yoloGtold1/train/85784.png +../../data/yoloGtold1/train/85785.png +../../data/yoloGtold1/train/85786.png +../../data/yoloGtold1/train/85787.png +../../data/yoloGtold1/train/85788.png +../../data/yoloGtold1/train/85789.png +../../data/yoloGtold1/train/85790.png +../../data/yoloGtold1/train/85791.png +../../data/yoloGtold1/train/85792.png +../../data/yoloGtold1/train/85793.png +../../data/yoloGtold1/train/85794.png +../../data/yoloGtold1/train/85795.png +../../data/yoloGtold1/train/85796.png +../../data/yoloGtold1/train/85797.png +../../data/yoloGtold1/train/85798.png +../../data/yoloGtold1/train/85799.png +../../data/yoloGtold1/train/85800.png +../../data/yoloGtold1/train/85801.png +../../data/yoloGtold1/train/85802.png +../../data/yoloGtold1/train/85803.png +../../data/yoloGtold1/train/85804.png +../../data/yoloGtold1/train/85805.png +../../data/yoloGtold1/train/85806.png +../../data/yoloGtold1/train/85807.png +../../data/yoloGtold1/train/85808.png +../../data/yoloGtold1/train/85809.png +../../data/yoloGtold1/train/85810.png +../../data/yoloGtold1/train/85811.png +../../data/yoloGtold1/train/85812.png +../../data/yoloGtold1/train/85813.png +../../data/yoloGtold1/train/85814.png +../../data/yoloGtold1/train/85815.png +../../data/yoloGtold1/train/85816.png +../../data/yoloGtold1/train/85817.png +../../data/yoloGtold1/train/85818.png +../../data/yoloGtold1/train/85819.png +../../data/yoloGtold1/train/85820.png +../../data/yoloGtold1/train/85821.png +../../data/yoloGtold1/train/85822.png +../../data/yoloGtold1/train/85823.png +../../data/yoloGtold1/train/85824.png +../../data/yoloGtold1/train/85825.png +../../data/yoloGtold1/train/85826.png +../../data/yoloGtold1/train/85827.png +../../data/yoloGtold1/train/85828.png +../../data/yoloGtold1/train/85829.png +../../data/yoloGtold1/train/85830.png +../../data/yoloGtold1/train/85831.png +../../data/yoloGtold1/train/85832.png +../../data/yoloGtold1/train/85833.png +../../data/yoloGtold1/train/85834.png +../../data/yoloGtold1/train/85835.png +../../data/yoloGtold1/train/85836.png +../../data/yoloGtold1/train/85837.png +../../data/yoloGtold1/train/85838.png +../../data/yoloGtold1/train/85839.png +../../data/yoloGtold1/train/85840.png +../../data/yoloGtold1/train/85841.png +../../data/yoloGtold1/train/85842.png +../../data/yoloGtold1/train/85843.png +../../data/yoloGtold1/train/85844.png +../../data/yoloGtold1/train/85845.png +../../data/yoloGtold1/train/85846.png +../../data/yoloGtold1/train/85847.png +../../data/yoloGtold1/train/85848.png +../../data/yoloGtold1/train/85849.png +../../data/yoloGtold1/train/85850.png +../../data/yoloGtold1/train/85851.png +../../data/yoloGtold1/train/85852.png +../../data/yoloGtold1/train/85853.png +../../data/yoloGtold1/train/85854.png +../../data/yoloGtold1/train/85855.png +../../data/yoloGtold1/train/85856.png +../../data/yoloGtold1/train/85857.png +../../data/yoloGtold1/train/85858.png +../../data/yoloGtold1/train/85859.png +../../data/yoloGtold1/train/85860.png +../../data/yoloGtold1/train/85861.png +../../data/yoloGtold1/train/85862.png +../../data/yoloGtold1/train/85863.png +../../data/yoloGtold1/train/85864.png +../../data/yoloGtold1/train/85865.png +../../data/yoloGtold1/train/85866.png +../../data/yoloGtold1/train/85867.png +../../data/yoloGtold1/train/85868.png +../../data/yoloGtold1/train/85869.png +../../data/yoloGtold1/train/85870.png +../../data/yoloGtold1/train/85871.png +../../data/yoloGtold1/train/85872.png +../../data/yoloGtold1/train/85873.png +../../data/yoloGtold1/train/85874.png +../../data/yoloGtold1/train/85875.png +../../data/yoloGtold1/train/85876.png +../../data/yoloGtold1/train/85877.png +../../data/yoloGtold1/train/85878.png +../../data/yoloGtold1/train/85879.png +../../data/yoloGtold1/train/85880.png +../../data/yoloGtold1/train/85881.png +../../data/yoloGtold1/train/85882.png +../../data/yoloGtold1/train/85883.png +../../data/yoloGtold1/train/85884.png +../../data/yoloGtold1/train/85885.png +../../data/yoloGtold1/train/85886.png +../../data/yoloGtold1/train/85887.png +../../data/yoloGtold1/train/85888.png +../../data/yoloGtold1/train/85889.png +../../data/yoloGtold1/train/85890.png +../../data/yoloGtold1/train/85891.png +../../data/yoloGtold1/train/85892.png +../../data/yoloGtold1/train/85893.png +../../data/yoloGtold1/train/85894.png +../../data/yoloGtold1/train/85895.png +../../data/yoloGtold1/train/85896.png +../../data/yoloGtold1/train/85897.png +../../data/yoloGtold1/train/85898.png +../../data/yoloGtold1/train/85899.png +../../data/yoloGtold1/train/85900.png +../../data/yoloGtold1/train/85901.png +../../data/yoloGtold1/train/85902.png +../../data/yoloGtold1/train/85903.png +../../data/yoloGtold1/train/85904.png +../../data/yoloGtold1/train/85905.png +../../data/yoloGtold1/train/85906.png +../../data/yoloGtold1/train/85907.png +../../data/yoloGtold1/train/85908.png +../../data/yoloGtold1/train/85909.png +../../data/yoloGtold1/train/85910.png +../../data/yoloGtold1/train/85911.png +../../data/yoloGtold1/train/85912.png +../../data/yoloGtold1/train/85913.png +../../data/yoloGtold1/train/85914.png +../../data/yoloGtold1/train/85915.png +../../data/yoloGtold1/train/85916.png +../../data/yoloGtold1/train/85917.png +../../data/yoloGtold1/train/85918.png +../../data/yoloGtold1/train/85919.png +../../data/yoloGtold1/train/85920.png +../../data/yoloGtold1/train/85921.png +../../data/yoloGtold1/train/85922.png +../../data/yoloGtold1/train/85923.png +../../data/yoloGtold1/train/85924.png +../../data/yoloGtold1/train/85925.png +../../data/yoloGtold1/train/85926.png +../../data/yoloGtold1/train/85927.png +../../data/yoloGtold1/train/85928.png +../../data/yoloGtold1/train/85929.png +../../data/yoloGtold1/train/85930.png +../../data/yoloGtold1/train/85931.png +../../data/yoloGtold1/train/85932.png +../../data/yoloGtold1/train/85933.png +../../data/yoloGtold1/train/85934.png +../../data/yoloGtold1/train/85935.png +../../data/yoloGtold1/train/85936.png +../../data/yoloGtold1/train/85937.png +../../data/yoloGtold1/train/85938.png +../../data/yoloGtold1/train/85939.png +../../data/yoloGtold1/train/85940.png +../../data/yoloGtold1/train/85941.png +../../data/yoloGtold1/train/85942.png +../../data/yoloGtold1/train/85943.png +../../data/yoloGtold1/train/85944.png +../../data/yoloGtold1/train/85945.png +../../data/yoloGtold1/train/85946.png +../../data/yoloGtold1/train/85947.png +../../data/yoloGtold1/train/85948.png +../../data/yoloGtold1/train/85949.png +../../data/yoloGtold1/train/85950.png +../../data/yoloGtold1/train/85951.png +../../data/yoloGtold1/train/85952.png +../../data/yoloGtold1/train/85953.png +../../data/yoloGtold1/train/85954.png +../../data/yoloGtold1/train/85955.png +../../data/yoloGtold1/train/85956.png +../../data/yoloGtold1/train/85957.png +../../data/yoloGtold1/train/85958.png +../../data/yoloGtold1/train/85959.png +../../data/yoloGtold1/train/85960.png +../../data/yoloGtold1/train/85961.png +../../data/yoloGtold1/train/85962.png +../../data/yoloGtold1/train/85963.png +../../data/yoloGtold1/train/85964.png +../../data/yoloGtold1/train/85965.png +../../data/yoloGtold1/train/85966.png +../../data/yoloGtold1/train/85967.png +../../data/yoloGtold1/train/85968.png +../../data/yoloGtold1/train/85969.png +../../data/yoloGtold1/train/85970.png +../../data/yoloGtold1/train/85971.png +../../data/yoloGtold1/train/85972.png +../../data/yoloGtold1/train/85973.png +../../data/yoloGtold1/train/85974.png +../../data/yoloGtold1/train/85975.png +../../data/yoloGtold1/train/85976.png +../../data/yoloGtold1/train/85977.png +../../data/yoloGtold1/train/85978.png +../../data/yoloGtold1/train/85979.png +../../data/yoloGtold1/train/85980.png +../../data/yoloGtold1/train/85981.png +../../data/yoloGtold1/train/85982.png +../../data/yoloGtold1/train/85983.png +../../data/yoloGtold1/train/85984.png +../../data/yoloGtold1/train/85985.png +../../data/yoloGtold1/train/85986.png +../../data/yoloGtold1/train/85987.png +../../data/yoloGtold1/train/85988.png +../../data/yoloGtold1/train/85989.png +../../data/yoloGtold1/train/85990.png +../../data/yoloGtold1/train/85991.png +../../data/yoloGtold1/train/85992.png +../../data/yoloGtold1/train/85993.png +../../data/yoloGtold1/train/85994.png +../../data/yoloGtold1/train/85995.png +../../data/yoloGtold1/train/85996.png +../../data/yoloGtold1/train/85997.png +../../data/yoloGtold1/train/85998.png +../../data/yoloGtold1/train/85999.png +../../data/yoloGtold1/train/86000.png +../../data/yoloGtold1/train/86001.png +../../data/yoloGtold1/train/86002.png +../../data/yoloGtold1/train/86003.png +../../data/yoloGtold1/train/86004.png +../../data/yoloGtold1/train/86005.png +../../data/yoloGtold1/train/86006.png +../../data/yoloGtold1/train/86007.png +../../data/yoloGtold1/train/86008.png +../../data/yoloGtold1/train/86009.png +../../data/yoloGtold1/train/86010.png +../../data/yoloGtold1/train/86011.png +../../data/yoloGtold1/train/86012.png +../../data/yoloGtold1/train/86013.png +../../data/yoloGtold1/train/86014.png +../../data/yoloGtold1/train/86015.png +../../data/yoloGtold1/train/86016.png +../../data/yoloGtold1/train/86017.png +../../data/yoloGtold1/train/86018.png +../../data/yoloGtold1/train/86019.png +../../data/yoloGtold1/train/86020.png +../../data/yoloGtold1/train/86021.png +../../data/yoloGtold1/train/86022.png +../../data/yoloGtold1/train/86023.png +../../data/yoloGtold1/train/86024.png +../../data/yoloGtold1/train/86025.png +../../data/yoloGtold1/train/86026.png +../../data/yoloGtold1/train/86027.png +../../data/yoloGtold1/train/86028.png +../../data/yoloGtold1/train/86029.png +../../data/yoloGtold1/train/86030.png +../../data/yoloGtold1/train/86031.png +../../data/yoloGtold1/train/86032.png +../../data/yoloGtold1/train/86033.png +../../data/yoloGtold1/train/86034.png +../../data/yoloGtold1/train/86035.png +../../data/yoloGtold1/train/86036.png +../../data/yoloGtold1/train/86037.png +../../data/yoloGtold1/train/86038.png +../../data/yoloGtold1/train/86039.png +../../data/yoloGtold1/train/86040.png +../../data/yoloGtold1/train/86041.png +../../data/yoloGtold1/train/86042.png +../../data/yoloGtold1/train/86043.png +../../data/yoloGtold1/train/86044.png +../../data/yoloGtold1/train/86045.png +../../data/yoloGtold1/train/86046.png +../../data/yoloGtold1/train/86047.png +../../data/yoloGtold1/train/86048.png +../../data/yoloGtold1/train/86049.png +../../data/yoloGtold1/train/86050.png +../../data/yoloGtold1/train/86051.png +../../data/yoloGtold1/train/86052.png +../../data/yoloGtold1/train/86053.png +../../data/yoloGtold1/train/86054.png +../../data/yoloGtold1/train/86055.png +../../data/yoloGtold1/train/86056.png +../../data/yoloGtold1/train/86057.png +../../data/yoloGtold1/train/86058.png +../../data/yoloGtold1/train/86059.png +../../data/yoloGtold1/train/86060.png +../../data/yoloGtold1/train/86061.png +../../data/yoloGtold1/train/86062.png +../../data/yoloGtold1/train/86063.png +../../data/yoloGtold1/train/86064.png +../../data/yoloGtold1/train/86065.png +../../data/yoloGtold1/train/86066.png +../../data/yoloGtold1/train/86067.png +../../data/yoloGtold1/train/86068.png +../../data/yoloGtold1/train/86069.png +../../data/yoloGtold1/train/86070.png +../../data/yoloGtold1/train/86071.png +../../data/yoloGtold1/train/86072.png +../../data/yoloGtold1/train/86073.png +../../data/yoloGtold1/train/86074.png +../../data/yoloGtold1/train/86075.png +../../data/yoloGtold1/train/86076.png +../../data/yoloGtold1/train/86077.png +../../data/yoloGtold1/train/86078.png +../../data/yoloGtold1/train/86079.png +../../data/yoloGtold1/train/86080.png +../../data/yoloGtold1/train/86081.png +../../data/yoloGtold1/train/86082.png +../../data/yoloGtold1/train/86083.png +../../data/yoloGtold1/train/86084.png +../../data/yoloGtold1/train/86085.png +../../data/yoloGtold1/train/86086.png +../../data/yoloGtold1/train/86087.png +../../data/yoloGtold1/train/86088.png +../../data/yoloGtold1/train/86089.png +../../data/yoloGtold1/train/86090.png +../../data/yoloGtold1/train/86091.png +../../data/yoloGtold1/train/86092.png +../../data/yoloGtold1/train/86093.png +../../data/yoloGtold1/train/86094.png +../../data/yoloGtold1/train/86095.png +../../data/yoloGtold1/train/86096.png +../../data/yoloGtold1/train/86097.png +../../data/yoloGtold1/train/86098.png +../../data/yoloGtold1/train/86099.png +../../data/yoloGtold1/train/86100.png +../../data/yoloGtold1/train/86101.png +../../data/yoloGtold1/train/86102.png +../../data/yoloGtold1/train/86103.png +../../data/yoloGtold1/train/86104.png +../../data/yoloGtold1/train/86105.png +../../data/yoloGtold1/train/86106.png +../../data/yoloGtold1/train/86107.png +../../data/yoloGtold1/train/86108.png +../../data/yoloGtold1/train/86109.png +../../data/yoloGtold1/train/86110.png +../../data/yoloGtold1/train/86111.png +../../data/yoloGtold1/train/86112.png +../../data/yoloGtold1/train/86113.png +../../data/yoloGtold1/train/86114.png +../../data/yoloGtold1/train/86115.png +../../data/yoloGtold1/train/86116.png +../../data/yoloGtold1/train/86117.png +../../data/yoloGtold1/train/86118.png +../../data/yoloGtold1/train/86119.png +../../data/yoloGtold1/train/86120.png +../../data/yoloGtold1/train/86121.png +../../data/yoloGtold1/train/86122.png +../../data/yoloGtold1/train/86123.png +../../data/yoloGtold1/train/86124.png +../../data/yoloGtold1/train/86125.png +../../data/yoloGtold1/train/86126.png +../../data/yoloGtold1/train/86127.png +../../data/yoloGtold1/train/86128.png +../../data/yoloGtold1/train/86129.png +../../data/yoloGtold1/train/86130.png +../../data/yoloGtold1/train/86131.png +../../data/yoloGtold1/train/86132.png +../../data/yoloGtold1/train/86133.png +../../data/yoloGtold1/train/86134.png +../../data/yoloGtold1/train/86135.png +../../data/yoloGtold1/train/86136.png +../../data/yoloGtold1/train/86137.png +../../data/yoloGtold1/train/86138.png +../../data/yoloGtold1/train/86139.png +../../data/yoloGtold1/train/86140.png +../../data/yoloGtold1/train/86141.png +../../data/yoloGtold1/train/86142.png +../../data/yoloGtold1/train/86143.png +../../data/yoloGtold1/train/86144.png +../../data/yoloGtold1/train/86145.png +../../data/yoloGtold1/train/86146.png +../../data/yoloGtold1/train/86147.png +../../data/yoloGtold1/train/86148.png +../../data/yoloGtold1/train/86149.png +../../data/yoloGtold1/train/86150.png +../../data/yoloGtold1/train/86151.png +../../data/yoloGtold1/train/86152.png +../../data/yoloGtold1/train/86153.png +../../data/yoloGtold1/train/86154.png +../../data/yoloGtold1/train/86155.png +../../data/yoloGtold1/train/86156.png +../../data/yoloGtold1/train/86157.png +../../data/yoloGtold1/train/86158.png +../../data/yoloGtold1/train/86159.png +../../data/yoloGtold1/train/86160.png +../../data/yoloGtold1/train/86161.png +../../data/yoloGtold1/train/86162.png +../../data/yoloGtold1/train/86163.png +../../data/yoloGtold1/train/86164.png +../../data/yoloGtold1/train/86165.png +../../data/yoloGtold1/train/86166.png +../../data/yoloGtold1/train/86167.png +../../data/yoloGtold1/train/86168.png +../../data/yoloGtold1/train/86169.png +../../data/yoloGtold1/train/86170.png +../../data/yoloGtold1/train/86171.png +../../data/yoloGtold1/train/86172.png +../../data/yoloGtold1/train/86173.png +../../data/yoloGtold1/train/86174.png +../../data/yoloGtold1/train/86175.png +../../data/yoloGtold1/train/86176.png +../../data/yoloGtold1/train/86177.png +../../data/yoloGtold1/train/86178.png +../../data/yoloGtold1/train/86179.png +../../data/yoloGtold1/train/86180.png +../../data/yoloGtold1/train/86181.png +../../data/yoloGtold1/train/86182.png +../../data/yoloGtold1/train/86183.png +../../data/yoloGtold1/train/86184.png +../../data/yoloGtold1/train/86185.png +../../data/yoloGtold1/train/86186.png +../../data/yoloGtold1/train/86187.png +../../data/yoloGtold1/train/86188.png +../../data/yoloGtold1/train/86189.png +../../data/yoloGtold1/train/86190.png +../../data/yoloGtold1/train/86191.png +../../data/yoloGtold1/train/86192.png +../../data/yoloGtold1/train/86193.png +../../data/yoloGtold1/train/86194.png +../../data/yoloGtold1/train/86195.png +../../data/yoloGtold1/train/86196.png +../../data/yoloGtold1/train/86197.png +../../data/yoloGtold1/train/86198.png +../../data/yoloGtold1/train/86199.png +../../data/yoloGtold1/train/86200.png +../../data/yoloGtold1/train/86201.png +../../data/yoloGtold1/train/86202.png +../../data/yoloGtold1/train/86203.png +../../data/yoloGtold1/train/86204.png +../../data/yoloGtold1/train/86205.png +../../data/yoloGtold1/train/86206.png +../../data/yoloGtold1/train/86207.png +../../data/yoloGtold1/train/86208.png +../../data/yoloGtold1/train/86209.png +../../data/yoloGtold1/train/86210.png +../../data/yoloGtold1/train/86211.png +../../data/yoloGtold1/train/86212.png +../../data/yoloGtold1/train/86213.png +../../data/yoloGtold1/train/86214.png +../../data/yoloGtold1/train/86215.png +../../data/yoloGtold1/train/86216.png +../../data/yoloGtold1/train/86217.png +../../data/yoloGtold1/train/86218.png +../../data/yoloGtold1/train/86219.png +../../data/yoloGtold1/train/86220.png +../../data/yoloGtold1/train/86221.png +../../data/yoloGtold1/train/86222.png +../../data/yoloGtold1/train/86223.png +../../data/yoloGtold1/train/86224.png +../../data/yoloGtold1/train/86225.png +../../data/yoloGtold1/train/86226.png +../../data/yoloGtold1/train/86227.png +../../data/yoloGtold1/train/86228.png +../../data/yoloGtold1/train/86229.png +../../data/yoloGtold1/train/86230.png +../../data/yoloGtold1/train/86231.png +../../data/yoloGtold1/train/86232.png +../../data/yoloGtold1/train/86233.png +../../data/yoloGtold1/train/86234.png +../../data/yoloGtold1/train/86235.png +../../data/yoloGtold1/train/86236.png +../../data/yoloGtold1/train/86237.png +../../data/yoloGtold1/train/86238.png +../../data/yoloGtold1/train/86239.png +../../data/yoloGtold1/train/86240.png +../../data/yoloGtold1/train/86241.png +../../data/yoloGtold1/train/86242.png +../../data/yoloGtold1/train/86243.png +../../data/yoloGtold1/train/86244.png +../../data/yoloGtold1/train/86245.png +../../data/yoloGtold1/train/86246.png +../../data/yoloGtold1/train/86247.png +../../data/yoloGtold1/train/86248.png +../../data/yoloGtold1/train/86249.png +../../data/yoloGtold1/train/86250.png +../../data/yoloGtold1/train/86251.png +../../data/yoloGtold1/train/86252.png +../../data/yoloGtold1/train/86253.png +../../data/yoloGtold1/train/86254.png +../../data/yoloGtold1/train/86255.png +../../data/yoloGtold1/train/86256.png +../../data/yoloGtold1/train/86257.png +../../data/yoloGtold1/train/86258.png +../../data/yoloGtold1/train/86259.png +../../data/yoloGtold1/train/86260.png +../../data/yoloGtold1/train/86261.png +../../data/yoloGtold1/train/86262.png +../../data/yoloGtold1/train/86263.png +../../data/yoloGtold1/train/86264.png +../../data/yoloGtold1/train/86265.png +../../data/yoloGtold1/train/86266.png +../../data/yoloGtold1/train/86267.png +../../data/yoloGtold1/train/86268.png +../../data/yoloGtold1/train/86269.png +../../data/yoloGtold1/train/86270.png +../../data/yoloGtold1/train/86271.png +../../data/yoloGtold1/train/86272.png +../../data/yoloGtold1/train/86273.png +../../data/yoloGtold1/train/86274.png +../../data/yoloGtold1/train/86275.png +../../data/yoloGtold1/train/86276.png +../../data/yoloGtold1/train/86277.png +../../data/yoloGtold1/train/86278.png +../../data/yoloGtold1/train/86279.png +../../data/yoloGtold1/train/86280.png +../../data/yoloGtold1/train/86281.png +../../data/yoloGtold1/train/86282.png +../../data/yoloGtold1/train/86283.png +../../data/yoloGtold1/train/86284.png +../../data/yoloGtold1/train/86285.png +../../data/yoloGtold1/train/86286.png +../../data/yoloGtold1/train/86287.png +../../data/yoloGtold1/train/86288.png +../../data/yoloGtold1/train/86289.png +../../data/yoloGtold1/train/86290.png +../../data/yoloGtold1/train/86291.png +../../data/yoloGtold1/train/86292.png +../../data/yoloGtold1/train/86293.png +../../data/yoloGtold1/train/86294.png +../../data/yoloGtold1/train/86295.png +../../data/yoloGtold1/train/86296.png +../../data/yoloGtold1/train/86297.png +../../data/yoloGtold1/train/86298.png +../../data/yoloGtold1/train/86299.png +../../data/yoloGtold1/train/86300.png +../../data/yoloGtold1/train/86301.png +../../data/yoloGtold1/train/86302.png +../../data/yoloGtold1/train/86303.png +../../data/yoloGtold1/train/86304.png +../../data/yoloGtold1/train/86305.png +../../data/yoloGtold1/train/86306.png +../../data/yoloGtold1/train/86307.png +../../data/yoloGtold1/train/86308.png +../../data/yoloGtold1/train/86309.png +../../data/yoloGtold1/train/86310.png +../../data/yoloGtold1/train/86311.png +../../data/yoloGtold1/train/86312.png +../../data/yoloGtold1/train/86313.png +../../data/yoloGtold1/train/86314.png +../../data/yoloGtold1/train/86315.png +../../data/yoloGtold1/train/86316.png +../../data/yoloGtold1/train/86317.png +../../data/yoloGtold1/train/86318.png +../../data/yoloGtold1/train/86319.png +../../data/yoloGtold1/train/86320.png +../../data/yoloGtold1/train/86321.png +../../data/yoloGtold1/train/86322.png +../../data/yoloGtold1/train/86323.png +../../data/yoloGtold1/train/86324.png +../../data/yoloGtold1/train/86325.png +../../data/yoloGtold1/train/86326.png +../../data/yoloGtold1/train/86327.png +../../data/yoloGtold1/train/86328.png +../../data/yoloGtold1/train/86329.png +../../data/yoloGtold1/train/86330.png +../../data/yoloGtold1/train/86331.png +../../data/yoloGtold1/train/86332.png +../../data/yoloGtold1/train/86333.png +../../data/yoloGtold1/train/86334.png +../../data/yoloGtold1/train/86335.png +../../data/yoloGtold1/train/86336.png +../../data/yoloGtold1/train/86337.png +../../data/yoloGtold1/train/86338.png +../../data/yoloGtold1/train/86339.png +../../data/yoloGtold1/train/86340.png +../../data/yoloGtold1/train/86341.png +../../data/yoloGtold1/train/86342.png +../../data/yoloGtold1/train/86343.png +../../data/yoloGtold1/train/86344.png +../../data/yoloGtold1/train/86345.png +../../data/yoloGtold1/train/86346.png +../../data/yoloGtold1/train/86347.png +../../data/yoloGtold1/train/86348.png +../../data/yoloGtold1/train/86349.png +../../data/yoloGtold1/train/86350.png +../../data/yoloGtold1/train/86351.png +../../data/yoloGtold1/train/86352.png +../../data/yoloGtold1/train/86353.png +../../data/yoloGtold1/train/86354.png +../../data/yoloGtold1/train/86355.png +../../data/yoloGtold1/train/86356.png +../../data/yoloGtold1/train/86357.png +../../data/yoloGtold1/train/86358.png +../../data/yoloGtold1/train/86359.png +../../data/yoloGtold1/train/86360.png +../../data/yoloGtold1/train/86361.png +../../data/yoloGtold1/train/86362.png +../../data/yoloGtold1/train/86363.png +../../data/yoloGtold1/train/86364.png +../../data/yoloGtold1/train/86365.png +../../data/yoloGtold1/train/86366.png +../../data/yoloGtold1/train/86367.png +../../data/yoloGtold1/train/86368.png +../../data/yoloGtold1/train/86369.png +../../data/yoloGtold1/train/86370.png +../../data/yoloGtold1/train/86371.png +../../data/yoloGtold1/train/86372.png +../../data/yoloGtold1/train/86373.png +../../data/yoloGtold1/train/86374.png +../../data/yoloGtold1/train/86375.png +../../data/yoloGtold1/train/86376.png +../../data/yoloGtold1/train/86377.png +../../data/yoloGtold1/train/86378.png +../../data/yoloGtold1/train/86379.png +../../data/yoloGtold1/train/86380.png +../../data/yoloGtold1/train/86381.png +../../data/yoloGtold1/train/86382.png +../../data/yoloGtold1/train/86383.png +../../data/yoloGtold1/train/86384.png +../../data/yoloGtold1/train/86385.png +../../data/yoloGtold1/train/86386.png +../../data/yoloGtold1/train/86387.png +../../data/yoloGtold1/train/86388.png +../../data/yoloGtold1/train/86389.png +../../data/yoloGtold1/train/86390.png +../../data/yoloGtold1/train/86391.png +../../data/yoloGtold1/train/86392.png +../../data/yoloGtold1/train/86393.png +../../data/yoloGtold1/train/86394.png +../../data/yoloGtold1/train/86395.png +../../data/yoloGtold1/train/86396.png +../../data/yoloGtold1/train/86397.png +../../data/yoloGtold1/train/86398.png +../../data/yoloGtold1/train/86399.png +../../data/yoloGtold1/train/86400.png +../../data/yoloGtold1/train/86401.png +../../data/yoloGtold1/train/86402.png +../../data/yoloGtold1/train/86403.png +../../data/yoloGtold1/train/86404.png +../../data/yoloGtold1/train/86405.png +../../data/yoloGtold1/train/86406.png +../../data/yoloGtold1/train/86407.png +../../data/yoloGtold1/train/86408.png +../../data/yoloGtold1/train/86409.png +../../data/yoloGtold1/train/86410.png +../../data/yoloGtold1/train/86411.png +../../data/yoloGtold1/train/86412.png +../../data/yoloGtold1/train/86413.png +../../data/yoloGtold1/train/86414.png +../../data/yoloGtold1/train/86415.png +../../data/yoloGtold1/train/86416.png +../../data/yoloGtold1/train/86417.png +../../data/yoloGtold1/train/86418.png +../../data/yoloGtold1/train/86419.png +../../data/yoloGtold1/train/86420.png +../../data/yoloGtold1/train/86421.png +../../data/yoloGtold1/train/86422.png +../../data/yoloGtold1/train/86423.png +../../data/yoloGtold1/train/86424.png +../../data/yoloGtold1/train/86425.png +../../data/yoloGtold1/train/86426.png +../../data/yoloGtold1/train/86427.png +../../data/yoloGtold1/train/86428.png +../../data/yoloGtold1/train/86429.png +../../data/yoloGtold1/train/86430.png +../../data/yoloGtold1/train/86431.png +../../data/yoloGtold1/train/86432.png +../../data/yoloGtold1/train/86433.png +../../data/yoloGtold1/train/86434.png +../../data/yoloGtold1/train/86435.png +../../data/yoloGtold1/train/86436.png +../../data/yoloGtold1/train/86437.png +../../data/yoloGtold1/train/86438.png +../../data/yoloGtold1/train/86439.png +../../data/yoloGtold1/train/86440.png +../../data/yoloGtold1/train/86441.png +../../data/yoloGtold1/train/86442.png +../../data/yoloGtold1/train/86443.png +../../data/yoloGtold1/train/86444.png +../../data/yoloGtold1/train/86445.png +../../data/yoloGtold1/train/86446.png +../../data/yoloGtold1/train/86447.png +../../data/yoloGtold1/train/86448.png +../../data/yoloGtold1/train/86449.png +../../data/yoloGtold1/train/86450.png +../../data/yoloGtold1/train/86451.png +../../data/yoloGtold1/train/86452.png +../../data/yoloGtold1/train/86453.png +../../data/yoloGtold1/train/86454.png +../../data/yoloGtold1/train/86455.png +../../data/yoloGtold1/train/86456.png +../../data/yoloGtold1/train/86457.png +../../data/yoloGtold1/train/86458.png +../../data/yoloGtold1/train/86459.png +../../data/yoloGtold1/train/86460.png +../../data/yoloGtold1/train/86461.png +../../data/yoloGtold1/train/86462.png +../../data/yoloGtold1/train/86463.png +../../data/yoloGtold1/train/86464.png +../../data/yoloGtold1/train/86465.png +../../data/yoloGtold1/train/86466.png +../../data/yoloGtold1/train/86467.png +../../data/yoloGtold1/train/86468.png +../../data/yoloGtold1/train/86469.png +../../data/yoloGtold1/train/86470.png +../../data/yoloGtold1/train/86471.png +../../data/yoloGtold1/train/86472.png +../../data/yoloGtold1/train/86473.png +../../data/yoloGtold1/train/86474.png +../../data/yoloGtold1/train/86475.png +../../data/yoloGtold1/train/86476.png +../../data/yoloGtold1/train/86477.png +../../data/yoloGtold1/train/86478.png +../../data/yoloGtold1/train/86479.png +../../data/yoloGtold1/train/86480.png +../../data/yoloGtold1/train/86481.png +../../data/yoloGtold1/train/86482.png +../../data/yoloGtold1/train/86483.png +../../data/yoloGtold1/train/86484.png +../../data/yoloGtold1/train/86485.png +../../data/yoloGtold1/train/86486.png +../../data/yoloGtold1/train/86487.png +../../data/yoloGtold1/train/86488.png +../../data/yoloGtold1/train/86489.png +../../data/yoloGtold1/train/86490.png +../../data/yoloGtold1/train/86491.png +../../data/yoloGtold1/train/86492.png +../../data/yoloGtold1/train/86493.png +../../data/yoloGtold1/train/86494.png +../../data/yoloGtold1/train/86495.png +../../data/yoloGtold1/train/86496.png +../../data/yoloGtold1/train/86497.png +../../data/yoloGtold1/train/86498.png +../../data/yoloGtold1/train/86499.png +../../data/yoloGtold1/train/86500.png +../../data/yoloGtold1/train/86501.png +../../data/yoloGtold1/train/86502.png +../../data/yoloGtold1/train/86503.png +../../data/yoloGtold1/train/86504.png +../../data/yoloGtold1/train/86505.png +../../data/yoloGtold1/train/86506.png +../../data/yoloGtold1/train/86507.png +../../data/yoloGtold1/train/86508.png +../../data/yoloGtold1/train/86509.png +../../data/yoloGtold1/train/86510.png +../../data/yoloGtold1/train/86511.png +../../data/yoloGtold1/train/86512.png +../../data/yoloGtold1/train/86513.png +../../data/yoloGtold1/train/86514.png +../../data/yoloGtold1/train/86515.png +../../data/yoloGtold1/train/86516.png +../../data/yoloGtold1/train/86517.png +../../data/yoloGtold1/train/86518.png +../../data/yoloGtold1/train/86519.png +../../data/yoloGtold1/train/86520.png +../../data/yoloGtold1/train/86521.png +../../data/yoloGtold1/train/86522.png +../../data/yoloGtold1/train/86523.png +../../data/yoloGtold1/train/86524.png +../../data/yoloGtold1/train/86525.png +../../data/yoloGtold1/train/86526.png +../../data/yoloGtold1/train/86527.png +../../data/yoloGtold1/train/86528.png +../../data/yoloGtold1/train/86529.png +../../data/yoloGtold1/train/86530.png +../../data/yoloGtold1/train/86531.png +../../data/yoloGtold1/train/86532.png +../../data/yoloGtold1/train/86533.png +../../data/yoloGtold1/train/86534.png +../../data/yoloGtold1/train/86535.png +../../data/yoloGtold1/train/86536.png +../../data/yoloGtold1/train/86537.png +../../data/yoloGtold1/train/86538.png +../../data/yoloGtold1/train/86539.png +../../data/yoloGtold1/train/86540.png +../../data/yoloGtold1/train/86541.png +../../data/yoloGtold1/train/86542.png +../../data/yoloGtold1/train/86543.png +../../data/yoloGtold1/train/86544.png +../../data/yoloGtold1/train/86545.png +../../data/yoloGtold1/train/86546.png +../../data/yoloGtold1/train/86547.png +../../data/yoloGtold1/train/86548.png +../../data/yoloGtold1/train/86549.png +../../data/yoloGtold1/train/86550.png +../../data/yoloGtold1/train/86551.png +../../data/yoloGtold1/train/86552.png +../../data/yoloGtold1/train/86553.png +../../data/yoloGtold1/train/86554.png +../../data/yoloGtold1/train/86555.png +../../data/yoloGtold1/train/86556.png +../../data/yoloGtold1/train/86557.png +../../data/yoloGtold1/train/86558.png +../../data/yoloGtold1/train/86559.png +../../data/yoloGtold1/train/86560.png +../../data/yoloGtold1/train/86561.png +../../data/yoloGtold1/train/86562.png +../../data/yoloGtold1/train/86563.png +../../data/yoloGtold1/train/86564.png +../../data/yoloGtold1/train/86565.png +../../data/yoloGtold1/train/86566.png +../../data/yoloGtold1/train/86567.png +../../data/yoloGtold1/train/86568.png +../../data/yoloGtold1/train/86569.png +../../data/yoloGtold1/train/86570.png +../../data/yoloGtold1/train/86571.png +../../data/yoloGtold1/train/86572.png +../../data/yoloGtold1/train/86573.png +../../data/yoloGtold1/train/86574.png +../../data/yoloGtold1/train/86575.png +../../data/yoloGtold1/train/86576.png +../../data/yoloGtold1/train/86577.png +../../data/yoloGtold1/train/86578.png +../../data/yoloGtold1/train/86579.png +../../data/yoloGtold1/train/86580.png +../../data/yoloGtold1/train/86581.png +../../data/yoloGtold1/train/86582.png +../../data/yoloGtold1/train/86583.png +../../data/yoloGtold1/train/86584.png +../../data/yoloGtold1/train/86585.png +../../data/yoloGtold1/train/86586.png +../../data/yoloGtold1/train/86587.png +../../data/yoloGtold1/train/86588.png +../../data/yoloGtold1/train/86589.png +../../data/yoloGtold1/train/86590.png +../../data/yoloGtold1/train/86591.png +../../data/yoloGtold1/train/86592.png +../../data/yoloGtold1/train/86593.png +../../data/yoloGtold1/train/86594.png +../../data/yoloGtold1/train/86595.png +../../data/yoloGtold1/train/86596.png +../../data/yoloGtold1/train/86597.png +../../data/yoloGtold1/train/86598.png +../../data/yoloGtold1/train/86599.png +../../data/yoloGtold1/train/86600.png +../../data/yoloGtold1/train/86601.png +../../data/yoloGtold1/train/86602.png +../../data/yoloGtold1/train/86603.png +../../data/yoloGtold1/train/86604.png +../../data/yoloGtold1/train/86605.png +../../data/yoloGtold1/train/86606.png +../../data/yoloGtold1/train/86607.png +../../data/yoloGtold1/train/86608.png +../../data/yoloGtold1/train/86609.png +../../data/yoloGtold1/train/86610.png +../../data/yoloGtold1/train/86611.png +../../data/yoloGtold1/train/86612.png +../../data/yoloGtold1/train/86613.png +../../data/yoloGtold1/train/86614.png +../../data/yoloGtold1/train/86615.png +../../data/yoloGtold1/train/86616.png +../../data/yoloGtold1/train/86617.png +../../data/yoloGtold1/train/86618.png +../../data/yoloGtold1/train/86619.png +../../data/yoloGtold1/train/86620.png +../../data/yoloGtold1/train/86621.png +../../data/yoloGtold1/train/86622.png +../../data/yoloGtold1/train/86623.png +../../data/yoloGtold1/train/86624.png +../../data/yoloGtold1/train/86625.png +../../data/yoloGtold1/train/86626.png +../../data/yoloGtold1/train/86627.png +../../data/yoloGtold1/train/86628.png +../../data/yoloGtold1/train/86629.png +../../data/yoloGtold1/train/86630.png +../../data/yoloGtold1/train/86631.png +../../data/yoloGtold1/train/86632.png +../../data/yoloGtold1/train/86633.png +../../data/yoloGtold1/train/86634.png +../../data/yoloGtold1/train/86635.png +../../data/yoloGtold1/train/86636.png +../../data/yoloGtold1/train/86637.png +../../data/yoloGtold1/train/86638.png +../../data/yoloGtold1/train/86639.png +../../data/yoloGtold1/train/86640.png +../../data/yoloGtold1/train/86641.png +../../data/yoloGtold1/train/86642.png +../../data/yoloGtold1/train/86643.png +../../data/yoloGtold1/train/86644.png +../../data/yoloGtold1/train/86645.png +../../data/yoloGtold1/train/86646.png +../../data/yoloGtold1/train/86647.png +../../data/yoloGtold1/train/86648.png +../../data/yoloGtold1/train/86649.png +../../data/yoloGtold1/train/86650.png +../../data/yoloGtold1/train/86651.png +../../data/yoloGtold1/train/86652.png +../../data/yoloGtold1/train/86653.png +../../data/yoloGtold1/train/86654.png +../../data/yoloGtold1/train/86655.png +../../data/yoloGtold1/train/86656.png +../../data/yoloGtold1/train/86657.png +../../data/yoloGtold1/train/86658.png +../../data/yoloGtold1/train/86659.png +../../data/yoloGtold1/train/86660.png +../../data/yoloGtold1/train/86661.png +../../data/yoloGtold1/train/86662.png +../../data/yoloGtold1/train/86663.png +../../data/yoloGtold1/train/86664.png +../../data/yoloGtold1/train/86665.png +../../data/yoloGtold1/train/86666.png +../../data/yoloGtold1/train/86667.png +../../data/yoloGtold1/train/86668.png +../../data/yoloGtold1/train/86669.png +../../data/yoloGtold1/train/86670.png +../../data/yoloGtold1/train/86671.png +../../data/yoloGtold1/train/86672.png +../../data/yoloGtold1/train/86673.png +../../data/yoloGtold1/train/86674.png +../../data/yoloGtold1/train/86675.png +../../data/yoloGtold1/train/86676.png +../../data/yoloGtold1/train/86677.png +../../data/yoloGtold1/train/86678.png +../../data/yoloGtold1/train/86679.png +../../data/yoloGtold1/train/86680.png +../../data/yoloGtold1/train/86681.png +../../data/yoloGtold1/train/86682.png +../../data/yoloGtold1/train/86683.png +../../data/yoloGtold1/train/86684.png +../../data/yoloGtold1/train/86685.png +../../data/yoloGtold1/train/86686.png +../../data/yoloGtold1/train/86687.png +../../data/yoloGtold1/train/86688.png +../../data/yoloGtold1/train/86689.png +../../data/yoloGtold1/train/86690.png +../../data/yoloGtold1/train/86691.png +../../data/yoloGtold1/train/86692.png +../../data/yoloGtold1/train/86693.png +../../data/yoloGtold1/train/86694.png +../../data/yoloGtold1/train/86695.png +../../data/yoloGtold1/train/86696.png +../../data/yoloGtold1/train/86697.png +../../data/yoloGtold1/train/86698.png +../../data/yoloGtold1/train/86699.png +../../data/yoloGtold1/train/86700.png +../../data/yoloGtold1/train/86701.png +../../data/yoloGtold1/train/86702.png +../../data/yoloGtold1/train/86703.png +../../data/yoloGtold1/train/86704.png +../../data/yoloGtold1/train/86705.png +../../data/yoloGtold1/train/86706.png +../../data/yoloGtold1/train/86707.png +../../data/yoloGtold1/train/86708.png +../../data/yoloGtold1/train/86709.png +../../data/yoloGtold1/train/86710.png +../../data/yoloGtold1/train/86711.png +../../data/yoloGtold1/train/86712.png +../../data/yoloGtold1/train/86713.png +../../data/yoloGtold1/train/86714.png +../../data/yoloGtold1/train/86715.png +../../data/yoloGtold1/train/86716.png +../../data/yoloGtold1/train/86717.png +../../data/yoloGtold1/train/86718.png +../../data/yoloGtold1/train/86719.png +../../data/yoloGtold1/train/86720.png +../../data/yoloGtold1/train/86721.png +../../data/yoloGtold1/train/86722.png +../../data/yoloGtold1/train/86723.png +../../data/yoloGtold1/train/86724.png +../../data/yoloGtold1/train/86725.png +../../data/yoloGtold1/train/86726.png +../../data/yoloGtold1/train/86727.png +../../data/yoloGtold1/train/86728.png +../../data/yoloGtold1/train/86729.png +../../data/yoloGtold1/train/86730.png +../../data/yoloGtold1/train/86731.png +../../data/yoloGtold1/train/86732.png +../../data/yoloGtold1/train/86733.png +../../data/yoloGtold1/train/86734.png +../../data/yoloGtold1/train/86735.png +../../data/yoloGtold1/train/86736.png +../../data/yoloGtold1/train/86737.png +../../data/yoloGtold1/train/86738.png +../../data/yoloGtold1/train/86739.png +../../data/yoloGtold1/train/86740.png +../../data/yoloGtold1/train/86741.png +../../data/yoloGtold1/train/86742.png +../../data/yoloGtold1/train/86743.png +../../data/yoloGtold1/train/86744.png +../../data/yoloGtold1/train/86745.png +../../data/yoloGtold1/train/86746.png +../../data/yoloGtold1/train/86747.png +../../data/yoloGtold1/train/86748.png +../../data/yoloGtold1/train/86749.png +../../data/yoloGtold1/train/86750.png +../../data/yoloGtold1/train/86751.png +../../data/yoloGtold1/train/86752.png +../../data/yoloGtold1/train/86753.png +../../data/yoloGtold1/train/86754.png +../../data/yoloGtold1/train/86755.png +../../data/yoloGtold1/train/86756.png +../../data/yoloGtold1/train/86757.png +../../data/yoloGtold1/train/86758.png +../../data/yoloGtold1/train/86759.png +../../data/yoloGtold1/train/86760.png +../../data/yoloGtold1/train/86761.png +../../data/yoloGtold1/train/86762.png +../../data/yoloGtold1/train/86763.png +../../data/yoloGtold1/train/86764.png +../../data/yoloGtold1/train/86765.png +../../data/yoloGtold1/train/86766.png +../../data/yoloGtold1/train/86767.png +../../data/yoloGtold1/train/86768.png +../../data/yoloGtold1/train/86769.png +../../data/yoloGtold1/train/86770.png +../../data/yoloGtold1/train/86771.png +../../data/yoloGtold1/train/86772.png +../../data/yoloGtold1/train/86773.png +../../data/yoloGtold1/train/86774.png +../../data/yoloGtold1/train/86775.png +../../data/yoloGtold1/train/86776.png +../../data/yoloGtold1/train/86777.png +../../data/yoloGtold1/train/86778.png +../../data/yoloGtold1/train/86779.png +../../data/yoloGtold1/train/86780.png +../../data/yoloGtold1/train/86781.png +../../data/yoloGtold1/train/86782.png +../../data/yoloGtold1/train/86783.png +../../data/yoloGtold1/train/86784.png +../../data/yoloGtold1/train/86785.png +../../data/yoloGtold1/train/86786.png +../../data/yoloGtold1/train/86787.png +../../data/yoloGtold1/train/86788.png +../../data/yoloGtold1/train/86789.png +../../data/yoloGtold1/train/86790.png +../../data/yoloGtold1/train/86791.png +../../data/yoloGtold1/train/86792.png +../../data/yoloGtold1/train/86793.png +../../data/yoloGtold1/train/86794.png +../../data/yoloGtold1/train/86795.png +../../data/yoloGtold1/train/86796.png +../../data/yoloGtold1/train/86797.png +../../data/yoloGtold1/train/86798.png +../../data/yoloGtold1/train/86799.png +../../data/yoloGtold1/train/86800.png +../../data/yoloGtold1/train/86801.png +../../data/yoloGtold1/train/86802.png +../../data/yoloGtold1/train/86803.png +../../data/yoloGtold1/train/86804.png +../../data/yoloGtold1/train/86805.png +../../data/yoloGtold1/train/86806.png +../../data/yoloGtold1/train/86807.png +../../data/yoloGtold1/train/86808.png +../../data/yoloGtold1/train/86809.png +../../data/yoloGtold1/train/86810.png +../../data/yoloGtold1/train/86811.png +../../data/yoloGtold1/train/86812.png +../../data/yoloGtold1/train/86813.png +../../data/yoloGtold1/train/86814.png +../../data/yoloGtold1/train/86815.png +../../data/yoloGtold1/train/86816.png +../../data/yoloGtold1/train/86817.png +../../data/yoloGtold1/train/86818.png +../../data/yoloGtold1/train/86819.png +../../data/yoloGtold1/train/86820.png +../../data/yoloGtold1/train/86821.png +../../data/yoloGtold1/train/86822.png +../../data/yoloGtold1/train/86823.png +../../data/yoloGtold1/train/86824.png +../../data/yoloGtold1/train/86825.png +../../data/yoloGtold1/train/86826.png +../../data/yoloGtold1/train/86827.png +../../data/yoloGtold1/train/86828.png +../../data/yoloGtold1/train/86829.png +../../data/yoloGtold1/train/86830.png +../../data/yoloGtold1/train/86831.png +../../data/yoloGtold1/train/86832.png +../../data/yoloGtold1/train/86833.png +../../data/yoloGtold1/train/86834.png +../../data/yoloGtold1/train/86835.png +../../data/yoloGtold1/train/86836.png +../../data/yoloGtold1/train/86837.png +../../data/yoloGtold1/train/86838.png +../../data/yoloGtold1/train/86839.png +../../data/yoloGtold1/train/86840.png +../../data/yoloGtold1/train/86841.png +../../data/yoloGtold1/train/86842.png +../../data/yoloGtold1/train/86843.png +../../data/yoloGtold1/train/86844.png +../../data/yoloGtold1/train/86845.png +../../data/yoloGtold1/train/86846.png +../../data/yoloGtold1/train/86847.png +../../data/yoloGtold1/train/86848.png +../../data/yoloGtold1/train/86849.png +../../data/yoloGtold1/train/86850.png +../../data/yoloGtold1/train/86851.png +../../data/yoloGtold1/train/86852.png +../../data/yoloGtold1/train/86853.png +../../data/yoloGtold1/train/86854.png +../../data/yoloGtold1/train/86855.png +../../data/yoloGtold1/train/86856.png +../../data/yoloGtold1/train/86857.png +../../data/yoloGtold1/train/86858.png +../../data/yoloGtold1/train/86859.png +../../data/yoloGtold1/train/86860.png +../../data/yoloGtold1/train/86861.png +../../data/yoloGtold1/train/86862.png +../../data/yoloGtold1/train/86863.png +../../data/yoloGtold1/train/86864.png +../../data/yoloGtold1/train/86865.png +../../data/yoloGtold1/train/86866.png +../../data/yoloGtold1/train/86867.png +../../data/yoloGtold1/train/86868.png +../../data/yoloGtold1/train/86869.png +../../data/yoloGtold1/train/86870.png +../../data/yoloGtold1/train/86871.png +../../data/yoloGtold1/train/86872.png +../../data/yoloGtold1/train/86873.png +../../data/yoloGtold1/train/86874.png +../../data/yoloGtold1/train/86875.png +../../data/yoloGtold1/train/86876.png +../../data/yoloGtold1/train/86877.png +../../data/yoloGtold1/train/86878.png +../../data/yoloGtold1/train/86879.png +../../data/yoloGtold1/train/86880.png +../../data/yoloGtold1/train/86881.png +../../data/yoloGtold1/train/86882.png +../../data/yoloGtold1/train/86883.png +../../data/yoloGtold1/train/86884.png +../../data/yoloGtold1/train/86885.png +../../data/yoloGtold1/train/86886.png +../../data/yoloGtold1/train/86887.png +../../data/yoloGtold1/train/86888.png +../../data/yoloGtold1/train/86889.png +../../data/yoloGtold1/train/86890.png +../../data/yoloGtold1/train/86891.png +../../data/yoloGtold1/train/86892.png +../../data/yoloGtold1/train/86893.png +../../data/yoloGtold1/train/86894.png +../../data/yoloGtold1/train/86895.png +../../data/yoloGtold1/train/86896.png +../../data/yoloGtold1/train/86897.png +../../data/yoloGtold1/train/86898.png +../../data/yoloGtold1/train/86899.png +../../data/yoloGtold1/train/86900.png +../../data/yoloGtold1/train/86901.png +../../data/yoloGtold1/train/86902.png +../../data/yoloGtold1/train/86903.png +../../data/yoloGtold1/train/86904.png +../../data/yoloGtold1/train/86905.png +../../data/yoloGtold1/train/86906.png +../../data/yoloGtold1/train/86907.png +../../data/yoloGtold1/train/86908.png +../../data/yoloGtold1/train/86909.png +../../data/yoloGtold1/train/86910.png +../../data/yoloGtold1/train/86911.png +../../data/yoloGtold1/train/86912.png +../../data/yoloGtold1/train/86913.png +../../data/yoloGtold1/train/86914.png +../../data/yoloGtold1/train/86915.png +../../data/yoloGtold1/train/86916.png +../../data/yoloGtold1/train/86917.png +../../data/yoloGtold1/train/86918.png +../../data/yoloGtold1/train/86919.png +../../data/yoloGtold1/train/86920.png +../../data/yoloGtold1/train/86921.png +../../data/yoloGtold1/train/86922.png +../../data/yoloGtold1/train/86923.png +../../data/yoloGtold1/train/86924.png +../../data/yoloGtold1/train/86925.png +../../data/yoloGtold1/train/86926.png +../../data/yoloGtold1/train/86927.png +../../data/yoloGtold1/train/86928.png +../../data/yoloGtold1/train/86929.png +../../data/yoloGtold1/train/86930.png +../../data/yoloGtold1/train/86931.png +../../data/yoloGtold1/train/86932.png +../../data/yoloGtold1/train/86933.png +../../data/yoloGtold1/train/86934.png +../../data/yoloGtold1/train/86935.png +../../data/yoloGtold1/train/86936.png +../../data/yoloGtold1/train/86937.png +../../data/yoloGtold1/train/86938.png +../../data/yoloGtold1/train/86939.png +../../data/yoloGtold1/train/86940.png +../../data/yoloGtold1/train/86941.png +../../data/yoloGtold1/train/86942.png +../../data/yoloGtold1/train/86943.png +../../data/yoloGtold1/train/86944.png +../../data/yoloGtold1/train/86945.png +../../data/yoloGtold1/train/86946.png +../../data/yoloGtold1/train/86947.png +../../data/yoloGtold1/train/86948.png +../../data/yoloGtold1/train/86949.png +../../data/yoloGtold1/train/86950.png +../../data/yoloGtold1/train/86951.png +../../data/yoloGtold1/train/86952.png +../../data/yoloGtold1/train/86953.png +../../data/yoloGtold1/train/86954.png +../../data/yoloGtold1/train/86955.png +../../data/yoloGtold1/train/86956.png +../../data/yoloGtold1/train/86957.png +../../data/yoloGtold1/train/86958.png +../../data/yoloGtold1/train/86959.png +../../data/yoloGtold1/train/86960.png +../../data/yoloGtold1/train/86961.png +../../data/yoloGtold1/train/86962.png +../../data/yoloGtold1/train/86963.png +../../data/yoloGtold1/train/86964.png +../../data/yoloGtold1/train/86965.png +../../data/yoloGtold1/train/86966.png +../../data/yoloGtold1/train/86967.png +../../data/yoloGtold1/train/86968.png +../../data/yoloGtold1/train/86969.png +../../data/yoloGtold1/train/86970.png +../../data/yoloGtold1/train/86971.png +../../data/yoloGtold1/train/86972.png +../../data/yoloGtold1/train/86973.png +../../data/yoloGtold1/train/86974.png +../../data/yoloGtold1/train/86975.png +../../data/yoloGtold1/train/86976.png +../../data/yoloGtold1/train/86977.png +../../data/yoloGtold1/train/86978.png +../../data/yoloGtold1/train/86979.png +../../data/yoloGtold1/train/86980.png +../../data/yoloGtold1/train/86981.png +../../data/yoloGtold1/train/86982.png +../../data/yoloGtold1/train/86983.png +../../data/yoloGtold1/train/86984.png +../../data/yoloGtold1/train/86985.png +../../data/yoloGtold1/train/86986.png +../../data/yoloGtold1/train/86987.png +../../data/yoloGtold1/train/86988.png +../../data/yoloGtold1/train/86989.png +../../data/yoloGtold1/train/86990.png +../../data/yoloGtold1/train/86991.png +../../data/yoloGtold1/train/86992.png +../../data/yoloGtold1/train/86993.png +../../data/yoloGtold1/train/86994.png +../../data/yoloGtold1/train/86995.png +../../data/yoloGtold1/train/86996.png +../../data/yoloGtold1/train/86997.png +../../data/yoloGtold1/train/86998.png +../../data/yoloGtold1/train/86999.png +../../data/yoloGtold1/train/87000.png +../../data/yoloGtold1/train/87001.png +../../data/yoloGtold1/train/87002.png +../../data/yoloGtold1/train/87003.png +../../data/yoloGtold1/train/87004.png +../../data/yoloGtold1/train/87005.png +../../data/yoloGtold1/train/87006.png +../../data/yoloGtold1/train/87007.png +../../data/yoloGtold1/train/87008.png +../../data/yoloGtold1/train/87009.png +../../data/yoloGtold1/train/87010.png +../../data/yoloGtold1/train/87011.png +../../data/yoloGtold1/train/87012.png +../../data/yoloGtold1/train/87013.png +../../data/yoloGtold1/train/87014.png +../../data/yoloGtold1/train/87015.png +../../data/yoloGtold1/train/87016.png +../../data/yoloGtold1/train/87017.png +../../data/yoloGtold1/train/87018.png +../../data/yoloGtold1/train/87019.png +../../data/yoloGtold1/train/87020.png +../../data/yoloGtold1/train/87021.png +../../data/yoloGtold1/train/87022.png +../../data/yoloGtold1/train/87023.png +../../data/yoloGtold1/train/87024.png +../../data/yoloGtold1/train/87025.png +../../data/yoloGtold1/train/87026.png +../../data/yoloGtold1/train/87027.png +../../data/yoloGtold1/train/87028.png +../../data/yoloGtold1/train/87029.png +../../data/yoloGtold1/train/87030.png +../../data/yoloGtold1/train/87031.png +../../data/yoloGtold1/train/87032.png +../../data/yoloGtold1/train/87033.png +../../data/yoloGtold1/train/87034.png +../../data/yoloGtold1/train/87035.png +../../data/yoloGtold1/train/87036.png +../../data/yoloGtold1/train/87037.png +../../data/yoloGtold1/train/87038.png +../../data/yoloGtold1/train/87039.png +../../data/yoloGtold1/train/87040.png +../../data/yoloGtold1/train/87041.png +../../data/yoloGtold1/train/87042.png +../../data/yoloGtold1/train/87043.png +../../data/yoloGtold1/train/87044.png +../../data/yoloGtold1/train/87045.png +../../data/yoloGtold1/train/87046.png +../../data/yoloGtold1/train/87047.png +../../data/yoloGtold1/train/87048.png +../../data/yoloGtold1/train/87049.png +../../data/yoloGtold1/train/87050.png +../../data/yoloGtold1/train/87051.png +../../data/yoloGtold1/train/87052.png +../../data/yoloGtold1/train/87053.png +../../data/yoloGtold1/train/87054.png +../../data/yoloGtold1/train/87055.png +../../data/yoloGtold1/train/87056.png +../../data/yoloGtold1/train/87057.png +../../data/yoloGtold1/train/87058.png +../../data/yoloGtold1/train/87059.png +../../data/yoloGtold1/train/87060.png +../../data/yoloGtold1/train/87061.png +../../data/yoloGtold1/train/87062.png +../../data/yoloGtold1/train/87063.png +../../data/yoloGtold1/train/87064.png +../../data/yoloGtold1/train/87065.png +../../data/yoloGtold1/train/87066.png +../../data/yoloGtold1/train/87067.png +../../data/yoloGtold1/train/87068.png +../../data/yoloGtold1/train/87069.png +../../data/yoloGtold1/train/87070.png +../../data/yoloGtold1/train/87071.png +../../data/yoloGtold1/train/87072.png +../../data/yoloGtold1/train/87073.png +../../data/yoloGtold1/train/87074.png +../../data/yoloGtold1/train/87075.png +../../data/yoloGtold1/train/87076.png +../../data/yoloGtold1/train/87077.png +../../data/yoloGtold1/train/87078.png +../../data/yoloGtold1/train/87079.png +../../data/yoloGtold1/train/87080.png +../../data/yoloGtold1/train/87081.png +../../data/yoloGtold1/train/87082.png +../../data/yoloGtold1/train/87083.png +../../data/yoloGtold1/train/87084.png +../../data/yoloGtold1/train/87085.png +../../data/yoloGtold1/train/87086.png +../../data/yoloGtold1/train/87087.png +../../data/yoloGtold1/train/87088.png +../../data/yoloGtold1/train/87089.png +../../data/yoloGtold1/train/87090.png +../../data/yoloGtold1/train/87091.png +../../data/yoloGtold1/train/87092.png +../../data/yoloGtold1/train/87093.png +../../data/yoloGtold1/train/87094.png +../../data/yoloGtold1/train/87095.png +../../data/yoloGtold1/train/87096.png +../../data/yoloGtold1/train/87097.png +../../data/yoloGtold1/train/87098.png +../../data/yoloGtold1/train/87099.png +../../data/yoloGtold1/train/87100.png +../../data/yoloGtold1/train/87101.png +../../data/yoloGtold1/train/87102.png +../../data/yoloGtold1/train/87103.png +../../data/yoloGtold1/train/87104.png +../../data/yoloGtold1/train/87105.png +../../data/yoloGtold1/train/87106.png +../../data/yoloGtold1/train/87107.png +../../data/yoloGtold1/train/87108.png +../../data/yoloGtold1/train/87109.png +../../data/yoloGtold1/train/87110.png +../../data/yoloGtold1/train/87111.png +../../data/yoloGtold1/train/87112.png +../../data/yoloGtold1/train/87113.png +../../data/yoloGtold1/train/87114.png +../../data/yoloGtold1/train/87115.png +../../data/yoloGtold1/train/87116.png +../../data/yoloGtold1/train/87117.png +../../data/yoloGtold1/train/87118.png +../../data/yoloGtold1/train/87119.png +../../data/yoloGtold1/train/87120.png +../../data/yoloGtold1/train/87121.png +../../data/yoloGtold1/train/87122.png +../../data/yoloGtold1/train/87123.png +../../data/yoloGtold1/train/87124.png +../../data/yoloGtold1/train/87125.png +../../data/yoloGtold1/train/87126.png +../../data/yoloGtold1/train/87127.png +../../data/yoloGtold1/train/87128.png +../../data/yoloGtold1/train/87129.png +../../data/yoloGtold1/train/87130.png +../../data/yoloGtold1/train/87131.png +../../data/yoloGtold1/train/87132.png +../../data/yoloGtold1/train/87133.png +../../data/yoloGtold1/train/87134.png +../../data/yoloGtold1/train/87135.png +../../data/yoloGtold1/train/87136.png +../../data/yoloGtold1/train/87137.png +../../data/yoloGtold1/train/87138.png +../../data/yoloGtold1/train/87139.png +../../data/yoloGtold1/train/87140.png +../../data/yoloGtold1/train/87141.png +../../data/yoloGtold1/train/87142.png +../../data/yoloGtold1/train/87143.png +../../data/yoloGtold1/train/87144.png +../../data/yoloGtold1/train/87145.png +../../data/yoloGtold1/train/87146.png +../../data/yoloGtold1/train/87147.png +../../data/yoloGtold1/train/87148.png +../../data/yoloGtold1/train/87149.png +../../data/yoloGtold1/train/87150.png +../../data/yoloGtold1/train/87151.png +../../data/yoloGtold1/train/87152.png +../../data/yoloGtold1/train/87153.png +../../data/yoloGtold1/train/87154.png +../../data/yoloGtold1/train/87155.png +../../data/yoloGtold1/train/87156.png +../../data/yoloGtold1/train/87157.png +../../data/yoloGtold1/train/87158.png +../../data/yoloGtold1/train/87159.png +../../data/yoloGtold1/train/87160.png +../../data/yoloGtold1/train/87161.png +../../data/yoloGtold1/train/87162.png +../../data/yoloGtold1/train/87163.png +../../data/yoloGtold1/train/87164.png +../../data/yoloGtold1/train/87165.png +../../data/yoloGtold1/train/87166.png +../../data/yoloGtold1/train/87167.png +../../data/yoloGtold1/train/87168.png +../../data/yoloGtold1/train/87169.png +../../data/yoloGtold1/train/87170.png +../../data/yoloGtold1/train/87171.png +../../data/yoloGtold1/train/87172.png +../../data/yoloGtold1/train/87173.png +../../data/yoloGtold1/train/87174.png +../../data/yoloGtold1/train/87175.png +../../data/yoloGtold1/train/87176.png +../../data/yoloGtold1/train/87177.png +../../data/yoloGtold1/train/87178.png +../../data/yoloGtold1/train/87179.png +../../data/yoloGtold1/train/87180.png +../../data/yoloGtold1/train/87181.png +../../data/yoloGtold1/train/87182.png +../../data/yoloGtold1/train/87183.png +../../data/yoloGtold1/train/87184.png +../../data/yoloGtold1/train/87185.png +../../data/yoloGtold1/train/87186.png +../../data/yoloGtold1/train/87187.png +../../data/yoloGtold1/train/87188.png +../../data/yoloGtold1/train/87189.png +../../data/yoloGtold1/train/87190.png +../../data/yoloGtold1/train/87191.png +../../data/yoloGtold1/train/87192.png +../../data/yoloGtold1/train/87193.png +../../data/yoloGtold1/train/87194.png +../../data/yoloGtold1/train/87195.png +../../data/yoloGtold1/train/87196.png +../../data/yoloGtold1/train/87197.png +../../data/yoloGtold1/train/87198.png +../../data/yoloGtold1/train/87199.png +../../data/yoloGtold1/train/87200.png +../../data/yoloGtold1/train/87201.png +../../data/yoloGtold1/train/87202.png +../../data/yoloGtold1/train/87203.png +../../data/yoloGtold1/train/87204.png +../../data/yoloGtold1/train/87205.png +../../data/yoloGtold1/train/87206.png +../../data/yoloGtold1/train/87207.png +../../data/yoloGtold1/train/87208.png +../../data/yoloGtold1/train/87209.png +../../data/yoloGtold1/train/87210.png +../../data/yoloGtold1/train/87211.png +../../data/yoloGtold1/train/87212.png +../../data/yoloGtold1/train/87213.png +../../data/yoloGtold1/train/87214.png +../../data/yoloGtold1/train/87215.png +../../data/yoloGtold1/train/87216.png +../../data/yoloGtold1/train/87217.png +../../data/yoloGtold1/train/87218.png +../../data/yoloGtold1/train/87219.png +../../data/yoloGtold1/train/87220.png +../../data/yoloGtold1/train/87221.png +../../data/yoloGtold1/train/87222.png +../../data/yoloGtold1/train/87223.png +../../data/yoloGtold1/train/87224.png +../../data/yoloGtold1/train/87225.png +../../data/yoloGtold1/train/87226.png +../../data/yoloGtold1/train/87227.png +../../data/yoloGtold1/train/87228.png +../../data/yoloGtold1/train/87229.png +../../data/yoloGtold1/train/87230.png +../../data/yoloGtold1/train/87231.png +../../data/yoloGtold1/train/87232.png +../../data/yoloGtold1/train/87233.png +../../data/yoloGtold1/train/87234.png +../../data/yoloGtold1/train/87235.png +../../data/yoloGtold1/train/87236.png +../../data/yoloGtold1/train/87237.png +../../data/yoloGtold1/train/87238.png +../../data/yoloGtold1/train/87239.png +../../data/yoloGtold1/train/87240.png +../../data/yoloGtold1/train/87241.png +../../data/yoloGtold1/train/87242.png +../../data/yoloGtold1/train/87243.png +../../data/yoloGtold1/train/87244.png +../../data/yoloGtold1/train/87245.png +../../data/yoloGtold1/train/87246.png +../../data/yoloGtold1/train/87247.png +../../data/yoloGtold1/train/87248.png +../../data/yoloGtold1/train/87249.png +../../data/yoloGtold1/train/87250.png +../../data/yoloGtold1/train/87251.png +../../data/yoloGtold1/train/87252.png +../../data/yoloGtold1/train/87253.png +../../data/yoloGtold1/train/87254.png +../../data/yoloGtold1/train/87255.png +../../data/yoloGtold1/train/87256.png +../../data/yoloGtold1/train/87257.png +../../data/yoloGtold1/train/87258.png +../../data/yoloGtold1/train/87259.png +../../data/yoloGtold1/train/87260.png +../../data/yoloGtold1/train/87261.png +../../data/yoloGtold1/train/87262.png +../../data/yoloGtold1/train/87263.png +../../data/yoloGtold1/train/87264.png +../../data/yoloGtold1/train/87265.png +../../data/yoloGtold1/train/87266.png +../../data/yoloGtold1/train/87267.png +../../data/yoloGtold1/train/87268.png +../../data/yoloGtold1/train/87269.png +../../data/yoloGtold1/train/87270.png +../../data/yoloGtold1/train/87271.png +../../data/yoloGtold1/train/87272.png +../../data/yoloGtold1/train/87273.png +../../data/yoloGtold1/train/87274.png +../../data/yoloGtold1/train/87275.png +../../data/yoloGtold1/train/87276.png +../../data/yoloGtold1/train/87277.png +../../data/yoloGtold1/train/87278.png +../../data/yoloGtold1/train/87279.png +../../data/yoloGtold1/train/87280.png +../../data/yoloGtold1/train/87281.png +../../data/yoloGtold1/train/87282.png +../../data/yoloGtold1/train/87283.png +../../data/yoloGtold1/train/87284.png +../../data/yoloGtold1/train/87285.png +../../data/yoloGtold1/train/87286.png +../../data/yoloGtold1/train/87287.png +../../data/yoloGtold1/train/87288.png +../../data/yoloGtold1/train/87289.png +../../data/yoloGtold1/train/87290.png +../../data/yoloGtold1/train/87291.png +../../data/yoloGtold1/train/87292.png +../../data/yoloGtold1/train/87293.png +../../data/yoloGtold1/train/87294.png +../../data/yoloGtold1/train/87295.png +../../data/yoloGtold1/train/87296.png +../../data/yoloGtold1/train/87297.png +../../data/yoloGtold1/train/87298.png +../../data/yoloGtold1/train/87299.png +../../data/yoloGtold1/train/87300.png +../../data/yoloGtold1/train/87301.png +../../data/yoloGtold1/train/87302.png +../../data/yoloGtold1/train/87303.png +../../data/yoloGtold1/train/87304.png +../../data/yoloGtold1/train/87305.png +../../data/yoloGtold1/train/87306.png +../../data/yoloGtold1/train/87307.png +../../data/yoloGtold1/train/87308.png +../../data/yoloGtold1/train/87309.png +../../data/yoloGtold1/train/87310.png +../../data/yoloGtold1/train/87311.png +../../data/yoloGtold1/train/87312.png +../../data/yoloGtold1/train/87313.png +../../data/yoloGtold1/train/87314.png +../../data/yoloGtold1/train/87315.png +../../data/yoloGtold1/train/87316.png +../../data/yoloGtold1/train/87317.png +../../data/yoloGtold1/train/87318.png +../../data/yoloGtold1/train/87319.png +../../data/yoloGtold1/train/87320.png +../../data/yoloGtold1/train/87321.png +../../data/yoloGtold1/train/87322.png +../../data/yoloGtold1/train/87323.png +../../data/yoloGtold1/train/87324.png +../../data/yoloGtold1/train/87325.png +../../data/yoloGtold1/train/87326.png +../../data/yoloGtold1/train/87327.png +../../data/yoloGtold1/train/87328.png +../../data/yoloGtold1/train/87329.png +../../data/yoloGtold1/train/87330.png +../../data/yoloGtold1/train/87331.png +../../data/yoloGtold1/train/87332.png +../../data/yoloGtold1/train/87333.png +../../data/yoloGtold1/train/87334.png +../../data/yoloGtold1/train/87335.png +../../data/yoloGtold1/train/87336.png +../../data/yoloGtold1/train/87337.png +../../data/yoloGtold1/train/87338.png +../../data/yoloGtold1/train/87339.png +../../data/yoloGtold1/train/87340.png +../../data/yoloGtold1/train/87341.png +../../data/yoloGtold1/train/87342.png +../../data/yoloGtold1/train/87343.png +../../data/yoloGtold1/train/87344.png +../../data/yoloGtold1/train/87345.png +../../data/yoloGtold1/train/87346.png +../../data/yoloGtold1/train/87347.png +../../data/yoloGtold1/train/87348.png +../../data/yoloGtold1/train/87349.png +../../data/yoloGtold1/train/87350.png +../../data/yoloGtold1/train/87351.png +../../data/yoloGtold1/train/87352.png +../../data/yoloGtold1/train/87353.png +../../data/yoloGtold1/train/87354.png +../../data/yoloGtold1/train/87355.png +../../data/yoloGtold1/train/87356.png +../../data/yoloGtold1/train/87357.png +../../data/yoloGtold1/train/87358.png +../../data/yoloGtold1/train/87359.png +../../data/yoloGtold1/train/87360.png +../../data/yoloGtold1/train/87361.png +../../data/yoloGtold1/train/87362.png +../../data/yoloGtold1/train/87363.png +../../data/yoloGtold1/train/87364.png +../../data/yoloGtold1/train/87365.png +../../data/yoloGtold1/train/87366.png +../../data/yoloGtold1/train/87367.png +../../data/yoloGtold1/train/87368.png +../../data/yoloGtold1/train/87369.png +../../data/yoloGtold1/train/87370.png +../../data/yoloGtold1/train/87371.png +../../data/yoloGtold1/train/87372.png +../../data/yoloGtold1/train/87373.png +../../data/yoloGtold1/train/87374.png +../../data/yoloGtold1/train/87375.png +../../data/yoloGtold1/train/87376.png +../../data/yoloGtold1/train/87377.png +../../data/yoloGtold1/train/87378.png +../../data/yoloGtold1/train/87379.png +../../data/yoloGtold1/train/87380.png +../../data/yoloGtold1/train/87381.png +../../data/yoloGtold1/train/87382.png +../../data/yoloGtold1/train/87383.png +../../data/yoloGtold1/train/87384.png +../../data/yoloGtold1/train/87385.png +../../data/yoloGtold1/train/87386.png +../../data/yoloGtold1/train/87387.png +../../data/yoloGtold1/train/87388.png +../../data/yoloGtold1/train/87389.png +../../data/yoloGtold1/train/87390.png +../../data/yoloGtold1/train/87391.png +../../data/yoloGtold1/train/87392.png +../../data/yoloGtold1/train/87393.png +../../data/yoloGtold1/train/87394.png +../../data/yoloGtold1/train/87395.png +../../data/yoloGtold1/train/87396.png +../../data/yoloGtold1/train/87397.png +../../data/yoloGtold1/train/87398.png +../../data/yoloGtold1/train/87399.png +../../data/yoloGtold1/train/87400.png +../../data/yoloGtold1/train/87401.png +../../data/yoloGtold1/train/87402.png +../../data/yoloGtold1/train/87403.png +../../data/yoloGtold1/train/87404.png +../../data/yoloGtold1/train/87405.png +../../data/yoloGtold1/train/87406.png +../../data/yoloGtold1/train/87407.png +../../data/yoloGtold1/train/87408.png +../../data/yoloGtold1/train/87409.png +../../data/yoloGtold1/train/87410.png +../../data/yoloGtold1/train/87411.png +../../data/yoloGtold1/train/87412.png +../../data/yoloGtold1/train/87413.png +../../data/yoloGtold1/train/87414.png +../../data/yoloGtold1/train/87415.png +../../data/yoloGtold1/train/87416.png +../../data/yoloGtold1/train/87417.png +../../data/yoloGtold1/train/87418.png +../../data/yoloGtold1/train/87419.png +../../data/yoloGtold1/train/87420.png +../../data/yoloGtold1/train/87421.png +../../data/yoloGtold1/train/87422.png +../../data/yoloGtold1/train/87423.png +../../data/yoloGtold1/train/87424.png +../../data/yoloGtold1/train/87425.png +../../data/yoloGtold1/train/87426.png +../../data/yoloGtold1/train/87427.png +../../data/yoloGtold1/train/87428.png +../../data/yoloGtold1/train/87429.png +../../data/yoloGtold1/train/87430.png +../../data/yoloGtold1/train/87431.png +../../data/yoloGtold1/train/87432.png +../../data/yoloGtold1/train/87433.png +../../data/yoloGtold1/train/87434.png +../../data/yoloGtold1/train/87435.png +../../data/yoloGtold1/train/87436.png +../../data/yoloGtold1/train/87437.png +../../data/yoloGtold1/train/87438.png +../../data/yoloGtold1/train/87439.png +../../data/yoloGtold1/train/87440.png +../../data/yoloGtold1/train/87441.png +../../data/yoloGtold1/train/87442.png +../../data/yoloGtold1/train/87443.png +../../data/yoloGtold1/train/87444.png +../../data/yoloGtold1/train/87445.png +../../data/yoloGtold1/train/87446.png +../../data/yoloGtold1/train/87447.png +../../data/yoloGtold1/train/87448.png +../../data/yoloGtold1/train/87449.png +../../data/yoloGtold1/train/87450.png +../../data/yoloGtold1/train/87451.png +../../data/yoloGtold1/train/87452.png +../../data/yoloGtold1/train/87453.png +../../data/yoloGtold1/train/87454.png +../../data/yoloGtold1/train/87455.png +../../data/yoloGtold1/train/87456.png +../../data/yoloGtold1/train/87457.png +../../data/yoloGtold1/train/87458.png +../../data/yoloGtold1/train/87459.png +../../data/yoloGtold1/train/87460.png +../../data/yoloGtold1/train/87461.png +../../data/yoloGtold1/train/87462.png +../../data/yoloGtold1/train/87463.png +../../data/yoloGtold1/train/87464.png +../../data/yoloGtold1/train/87465.png +../../data/yoloGtold1/train/87466.png +../../data/yoloGtold1/train/87467.png +../../data/yoloGtold1/train/87468.png +../../data/yoloGtold1/train/87469.png +../../data/yoloGtold1/train/87470.png +../../data/yoloGtold1/train/87471.png +../../data/yoloGtold1/train/87472.png +../../data/yoloGtold1/train/87473.png +../../data/yoloGtold1/train/87474.png +../../data/yoloGtold1/train/87475.png +../../data/yoloGtold1/train/87476.png +../../data/yoloGtold1/train/87477.png +../../data/yoloGtold1/train/87478.png +../../data/yoloGtold1/train/87479.png +../../data/yoloGtold1/train/87480.png +../../data/yoloGtold1/train/87481.png +../../data/yoloGtold1/train/87482.png +../../data/yoloGtold1/train/87483.png +../../data/yoloGtold1/train/87484.png +../../data/yoloGtold1/train/87485.png +../../data/yoloGtold1/train/87486.png +../../data/yoloGtold1/train/87487.png +../../data/yoloGtold1/train/87488.png +../../data/yoloGtold1/train/87489.png +../../data/yoloGtold1/train/87490.png +../../data/yoloGtold1/train/87491.png +../../data/yoloGtold1/train/87492.png +../../data/yoloGtold1/train/87493.png +../../data/yoloGtold1/train/87494.png +../../data/yoloGtold1/train/87495.png +../../data/yoloGtold1/train/87496.png +../../data/yoloGtold1/train/87497.png +../../data/yoloGtold1/train/87498.png +../../data/yoloGtold1/train/87499.png +../../data/yoloGtold1/train/87500.png +../../data/yoloGtold1/train/87501.png +../../data/yoloGtold1/train/87502.png +../../data/yoloGtold1/train/87503.png +../../data/yoloGtold1/train/87504.png +../../data/yoloGtold1/train/87505.png +../../data/yoloGtold1/train/87506.png +../../data/yoloGtold1/train/87507.png +../../data/yoloGtold1/train/87508.png +../../data/yoloGtold1/train/87509.png +../../data/yoloGtold1/train/87510.png +../../data/yoloGtold1/train/87511.png +../../data/yoloGtold1/train/87512.png +../../data/yoloGtold1/train/87513.png +../../data/yoloGtold1/train/87514.png +../../data/yoloGtold1/train/87515.png +../../data/yoloGtold1/train/87516.png +../../data/yoloGtold1/train/87517.png +../../data/yoloGtold1/train/87518.png +../../data/yoloGtold1/train/87519.png +../../data/yoloGtold1/train/87520.png +../../data/yoloGtold1/train/87521.png +../../data/yoloGtold1/train/87522.png +../../data/yoloGtold1/train/87523.png +../../data/yoloGtold1/train/87524.png +../../data/yoloGtold1/train/87525.png +../../data/yoloGtold1/train/87526.png +../../data/yoloGtold1/train/87527.png +../../data/yoloGtold1/train/87528.png +../../data/yoloGtold1/train/87529.png +../../data/yoloGtold1/train/87530.png +../../data/yoloGtold1/train/87531.png +../../data/yoloGtold1/train/87532.png +../../data/yoloGtold1/train/87533.png +../../data/yoloGtold1/train/87534.png +../../data/yoloGtold1/train/87535.png +../../data/yoloGtold1/train/87536.png +../../data/yoloGtold1/train/87537.png +../../data/yoloGtold1/train/87538.png +../../data/yoloGtold1/train/87539.png +../../data/yoloGtold1/train/87540.png +../../data/yoloGtold1/train/87541.png +../../data/yoloGtold1/train/87542.png +../../data/yoloGtold1/train/87543.png +../../data/yoloGtold1/train/87544.png +../../data/yoloGtold1/train/87545.png +../../data/yoloGtold1/train/87546.png +../../data/yoloGtold1/train/87547.png +../../data/yoloGtold1/train/87548.png +../../data/yoloGtold1/train/87549.png +../../data/yoloGtold1/train/87550.png +../../data/yoloGtold1/train/87551.png +../../data/yoloGtold1/train/87552.png +../../data/yoloGtold1/train/87553.png +../../data/yoloGtold1/train/87554.png +../../data/yoloGtold1/train/87555.png +../../data/yoloGtold1/train/87556.png +../../data/yoloGtold1/train/87557.png +../../data/yoloGtold1/train/87558.png +../../data/yoloGtold1/train/87559.png +../../data/yoloGtold1/train/87560.png +../../data/yoloGtold1/train/87561.png +../../data/yoloGtold1/train/87562.png +../../data/yoloGtold1/train/87563.png +../../data/yoloGtold1/train/87564.png +../../data/yoloGtold1/train/87565.png +../../data/yoloGtold1/train/87566.png +../../data/yoloGtold1/train/87567.png +../../data/yoloGtold1/train/87568.png +../../data/yoloGtold1/train/87569.png +../../data/yoloGtold1/train/87570.png +../../data/yoloGtold1/train/87571.png +../../data/yoloGtold1/train/87572.png +../../data/yoloGtold1/train/87573.png +../../data/yoloGtold1/train/87574.png +../../data/yoloGtold1/train/87575.png +../../data/yoloGtold1/train/87576.png +../../data/yoloGtold1/train/87577.png +../../data/yoloGtold1/train/87578.png +../../data/yoloGtold1/train/87579.png +../../data/yoloGtold1/train/87580.png +../../data/yoloGtold1/train/87581.png +../../data/yoloGtold1/train/87582.png +../../data/yoloGtold1/train/87583.png +../../data/yoloGtold1/train/87584.png +../../data/yoloGtold1/train/87585.png +../../data/yoloGtold1/train/87586.png +../../data/yoloGtold1/train/87587.png +../../data/yoloGtold1/train/87588.png +../../data/yoloGtold1/train/87589.png +../../data/yoloGtold1/train/87590.png +../../data/yoloGtold1/train/87591.png +../../data/yoloGtold1/train/87592.png +../../data/yoloGtold1/train/87593.png +../../data/yoloGtold1/train/87594.png +../../data/yoloGtold1/train/87595.png +../../data/yoloGtold1/train/87596.png +../../data/yoloGtold1/train/87597.png +../../data/yoloGtold1/train/87598.png +../../data/yoloGtold1/train/87599.png +../../data/yoloGtold1/train/87600.png +../../data/yoloGtold1/train/87601.png +../../data/yoloGtold1/train/87602.png +../../data/yoloGtold1/train/87603.png +../../data/yoloGtold1/train/87604.png +../../data/yoloGtold1/train/87605.png +../../data/yoloGtold1/train/87606.png +../../data/yoloGtold1/train/87607.png +../../data/yoloGtold1/train/87608.png +../../data/yoloGtold1/train/87609.png +../../data/yoloGtold1/train/87610.png +../../data/yoloGtold1/train/87611.png +../../data/yoloGtold1/train/87612.png +../../data/yoloGtold1/train/87613.png +../../data/yoloGtold1/train/87614.png +../../data/yoloGtold1/train/87615.png +../../data/yoloGtold1/train/87616.png +../../data/yoloGtold1/train/87617.png +../../data/yoloGtold1/train/87618.png +../../data/yoloGtold1/train/87619.png +../../data/yoloGtold1/train/87620.png +../../data/yoloGtold1/train/87621.png +../../data/yoloGtold1/train/87622.png +../../data/yoloGtold1/train/87623.png +../../data/yoloGtold1/train/87624.png +../../data/yoloGtold1/train/87625.png +../../data/yoloGtold1/train/87626.png +../../data/yoloGtold1/train/87627.png +../../data/yoloGtold1/train/87628.png +../../data/yoloGtold1/train/87629.png +../../data/yoloGtold1/train/87630.png +../../data/yoloGtold1/train/87631.png +../../data/yoloGtold1/train/87632.png +../../data/yoloGtold1/train/87633.png +../../data/yoloGtold1/train/87634.png +../../data/yoloGtold1/train/87635.png +../../data/yoloGtold1/train/87636.png +../../data/yoloGtold1/train/87637.png +../../data/yoloGtold1/train/87638.png +../../data/yoloGtold1/train/87639.png +../../data/yoloGtold1/train/87640.png +../../data/yoloGtold1/train/87641.png +../../data/yoloGtold1/train/87642.png +../../data/yoloGtold1/train/87643.png +../../data/yoloGtold1/train/87644.png +../../data/yoloGtold1/train/87645.png +../../data/yoloGtold1/train/87646.png +../../data/yoloGtold1/train/87647.png +../../data/yoloGtold1/train/87648.png +../../data/yoloGtold1/train/87649.png +../../data/yoloGtold1/train/87650.png +../../data/yoloGtold1/train/87651.png +../../data/yoloGtold1/train/87652.png +../../data/yoloGtold1/train/87653.png +../../data/yoloGtold1/train/87654.png +../../data/yoloGtold1/train/87655.png +../../data/yoloGtold1/train/87656.png +../../data/yoloGtold1/train/87657.png +../../data/yoloGtold1/train/87658.png +../../data/yoloGtold1/train/87659.png +../../data/yoloGtold1/train/87660.png +../../data/yoloGtold1/train/87661.png +../../data/yoloGtold1/train/87662.png +../../data/yoloGtold1/train/87663.png +../../data/yoloGtold1/train/87664.png +../../data/yoloGtold1/train/87665.png +../../data/yoloGtold1/train/87666.png +../../data/yoloGtold1/train/87667.png +../../data/yoloGtold1/train/87668.png +../../data/yoloGtold1/train/87669.png +../../data/yoloGtold1/train/87670.png +../../data/yoloGtold1/train/87671.png +../../data/yoloGtold1/train/87672.png +../../data/yoloGtold1/train/87673.png +../../data/yoloGtold1/train/87674.png +../../data/yoloGtold1/train/87675.png +../../data/yoloGtold1/train/87676.png +../../data/yoloGtold1/train/87677.png +../../data/yoloGtold1/train/87678.png +../../data/yoloGtold1/train/87679.png +../../data/yoloGtold1/train/87680.png +../../data/yoloGtold1/train/87681.png +../../data/yoloGtold1/train/87682.png +../../data/yoloGtold1/train/87683.png +../../data/yoloGtold1/train/87684.png +../../data/yoloGtold1/train/87685.png +../../data/yoloGtold1/train/87686.png +../../data/yoloGtold1/train/87687.png +../../data/yoloGtold1/train/87688.png +../../data/yoloGtold1/train/87689.png +../../data/yoloGtold1/train/87690.png +../../data/yoloGtold1/train/87691.png +../../data/yoloGtold1/train/87692.png +../../data/yoloGtold1/train/87693.png +../../data/yoloGtold1/train/87694.png +../../data/yoloGtold1/train/87695.png +../../data/yoloGtold1/train/87696.png +../../data/yoloGtold1/train/87697.png +../../data/yoloGtold1/train/87698.png +../../data/yoloGtold1/train/87699.png +../../data/yoloGtold1/train/87700.png +../../data/yoloGtold1/train/87701.png +../../data/yoloGtold1/train/87702.png +../../data/yoloGtold1/train/87703.png +../../data/yoloGtold1/train/87704.png +../../data/yoloGtold1/train/87705.png +../../data/yoloGtold1/train/87706.png +../../data/yoloGtold1/train/87707.png +../../data/yoloGtold1/train/87708.png +../../data/yoloGtold1/train/87709.png +../../data/yoloGtold1/train/87710.png +../../data/yoloGtold1/train/87711.png +../../data/yoloGtold1/train/87712.png +../../data/yoloGtold1/train/87713.png +../../data/yoloGtold1/train/87714.png +../../data/yoloGtold1/train/87715.png +../../data/yoloGtold1/train/87716.png +../../data/yoloGtold1/train/87717.png +../../data/yoloGtold1/train/87718.png +../../data/yoloGtold1/train/87719.png +../../data/yoloGtold1/train/87720.png +../../data/yoloGtold1/train/87721.png +../../data/yoloGtold1/train/87722.png +../../data/yoloGtold1/train/87723.png +../../data/yoloGtold1/train/87724.png +../../data/yoloGtold1/train/87725.png +../../data/yoloGtold1/train/87726.png +../../data/yoloGtold1/train/87727.png +../../data/yoloGtold1/train/87728.png +../../data/yoloGtold1/train/87729.png +../../data/yoloGtold1/train/87730.png +../../data/yoloGtold1/train/87731.png +../../data/yoloGtold1/train/87732.png +../../data/yoloGtold1/train/87733.png +../../data/yoloGtold1/train/87734.png +../../data/yoloGtold1/train/87735.png +../../data/yoloGtold1/train/87736.png +../../data/yoloGtold1/train/87737.png +../../data/yoloGtold1/train/87738.png +../../data/yoloGtold1/train/87739.png +../../data/yoloGtold1/train/87740.png +../../data/yoloGtold1/train/87741.png +../../data/yoloGtold1/train/87742.png +../../data/yoloGtold1/train/87743.png +../../data/yoloGtold1/train/87744.png +../../data/yoloGtold1/train/87745.png +../../data/yoloGtold1/train/87746.png +../../data/yoloGtold1/train/87747.png +../../data/yoloGtold1/train/87748.png +../../data/yoloGtold1/train/87749.png +../../data/yoloGtold1/train/87750.png +../../data/yoloGtold1/train/87751.png +../../data/yoloGtold1/train/87752.png +../../data/yoloGtold1/train/87753.png +../../data/yoloGtold1/train/87754.png +../../data/yoloGtold1/train/87755.png +../../data/yoloGtold1/train/87756.png +../../data/yoloGtold1/train/87757.png +../../data/yoloGtold1/train/87758.png +../../data/yoloGtold1/train/87759.png +../../data/yoloGtold1/train/87760.png +../../data/yoloGtold1/train/87761.png +../../data/yoloGtold1/train/87762.png +../../data/yoloGtold1/train/87763.png +../../data/yoloGtold1/train/87764.png +../../data/yoloGtold1/train/87765.png +../../data/yoloGtold1/train/87766.png +../../data/yoloGtold1/train/87767.png +../../data/yoloGtold1/train/87768.png +../../data/yoloGtold1/train/87769.png +../../data/yoloGtold1/train/87770.png +../../data/yoloGtold1/train/87771.png +../../data/yoloGtold1/train/87772.png +../../data/yoloGtold1/train/87773.png +../../data/yoloGtold1/train/87774.png +../../data/yoloGtold1/train/87775.png +../../data/yoloGtold1/train/87776.png +../../data/yoloGtold1/train/87777.png +../../data/yoloGtold1/train/87778.png +../../data/yoloGtold1/train/87779.png +../../data/yoloGtold1/train/87780.png +../../data/yoloGtold1/train/87781.png +../../data/yoloGtold1/train/87782.png +../../data/yoloGtold1/train/87783.png +../../data/yoloGtold1/train/87784.png +../../data/yoloGtold1/train/87785.png +../../data/yoloGtold1/train/87786.png +../../data/yoloGtold1/train/87787.png +../../data/yoloGtold1/train/87788.png +../../data/yoloGtold1/train/87789.png +../../data/yoloGtold1/train/87790.png +../../data/yoloGtold1/train/87791.png +../../data/yoloGtold1/train/87792.png +../../data/yoloGtold1/train/87793.png +../../data/yoloGtold1/train/87794.png +../../data/yoloGtold1/train/87795.png +../../data/yoloGtold1/train/87796.png +../../data/yoloGtold1/train/87797.png +../../data/yoloGtold1/train/87798.png +../../data/yoloGtold1/train/87799.png +../../data/yoloGtold1/train/87800.png +../../data/yoloGtold1/train/87801.png +../../data/yoloGtold1/train/87802.png +../../data/yoloGtold1/train/87803.png +../../data/yoloGtold1/train/87804.png +../../data/yoloGtold1/train/87805.png +../../data/yoloGtold1/train/87806.png +../../data/yoloGtold1/train/87807.png +../../data/yoloGtold1/train/87808.png +../../data/yoloGtold1/train/87809.png +../../data/yoloGtold1/train/87810.png +../../data/yoloGtold1/train/87811.png +../../data/yoloGtold1/train/87812.png +../../data/yoloGtold1/train/87813.png +../../data/yoloGtold1/train/87814.png +../../data/yoloGtold1/train/87815.png +../../data/yoloGtold1/train/87816.png +../../data/yoloGtold1/train/87817.png +../../data/yoloGtold1/train/87818.png +../../data/yoloGtold1/train/87819.png +../../data/yoloGtold1/train/87820.png +../../data/yoloGtold1/train/87821.png +../../data/yoloGtold1/train/87822.png +../../data/yoloGtold1/train/87823.png +../../data/yoloGtold1/train/87824.png +../../data/yoloGtold1/train/87825.png +../../data/yoloGtold1/train/87826.png +../../data/yoloGtold1/train/87827.png +../../data/yoloGtold1/train/87828.png +../../data/yoloGtold1/train/87829.png +../../data/yoloGtold1/train/87830.png +../../data/yoloGtold1/train/87831.png +../../data/yoloGtold1/train/87832.png +../../data/yoloGtold1/train/87833.png +../../data/yoloGtold1/train/87834.png +../../data/yoloGtold1/train/87835.png +../../data/yoloGtold1/train/87836.png +../../data/yoloGtold1/train/87837.png +../../data/yoloGtold1/train/87838.png +../../data/yoloGtold1/train/87839.png +../../data/yoloGtold1/train/87840.png +../../data/yoloGtold1/train/87841.png +../../data/yoloGtold1/train/87842.png +../../data/yoloGtold1/train/87843.png +../../data/yoloGtold1/train/87844.png +../../data/yoloGtold1/train/87845.png +../../data/yoloGtold1/train/87846.png +../../data/yoloGtold1/train/87847.png +../../data/yoloGtold1/train/87848.png +../../data/yoloGtold1/train/87849.png +../../data/yoloGtold1/train/87850.png +../../data/yoloGtold1/train/87851.png +../../data/yoloGtold1/train/87852.png +../../data/yoloGtold1/train/87853.png +../../data/yoloGtold1/train/87854.png +../../data/yoloGtold1/train/87855.png +../../data/yoloGtold1/train/87856.png +../../data/yoloGtold1/train/87857.png +../../data/yoloGtold1/train/87858.png +../../data/yoloGtold1/train/87859.png +../../data/yoloGtold1/train/87860.png +../../data/yoloGtold1/train/87861.png +../../data/yoloGtold1/train/87862.png +../../data/yoloGtold1/train/87863.png +../../data/yoloGtold1/train/87864.png +../../data/yoloGtold1/train/87865.png +../../data/yoloGtold1/train/87866.png +../../data/yoloGtold1/train/87867.png +../../data/yoloGtold1/train/87868.png +../../data/yoloGtold1/train/87869.png +../../data/yoloGtold1/train/87870.png +../../data/yoloGtold1/train/87871.png +../../data/yoloGtold1/train/87872.png +../../data/yoloGtold1/train/87873.png +../../data/yoloGtold1/train/87874.png +../../data/yoloGtold1/train/87875.png +../../data/yoloGtold1/train/87876.png +../../data/yoloGtold1/train/87877.png +../../data/yoloGtold1/train/87878.png +../../data/yoloGtold1/train/87879.png +../../data/yoloGtold1/train/87880.png +../../data/yoloGtold1/train/87881.png +../../data/yoloGtold1/train/87882.png +../../data/yoloGtold1/train/87883.png +../../data/yoloGtold1/train/87884.png +../../data/yoloGtold1/train/87885.png +../../data/yoloGtold1/train/87886.png +../../data/yoloGtold1/train/87887.png +../../data/yoloGtold1/train/87888.png +../../data/yoloGtold1/train/87889.png +../../data/yoloGtold1/train/87890.png +../../data/yoloGtold1/train/87891.png +../../data/yoloGtold1/train/87892.png +../../data/yoloGtold1/train/87893.png +../../data/yoloGtold1/train/87894.png +../../data/yoloGtold1/train/87895.png +../../data/yoloGtold1/train/87896.png +../../data/yoloGtold1/train/87897.png +../../data/yoloGtold1/train/87898.png +../../data/yoloGtold1/train/87899.png +../../data/yoloGtold1/train/87900.png +../../data/yoloGtold1/train/87901.png +../../data/yoloGtold1/train/87902.png +../../data/yoloGtold1/train/87903.png +../../data/yoloGtold1/train/87904.png +../../data/yoloGtold1/train/87905.png +../../data/yoloGtold1/train/87906.png +../../data/yoloGtold1/train/87907.png +../../data/yoloGtold1/train/87908.png +../../data/yoloGtold1/train/87909.png +../../data/yoloGtold1/train/87910.png +../../data/yoloGtold1/train/87911.png +../../data/yoloGtold1/train/87912.png +../../data/yoloGtold1/train/87913.png +../../data/yoloGtold1/train/87914.png +../../data/yoloGtold1/train/87915.png +../../data/yoloGtold1/train/87916.png +../../data/yoloGtold1/train/87917.png +../../data/yoloGtold1/train/87918.png +../../data/yoloGtold1/train/87919.png +../../data/yoloGtold1/train/87920.png +../../data/yoloGtold1/train/87921.png +../../data/yoloGtold1/train/87922.png +../../data/yoloGtold1/train/87923.png +../../data/yoloGtold1/train/87924.png +../../data/yoloGtold1/train/87925.png +../../data/yoloGtold1/train/87926.png +../../data/yoloGtold1/train/87927.png +../../data/yoloGtold1/train/87928.png +../../data/yoloGtold1/train/87929.png +../../data/yoloGtold1/train/87930.png +../../data/yoloGtold1/train/87931.png +../../data/yoloGtold1/train/87932.png +../../data/yoloGtold1/train/87933.png +../../data/yoloGtold1/train/87934.png +../../data/yoloGtold1/train/87935.png +../../data/yoloGtold1/train/87936.png +../../data/yoloGtold1/train/87937.png +../../data/yoloGtold1/train/87938.png +../../data/yoloGtold1/train/87939.png +../../data/yoloGtold1/train/87940.png +../../data/yoloGtold1/train/87941.png +../../data/yoloGtold1/train/87942.png +../../data/yoloGtold1/train/87943.png +../../data/yoloGtold1/train/87944.png +../../data/yoloGtold1/train/87945.png +../../data/yoloGtold1/train/87946.png +../../data/yoloGtold1/train/87947.png +../../data/yoloGtold1/train/87948.png +../../data/yoloGtold1/train/87949.png +../../data/yoloGtold1/train/87950.png +../../data/yoloGtold1/train/87951.png +../../data/yoloGtold1/train/87952.png +../../data/yoloGtold1/train/87953.png +../../data/yoloGtold1/train/87954.png +../../data/yoloGtold1/train/87955.png +../../data/yoloGtold1/train/87956.png +../../data/yoloGtold1/train/87957.png +../../data/yoloGtold1/train/87958.png +../../data/yoloGtold1/train/87959.png +../../data/yoloGtold1/train/87960.png +../../data/yoloGtold1/train/87961.png +../../data/yoloGtold1/train/87962.png +../../data/yoloGtold1/train/87963.png +../../data/yoloGtold1/train/87964.png +../../data/yoloGtold1/train/87965.png +../../data/yoloGtold1/train/87966.png +../../data/yoloGtold1/train/87967.png +../../data/yoloGtold1/train/87968.png +../../data/yoloGtold1/train/87969.png +../../data/yoloGtold1/train/87970.png +../../data/yoloGtold1/train/87971.png +../../data/yoloGtold1/train/87972.png +../../data/yoloGtold1/train/87973.png +../../data/yoloGtold1/train/87974.png +../../data/yoloGtold1/train/87975.png +../../data/yoloGtold1/train/87976.png +../../data/yoloGtold1/train/87977.png +../../data/yoloGtold1/train/87978.png +../../data/yoloGtold1/train/87979.png +../../data/yoloGtold1/train/87980.png +../../data/yoloGtold1/train/87981.png +../../data/yoloGtold1/train/87982.png +../../data/yoloGtold1/train/87983.png +../../data/yoloGtold1/train/87984.png +../../data/yoloGtold1/train/87985.png +../../data/yoloGtold1/train/87986.png +../../data/yoloGtold1/train/87987.png +../../data/yoloGtold1/train/87988.png +../../data/yoloGtold1/train/87989.png +../../data/yoloGtold1/train/87990.png +../../data/yoloGtold1/train/87991.png +../../data/yoloGtold1/train/87992.png +../../data/yoloGtold1/train/87993.png +../../data/yoloGtold1/train/87994.png +../../data/yoloGtold1/train/87995.png +../../data/yoloGtold1/train/87996.png +../../data/yoloGtold1/train/87997.png +../../data/yoloGtold1/train/87998.png +../../data/yoloGtold1/train/87999.png +../../data/yoloGtold1/train/88000.png +../../data/yoloGtold1/train/88001.png +../../data/yoloGtold1/train/88002.png +../../data/yoloGtold1/train/88003.png +../../data/yoloGtold1/train/88004.png +../../data/yoloGtold1/train/88005.png +../../data/yoloGtold1/train/88006.png +../../data/yoloGtold1/train/88007.png +../../data/yoloGtold1/train/88008.png +../../data/yoloGtold1/train/88009.png +../../data/yoloGtold1/train/88010.png +../../data/yoloGtold1/train/88011.png +../../data/yoloGtold1/train/88012.png +../../data/yoloGtold1/train/88013.png +../../data/yoloGtold1/train/88014.png +../../data/yoloGtold1/train/88015.png +../../data/yoloGtold1/train/88016.png +../../data/yoloGtold1/train/88017.png +../../data/yoloGtold1/train/88018.png +../../data/yoloGtold1/train/88019.png +../../data/yoloGtold1/train/88020.png +../../data/yoloGtold1/train/88021.png +../../data/yoloGtold1/train/88022.png +../../data/yoloGtold1/train/88023.png +../../data/yoloGtold1/train/88024.png +../../data/yoloGtold1/train/88025.png +../../data/yoloGtold1/train/88026.png +../../data/yoloGtold1/train/88027.png +../../data/yoloGtold1/train/88028.png +../../data/yoloGtold1/train/88029.png +../../data/yoloGtold1/train/88030.png +../../data/yoloGtold1/train/88031.png +../../data/yoloGtold1/train/88032.png +../../data/yoloGtold1/train/88033.png +../../data/yoloGtold1/train/88034.png +../../data/yoloGtold1/train/88035.png +../../data/yoloGtold1/train/88036.png +../../data/yoloGtold1/train/88037.png +../../data/yoloGtold1/train/88038.png +../../data/yoloGtold1/train/88039.png +../../data/yoloGtold1/train/88040.png +../../data/yoloGtold1/train/88041.png +../../data/yoloGtold1/train/88042.png +../../data/yoloGtold1/train/88043.png +../../data/yoloGtold1/train/88044.png +../../data/yoloGtold1/train/88045.png +../../data/yoloGtold1/train/88046.png +../../data/yoloGtold1/train/88047.png +../../data/yoloGtold1/train/88048.png +../../data/yoloGtold1/train/88049.png +../../data/yoloGtold1/train/88050.png +../../data/yoloGtold1/train/88051.png +../../data/yoloGtold1/train/88052.png +../../data/yoloGtold1/train/88053.png +../../data/yoloGtold1/train/88054.png +../../data/yoloGtold1/train/88055.png +../../data/yoloGtold1/train/88056.png +../../data/yoloGtold1/train/88057.png +../../data/yoloGtold1/train/88058.png +../../data/yoloGtold1/train/88059.png +../../data/yoloGtold1/train/88060.png +../../data/yoloGtold1/train/88061.png +../../data/yoloGtold1/train/88062.png +../../data/yoloGtold1/train/88063.png +../../data/yoloGtold1/train/88064.png +../../data/yoloGtold1/train/88065.png +../../data/yoloGtold1/train/88066.png +../../data/yoloGtold1/train/88067.png +../../data/yoloGtold1/train/88068.png +../../data/yoloGtold1/train/88069.png +../../data/yoloGtold1/train/88070.png +../../data/yoloGtold1/train/88071.png +../../data/yoloGtold1/train/88072.png +../../data/yoloGtold1/train/88073.png +../../data/yoloGtold1/train/88074.png +../../data/yoloGtold1/train/88075.png +../../data/yoloGtold1/train/88076.png +../../data/yoloGtold1/train/88077.png +../../data/yoloGtold1/train/88078.png +../../data/yoloGtold1/train/88079.png +../../data/yoloGtold1/train/88080.png +../../data/yoloGtold1/train/88081.png +../../data/yoloGtold1/train/88082.png +../../data/yoloGtold1/train/88083.png +../../data/yoloGtold1/train/88084.png +../../data/yoloGtold1/train/88085.png +../../data/yoloGtold1/train/88086.png +../../data/yoloGtold1/train/88087.png +../../data/yoloGtold1/train/88088.png +../../data/yoloGtold1/train/88089.png +../../data/yoloGtold1/train/88090.png +../../data/yoloGtold1/train/88091.png +../../data/yoloGtold1/train/88092.png +../../data/yoloGtold1/train/88093.png +../../data/yoloGtold1/train/88094.png +../../data/yoloGtold1/train/88095.png +../../data/yoloGtold1/train/88096.png +../../data/yoloGtold1/train/88097.png +../../data/yoloGtold1/train/88098.png +../../data/yoloGtold1/train/88099.png +../../data/yoloGtold1/train/88100.png +../../data/yoloGtold1/train/88101.png +../../data/yoloGtold1/train/88102.png +../../data/yoloGtold1/train/88103.png +../../data/yoloGtold1/train/88104.png +../../data/yoloGtold1/train/88105.png +../../data/yoloGtold1/train/88106.png +../../data/yoloGtold1/train/88107.png +../../data/yoloGtold1/train/88108.png +../../data/yoloGtold1/train/88109.png +../../data/yoloGtold1/train/88110.png +../../data/yoloGtold1/train/88111.png +../../data/yoloGtold1/train/88112.png +../../data/yoloGtold1/train/88113.png +../../data/yoloGtold1/train/88114.png +../../data/yoloGtold1/train/88115.png +../../data/yoloGtold1/train/88116.png +../../data/yoloGtold1/train/88117.png +../../data/yoloGtold1/train/88118.png +../../data/yoloGtold1/train/88119.png +../../data/yoloGtold1/train/88120.png +../../data/yoloGtold1/train/88121.png +../../data/yoloGtold1/train/88122.png +../../data/yoloGtold1/train/88123.png +../../data/yoloGtold1/train/88124.png +../../data/yoloGtold1/train/88125.png +../../data/yoloGtold1/train/88126.png +../../data/yoloGtold1/train/88127.png +../../data/yoloGtold1/train/88128.png +../../data/yoloGtold1/train/88129.png +../../data/yoloGtold1/train/88130.png +../../data/yoloGtold1/train/88131.png +../../data/yoloGtold1/train/88132.png +../../data/yoloGtold1/train/88133.png +../../data/yoloGtold1/train/88134.png +../../data/yoloGtold1/train/88135.png +../../data/yoloGtold1/train/88136.png +../../data/yoloGtold1/train/88137.png +../../data/yoloGtold1/train/88138.png +../../data/yoloGtold1/train/88139.png +../../data/yoloGtold1/train/88140.png +../../data/yoloGtold1/train/88141.png +../../data/yoloGtold1/train/88142.png +../../data/yoloGtold1/train/88143.png +../../data/yoloGtold1/train/88144.png +../../data/yoloGtold1/train/88145.png +../../data/yoloGtold1/train/88146.png +../../data/yoloGtold1/train/88147.png +../../data/yoloGtold1/train/88148.png +../../data/yoloGtold1/train/88149.png +../../data/yoloGtold1/train/88150.png +../../data/yoloGtold1/train/88151.png +../../data/yoloGtold1/train/88152.png +../../data/yoloGtold1/train/88153.png +../../data/yoloGtold1/train/88154.png +../../data/yoloGtold1/train/88155.png +../../data/yoloGtold1/train/88156.png +../../data/yoloGtold1/train/88157.png +../../data/yoloGtold1/train/88158.png +../../data/yoloGtold1/train/88159.png +../../data/yoloGtold1/train/88160.png +../../data/yoloGtold1/train/88161.png +../../data/yoloGtold1/train/88162.png +../../data/yoloGtold1/train/88163.png +../../data/yoloGtold1/train/88164.png +../../data/yoloGtold1/train/88165.png +../../data/yoloGtold1/train/88166.png +../../data/yoloGtold1/train/88167.png +../../data/yoloGtold1/train/88168.png +../../data/yoloGtold1/train/88169.png +../../data/yoloGtold1/train/88170.png +../../data/yoloGtold1/train/88171.png +../../data/yoloGtold1/train/88172.png +../../data/yoloGtold1/train/88173.png +../../data/yoloGtold1/train/88174.png +../../data/yoloGtold1/train/88175.png +../../data/yoloGtold1/train/88176.png +../../data/yoloGtold1/train/88177.png +../../data/yoloGtold1/train/88178.png +../../data/yoloGtold1/train/88179.png +../../data/yoloGtold1/train/88180.png +../../data/yoloGtold1/train/88181.png +../../data/yoloGtold1/train/88182.png +../../data/yoloGtold1/train/88183.png +../../data/yoloGtold1/train/88184.png +../../data/yoloGtold1/train/88185.png +../../data/yoloGtold1/train/88186.png +../../data/yoloGtold1/train/88187.png +../../data/yoloGtold1/train/88188.png +../../data/yoloGtold1/train/88189.png +../../data/yoloGtold1/train/88190.png +../../data/yoloGtold1/train/88191.png +../../data/yoloGtold1/train/88192.png +../../data/yoloGtold1/train/88193.png +../../data/yoloGtold1/train/88194.png +../../data/yoloGtold1/train/88195.png +../../data/yoloGtold1/train/88196.png +../../data/yoloGtold1/train/88197.png +../../data/yoloGtold1/train/88198.png +../../data/yoloGtold1/train/88199.png +../../data/yoloGtold1/train/88200.png +../../data/yoloGtold1/train/88201.png +../../data/yoloGtold1/train/88202.png +../../data/yoloGtold1/train/88203.png +../../data/yoloGtold1/train/88204.png +../../data/yoloGtold1/train/88205.png +../../data/yoloGtold1/train/88206.png +../../data/yoloGtold1/train/88207.png +../../data/yoloGtold1/train/88208.png +../../data/yoloGtold1/train/88209.png +../../data/yoloGtold1/train/88210.png +../../data/yoloGtold1/train/88211.png +../../data/yoloGtold1/train/88212.png +../../data/yoloGtold1/train/88213.png +../../data/yoloGtold1/train/88214.png +../../data/yoloGtold1/train/88215.png +../../data/yoloGtold1/train/88216.png +../../data/yoloGtold1/train/88217.png +../../data/yoloGtold1/train/88218.png +../../data/yoloGtold1/train/88219.png +../../data/yoloGtold1/train/88220.png +../../data/yoloGtold1/train/88221.png +../../data/yoloGtold1/train/88222.png +../../data/yoloGtold1/train/88223.png +../../data/yoloGtold1/train/88224.png +../../data/yoloGtold1/train/88225.png +../../data/yoloGtold1/train/88226.png +../../data/yoloGtold1/train/88227.png +../../data/yoloGtold1/train/88228.png +../../data/yoloGtold1/train/88229.png +../../data/yoloGtold1/train/88230.png +../../data/yoloGtold1/train/88231.png +../../data/yoloGtold1/train/88232.png +../../data/yoloGtold1/train/88233.png +../../data/yoloGtold1/train/88234.png +../../data/yoloGtold1/train/88235.png +../../data/yoloGtold1/train/88236.png +../../data/yoloGtold1/train/88237.png +../../data/yoloGtold1/train/88238.png +../../data/yoloGtold1/train/88239.png +../../data/yoloGtold1/train/88240.png +../../data/yoloGtold1/train/88241.png +../../data/yoloGtold1/train/88242.png +../../data/yoloGtold1/train/88243.png +../../data/yoloGtold1/train/88244.png +../../data/yoloGtold1/train/88245.png +../../data/yoloGtold1/train/88246.png +../../data/yoloGtold1/train/88247.png +../../data/yoloGtold1/train/88248.png +../../data/yoloGtold1/train/88249.png +../../data/yoloGtold1/train/88250.png +../../data/yoloGtold1/train/88251.png +../../data/yoloGtold1/train/88252.png +../../data/yoloGtold1/train/88253.png +../../data/yoloGtold1/train/88254.png +../../data/yoloGtold1/train/88255.png +../../data/yoloGtold1/train/88256.png +../../data/yoloGtold1/train/88257.png +../../data/yoloGtold1/train/88258.png +../../data/yoloGtold1/train/88259.png +../../data/yoloGtold1/train/88260.png +../../data/yoloGtold1/train/88261.png +../../data/yoloGtold1/train/88262.png +../../data/yoloGtold1/train/88263.png +../../data/yoloGtold1/train/88264.png +../../data/yoloGtold1/train/88265.png +../../data/yoloGtold1/train/88266.png +../../data/yoloGtold1/train/88267.png +../../data/yoloGtold1/train/88268.png +../../data/yoloGtold1/train/88269.png +../../data/yoloGtold1/train/88270.png +../../data/yoloGtold1/train/88271.png +../../data/yoloGtold1/train/88272.png +../../data/yoloGtold1/train/88273.png +../../data/yoloGtold1/train/88274.png +../../data/yoloGtold1/train/88275.png +../../data/yoloGtold1/train/88276.png +../../data/yoloGtold1/train/88277.png +../../data/yoloGtold1/train/88278.png +../../data/yoloGtold1/train/88279.png +../../data/yoloGtold1/train/88280.png +../../data/yoloGtold1/train/88281.png +../../data/yoloGtold1/train/88282.png +../../data/yoloGtold1/train/88283.png +../../data/yoloGtold1/train/88284.png +../../data/yoloGtold1/train/88285.png +../../data/yoloGtold1/train/88286.png +../../data/yoloGtold1/train/88287.png +../../data/yoloGtold1/train/88288.png +../../data/yoloGtold1/train/88289.png +../../data/yoloGtold1/train/88290.png +../../data/yoloGtold1/train/88291.png +../../data/yoloGtold1/train/88292.png +../../data/yoloGtold1/train/88293.png +../../data/yoloGtold1/train/88294.png +../../data/yoloGtold1/train/88295.png +../../data/yoloGtold1/train/88296.png +../../data/yoloGtold1/train/88297.png +../../data/yoloGtold1/train/88298.png +../../data/yoloGtold1/train/88299.png +../../data/yoloGtold1/train/88300.png +../../data/yoloGtold1/train/88301.png +../../data/yoloGtold1/train/88302.png +../../data/yoloGtold1/train/88303.png +../../data/yoloGtold1/train/88304.png +../../data/yoloGtold1/train/88305.png +../../data/yoloGtold1/train/88306.png +../../data/yoloGtold1/train/88307.png +../../data/yoloGtold1/train/88308.png +../../data/yoloGtold1/train/88309.png +../../data/yoloGtold1/train/88310.png +../../data/yoloGtold1/train/88311.png +../../data/yoloGtold1/train/88312.png +../../data/yoloGtold1/train/88313.png +../../data/yoloGtold1/train/88314.png +../../data/yoloGtold1/train/88315.png +../../data/yoloGtold1/train/88316.png +../../data/yoloGtold1/train/88317.png +../../data/yoloGtold1/train/88318.png +../../data/yoloGtold1/train/88319.png +../../data/yoloGtold1/train/88320.png +../../data/yoloGtold1/train/88321.png +../../data/yoloGtold1/train/88322.png +../../data/yoloGtold1/train/88323.png +../../data/yoloGtold1/train/88324.png +../../data/yoloGtold1/train/88325.png +../../data/yoloGtold1/train/88326.png +../../data/yoloGtold1/train/88327.png +../../data/yoloGtold1/train/88328.png +../../data/yoloGtold1/train/88329.png +../../data/yoloGtold1/train/88330.png +../../data/yoloGtold1/train/88331.png +../../data/yoloGtold1/train/88332.png +../../data/yoloGtold1/train/88333.png +../../data/yoloGtold1/train/88334.png +../../data/yoloGtold1/train/88335.png +../../data/yoloGtold1/train/88336.png +../../data/yoloGtold1/train/88337.png +../../data/yoloGtold1/train/88338.png +../../data/yoloGtold1/train/88339.png +../../data/yoloGtold1/train/88340.png +../../data/yoloGtold1/train/88341.png +../../data/yoloGtold1/train/88342.png +../../data/yoloGtold1/train/88343.png +../../data/yoloGtold1/train/88344.png +../../data/yoloGtold1/train/88345.png +../../data/yoloGtold1/train/88346.png +../../data/yoloGtold1/train/88347.png +../../data/yoloGtold1/train/88348.png +../../data/yoloGtold1/train/88349.png +../../data/yoloGtold1/train/88350.png +../../data/yoloGtold1/train/88351.png +../../data/yoloGtold1/train/88352.png +../../data/yoloGtold1/train/88353.png +../../data/yoloGtold1/train/88354.png +../../data/yoloGtold1/train/88355.png +../../data/yoloGtold1/train/88356.png +../../data/yoloGtold1/train/88357.png +../../data/yoloGtold1/train/88358.png +../../data/yoloGtold1/train/88359.png +../../data/yoloGtold1/train/88360.png +../../data/yoloGtold1/train/88361.png +../../data/yoloGtold1/train/88362.png +../../data/yoloGtold1/train/88363.png +../../data/yoloGtold1/train/88364.png +../../data/yoloGtold1/train/88365.png +../../data/yoloGtold1/train/88366.png +../../data/yoloGtold1/train/88367.png +../../data/yoloGtold1/train/88368.png +../../data/yoloGtold1/train/88369.png +../../data/yoloGtold1/train/88370.png +../../data/yoloGtold1/train/88371.png +../../data/yoloGtold1/train/88372.png +../../data/yoloGtold1/train/88373.png +../../data/yoloGtold1/train/88374.png +../../data/yoloGtold1/train/88375.png +../../data/yoloGtold1/train/88376.png +../../data/yoloGtold1/train/88377.png +../../data/yoloGtold1/train/88378.png +../../data/yoloGtold1/train/88379.png +../../data/yoloGtold1/train/88380.png +../../data/yoloGtold1/train/88381.png +../../data/yoloGtold1/train/88382.png +../../data/yoloGtold1/train/88383.png +../../data/yoloGtold1/train/88384.png +../../data/yoloGtold1/train/88385.png +../../data/yoloGtold1/train/88386.png +../../data/yoloGtold1/train/88387.png +../../data/yoloGtold1/train/88388.png +../../data/yoloGtold1/train/88389.png +../../data/yoloGtold1/train/88390.png +../../data/yoloGtold1/train/88391.png +../../data/yoloGtold1/train/88392.png +../../data/yoloGtold1/train/88393.png +../../data/yoloGtold1/train/88394.png +../../data/yoloGtold1/train/88395.png +../../data/yoloGtold1/train/88396.png +../../data/yoloGtold1/train/88397.png +../../data/yoloGtold1/train/88398.png +../../data/yoloGtold1/train/88399.png +../../data/yoloGtold1/train/88400.png +../../data/yoloGtold1/train/88401.png +../../data/yoloGtold1/train/88402.png +../../data/yoloGtold1/train/88403.png +../../data/yoloGtold1/train/88404.png +../../data/yoloGtold1/train/88405.png +../../data/yoloGtold1/train/88406.png +../../data/yoloGtold1/train/88407.png +../../data/yoloGtold1/train/88408.png +../../data/yoloGtold1/train/88409.png +../../data/yoloGtold1/train/88410.png +../../data/yoloGtold1/train/88411.png +../../data/yoloGtold1/train/88412.png +../../data/yoloGtold1/train/88413.png +../../data/yoloGtold1/train/88414.png +../../data/yoloGtold1/train/88415.png +../../data/yoloGtold1/train/88416.png +../../data/yoloGtold1/train/88417.png +../../data/yoloGtold1/train/88418.png +../../data/yoloGtold1/train/88419.png +../../data/yoloGtold1/train/88420.png +../../data/yoloGtold1/train/88421.png +../../data/yoloGtold1/train/88422.png +../../data/yoloGtold1/train/88423.png +../../data/yoloGtold1/train/88424.png +../../data/yoloGtold1/train/88425.png +../../data/yoloGtold1/train/88426.png +../../data/yoloGtold1/train/88427.png +../../data/yoloGtold1/train/88428.png +../../data/yoloGtold1/train/88429.png +../../data/yoloGtold1/train/88430.png +../../data/yoloGtold1/train/88431.png +../../data/yoloGtold1/train/88432.png +../../data/yoloGtold1/train/88433.png +../../data/yoloGtold1/train/88434.png +../../data/yoloGtold1/train/88435.png +../../data/yoloGtold1/train/88436.png +../../data/yoloGtold1/train/88437.png +../../data/yoloGtold1/train/88438.png +../../data/yoloGtold1/train/88439.png +../../data/yoloGtold1/train/88440.png +../../data/yoloGtold1/train/88441.png +../../data/yoloGtold1/train/88442.png +../../data/yoloGtold1/train/88443.png +../../data/yoloGtold1/train/88444.png +../../data/yoloGtold1/train/88445.png +../../data/yoloGtold1/train/88446.png +../../data/yoloGtold1/train/88447.png +../../data/yoloGtold1/train/88448.png +../../data/yoloGtold1/train/88449.png +../../data/yoloGtold1/train/88450.png +../../data/yoloGtold1/train/88451.png +../../data/yoloGtold1/train/88452.png +../../data/yoloGtold1/train/88453.png +../../data/yoloGtold1/train/88454.png +../../data/yoloGtold1/train/88455.png +../../data/yoloGtold1/train/88456.png +../../data/yoloGtold1/train/88457.png +../../data/yoloGtold1/train/88458.png +../../data/yoloGtold1/train/88459.png +../../data/yoloGtold1/train/88460.png +../../data/yoloGtold1/train/88461.png +../../data/yoloGtold1/train/88462.png +../../data/yoloGtold1/train/88463.png +../../data/yoloGtold1/train/88464.png +../../data/yoloGtold1/train/88465.png +../../data/yoloGtold1/train/88466.png +../../data/yoloGtold1/train/88467.png +../../data/yoloGtold1/train/88468.png +../../data/yoloGtold1/train/88469.png +../../data/yoloGtold1/train/88470.png +../../data/yoloGtold1/train/88471.png +../../data/yoloGtold1/train/88472.png +../../data/yoloGtold1/train/88473.png +../../data/yoloGtold1/train/88474.png +../../data/yoloGtold1/train/88475.png +../../data/yoloGtold1/train/88476.png +../../data/yoloGtold1/train/88477.png +../../data/yoloGtold1/train/88478.png +../../data/yoloGtold1/train/88479.png +../../data/yoloGtold1/train/88480.png +../../data/yoloGtold1/train/88481.png +../../data/yoloGtold1/train/88482.png +../../data/yoloGtold1/train/88483.png +../../data/yoloGtold1/train/88484.png +../../data/yoloGtold1/train/88485.png +../../data/yoloGtold1/train/88486.png +../../data/yoloGtold1/train/88487.png +../../data/yoloGtold1/train/88488.png +../../data/yoloGtold1/train/88489.png +../../data/yoloGtold1/train/88490.png +../../data/yoloGtold1/train/88491.png +../../data/yoloGtold1/train/88492.png +../../data/yoloGtold1/train/88493.png +../../data/yoloGtold1/train/88494.png +../../data/yoloGtold1/train/88495.png +../../data/yoloGtold1/train/88496.png +../../data/yoloGtold1/train/88497.png +../../data/yoloGtold1/train/88498.png +../../data/yoloGtold1/train/88499.png +../../data/yoloGtold1/train/88500.png +../../data/yoloGtold1/train/88501.png +../../data/yoloGtold1/train/88502.png +../../data/yoloGtold1/train/88503.png +../../data/yoloGtold1/train/88504.png +../../data/yoloGtold1/train/88505.png +../../data/yoloGtold1/train/88506.png +../../data/yoloGtold1/train/88507.png +../../data/yoloGtold1/train/88508.png +../../data/yoloGtold1/train/88509.png +../../data/yoloGtold1/train/88510.png +../../data/yoloGtold1/train/88511.png +../../data/yoloGtold1/train/88512.png +../../data/yoloGtold1/train/88513.png +../../data/yoloGtold1/train/88514.png +../../data/yoloGtold1/train/88515.png +../../data/yoloGtold1/train/88516.png +../../data/yoloGtold1/train/88517.png +../../data/yoloGtold1/train/88518.png +../../data/yoloGtold1/train/88519.png +../../data/yoloGtold1/train/88520.png +../../data/yoloGtold1/train/88521.png +../../data/yoloGtold1/train/88522.png +../../data/yoloGtold1/train/88523.png +../../data/yoloGtold1/train/88524.png +../../data/yoloGtold1/train/88525.png +../../data/yoloGtold1/train/88526.png +../../data/yoloGtold1/train/88527.png +../../data/yoloGtold1/train/88528.png +../../data/yoloGtold1/train/88529.png +../../data/yoloGtold1/train/88530.png +../../data/yoloGtold1/train/88531.png +../../data/yoloGtold1/train/88532.png +../../data/yoloGtold1/train/88533.png +../../data/yoloGtold1/train/88534.png +../../data/yoloGtold1/train/88535.png +../../data/yoloGtold1/train/88536.png +../../data/yoloGtold1/train/88537.png +../../data/yoloGtold1/train/88538.png +../../data/yoloGtold1/train/88539.png +../../data/yoloGtold1/train/88540.png +../../data/yoloGtold1/train/88541.png +../../data/yoloGtold1/train/88542.png +../../data/yoloGtold1/train/88543.png +../../data/yoloGtold1/train/88544.png +../../data/yoloGtold1/train/88545.png +../../data/yoloGtold1/train/88546.png +../../data/yoloGtold1/train/88547.png +../../data/yoloGtold1/train/88548.png +../../data/yoloGtold1/train/88549.png +../../data/yoloGtold1/train/88550.png +../../data/yoloGtold1/train/88551.png +../../data/yoloGtold1/train/88552.png +../../data/yoloGtold1/train/88553.png +../../data/yoloGtold1/train/88554.png +../../data/yoloGtold1/train/88555.png +../../data/yoloGtold1/train/88556.png +../../data/yoloGtold1/train/88557.png +../../data/yoloGtold1/train/88558.png +../../data/yoloGtold1/train/88559.png +../../data/yoloGtold1/train/88560.png +../../data/yoloGtold1/train/88561.png +../../data/yoloGtold1/train/88562.png +../../data/yoloGtold1/train/88563.png +../../data/yoloGtold1/train/88564.png +../../data/yoloGtold1/train/88565.png +../../data/yoloGtold1/train/88566.png +../../data/yoloGtold1/train/88567.png +../../data/yoloGtold1/train/88568.png +../../data/yoloGtold1/train/88569.png +../../data/yoloGtold1/train/88570.png +../../data/yoloGtold1/train/88571.png +../../data/yoloGtold1/train/88572.png +../../data/yoloGtold1/train/88573.png +../../data/yoloGtold1/train/88574.png +../../data/yoloGtold1/train/88575.png +../../data/yoloGtold1/train/88576.png +../../data/yoloGtold1/train/88577.png +../../data/yoloGtold1/train/88578.png +../../data/yoloGtold1/train/88579.png +../../data/yoloGtold1/train/88580.png +../../data/yoloGtold1/train/88581.png +../../data/yoloGtold1/train/88582.png +../../data/yoloGtold1/train/88583.png +../../data/yoloGtold1/train/88584.png +../../data/yoloGtold1/train/88585.png +../../data/yoloGtold1/train/88586.png +../../data/yoloGtold1/train/88587.png +../../data/yoloGtold1/train/88588.png +../../data/yoloGtold1/train/88589.png +../../data/yoloGtold1/train/88590.png +../../data/yoloGtold1/train/88591.png +../../data/yoloGtold1/train/88592.png +../../data/yoloGtold1/train/88593.png +../../data/yoloGtold1/train/88594.png +../../data/yoloGtold1/train/88595.png +../../data/yoloGtold1/train/88596.png +../../data/yoloGtold1/train/88597.png +../../data/yoloGtold1/train/88598.png +../../data/yoloGtold1/train/88599.png +../../data/yoloGtold1/train/88600.png +../../data/yoloGtold1/train/88601.png +../../data/yoloGtold1/train/88602.png +../../data/yoloGtold1/train/88603.png +../../data/yoloGtold1/train/88604.png +../../data/yoloGtold1/train/88605.png +../../data/yoloGtold1/train/88606.png +../../data/yoloGtold1/train/88607.png +../../data/yoloGtold1/train/88608.png +../../data/yoloGtold1/train/88609.png +../../data/yoloGtold1/train/88610.png +../../data/yoloGtold1/train/88611.png +../../data/yoloGtold1/train/88612.png +../../data/yoloGtold1/train/88613.png +../../data/yoloGtold1/train/88614.png +../../data/yoloGtold1/train/88615.png +../../data/yoloGtold1/train/88616.png +../../data/yoloGtold1/train/88617.png +../../data/yoloGtold1/train/88618.png +../../data/yoloGtold1/train/88619.png +../../data/yoloGtold1/train/88620.png +../../data/yoloGtold1/train/88621.png +../../data/yoloGtold1/train/88622.png +../../data/yoloGtold1/train/88623.png +../../data/yoloGtold1/train/88624.png +../../data/yoloGtold1/train/88625.png +../../data/yoloGtold1/train/88626.png +../../data/yoloGtold1/train/88627.png +../../data/yoloGtold1/train/88628.png +../../data/yoloGtold1/train/88629.png +../../data/yoloGtold1/train/88630.png +../../data/yoloGtold1/train/88631.png +../../data/yoloGtold1/train/88632.png +../../data/yoloGtold1/train/88633.png +../../data/yoloGtold1/train/88634.png +../../data/yoloGtold1/train/88635.png +../../data/yoloGtold1/train/88636.png +../../data/yoloGtold1/train/88637.png +../../data/yoloGtold1/train/88638.png +../../data/yoloGtold1/train/88639.png +../../data/yoloGtold1/train/88640.png +../../data/yoloGtold1/train/88641.png +../../data/yoloGtold1/train/88642.png +../../data/yoloGtold1/train/88643.png +../../data/yoloGtold1/train/88644.png +../../data/yoloGtold1/train/88645.png +../../data/yoloGtold1/train/88646.png +../../data/yoloGtold1/train/88647.png +../../data/yoloGtold1/train/88648.png +../../data/yoloGtold1/train/88649.png +../../data/yoloGtold1/train/88650.png +../../data/yoloGtold1/train/88651.png +../../data/yoloGtold1/train/88652.png +../../data/yoloGtold1/train/88653.png +../../data/yoloGtold1/train/88654.png +../../data/yoloGtold1/train/88655.png +../../data/yoloGtold1/train/88656.png +../../data/yoloGtold1/train/88657.png +../../data/yoloGtold1/train/88658.png +../../data/yoloGtold1/train/88659.png +../../data/yoloGtold1/train/88660.png +../../data/yoloGtold1/train/88661.png +../../data/yoloGtold1/train/88662.png +../../data/yoloGtold1/train/88663.png +../../data/yoloGtold1/train/88664.png +../../data/yoloGtold1/train/88665.png +../../data/yoloGtold1/train/88666.png +../../data/yoloGtold1/train/88667.png +../../data/yoloGtold1/train/88668.png +../../data/yoloGtold1/train/88669.png +../../data/yoloGtold1/train/88670.png +../../data/yoloGtold1/train/88671.png +../../data/yoloGtold1/train/88672.png +../../data/yoloGtold1/train/88673.png +../../data/yoloGtold1/train/88674.png +../../data/yoloGtold1/train/88675.png +../../data/yoloGtold1/train/88676.png +../../data/yoloGtold1/train/88677.png +../../data/yoloGtold1/train/88678.png +../../data/yoloGtold1/train/88679.png +../../data/yoloGtold1/train/88680.png +../../data/yoloGtold1/train/88681.png +../../data/yoloGtold1/train/88682.png +../../data/yoloGtold1/train/88683.png +../../data/yoloGtold1/train/88684.png +../../data/yoloGtold1/train/88685.png +../../data/yoloGtold1/train/88686.png +../../data/yoloGtold1/train/88687.png +../../data/yoloGtold1/train/88688.png +../../data/yoloGtold1/train/88689.png +../../data/yoloGtold1/train/88690.png +../../data/yoloGtold1/train/88691.png +../../data/yoloGtold1/train/88692.png +../../data/yoloGtold1/train/88693.png +../../data/yoloGtold1/train/88694.png +../../data/yoloGtold1/train/88695.png +../../data/yoloGtold1/train/88696.png +../../data/yoloGtold1/train/88697.png +../../data/yoloGtold1/train/88698.png +../../data/yoloGtold1/train/88699.png +../../data/yoloGtold1/train/88700.png +../../data/yoloGtold1/train/88701.png +../../data/yoloGtold1/train/88702.png +../../data/yoloGtold1/train/88703.png +../../data/yoloGtold1/train/88704.png +../../data/yoloGtold1/train/88705.png +../../data/yoloGtold1/train/88706.png +../../data/yoloGtold1/train/88707.png +../../data/yoloGtold1/train/88708.png +../../data/yoloGtold1/train/88709.png +../../data/yoloGtold1/train/88710.png +../../data/yoloGtold1/train/88711.png +../../data/yoloGtold1/train/88712.png +../../data/yoloGtold1/train/88713.png +../../data/yoloGtold1/train/88714.png +../../data/yoloGtold1/train/88715.png +../../data/yoloGtold1/train/88716.png +../../data/yoloGtold1/train/88717.png +../../data/yoloGtold1/train/88718.png +../../data/yoloGtold1/train/88719.png +../../data/yoloGtold1/train/88720.png +../../data/yoloGtold1/train/88721.png +../../data/yoloGtold1/train/88722.png +../../data/yoloGtold1/train/88723.png +../../data/yoloGtold1/train/88724.png +../../data/yoloGtold1/train/88725.png +../../data/yoloGtold1/train/88726.png +../../data/yoloGtold1/train/88727.png +../../data/yoloGtold1/train/88728.png +../../data/yoloGtold1/train/88729.png +../../data/yoloGtold1/train/88730.png +../../data/yoloGtold1/train/88731.png +../../data/yoloGtold1/train/88732.png +../../data/yoloGtold1/train/88733.png +../../data/yoloGtold1/train/88734.png +../../data/yoloGtold1/train/88735.png +../../data/yoloGtold1/train/88736.png +../../data/yoloGtold1/train/88737.png +../../data/yoloGtold1/train/88738.png +../../data/yoloGtold1/train/88739.png +../../data/yoloGtold1/train/88740.png +../../data/yoloGtold1/train/88741.png +../../data/yoloGtold1/train/88742.png +../../data/yoloGtold1/train/88743.png +../../data/yoloGtold1/train/88744.png +../../data/yoloGtold1/train/88745.png +../../data/yoloGtold1/train/88746.png +../../data/yoloGtold1/train/88747.png +../../data/yoloGtold1/train/88748.png +../../data/yoloGtold1/train/88749.png +../../data/yoloGtold1/train/88750.png +../../data/yoloGtold1/train/88751.png +../../data/yoloGtold1/train/88752.png +../../data/yoloGtold1/train/88753.png +../../data/yoloGtold1/train/88754.png +../../data/yoloGtold1/train/88755.png +../../data/yoloGtold1/train/88756.png +../../data/yoloGtold1/train/88757.png +../../data/yoloGtold1/train/88758.png +../../data/yoloGtold1/train/88759.png +../../data/yoloGtold1/train/88760.png +../../data/yoloGtold1/train/88761.png +../../data/yoloGtold1/train/88762.png +../../data/yoloGtold1/train/88763.png +../../data/yoloGtold1/train/88764.png +../../data/yoloGtold1/train/88765.png +../../data/yoloGtold1/train/88766.png +../../data/yoloGtold1/train/88767.png +../../data/yoloGtold1/train/88768.png +../../data/yoloGtold1/train/88769.png +../../data/yoloGtold1/train/88770.png +../../data/yoloGtold1/train/88771.png +../../data/yoloGtold1/train/88772.png +../../data/yoloGtold1/train/88773.png +../../data/yoloGtold1/train/88774.png +../../data/yoloGtold1/train/88775.png +../../data/yoloGtold1/train/88776.png +../../data/yoloGtold1/train/88777.png +../../data/yoloGtold1/train/88778.png +../../data/yoloGtold1/train/88779.png +../../data/yoloGtold1/train/88780.png +../../data/yoloGtold1/train/88781.png +../../data/yoloGtold1/train/88782.png +../../data/yoloGtold1/train/88783.png +../../data/yoloGtold1/train/88784.png +../../data/yoloGtold1/train/88785.png +../../data/yoloGtold1/train/88786.png +../../data/yoloGtold1/train/88787.png +../../data/yoloGtold1/train/88788.png +../../data/yoloGtold1/train/88789.png +../../data/yoloGtold1/train/88790.png +../../data/yoloGtold1/train/88791.png +../../data/yoloGtold1/train/88792.png +../../data/yoloGtold1/train/88793.png +../../data/yoloGtold1/train/88794.png +../../data/yoloGtold1/train/88795.png +../../data/yoloGtold1/train/88796.png +../../data/yoloGtold1/train/88797.png +../../data/yoloGtold1/train/88798.png +../../data/yoloGtold1/train/88799.png +../../data/yoloGtold1/train/88800.png +../../data/yoloGtold1/train/88801.png +../../data/yoloGtold1/train/88802.png +../../data/yoloGtold1/train/88803.png +../../data/yoloGtold1/train/88804.png +../../data/yoloGtold1/train/88805.png +../../data/yoloGtold1/train/88806.png +../../data/yoloGtold1/train/88807.png +../../data/yoloGtold1/train/88808.png +../../data/yoloGtold1/train/88809.png +../../data/yoloGtold1/train/88810.png +../../data/yoloGtold1/train/88811.png +../../data/yoloGtold1/train/88812.png +../../data/yoloGtold1/train/88813.png +../../data/yoloGtold1/train/88814.png +../../data/yoloGtold1/train/88815.png +../../data/yoloGtold1/train/88816.png +../../data/yoloGtold1/train/88817.png +../../data/yoloGtold1/train/88818.png +../../data/yoloGtold1/train/88819.png +../../data/yoloGtold1/train/88820.png +../../data/yoloGtold1/train/88821.png +../../data/yoloGtold1/train/88822.png +../../data/yoloGtold1/train/88823.png +../../data/yoloGtold1/train/88824.png +../../data/yoloGtold1/train/88825.png +../../data/yoloGtold1/train/88826.png +../../data/yoloGtold1/train/88827.png +../../data/yoloGtold1/train/88828.png +../../data/yoloGtold1/train/88829.png +../../data/yoloGtold1/train/88830.png +../../data/yoloGtold1/train/88831.png +../../data/yoloGtold1/train/88832.png +../../data/yoloGtold1/train/88833.png +../../data/yoloGtold1/train/88834.png +../../data/yoloGtold1/train/88835.png +../../data/yoloGtold1/train/88836.png +../../data/yoloGtold1/train/88837.png +../../data/yoloGtold1/train/88838.png +../../data/yoloGtold1/train/88839.png +../../data/yoloGtold1/train/88840.png +../../data/yoloGtold1/train/88841.png +../../data/yoloGtold1/train/88842.png +../../data/yoloGtold1/train/88843.png +../../data/yoloGtold1/train/88844.png +../../data/yoloGtold1/train/88845.png +../../data/yoloGtold1/train/88846.png +../../data/yoloGtold1/train/88847.png +../../data/yoloGtold1/train/88848.png +../../data/yoloGtold1/train/88849.png +../../data/yoloGtold1/train/88850.png +../../data/yoloGtold1/train/88851.png +../../data/yoloGtold1/train/88852.png +../../data/yoloGtold1/train/88853.png +../../data/yoloGtold1/train/88854.png +../../data/yoloGtold1/train/88855.png +../../data/yoloGtold1/train/88856.png +../../data/yoloGtold1/train/88857.png +../../data/yoloGtold1/train/88858.png +../../data/yoloGtold1/train/88859.png +../../data/yoloGtold1/train/88860.png +../../data/yoloGtold1/train/88861.png +../../data/yoloGtold1/train/88862.png +../../data/yoloGtold1/train/88863.png +../../data/yoloGtold1/train/88864.png +../../data/yoloGtold1/train/88865.png +../../data/yoloGtold1/train/88866.png +../../data/yoloGtold1/train/88867.png +../../data/yoloGtold1/train/88868.png +../../data/yoloGtold1/train/88869.png +../../data/yoloGtold1/train/88870.png +../../data/yoloGtold1/train/88871.png +../../data/yoloGtold1/train/88872.png +../../data/yoloGtold1/train/88873.png +../../data/yoloGtold1/train/88874.png +../../data/yoloGtold1/train/88875.png +../../data/yoloGtold1/train/88876.png +../../data/yoloGtold1/train/88877.png +../../data/yoloGtold1/train/88878.png +../../data/yoloGtold1/train/88879.png +../../data/yoloGtold1/train/88880.png +../../data/yoloGtold1/train/88881.png +../../data/yoloGtold1/train/88882.png +../../data/yoloGtold1/train/88883.png +../../data/yoloGtold1/train/88884.png +../../data/yoloGtold1/train/88885.png +../../data/yoloGtold1/train/88886.png +../../data/yoloGtold1/train/88887.png +../../data/yoloGtold1/train/88888.png +../../data/yoloGtold1/train/88889.png +../../data/yoloGtold1/train/88890.png +../../data/yoloGtold1/train/88891.png +../../data/yoloGtold1/train/88892.png +../../data/yoloGtold1/train/88893.png +../../data/yoloGtold1/train/88894.png +../../data/yoloGtold1/train/88895.png +../../data/yoloGtold1/train/88896.png +../../data/yoloGtold1/train/88897.png +../../data/yoloGtold1/train/88898.png +../../data/yoloGtold1/train/88899.png +../../data/yoloGtold1/train/88900.png +../../data/yoloGtold1/train/88901.png +../../data/yoloGtold1/train/88902.png +../../data/yoloGtold1/train/88903.png +../../data/yoloGtold1/train/88904.png +../../data/yoloGtold1/train/88905.png +../../data/yoloGtold1/train/88906.png +../../data/yoloGtold1/train/88907.png +../../data/yoloGtold1/train/88908.png +../../data/yoloGtold1/train/88909.png +../../data/yoloGtold1/train/88910.png +../../data/yoloGtold1/train/88911.png +../../data/yoloGtold1/train/88912.png +../../data/yoloGtold1/train/88913.png +../../data/yoloGtold1/train/88914.png +../../data/yoloGtold1/train/88915.png +../../data/yoloGtold1/train/88916.png +../../data/yoloGtold1/train/88917.png +../../data/yoloGtold1/train/88918.png +../../data/yoloGtold1/train/88919.png +../../data/yoloGtold1/train/88920.png +../../data/yoloGtold1/train/88921.png +../../data/yoloGtold1/train/88922.png +../../data/yoloGtold1/train/88923.png +../../data/yoloGtold1/train/88924.png +../../data/yoloGtold1/train/88925.png +../../data/yoloGtold1/train/88926.png +../../data/yoloGtold1/train/88927.png +../../data/yoloGtold1/train/88928.png +../../data/yoloGtold1/train/88929.png +../../data/yoloGtold1/train/88930.png +../../data/yoloGtold1/train/88931.png +../../data/yoloGtold1/train/88932.png +../../data/yoloGtold1/train/88933.png +../../data/yoloGtold1/train/88934.png +../../data/yoloGtold1/train/88935.png +../../data/yoloGtold1/train/88936.png +../../data/yoloGtold1/train/88937.png +../../data/yoloGtold1/train/88938.png +../../data/yoloGtold1/train/88939.png +../../data/yoloGtold1/train/88940.png +../../data/yoloGtold1/train/88941.png +../../data/yoloGtold1/train/88942.png +../../data/yoloGtold1/train/88943.png +../../data/yoloGtold1/train/88944.png +../../data/yoloGtold1/train/88945.png +../../data/yoloGtold1/train/88946.png +../../data/yoloGtold1/train/88947.png +../../data/yoloGtold1/train/88948.png +../../data/yoloGtold1/train/88949.png +../../data/yoloGtold1/train/88950.png +../../data/yoloGtold1/train/88951.png +../../data/yoloGtold1/train/88952.png +../../data/yoloGtold1/train/88953.png +../../data/yoloGtold1/train/88954.png +../../data/yoloGtold1/train/88955.png +../../data/yoloGtold1/train/88956.png +../../data/yoloGtold1/train/88957.png +../../data/yoloGtold1/train/88958.png +../../data/yoloGtold1/train/88959.png +../../data/yoloGtold1/train/88960.png +../../data/yoloGtold1/train/88961.png +../../data/yoloGtold1/train/88962.png +../../data/yoloGtold1/train/88963.png +../../data/yoloGtold1/train/88964.png +../../data/yoloGtold1/train/88965.png +../../data/yoloGtold1/train/88966.png +../../data/yoloGtold1/train/88967.png +../../data/yoloGtold1/train/88968.png +../../data/yoloGtold1/train/88969.png +../../data/yoloGtold1/train/88970.png +../../data/yoloGtold1/train/88971.png +../../data/yoloGtold1/train/88972.png +../../data/yoloGtold1/train/88973.png +../../data/yoloGtold1/train/88974.png +../../data/yoloGtold1/train/88975.png +../../data/yoloGtold1/train/88976.png +../../data/yoloGtold1/train/88977.png +../../data/yoloGtold1/train/88978.png +../../data/yoloGtold1/train/88979.png +../../data/yoloGtold1/train/88980.png +../../data/yoloGtold1/train/88981.png +../../data/yoloGtold1/train/88982.png +../../data/yoloGtold1/train/88983.png +../../data/yoloGtold1/train/88984.png +../../data/yoloGtold1/train/88985.png +../../data/yoloGtold1/train/88986.png +../../data/yoloGtold1/train/88987.png +../../data/yoloGtold1/train/88988.png +../../data/yoloGtold1/train/88989.png +../../data/yoloGtold1/train/88990.png +../../data/yoloGtold1/train/88991.png +../../data/yoloGtold1/train/88992.png +../../data/yoloGtold1/train/88993.png +../../data/yoloGtold1/train/88994.png +../../data/yoloGtold1/train/88995.png +../../data/yoloGtold1/train/88996.png +../../data/yoloGtold1/train/88997.png +../../data/yoloGtold1/train/88998.png +../../data/yoloGtold1/train/88999.png +../../data/yoloGtold1/train/89000.png +../../data/yoloGtold1/train/89001.png +../../data/yoloGtold1/train/89002.png +../../data/yoloGtold1/train/89003.png +../../data/yoloGtold1/train/89004.png +../../data/yoloGtold1/train/89005.png +../../data/yoloGtold1/train/89006.png +../../data/yoloGtold1/train/89007.png +../../data/yoloGtold1/train/89008.png +../../data/yoloGtold1/train/89009.png +../../data/yoloGtold1/train/89010.png +../../data/yoloGtold1/train/89011.png +../../data/yoloGtold1/train/89012.png +../../data/yoloGtold1/train/89013.png +../../data/yoloGtold1/train/89014.png +../../data/yoloGtold1/train/89015.png +../../data/yoloGtold1/train/89016.png +../../data/yoloGtold1/train/89017.png +../../data/yoloGtold1/train/89018.png +../../data/yoloGtold1/train/89019.png +../../data/yoloGtold1/train/89020.png +../../data/yoloGtold1/train/89021.png +../../data/yoloGtold1/train/89022.png +../../data/yoloGtold1/train/89023.png +../../data/yoloGtold1/train/89024.png +../../data/yoloGtold1/train/89025.png +../../data/yoloGtold1/train/89026.png +../../data/yoloGtold1/train/89027.png +../../data/yoloGtold1/train/89028.png +../../data/yoloGtold1/train/89029.png +../../data/yoloGtold1/train/89030.png +../../data/yoloGtold1/train/89031.png +../../data/yoloGtold1/train/89032.png +../../data/yoloGtold1/train/89033.png +../../data/yoloGtold1/train/89034.png +../../data/yoloGtold1/train/89035.png +../../data/yoloGtold1/train/89036.png +../../data/yoloGtold1/train/89037.png +../../data/yoloGtold1/train/89038.png +../../data/yoloGtold1/train/89039.png +../../data/yoloGtold1/train/89040.png +../../data/yoloGtold1/train/89041.png +../../data/yoloGtold1/train/89042.png +../../data/yoloGtold1/train/89043.png +../../data/yoloGtold1/train/89044.png +../../data/yoloGtold1/train/89045.png +../../data/yoloGtold1/train/89046.png +../../data/yoloGtold1/train/89047.png +../../data/yoloGtold1/train/89048.png +../../data/yoloGtold1/train/89049.png +../../data/yoloGtold1/train/89050.png +../../data/yoloGtold1/train/89051.png +../../data/yoloGtold1/train/89052.png +../../data/yoloGtold1/train/89053.png +../../data/yoloGtold1/train/89054.png +../../data/yoloGtold1/train/89055.png +../../data/yoloGtold1/train/89056.png +../../data/yoloGtold1/train/89057.png +../../data/yoloGtold1/train/89058.png +../../data/yoloGtold1/train/89059.png +../../data/yoloGtold1/train/89060.png +../../data/yoloGtold1/train/89061.png +../../data/yoloGtold1/train/89062.png +../../data/yoloGtold1/train/89063.png +../../data/yoloGtold1/train/89064.png +../../data/yoloGtold1/train/89065.png +../../data/yoloGtold1/train/89066.png +../../data/yoloGtold1/train/89067.png +../../data/yoloGtold1/train/89068.png +../../data/yoloGtold1/train/89069.png +../../data/yoloGtold1/train/89070.png +../../data/yoloGtold1/train/89071.png +../../data/yoloGtold1/train/89072.png +../../data/yoloGtold1/train/89073.png +../../data/yoloGtold1/train/89074.png +../../data/yoloGtold1/train/89075.png +../../data/yoloGtold1/train/89076.png +../../data/yoloGtold1/train/89077.png +../../data/yoloGtold1/train/89078.png +../../data/yoloGtold1/train/89079.png +../../data/yoloGtold1/train/89080.png +../../data/yoloGtold1/train/89081.png +../../data/yoloGtold1/train/89082.png +../../data/yoloGtold1/train/89083.png +../../data/yoloGtold1/train/89084.png +../../data/yoloGtold1/train/89085.png +../../data/yoloGtold1/train/89086.png +../../data/yoloGtold1/train/89087.png +../../data/yoloGtold1/train/89088.png +../../data/yoloGtold1/train/89089.png +../../data/yoloGtold1/train/89090.png +../../data/yoloGtold1/train/89091.png +../../data/yoloGtold1/train/89092.png +../../data/yoloGtold1/train/89093.png +../../data/yoloGtold1/train/89094.png +../../data/yoloGtold1/train/89095.png +../../data/yoloGtold1/train/89096.png +../../data/yoloGtold1/train/89097.png +../../data/yoloGtold1/train/89098.png +../../data/yoloGtold1/train/89099.png +../../data/yoloGtold1/train/89100.png +../../data/yoloGtold1/train/89101.png +../../data/yoloGtold1/train/89102.png +../../data/yoloGtold1/train/89103.png +../../data/yoloGtold1/train/89104.png +../../data/yoloGtold1/train/89105.png +../../data/yoloGtold1/train/89106.png +../../data/yoloGtold1/train/89107.png +../../data/yoloGtold1/train/89108.png +../../data/yoloGtold1/train/89109.png +../../data/yoloGtold1/train/89110.png +../../data/yoloGtold1/train/89111.png +../../data/yoloGtold1/train/89112.png +../../data/yoloGtold1/train/89113.png +../../data/yoloGtold1/train/89114.png +../../data/yoloGtold1/train/89115.png +../../data/yoloGtold1/train/89116.png +../../data/yoloGtold1/train/89117.png +../../data/yoloGtold1/train/89118.png +../../data/yoloGtold1/train/89119.png +../../data/yoloGtold1/train/89120.png +../../data/yoloGtold1/train/89121.png +../../data/yoloGtold1/train/89122.png +../../data/yoloGtold1/train/89123.png +../../data/yoloGtold1/train/89124.png +../../data/yoloGtold1/train/89125.png +../../data/yoloGtold1/train/89126.png +../../data/yoloGtold1/train/89127.png +../../data/yoloGtold1/train/89128.png +../../data/yoloGtold1/train/89129.png +../../data/yoloGtold1/train/89130.png +../../data/yoloGtold1/train/89131.png +../../data/yoloGtold1/train/89132.png +../../data/yoloGtold1/train/89133.png +../../data/yoloGtold1/train/89134.png +../../data/yoloGtold1/train/89135.png +../../data/yoloGtold1/train/89136.png +../../data/yoloGtold1/train/89137.png +../../data/yoloGtold1/train/89138.png +../../data/yoloGtold1/train/89139.png +../../data/yoloGtold1/train/89140.png +../../data/yoloGtold1/train/89141.png +../../data/yoloGtold1/train/89142.png +../../data/yoloGtold1/train/89143.png +../../data/yoloGtold1/train/89144.png +../../data/yoloGtold1/train/89145.png +../../data/yoloGtold1/train/89146.png +../../data/yoloGtold1/train/89147.png +../../data/yoloGtold1/train/89148.png +../../data/yoloGtold1/train/89149.png +../../data/yoloGtold1/train/89150.png +../../data/yoloGtold1/train/89151.png +../../data/yoloGtold1/train/89152.png +../../data/yoloGtold1/train/89153.png +../../data/yoloGtold1/train/89154.png +../../data/yoloGtold1/train/89155.png +../../data/yoloGtold1/train/89156.png +../../data/yoloGtold1/train/89157.png +../../data/yoloGtold1/train/89158.png +../../data/yoloGtold1/train/89159.png +../../data/yoloGtold1/train/89160.png +../../data/yoloGtold1/train/89161.png +../../data/yoloGtold1/train/89162.png +../../data/yoloGtold1/train/89163.png +../../data/yoloGtold1/train/89164.png +../../data/yoloGtold1/train/89165.png +../../data/yoloGtold1/train/89166.png +../../data/yoloGtold1/train/89167.png +../../data/yoloGtold1/train/89168.png +../../data/yoloGtold1/train/89169.png +../../data/yoloGtold1/train/89170.png +../../data/yoloGtold1/train/89171.png +../../data/yoloGtold1/train/89172.png +../../data/yoloGtold1/train/89173.png +../../data/yoloGtold1/train/89174.png +../../data/yoloGtold1/train/89175.png +../../data/yoloGtold1/train/89176.png +../../data/yoloGtold1/train/89177.png +../../data/yoloGtold1/train/89178.png +../../data/yoloGtold1/train/89179.png +../../data/yoloGtold1/train/89180.png +../../data/yoloGtold1/train/89181.png +../../data/yoloGtold1/train/89182.png +../../data/yoloGtold1/train/89183.png +../../data/yoloGtold1/train/89184.png +../../data/yoloGtold1/train/89185.png +../../data/yoloGtold1/train/89186.png +../../data/yoloGtold1/train/89187.png +../../data/yoloGtold1/train/89188.png +../../data/yoloGtold1/train/89189.png +../../data/yoloGtold1/train/89190.png +../../data/yoloGtold1/train/89191.png +../../data/yoloGtold1/train/89192.png +../../data/yoloGtold1/train/89193.png +../../data/yoloGtold1/train/89194.png +../../data/yoloGtold1/train/89195.png +../../data/yoloGtold1/train/89196.png +../../data/yoloGtold1/train/89197.png +../../data/yoloGtold1/train/89198.png +../../data/yoloGtold1/train/89199.png +../../data/yoloGtold1/train/89200.png +../../data/yoloGtold1/train/89201.png +../../data/yoloGtold1/train/89202.png +../../data/yoloGtold1/train/89203.png +../../data/yoloGtold1/train/89204.png +../../data/yoloGtold1/train/89205.png +../../data/yoloGtold1/train/89206.png +../../data/yoloGtold1/train/89207.png +../../data/yoloGtold1/train/89208.png +../../data/yoloGtold1/train/89209.png +../../data/yoloGtold1/train/89210.png +../../data/yoloGtold1/train/89211.png +../../data/yoloGtold1/train/89212.png +../../data/yoloGtold1/train/89213.png +../../data/yoloGtold1/train/89214.png +../../data/yoloGtold1/train/89215.png +../../data/yoloGtold1/train/89216.png +../../data/yoloGtold1/train/89217.png +../../data/yoloGtold1/train/89218.png +../../data/yoloGtold1/train/89219.png +../../data/yoloGtold1/train/89220.png +../../data/yoloGtold1/train/89221.png +../../data/yoloGtold1/train/89222.png +../../data/yoloGtold1/train/89223.png +../../data/yoloGtold1/train/89224.png +../../data/yoloGtold1/train/89225.png +../../data/yoloGtold1/train/89226.png +../../data/yoloGtold1/train/89227.png +../../data/yoloGtold1/train/89228.png +../../data/yoloGtold1/train/89229.png +../../data/yoloGtold1/train/89230.png +../../data/yoloGtold1/train/89231.png +../../data/yoloGtold1/train/89232.png +../../data/yoloGtold1/train/89233.png +../../data/yoloGtold1/train/89234.png +../../data/yoloGtold1/train/89235.png +../../data/yoloGtold1/train/89236.png +../../data/yoloGtold1/train/89237.png +../../data/yoloGtold1/train/89238.png +../../data/yoloGtold1/train/89239.png +../../data/yoloGtold1/train/89240.png +../../data/yoloGtold1/train/89241.png +../../data/yoloGtold1/train/89242.png +../../data/yoloGtold1/train/89243.png +../../data/yoloGtold1/train/89244.png +../../data/yoloGtold1/train/89245.png +../../data/yoloGtold1/train/89246.png +../../data/yoloGtold1/train/89247.png +../../data/yoloGtold1/train/89248.png +../../data/yoloGtold1/train/89249.png +../../data/yoloGtold1/train/89250.png +../../data/yoloGtold1/train/89251.png +../../data/yoloGtold1/train/89252.png +../../data/yoloGtold1/train/89253.png +../../data/yoloGtold1/train/89254.png +../../data/yoloGtold1/train/89255.png +../../data/yoloGtold1/train/89256.png +../../data/yoloGtold1/train/89257.png +../../data/yoloGtold1/train/89258.png +../../data/yoloGtold1/train/89259.png +../../data/yoloGtold1/train/89260.png +../../data/yoloGtold1/train/89261.png +../../data/yoloGtold1/train/89262.png +../../data/yoloGtold1/train/89263.png +../../data/yoloGtold1/train/89264.png +../../data/yoloGtold1/train/89265.png +../../data/yoloGtold1/train/89266.png +../../data/yoloGtold1/train/89267.png +../../data/yoloGtold1/train/89268.png +../../data/yoloGtold1/train/89269.png +../../data/yoloGtold1/train/89270.png +../../data/yoloGtold1/train/89271.png +../../data/yoloGtold1/train/89272.png +../../data/yoloGtold1/train/89273.png +../../data/yoloGtold1/train/89274.png +../../data/yoloGtold1/train/89275.png +../../data/yoloGtold1/train/89276.png +../../data/yoloGtold1/train/89277.png +../../data/yoloGtold1/train/89278.png +../../data/yoloGtold1/train/89279.png +../../data/yoloGtold1/train/89280.png +../../data/yoloGtold1/train/89281.png +../../data/yoloGtold1/train/89282.png +../../data/yoloGtold1/train/89283.png +../../data/yoloGtold1/train/89284.png +../../data/yoloGtold1/train/89285.png +../../data/yoloGtold1/train/89286.png +../../data/yoloGtold1/train/89287.png +../../data/yoloGtold1/train/89288.png +../../data/yoloGtold1/train/89289.png +../../data/yoloGtold1/train/89290.png +../../data/yoloGtold1/train/89291.png +../../data/yoloGtold1/train/89292.png +../../data/yoloGtold1/train/89293.png +../../data/yoloGtold1/train/89294.png +../../data/yoloGtold1/train/89295.png +../../data/yoloGtold1/train/89296.png +../../data/yoloGtold1/train/89297.png +../../data/yoloGtold1/train/89298.png +../../data/yoloGtold1/train/89299.png +../../data/yoloGtold1/train/89300.png +../../data/yoloGtold1/train/89301.png +../../data/yoloGtold1/train/89302.png +../../data/yoloGtold1/train/89303.png +../../data/yoloGtold1/train/89304.png +../../data/yoloGtold1/train/89305.png +../../data/yoloGtold1/train/89306.png +../../data/yoloGtold1/train/89307.png +../../data/yoloGtold1/train/89308.png +../../data/yoloGtold1/train/89309.png +../../data/yoloGtold1/train/89310.png +../../data/yoloGtold1/train/89311.png +../../data/yoloGtold1/train/89312.png +../../data/yoloGtold1/train/89313.png +../../data/yoloGtold1/train/89314.png +../../data/yoloGtold1/train/89315.png +../../data/yoloGtold1/train/89316.png +../../data/yoloGtold1/train/89317.png +../../data/yoloGtold1/train/89318.png +../../data/yoloGtold1/train/89319.png +../../data/yoloGtold1/train/89320.png +../../data/yoloGtold1/train/89321.png +../../data/yoloGtold1/train/89322.png +../../data/yoloGtold1/train/89323.png +../../data/yoloGtold1/train/89324.png +../../data/yoloGtold1/train/89325.png +../../data/yoloGtold1/train/89326.png +../../data/yoloGtold1/train/89327.png +../../data/yoloGtold1/train/89328.png +../../data/yoloGtold1/train/89329.png +../../data/yoloGtold1/train/89330.png +../../data/yoloGtold1/train/89331.png +../../data/yoloGtold1/train/89332.png +../../data/yoloGtold1/train/89333.png +../../data/yoloGtold1/train/89334.png +../../data/yoloGtold1/train/89335.png +../../data/yoloGtold1/train/89336.png +../../data/yoloGtold1/train/89337.png +../../data/yoloGtold1/train/89338.png +../../data/yoloGtold1/train/89339.png +../../data/yoloGtold1/train/89340.png +../../data/yoloGtold1/train/89341.png +../../data/yoloGtold1/train/89342.png +../../data/yoloGtold1/train/89343.png +../../data/yoloGtold1/train/89344.png +../../data/yoloGtold1/train/89345.png +../../data/yoloGtold1/train/89346.png +../../data/yoloGtold1/train/89347.png +../../data/yoloGtold1/train/89348.png +../../data/yoloGtold1/train/89349.png +../../data/yoloGtold1/train/89350.png +../../data/yoloGtold1/train/89351.png +../../data/yoloGtold1/train/89352.png +../../data/yoloGtold1/train/89353.png +../../data/yoloGtold1/train/89354.png +../../data/yoloGtold1/train/89355.png +../../data/yoloGtold1/train/89356.png +../../data/yoloGtold1/train/89357.png +../../data/yoloGtold1/train/89358.png +../../data/yoloGtold1/train/89359.png +../../data/yoloGtold1/train/89360.png +../../data/yoloGtold1/train/89361.png +../../data/yoloGtold1/train/89362.png +../../data/yoloGtold1/train/89363.png +../../data/yoloGtold1/train/89364.png +../../data/yoloGtold1/train/89365.png +../../data/yoloGtold1/train/89366.png +../../data/yoloGtold1/train/89367.png +../../data/yoloGtold1/train/89368.png +../../data/yoloGtold1/train/89369.png +../../data/yoloGtold1/train/89370.png +../../data/yoloGtold1/train/89371.png +../../data/yoloGtold1/train/89372.png +../../data/yoloGtold1/train/89373.png +../../data/yoloGtold1/train/89374.png +../../data/yoloGtold1/train/89375.png +../../data/yoloGtold1/train/89376.png +../../data/yoloGtold1/train/89377.png +../../data/yoloGtold1/train/89378.png +../../data/yoloGtold1/train/89379.png +../../data/yoloGtold1/train/89380.png +../../data/yoloGtold1/train/89381.png +../../data/yoloGtold1/train/89382.png +../../data/yoloGtold1/train/89383.png +../../data/yoloGtold1/train/89384.png +../../data/yoloGtold1/train/89385.png +../../data/yoloGtold1/train/89386.png +../../data/yoloGtold1/train/89387.png +../../data/yoloGtold1/train/89388.png +../../data/yoloGtold1/train/89389.png +../../data/yoloGtold1/train/89390.png +../../data/yoloGtold1/train/89391.png +../../data/yoloGtold1/train/89392.png +../../data/yoloGtold1/train/89393.png +../../data/yoloGtold1/train/89394.png +../../data/yoloGtold1/train/89395.png +../../data/yoloGtold1/train/89396.png +../../data/yoloGtold1/train/89397.png +../../data/yoloGtold1/train/89398.png +../../data/yoloGtold1/train/89399.png +../../data/yoloGtold1/train/89400.png +../../data/yoloGtold1/train/89401.png +../../data/yoloGtold1/train/89402.png +../../data/yoloGtold1/train/89403.png +../../data/yoloGtold1/train/89404.png +../../data/yoloGtold1/train/89405.png +../../data/yoloGtold1/train/89406.png +../../data/yoloGtold1/train/89407.png +../../data/yoloGtold1/train/89408.png +../../data/yoloGtold1/train/89409.png +../../data/yoloGtold1/train/89410.png +../../data/yoloGtold1/train/89411.png +../../data/yoloGtold1/train/89412.png +../../data/yoloGtold1/train/89413.png +../../data/yoloGtold1/train/89414.png +../../data/yoloGtold1/train/89415.png +../../data/yoloGtold1/train/89416.png +../../data/yoloGtold1/train/89417.png +../../data/yoloGtold1/train/89418.png +../../data/yoloGtold1/train/89419.png +../../data/yoloGtold1/train/89420.png +../../data/yoloGtold1/train/89421.png +../../data/yoloGtold1/train/89422.png +../../data/yoloGtold1/train/89423.png +../../data/yoloGtold1/train/89424.png +../../data/yoloGtold1/train/89425.png +../../data/yoloGtold1/train/89426.png +../../data/yoloGtold1/train/89427.png +../../data/yoloGtold1/train/89428.png +../../data/yoloGtold1/train/89429.png +../../data/yoloGtold1/train/89430.png +../../data/yoloGtold1/train/89431.png +../../data/yoloGtold1/train/89432.png +../../data/yoloGtold1/train/89433.png +../../data/yoloGtold1/train/89434.png +../../data/yoloGtold1/train/89435.png +../../data/yoloGtold1/train/89436.png +../../data/yoloGtold1/train/89437.png +../../data/yoloGtold1/train/89438.png +../../data/yoloGtold1/train/89439.png +../../data/yoloGtold1/train/89440.png +../../data/yoloGtold1/train/89441.png +../../data/yoloGtold1/train/89442.png +../../data/yoloGtold1/train/89443.png +../../data/yoloGtold1/train/89444.png +../../data/yoloGtold1/train/89445.png +../../data/yoloGtold1/train/89446.png +../../data/yoloGtold1/train/89447.png +../../data/yoloGtold1/train/89448.png +../../data/yoloGtold1/train/89449.png +../../data/yoloGtold1/train/89450.png +../../data/yoloGtold1/train/89451.png +../../data/yoloGtold1/train/89452.png +../../data/yoloGtold1/train/89453.png +../../data/yoloGtold1/train/89454.png +../../data/yoloGtold1/train/89455.png +../../data/yoloGtold1/train/89456.png +../../data/yoloGtold1/train/89457.png +../../data/yoloGtold1/train/89458.png +../../data/yoloGtold1/train/89459.png +../../data/yoloGtold1/train/89460.png +../../data/yoloGtold1/train/89461.png +../../data/yoloGtold1/train/89462.png +../../data/yoloGtold1/train/89463.png +../../data/yoloGtold1/train/89464.png +../../data/yoloGtold1/train/89465.png +../../data/yoloGtold1/train/89466.png +../../data/yoloGtold1/train/89467.png +../../data/yoloGtold1/train/89468.png +../../data/yoloGtold1/train/89469.png +../../data/yoloGtold1/train/89470.png +../../data/yoloGtold1/train/89471.png +../../data/yoloGtold1/train/89472.png +../../data/yoloGtold1/train/89473.png +../../data/yoloGtold1/train/89474.png +../../data/yoloGtold1/train/89475.png +../../data/yoloGtold1/train/89476.png +../../data/yoloGtold1/train/89477.png +../../data/yoloGtold1/train/89478.png +../../data/yoloGtold1/train/89479.png +../../data/yoloGtold1/train/89480.png +../../data/yoloGtold1/train/89481.png +../../data/yoloGtold1/train/89482.png +../../data/yoloGtold1/train/89483.png +../../data/yoloGtold1/train/89484.png +../../data/yoloGtold1/train/89485.png +../../data/yoloGtold1/train/89486.png +../../data/yoloGtold1/train/89487.png +../../data/yoloGtold1/train/89488.png +../../data/yoloGtold1/train/89489.png +../../data/yoloGtold1/train/89490.png +../../data/yoloGtold1/train/89491.png +../../data/yoloGtold1/train/89492.png +../../data/yoloGtold1/train/89493.png +../../data/yoloGtold1/train/89494.png +../../data/yoloGtold1/train/89495.png +../../data/yoloGtold1/train/89496.png +../../data/yoloGtold1/train/89497.png +../../data/yoloGtold1/train/89498.png +../../data/yoloGtold1/train/89499.png +../../data/yoloGtold1/train/89500.png +../../data/yoloGtold1/train/89501.png +../../data/yoloGtold1/train/89502.png +../../data/yoloGtold1/train/89503.png +../../data/yoloGtold1/train/89504.png +../../data/yoloGtold1/train/89505.png +../../data/yoloGtold1/train/89506.png +../../data/yoloGtold1/train/89507.png +../../data/yoloGtold1/train/89508.png +../../data/yoloGtold1/train/89509.png +../../data/yoloGtold1/train/89510.png +../../data/yoloGtold1/train/89511.png +../../data/yoloGtold1/train/89512.png +../../data/yoloGtold1/train/89513.png +../../data/yoloGtold1/train/89514.png +../../data/yoloGtold1/train/89515.png +../../data/yoloGtold1/train/89516.png +../../data/yoloGtold1/train/89517.png +../../data/yoloGtold1/train/89518.png +../../data/yoloGtold1/train/89519.png +../../data/yoloGtold1/train/89520.png +../../data/yoloGtold1/train/89521.png +../../data/yoloGtold1/train/89522.png +../../data/yoloGtold1/train/89523.png +../../data/yoloGtold1/train/89524.png +../../data/yoloGtold1/train/89525.png +../../data/yoloGtold1/train/89526.png +../../data/yoloGtold1/train/89527.png +../../data/yoloGtold1/train/89528.png +../../data/yoloGtold1/train/89529.png +../../data/yoloGtold1/train/89530.png +../../data/yoloGtold1/train/89531.png +../../data/yoloGtold1/train/89532.png +../../data/yoloGtold1/train/89533.png +../../data/yoloGtold1/train/89534.png +../../data/yoloGtold1/train/89535.png +../../data/yoloGtold1/train/89536.png +../../data/yoloGtold1/train/89537.png +../../data/yoloGtold1/train/89538.png +../../data/yoloGtold1/train/89539.png +../../data/yoloGtold1/train/89540.png +../../data/yoloGtold1/train/89541.png +../../data/yoloGtold1/train/89542.png +../../data/yoloGtold1/train/89543.png +../../data/yoloGtold1/train/89544.png +../../data/yoloGtold1/train/89545.png +../../data/yoloGtold1/train/89546.png +../../data/yoloGtold1/train/89547.png +../../data/yoloGtold1/train/89548.png +../../data/yoloGtold1/train/89549.png +../../data/yoloGtold1/train/89550.png +../../data/yoloGtold1/train/89551.png +../../data/yoloGtold1/train/89552.png +../../data/yoloGtold1/train/89553.png +../../data/yoloGtold1/train/89554.png +../../data/yoloGtold1/train/89555.png +../../data/yoloGtold1/train/89556.png +../../data/yoloGtold1/train/89557.png +../../data/yoloGtold1/train/89558.png +../../data/yoloGtold1/train/89559.png +../../data/yoloGtold1/train/89560.png +../../data/yoloGtold1/train/89561.png +../../data/yoloGtold1/train/89562.png +../../data/yoloGtold1/train/89563.png +../../data/yoloGtold1/train/89564.png +../../data/yoloGtold1/train/89565.png +../../data/yoloGtold1/train/89566.png +../../data/yoloGtold1/train/89567.png +../../data/yoloGtold1/train/89568.png +../../data/yoloGtold1/train/89569.png +../../data/yoloGtold1/train/89570.png +../../data/yoloGtold1/train/89571.png +../../data/yoloGtold1/train/89572.png +../../data/yoloGtold1/train/89573.png +../../data/yoloGtold1/train/89574.png +../../data/yoloGtold1/train/89575.png +../../data/yoloGtold1/train/89576.png +../../data/yoloGtold1/train/89577.png +../../data/yoloGtold1/train/89578.png +../../data/yoloGtold1/train/89579.png +../../data/yoloGtold1/train/89580.png +../../data/yoloGtold1/train/89581.png +../../data/yoloGtold1/train/89582.png +../../data/yoloGtold1/train/89583.png +../../data/yoloGtold1/train/89584.png +../../data/yoloGtold1/train/89585.png +../../data/yoloGtold1/train/89586.png +../../data/yoloGtold1/train/89587.png +../../data/yoloGtold1/train/89588.png +../../data/yoloGtold1/train/89589.png +../../data/yoloGtold1/train/89590.png +../../data/yoloGtold1/train/89591.png +../../data/yoloGtold1/train/89592.png +../../data/yoloGtold1/train/89593.png +../../data/yoloGtold1/train/89594.png +../../data/yoloGtold1/train/89595.png +../../data/yoloGtold1/train/89596.png +../../data/yoloGtold1/train/89597.png +../../data/yoloGtold1/train/89598.png +../../data/yoloGtold1/train/89599.png +../../data/yoloGtold1/train/89600.png +../../data/yoloGtold1/train/89601.png +../../data/yoloGtold1/train/89602.png +../../data/yoloGtold1/train/89603.png +../../data/yoloGtold1/train/89604.png +../../data/yoloGtold1/train/89605.png +../../data/yoloGtold1/train/89606.png +../../data/yoloGtold1/train/89607.png +../../data/yoloGtold1/train/89608.png +../../data/yoloGtold1/train/89609.png +../../data/yoloGtold1/train/89610.png +../../data/yoloGtold1/train/89611.png +../../data/yoloGtold1/train/89612.png +../../data/yoloGtold1/train/89613.png +../../data/yoloGtold1/train/89614.png +../../data/yoloGtold1/train/89615.png +../../data/yoloGtold1/train/89616.png +../../data/yoloGtold1/train/89617.png +../../data/yoloGtold1/train/89618.png +../../data/yoloGtold1/train/89619.png +../../data/yoloGtold1/train/89620.png +../../data/yoloGtold1/train/89621.png +../../data/yoloGtold1/train/89622.png +../../data/yoloGtold1/train/89623.png +../../data/yoloGtold1/train/89624.png +../../data/yoloGtold1/train/89625.png +../../data/yoloGtold1/train/89626.png +../../data/yoloGtold1/train/89627.png +../../data/yoloGtold1/train/89628.png +../../data/yoloGtold1/train/89629.png +../../data/yoloGtold1/train/89630.png +../../data/yoloGtold1/train/89631.png +../../data/yoloGtold1/train/89632.png +../../data/yoloGtold1/train/89633.png +../../data/yoloGtold1/train/89634.png +../../data/yoloGtold1/train/89635.png +../../data/yoloGtold1/train/89636.png +../../data/yoloGtold1/train/89637.png +../../data/yoloGtold1/train/89638.png +../../data/yoloGtold1/train/89639.png +../../data/yoloGtold1/train/89640.png +../../data/yoloGtold1/train/89641.png +../../data/yoloGtold1/train/89642.png +../../data/yoloGtold1/train/89643.png +../../data/yoloGtold1/train/89644.png +../../data/yoloGtold1/train/89645.png +../../data/yoloGtold1/train/89646.png +../../data/yoloGtold1/train/89647.png +../../data/yoloGtold1/train/89648.png +../../data/yoloGtold1/train/89649.png +../../data/yoloGtold1/train/89650.png +../../data/yoloGtold1/train/89651.png +../../data/yoloGtold1/train/89652.png +../../data/yoloGtold1/train/89653.png +../../data/yoloGtold1/train/89654.png +../../data/yoloGtold1/train/89655.png +../../data/yoloGtold1/train/89656.png +../../data/yoloGtold1/train/89657.png +../../data/yoloGtold1/train/89658.png +../../data/yoloGtold1/train/89659.png +../../data/yoloGtold1/train/89660.png +../../data/yoloGtold1/train/89661.png +../../data/yoloGtold1/train/89662.png +../../data/yoloGtold1/train/89663.png +../../data/yoloGtold1/train/89664.png +../../data/yoloGtold1/train/89665.png +../../data/yoloGtold1/train/89666.png +../../data/yoloGtold1/train/89667.png +../../data/yoloGtold1/train/89668.png +../../data/yoloGtold1/train/89669.png +../../data/yoloGtold1/train/89670.png +../../data/yoloGtold1/train/89671.png +../../data/yoloGtold1/train/89672.png +../../data/yoloGtold1/train/89673.png +../../data/yoloGtold1/train/89674.png +../../data/yoloGtold1/train/89675.png +../../data/yoloGtold1/train/89676.png +../../data/yoloGtold1/train/89677.png +../../data/yoloGtold1/train/89678.png +../../data/yoloGtold1/train/89679.png +../../data/yoloGtold1/train/89680.png +../../data/yoloGtold1/train/89681.png +../../data/yoloGtold1/train/89682.png +../../data/yoloGtold1/train/89683.png +../../data/yoloGtold1/train/89684.png +../../data/yoloGtold1/train/89685.png +../../data/yoloGtold1/train/89686.png +../../data/yoloGtold1/train/89687.png +../../data/yoloGtold1/train/89688.png +../../data/yoloGtold1/train/89689.png +../../data/yoloGtold1/train/89690.png +../../data/yoloGtold1/train/89691.png +../../data/yoloGtold1/train/89692.png +../../data/yoloGtold1/train/89693.png +../../data/yoloGtold1/train/89694.png +../../data/yoloGtold1/train/89695.png +../../data/yoloGtold1/train/89696.png +../../data/yoloGtold1/train/89697.png +../../data/yoloGtold1/train/89698.png +../../data/yoloGtold1/train/89699.png +../../data/yoloGtold1/train/89700.png +../../data/yoloGtold1/train/89701.png +../../data/yoloGtold1/train/89702.png +../../data/yoloGtold1/train/89703.png +../../data/yoloGtold1/train/89704.png +../../data/yoloGtold1/train/89705.png +../../data/yoloGtold1/train/89706.png +../../data/yoloGtold1/train/89707.png +../../data/yoloGtold1/train/89708.png +../../data/yoloGtold1/train/89709.png +../../data/yoloGtold1/train/89710.png +../../data/yoloGtold1/train/89711.png +../../data/yoloGtold1/train/89712.png +../../data/yoloGtold1/train/89713.png +../../data/yoloGtold1/train/89714.png +../../data/yoloGtold1/train/89715.png +../../data/yoloGtold1/train/89716.png +../../data/yoloGtold1/train/89717.png +../../data/yoloGtold1/train/89718.png +../../data/yoloGtold1/train/89719.png +../../data/yoloGtold1/train/89720.png +../../data/yoloGtold1/train/89721.png +../../data/yoloGtold1/train/89722.png +../../data/yoloGtold1/train/89723.png +../../data/yoloGtold1/train/89724.png +../../data/yoloGtold1/train/89725.png +../../data/yoloGtold1/train/89726.png +../../data/yoloGtold1/train/89727.png +../../data/yoloGtold1/train/89728.png +../../data/yoloGtold1/train/89729.png +../../data/yoloGtold1/train/89730.png +../../data/yoloGtold1/train/89731.png +../../data/yoloGtold1/train/89732.png +../../data/yoloGtold1/train/89733.png +../../data/yoloGtold1/train/89734.png +../../data/yoloGtold1/train/89735.png +../../data/yoloGtold1/train/89736.png +../../data/yoloGtold1/train/89737.png +../../data/yoloGtold1/train/89738.png +../../data/yoloGtold1/train/89739.png +../../data/yoloGtold1/train/89740.png +../../data/yoloGtold1/train/89741.png +../../data/yoloGtold1/train/89742.png +../../data/yoloGtold1/train/89743.png +../../data/yoloGtold1/train/89744.png +../../data/yoloGtold1/train/89745.png +../../data/yoloGtold1/train/89746.png +../../data/yoloGtold1/train/89747.png +../../data/yoloGtold1/train/89748.png +../../data/yoloGtold1/train/89749.png +../../data/yoloGtold1/train/89750.png +../../data/yoloGtold1/train/89751.png +../../data/yoloGtold1/train/89752.png +../../data/yoloGtold1/train/89753.png +../../data/yoloGtold1/train/89754.png +../../data/yoloGtold1/train/89755.png +../../data/yoloGtold1/train/89756.png +../../data/yoloGtold1/train/89757.png +../../data/yoloGtold1/train/89758.png +../../data/yoloGtold1/train/89759.png +../../data/yoloGtold1/train/89760.png +../../data/yoloGtold1/train/89761.png +../../data/yoloGtold1/train/89762.png +../../data/yoloGtold1/train/89763.png +../../data/yoloGtold1/train/89764.png +../../data/yoloGtold1/train/89765.png +../../data/yoloGtold1/train/89766.png +../../data/yoloGtold1/train/89767.png +../../data/yoloGtold1/train/89768.png +../../data/yoloGtold1/train/89769.png +../../data/yoloGtold1/train/89770.png +../../data/yoloGtold1/train/89771.png +../../data/yoloGtold1/train/89772.png +../../data/yoloGtold1/train/89773.png +../../data/yoloGtold1/train/89774.png +../../data/yoloGtold1/train/89775.png +../../data/yoloGtold1/train/89776.png +../../data/yoloGtold1/train/89777.png +../../data/yoloGtold1/train/89778.png +../../data/yoloGtold1/train/89779.png +../../data/yoloGtold1/train/89780.png +../../data/yoloGtold1/train/89781.png +../../data/yoloGtold1/train/89782.png +../../data/yoloGtold1/train/89783.png +../../data/yoloGtold1/train/89784.png +../../data/yoloGtold1/train/89785.png +../../data/yoloGtold1/train/89786.png +../../data/yoloGtold1/train/89787.png +../../data/yoloGtold1/train/89788.png +../../data/yoloGtold1/train/89789.png +../../data/yoloGtold1/train/89790.png +../../data/yoloGtold1/train/89791.png +../../data/yoloGtold1/train/89792.png +../../data/yoloGtold1/train/89793.png +../../data/yoloGtold1/train/89794.png +../../data/yoloGtold1/train/89795.png +../../data/yoloGtold1/train/89796.png +../../data/yoloGtold1/train/89797.png +../../data/yoloGtold1/train/89798.png +../../data/yoloGtold1/train/89799.png +../../data/yoloGtold1/train/89800.png +../../data/yoloGtold1/train/89801.png +../../data/yoloGtold1/train/89802.png +../../data/yoloGtold1/train/89803.png +../../data/yoloGtold1/train/89804.png +../../data/yoloGtold1/train/89805.png +../../data/yoloGtold1/train/89806.png +../../data/yoloGtold1/train/89807.png +../../data/yoloGtold1/train/89808.png +../../data/yoloGtold1/train/89809.png +../../data/yoloGtold1/train/89810.png +../../data/yoloGtold1/train/89811.png +../../data/yoloGtold1/train/89812.png +../../data/yoloGtold1/train/89813.png +../../data/yoloGtold1/train/89814.png +../../data/yoloGtold1/train/89815.png +../../data/yoloGtold1/train/89816.png +../../data/yoloGtold1/train/89817.png +../../data/yoloGtold1/train/89818.png +../../data/yoloGtold1/train/89819.png +../../data/yoloGtold1/train/89820.png +../../data/yoloGtold1/train/89821.png +../../data/yoloGtold1/train/89822.png +../../data/yoloGtold1/train/89823.png +../../data/yoloGtold1/train/89824.png +../../data/yoloGtold1/train/89825.png +../../data/yoloGtold1/train/89826.png +../../data/yoloGtold1/train/89827.png +../../data/yoloGtold1/train/89828.png +../../data/yoloGtold1/train/89829.png +../../data/yoloGtold1/train/89830.png +../../data/yoloGtold1/train/89831.png +../../data/yoloGtold1/train/89832.png +../../data/yoloGtold1/train/89833.png +../../data/yoloGtold1/train/89834.png +../../data/yoloGtold1/train/89835.png +../../data/yoloGtold1/train/89836.png +../../data/yoloGtold1/train/89837.png +../../data/yoloGtold1/train/89838.png +../../data/yoloGtold1/train/89839.png +../../data/yoloGtold1/train/89840.png +../../data/yoloGtold1/train/89841.png +../../data/yoloGtold1/train/89842.png +../../data/yoloGtold1/train/89843.png +../../data/yoloGtold1/train/89844.png +../../data/yoloGtold1/train/89845.png +../../data/yoloGtold1/train/89846.png +../../data/yoloGtold1/train/89847.png +../../data/yoloGtold1/train/89848.png +../../data/yoloGtold1/train/89849.png +../../data/yoloGtold1/train/89850.png +../../data/yoloGtold1/train/89851.png +../../data/yoloGtold1/train/89852.png +../../data/yoloGtold1/train/89853.png +../../data/yoloGtold1/train/89854.png +../../data/yoloGtold1/train/89855.png +../../data/yoloGtold1/train/89856.png +../../data/yoloGtold1/train/89857.png +../../data/yoloGtold1/train/89858.png +../../data/yoloGtold1/train/89859.png +../../data/yoloGtold1/train/89860.png +../../data/yoloGtold1/train/89861.png +../../data/yoloGtold1/train/89862.png +../../data/yoloGtold1/train/89863.png +../../data/yoloGtold1/train/89864.png +../../data/yoloGtold1/train/89865.png +../../data/yoloGtold1/train/89866.png +../../data/yoloGtold1/train/89867.png +../../data/yoloGtold1/train/89868.png +../../data/yoloGtold1/train/89869.png +../../data/yoloGtold1/train/89870.png +../../data/yoloGtold1/train/89871.png +../../data/yoloGtold1/train/89872.png +../../data/yoloGtold1/train/89873.png +../../data/yoloGtold1/train/89874.png +../../data/yoloGtold1/train/89875.png +../../data/yoloGtold1/train/89876.png +../../data/yoloGtold1/train/89877.png +../../data/yoloGtold1/train/89878.png +../../data/yoloGtold1/train/89879.png +../../data/yoloGtold1/train/89880.png +../../data/yoloGtold1/train/89881.png +../../data/yoloGtold1/train/89882.png +../../data/yoloGtold1/train/89883.png +../../data/yoloGtold1/train/89884.png +../../data/yoloGtold1/train/89885.png +../../data/yoloGtold1/train/89886.png +../../data/yoloGtold1/train/89887.png +../../data/yoloGtold1/train/89888.png +../../data/yoloGtold1/train/89889.png +../../data/yoloGtold1/train/89890.png +../../data/yoloGtold1/train/89891.png +../../data/yoloGtold1/train/89892.png +../../data/yoloGtold1/train/89893.png +../../data/yoloGtold1/train/89894.png +../../data/yoloGtold1/train/89895.png +../../data/yoloGtold1/train/89896.png +../../data/yoloGtold1/train/89897.png +../../data/yoloGtold1/train/89898.png +../../data/yoloGtold1/train/89899.png +../../data/yoloGtold1/train/89900.png +../../data/yoloGtold1/train/89901.png +../../data/yoloGtold1/train/89902.png +../../data/yoloGtold1/train/89903.png +../../data/yoloGtold1/train/89904.png +../../data/yoloGtold1/train/89905.png +../../data/yoloGtold1/train/89906.png +../../data/yoloGtold1/train/89907.png +../../data/yoloGtold1/train/89908.png +../../data/yoloGtold1/train/89909.png +../../data/yoloGtold1/train/89910.png +../../data/yoloGtold1/train/89911.png +../../data/yoloGtold1/train/89912.png +../../data/yoloGtold1/train/89913.png +../../data/yoloGtold1/train/89914.png +../../data/yoloGtold1/train/89915.png +../../data/yoloGtold1/train/89916.png +../../data/yoloGtold1/train/89917.png +../../data/yoloGtold1/train/89918.png +../../data/yoloGtold1/train/89919.png +../../data/yoloGtold1/train/89920.png +../../data/yoloGtold1/train/89921.png +../../data/yoloGtold1/train/89922.png +../../data/yoloGtold1/train/89923.png +../../data/yoloGtold1/train/89924.png +../../data/yoloGtold1/train/89925.png +../../data/yoloGtold1/train/89926.png +../../data/yoloGtold1/train/89927.png +../../data/yoloGtold1/train/89928.png +../../data/yoloGtold1/train/89929.png +../../data/yoloGtold1/train/89930.png +../../data/yoloGtold1/train/89931.png +../../data/yoloGtold1/train/89932.png +../../data/yoloGtold1/train/89933.png +../../data/yoloGtold1/train/89934.png +../../data/yoloGtold1/train/89935.png +../../data/yoloGtold1/train/89936.png +../../data/yoloGtold1/train/89937.png +../../data/yoloGtold1/train/89938.png +../../data/yoloGtold1/train/89939.png +../../data/yoloGtold1/train/89940.png +../../data/yoloGtold1/train/89941.png +../../data/yoloGtold1/train/89942.png +../../data/yoloGtold1/train/89943.png +../../data/yoloGtold1/train/89944.png +../../data/yoloGtold1/train/89945.png +../../data/yoloGtold1/train/89946.png +../../data/yoloGtold1/train/89947.png +../../data/yoloGtold1/train/89948.png +../../data/yoloGtold1/train/89949.png +../../data/yoloGtold1/train/89950.png +../../data/yoloGtold1/train/89951.png +../../data/yoloGtold1/train/89952.png +../../data/yoloGtold1/train/89953.png +../../data/yoloGtold1/train/89954.png +../../data/yoloGtold1/train/89955.png +../../data/yoloGtold1/train/89956.png +../../data/yoloGtold1/train/89957.png +../../data/yoloGtold1/train/89958.png +../../data/yoloGtold1/train/89959.png +../../data/yoloGtold1/train/89960.png +../../data/yoloGtold1/train/89961.png +../../data/yoloGtold1/train/89962.png +../../data/yoloGtold1/train/89963.png +../../data/yoloGtold1/train/89964.png +../../data/yoloGtold1/train/89965.png +../../data/yoloGtold1/train/89966.png +../../data/yoloGtold1/train/89967.png +../../data/yoloGtold1/train/89968.png +../../data/yoloGtold1/train/89969.png +../../data/yoloGtold1/train/89970.png +../../data/yoloGtold1/train/89971.png +../../data/yoloGtold1/train/89972.png +../../data/yoloGtold1/train/89973.png +../../data/yoloGtold1/train/89974.png +../../data/yoloGtold1/train/89975.png +../../data/yoloGtold1/train/89976.png +../../data/yoloGtold1/train/89977.png +../../data/yoloGtold1/train/89978.png +../../data/yoloGtold1/train/89979.png +../../data/yoloGtold1/train/89980.png +../../data/yoloGtold1/train/89981.png +../../data/yoloGtold1/train/89982.png +../../data/yoloGtold1/train/89983.png +../../data/yoloGtold1/train/89984.png +../../data/yoloGtold1/train/89985.png +../../data/yoloGtold1/train/89986.png +../../data/yoloGtold1/train/89987.png +../../data/yoloGtold1/train/89988.png +../../data/yoloGtold1/train/89989.png +../../data/yoloGtold1/train/89990.png +../../data/yoloGtold1/train/89991.png +../../data/yoloGtold1/train/89992.png +../../data/yoloGtold1/train/89993.png +../../data/yoloGtold1/train/89994.png +../../data/yoloGtold1/train/89995.png +../../data/yoloGtold1/train/89996.png +../../data/yoloGtold1/train/89997.png +../../data/yoloGtold1/train/89998.png +../../data/yoloGtold1/train/89999.png +../../data/yoloGtold1/train/90000.png +../../data/yoloGtold1/train/90001.png +../../data/yoloGtold1/train/90002.png +../../data/yoloGtold1/train/90003.png +../../data/yoloGtold1/train/90004.png +../../data/yoloGtold1/train/90005.png +../../data/yoloGtold1/train/90006.png +../../data/yoloGtold1/train/90007.png +../../data/yoloGtold1/train/90008.png +../../data/yoloGtold1/train/90009.png +../../data/yoloGtold1/train/90010.png +../../data/yoloGtold1/train/90011.png +../../data/yoloGtold1/train/90012.png +../../data/yoloGtold1/train/90013.png +../../data/yoloGtold1/train/90014.png +../../data/yoloGtold1/train/90015.png +../../data/yoloGtold1/train/90016.png +../../data/yoloGtold1/train/90017.png +../../data/yoloGtold1/train/90018.png +../../data/yoloGtold1/train/90019.png +../../data/yoloGtold1/train/90020.png +../../data/yoloGtold1/train/90021.png +../../data/yoloGtold1/train/90022.png +../../data/yoloGtold1/train/90023.png +../../data/yoloGtold1/train/90024.png +../../data/yoloGtold1/train/90025.png +../../data/yoloGtold1/train/90026.png +../../data/yoloGtold1/train/90027.png +../../data/yoloGtold1/train/90028.png +../../data/yoloGtold1/train/90029.png +../../data/yoloGtold1/train/90030.png +../../data/yoloGtold1/train/90031.png +../../data/yoloGtold1/train/90032.png +../../data/yoloGtold1/train/90033.png +../../data/yoloGtold1/train/90034.png +../../data/yoloGtold1/train/90035.png +../../data/yoloGtold1/train/90036.png +../../data/yoloGtold1/train/90037.png +../../data/yoloGtold1/train/90038.png +../../data/yoloGtold1/train/90039.png +../../data/yoloGtold1/train/90040.png +../../data/yoloGtold1/train/90041.png +../../data/yoloGtold1/train/90042.png +../../data/yoloGtold1/train/90043.png +../../data/yoloGtold1/train/90044.png +../../data/yoloGtold1/train/90045.png +../../data/yoloGtold1/train/90046.png +../../data/yoloGtold1/train/90047.png +../../data/yoloGtold1/train/90048.png +../../data/yoloGtold1/train/90049.png +../../data/yoloGtold1/train/90050.png +../../data/yoloGtold1/train/90051.png +../../data/yoloGtold1/train/90052.png +../../data/yoloGtold1/train/90053.png +../../data/yoloGtold1/train/90054.png +../../data/yoloGtold1/train/90055.png +../../data/yoloGtold1/train/90056.png +../../data/yoloGtold1/train/90057.png +../../data/yoloGtold1/train/90058.png +../../data/yoloGtold1/train/90059.png +../../data/yoloGtold1/train/90060.png +../../data/yoloGtold1/train/90061.png +../../data/yoloGtold1/train/90062.png +../../data/yoloGtold1/train/90063.png +../../data/yoloGtold1/train/90064.png +../../data/yoloGtold1/train/90065.png +../../data/yoloGtold1/train/90066.png +../../data/yoloGtold1/train/90067.png +../../data/yoloGtold1/train/90068.png +../../data/yoloGtold1/train/90069.png +../../data/yoloGtold1/train/90070.png +../../data/yoloGtold1/train/90071.png +../../data/yoloGtold1/train/90072.png +../../data/yoloGtold1/train/90073.png +../../data/yoloGtold1/train/90074.png +../../data/yoloGtold1/train/90075.png +../../data/yoloGtold1/train/90076.png +../../data/yoloGtold1/train/90077.png +../../data/yoloGtold1/train/90078.png +../../data/yoloGtold1/train/90079.png +../../data/yoloGtold1/train/90080.png +../../data/yoloGtold1/train/90081.png +../../data/yoloGtold1/train/90082.png +../../data/yoloGtold1/train/90083.png +../../data/yoloGtold1/train/90084.png +../../data/yoloGtold1/train/90085.png +../../data/yoloGtold1/train/90086.png +../../data/yoloGtold1/train/90087.png +../../data/yoloGtold1/train/90088.png +../../data/yoloGtold1/train/90089.png +../../data/yoloGtold1/train/90090.png +../../data/yoloGtold1/train/90091.png +../../data/yoloGtold1/train/90092.png +../../data/yoloGtold1/train/90093.png +../../data/yoloGtold1/train/90094.png +../../data/yoloGtold1/train/90095.png +../../data/yoloGtold1/train/90096.png +../../data/yoloGtold1/train/90097.png +../../data/yoloGtold1/train/90098.png +../../data/yoloGtold1/train/90099.png +../../data/yoloGtold1/train/90100.png +../../data/yoloGtold1/train/90101.png +../../data/yoloGtold1/train/90102.png +../../data/yoloGtold1/train/90103.png +../../data/yoloGtold1/train/90104.png +../../data/yoloGtold1/train/90105.png +../../data/yoloGtold1/train/90106.png +../../data/yoloGtold1/train/90107.png +../../data/yoloGtold1/train/90108.png +../../data/yoloGtold1/train/90109.png +../../data/yoloGtold1/train/90110.png +../../data/yoloGtold1/train/90111.png +../../data/yoloGtold1/train/90112.png +../../data/yoloGtold1/train/90113.png +../../data/yoloGtold1/train/90114.png +../../data/yoloGtold1/train/90115.png +../../data/yoloGtold1/train/90116.png +../../data/yoloGtold1/train/90117.png +../../data/yoloGtold1/train/90118.png +../../data/yoloGtold1/train/90119.png +../../data/yoloGtold1/train/90120.png +../../data/yoloGtold1/train/90121.png +../../data/yoloGtold1/train/90122.png +../../data/yoloGtold1/train/90123.png +../../data/yoloGtold1/train/90124.png +../../data/yoloGtold1/train/90125.png +../../data/yoloGtold1/train/90126.png +../../data/yoloGtold1/train/90127.png +../../data/yoloGtold1/train/90128.png +../../data/yoloGtold1/train/90129.png +../../data/yoloGtold1/train/90130.png +../../data/yoloGtold1/train/90131.png +../../data/yoloGtold1/train/90132.png +../../data/yoloGtold1/train/90133.png +../../data/yoloGtold1/train/90134.png +../../data/yoloGtold1/train/90135.png +../../data/yoloGtold1/train/90136.png +../../data/yoloGtold1/train/90137.png +../../data/yoloGtold1/train/90138.png +../../data/yoloGtold1/train/90139.png +../../data/yoloGtold1/train/90140.png +../../data/yoloGtold1/train/90141.png +../../data/yoloGtold1/train/90142.png +../../data/yoloGtold1/train/90143.png +../../data/yoloGtold1/train/90144.png +../../data/yoloGtold1/train/90145.png +../../data/yoloGtold1/train/90146.png +../../data/yoloGtold1/train/90147.png +../../data/yoloGtold1/train/90148.png +../../data/yoloGtold1/train/90149.png +../../data/yoloGtold1/train/90150.png +../../data/yoloGtold1/train/90151.png +../../data/yoloGtold1/train/90152.png +../../data/yoloGtold1/train/90153.png +../../data/yoloGtold1/train/90154.png +../../data/yoloGtold1/train/90155.png +../../data/yoloGtold1/train/90156.png +../../data/yoloGtold1/train/90157.png +../../data/yoloGtold1/train/90158.png +../../data/yoloGtold1/train/90159.png +../../data/yoloGtold1/train/90160.png +../../data/yoloGtold1/train/90161.png +../../data/yoloGtold1/train/90162.png +../../data/yoloGtold1/train/90163.png +../../data/yoloGtold1/train/90164.png +../../data/yoloGtold1/train/90165.png +../../data/yoloGtold1/train/90166.png +../../data/yoloGtold1/train/90167.png +../../data/yoloGtold1/train/90168.png +../../data/yoloGtold1/train/90169.png +../../data/yoloGtold1/train/90170.png +../../data/yoloGtold1/train/90171.png +../../data/yoloGtold1/train/90172.png +../../data/yoloGtold1/train/90173.png +../../data/yoloGtold1/train/90174.png +../../data/yoloGtold1/train/90175.png +../../data/yoloGtold1/train/90176.png +../../data/yoloGtold1/train/90177.png +../../data/yoloGtold1/train/90178.png +../../data/yoloGtold1/train/90179.png +../../data/yoloGtold1/train/90180.png +../../data/yoloGtold1/train/90181.png +../../data/yoloGtold1/train/90182.png +../../data/yoloGtold1/train/90183.png +../../data/yoloGtold1/train/90184.png +../../data/yoloGtold1/train/90185.png +../../data/yoloGtold1/train/90186.png +../../data/yoloGtold1/train/90187.png +../../data/yoloGtold1/train/90188.png +../../data/yoloGtold1/train/90189.png +../../data/yoloGtold1/train/90190.png +../../data/yoloGtold1/train/90191.png +../../data/yoloGtold1/train/90192.png +../../data/yoloGtold1/train/90193.png +../../data/yoloGtold1/train/90194.png +../../data/yoloGtold1/train/90195.png +../../data/yoloGtold1/train/90196.png +../../data/yoloGtold1/train/90197.png +../../data/yoloGtold1/train/90198.png +../../data/yoloGtold1/train/90199.png +../../data/yoloGtold1/train/90200.png +../../data/yoloGtold1/train/90201.png +../../data/yoloGtold1/train/90202.png +../../data/yoloGtold1/train/90203.png +../../data/yoloGtold1/train/90204.png +../../data/yoloGtold1/train/90205.png +../../data/yoloGtold1/train/90206.png +../../data/yoloGtold1/train/90207.png +../../data/yoloGtold1/train/90208.png +../../data/yoloGtold1/train/90209.png +../../data/yoloGtold1/train/90210.png +../../data/yoloGtold1/train/90211.png +../../data/yoloGtold1/train/90212.png +../../data/yoloGtold1/train/90213.png +../../data/yoloGtold1/train/90214.png +../../data/yoloGtold1/train/90215.png +../../data/yoloGtold1/train/90216.png +../../data/yoloGtold1/train/90217.png +../../data/yoloGtold1/train/90218.png +../../data/yoloGtold1/train/90219.png +../../data/yoloGtold1/train/90220.png +../../data/yoloGtold1/train/90221.png +../../data/yoloGtold1/train/90222.png +../../data/yoloGtold1/train/90223.png +../../data/yoloGtold1/train/90224.png +../../data/yoloGtold1/train/90225.png +../../data/yoloGtold1/train/90226.png +../../data/yoloGtold1/train/90227.png +../../data/yoloGtold1/train/90228.png +../../data/yoloGtold1/train/90229.png +../../data/yoloGtold1/train/90230.png +../../data/yoloGtold1/train/90231.png +../../data/yoloGtold1/train/90232.png +../../data/yoloGtold1/train/90233.png +../../data/yoloGtold1/train/90234.png +../../data/yoloGtold1/train/90235.png +../../data/yoloGtold1/train/90236.png +../../data/yoloGtold1/train/90237.png +../../data/yoloGtold1/train/90238.png +../../data/yoloGtold1/train/90239.png +../../data/yoloGtold1/train/90240.png +../../data/yoloGtold1/train/90241.png +../../data/yoloGtold1/train/90242.png +../../data/yoloGtold1/train/90243.png +../../data/yoloGtold1/train/90244.png +../../data/yoloGtold1/train/90245.png +../../data/yoloGtold1/train/90246.png +../../data/yoloGtold1/train/90247.png +../../data/yoloGtold1/train/90248.png +../../data/yoloGtold1/train/90249.png +../../data/yoloGtold1/train/90250.png +../../data/yoloGtold1/train/90251.png +../../data/yoloGtold1/train/90252.png +../../data/yoloGtold1/train/90253.png +../../data/yoloGtold1/train/90254.png +../../data/yoloGtold1/train/90255.png +../../data/yoloGtold1/train/90256.png +../../data/yoloGtold1/train/90257.png +../../data/yoloGtold1/train/90258.png +../../data/yoloGtold1/train/90259.png +../../data/yoloGtold1/train/90260.png +../../data/yoloGtold1/train/90261.png +../../data/yoloGtold1/train/90262.png +../../data/yoloGtold1/train/90263.png +../../data/yoloGtold1/train/90264.png +../../data/yoloGtold1/train/90265.png +../../data/yoloGtold1/train/90266.png +../../data/yoloGtold1/train/90267.png +../../data/yoloGtold1/train/90268.png +../../data/yoloGtold1/train/90269.png +../../data/yoloGtold1/train/90270.png +../../data/yoloGtold1/train/90271.png +../../data/yoloGtold1/train/90272.png +../../data/yoloGtold1/train/90273.png +../../data/yoloGtold1/train/90274.png +../../data/yoloGtold1/train/90275.png +../../data/yoloGtold1/train/90276.png +../../data/yoloGtold1/train/90277.png +../../data/yoloGtold1/train/90278.png +../../data/yoloGtold1/train/90279.png +../../data/yoloGtold1/train/90280.png +../../data/yoloGtold1/train/90281.png +../../data/yoloGtold1/train/90282.png +../../data/yoloGtold1/train/90283.png +../../data/yoloGtold1/train/90284.png +../../data/yoloGtold1/train/90285.png +../../data/yoloGtold1/train/90286.png +../../data/yoloGtold1/train/90287.png +../../data/yoloGtold1/train/90288.png +../../data/yoloGtold1/train/90289.png +../../data/yoloGtold1/train/90290.png +../../data/yoloGtold1/train/90291.png +../../data/yoloGtold1/train/90292.png +../../data/yoloGtold1/train/90293.png +../../data/yoloGtold1/train/90294.png +../../data/yoloGtold1/train/90295.png +../../data/yoloGtold1/train/90296.png +../../data/yoloGtold1/train/90297.png +../../data/yoloGtold1/train/90298.png +../../data/yoloGtold1/train/90299.png +../../data/yoloGtold1/train/90300.png +../../data/yoloGtold1/train/90301.png +../../data/yoloGtold1/train/90302.png +../../data/yoloGtold1/train/90303.png +../../data/yoloGtold1/train/90304.png +../../data/yoloGtold1/train/90305.png +../../data/yoloGtold1/train/90306.png +../../data/yoloGtold1/train/90307.png +../../data/yoloGtold1/train/90308.png +../../data/yoloGtold1/train/90309.png +../../data/yoloGtold1/train/90310.png +../../data/yoloGtold1/train/90311.png +../../data/yoloGtold1/train/90312.png +../../data/yoloGtold1/train/90313.png +../../data/yoloGtold1/train/90314.png +../../data/yoloGtold1/train/90315.png +../../data/yoloGtold1/train/90316.png +../../data/yoloGtold1/train/90317.png +../../data/yoloGtold1/train/90318.png +../../data/yoloGtold1/train/90319.png +../../data/yoloGtold1/train/90320.png +../../data/yoloGtold1/train/90321.png +../../data/yoloGtold1/train/90322.png +../../data/yoloGtold1/train/90323.png +../../data/yoloGtold1/train/90324.png +../../data/yoloGtold1/train/90325.png +../../data/yoloGtold1/train/90326.png +../../data/yoloGtold1/train/90327.png +../../data/yoloGtold1/train/90328.png +../../data/yoloGtold1/train/90329.png +../../data/yoloGtold1/train/90330.png +../../data/yoloGtold1/train/90331.png +../../data/yoloGtold1/train/90332.png +../../data/yoloGtold1/train/90333.png +../../data/yoloGtold1/train/90334.png +../../data/yoloGtold1/train/90335.png +../../data/yoloGtold1/train/90336.png +../../data/yoloGtold1/train/90337.png +../../data/yoloGtold1/train/90338.png +../../data/yoloGtold1/train/90339.png +../../data/yoloGtold1/train/90340.png +../../data/yoloGtold1/train/90341.png +../../data/yoloGtold1/train/90342.png +../../data/yoloGtold1/train/90343.png +../../data/yoloGtold1/train/90344.png +../../data/yoloGtold1/train/90345.png +../../data/yoloGtold1/train/90346.png +../../data/yoloGtold1/train/90347.png +../../data/yoloGtold1/train/90348.png +../../data/yoloGtold1/train/90349.png +../../data/yoloGtold1/train/90350.png +../../data/yoloGtold1/train/90351.png +../../data/yoloGtold1/train/90352.png +../../data/yoloGtold1/train/90353.png +../../data/yoloGtold1/train/90354.png +../../data/yoloGtold1/train/90355.png +../../data/yoloGtold1/train/90356.png +../../data/yoloGtold1/train/90357.png +../../data/yoloGtold1/train/90358.png +../../data/yoloGtold1/train/90359.png +../../data/yoloGtold1/train/90360.png +../../data/yoloGtold1/train/90361.png +../../data/yoloGtold1/train/90362.png +../../data/yoloGtold1/train/90363.png +../../data/yoloGtold1/train/90364.png +../../data/yoloGtold1/train/90365.png +../../data/yoloGtold1/train/90366.png +../../data/yoloGtold1/train/90367.png +../../data/yoloGtold1/train/90368.png +../../data/yoloGtold1/train/90369.png +../../data/yoloGtold1/train/90370.png +../../data/yoloGtold1/train/90371.png +../../data/yoloGtold1/train/90372.png +../../data/yoloGtold1/train/90373.png +../../data/yoloGtold1/train/90374.png +../../data/yoloGtold1/train/90375.png +../../data/yoloGtold1/train/90376.png +../../data/yoloGtold1/train/90377.png +../../data/yoloGtold1/train/90378.png +../../data/yoloGtold1/train/90379.png +../../data/yoloGtold1/train/90380.png +../../data/yoloGtold1/train/90381.png +../../data/yoloGtold1/train/90382.png +../../data/yoloGtold1/train/90383.png +../../data/yoloGtold1/train/90384.png +../../data/yoloGtold1/train/90385.png +../../data/yoloGtold1/train/90386.png +../../data/yoloGtold1/train/90387.png +../../data/yoloGtold1/train/90388.png +../../data/yoloGtold1/train/90389.png +../../data/yoloGtold1/train/90390.png +../../data/yoloGtold1/train/90391.png +../../data/yoloGtold1/train/90392.png +../../data/yoloGtold1/train/90393.png +../../data/yoloGtold1/train/90394.png +../../data/yoloGtold1/train/90395.png +../../data/yoloGtold1/train/90396.png +../../data/yoloGtold1/train/90397.png +../../data/yoloGtold1/train/90398.png +../../data/yoloGtold1/train/90399.png +../../data/yoloGtold1/train/90400.png +../../data/yoloGtold1/train/90401.png +../../data/yoloGtold1/train/90402.png +../../data/yoloGtold1/train/90403.png +../../data/yoloGtold1/train/90404.png +../../data/yoloGtold1/train/90405.png +../../data/yoloGtold1/train/90406.png +../../data/yoloGtold1/train/90407.png +../../data/yoloGtold1/train/90408.png +../../data/yoloGtold1/train/90409.png +../../data/yoloGtold1/train/90410.png +../../data/yoloGtold1/train/90411.png +../../data/yoloGtold1/train/90412.png +../../data/yoloGtold1/train/90413.png +../../data/yoloGtold1/train/90414.png +../../data/yoloGtold1/train/90415.png +../../data/yoloGtold1/train/90416.png +../../data/yoloGtold1/train/90417.png +../../data/yoloGtold1/train/90418.png +../../data/yoloGtold1/train/90419.png +../../data/yoloGtold1/train/90420.png +../../data/yoloGtold1/train/90421.png +../../data/yoloGtold1/train/90422.png +../../data/yoloGtold1/train/90423.png +../../data/yoloGtold1/train/90424.png +../../data/yoloGtold1/train/90425.png +../../data/yoloGtold1/train/90426.png +../../data/yoloGtold1/train/90427.png +../../data/yoloGtold1/train/90428.png +../../data/yoloGtold1/train/90429.png +../../data/yoloGtold1/train/90430.png +../../data/yoloGtold1/train/90431.png +../../data/yoloGtold1/train/90432.png +../../data/yoloGtold1/train/90433.png +../../data/yoloGtold1/train/90434.png +../../data/yoloGtold1/train/90435.png +../../data/yoloGtold1/train/90436.png +../../data/yoloGtold1/train/90437.png +../../data/yoloGtold1/train/90438.png +../../data/yoloGtold1/train/90439.png +../../data/yoloGtold1/train/90440.png +../../data/yoloGtold1/train/90441.png +../../data/yoloGtold1/train/90442.png +../../data/yoloGtold1/train/90443.png +../../data/yoloGtold1/train/90444.png +../../data/yoloGtold1/train/90445.png +../../data/yoloGtold1/train/90446.png +../../data/yoloGtold1/train/90447.png +../../data/yoloGtold1/train/90448.png +../../data/yoloGtold1/train/90449.png +../../data/yoloGtold1/train/90450.png +../../data/yoloGtold1/train/90451.png +../../data/yoloGtold1/train/90452.png +../../data/yoloGtold1/train/90453.png +../../data/yoloGtold1/train/90454.png +../../data/yoloGtold1/train/90455.png +../../data/yoloGtold1/train/90456.png +../../data/yoloGtold1/train/90457.png +../../data/yoloGtold1/train/90458.png +../../data/yoloGtold1/train/90459.png +../../data/yoloGtold1/train/90460.png +../../data/yoloGtold1/train/90461.png +../../data/yoloGtold1/train/90462.png +../../data/yoloGtold1/train/90463.png +../../data/yoloGtold1/train/90464.png +../../data/yoloGtold1/train/90465.png +../../data/yoloGtold1/train/90466.png +../../data/yoloGtold1/train/90467.png +../../data/yoloGtold1/train/90468.png +../../data/yoloGtold1/train/90469.png +../../data/yoloGtold1/train/90470.png +../../data/yoloGtold1/train/90471.png +../../data/yoloGtold1/train/90472.png +../../data/yoloGtold1/train/90473.png +../../data/yoloGtold1/train/90474.png +../../data/yoloGtold1/train/90475.png +../../data/yoloGtold1/train/90476.png +../../data/yoloGtold1/train/90477.png +../../data/yoloGtold1/train/90478.png +../../data/yoloGtold1/train/90479.png +../../data/yoloGtold1/train/90480.png +../../data/yoloGtold1/train/90481.png +../../data/yoloGtold1/train/90482.png +../../data/yoloGtold1/train/90483.png +../../data/yoloGtold1/train/90484.png +../../data/yoloGtold1/train/90485.png +../../data/yoloGtold1/train/90486.png +../../data/yoloGtold1/train/90487.png +../../data/yoloGtold1/train/90488.png +../../data/yoloGtold1/train/90489.png +../../data/yoloGtold1/train/90490.png +../../data/yoloGtold1/train/90491.png +../../data/yoloGtold1/train/90492.png +../../data/yoloGtold1/train/90493.png +../../data/yoloGtold1/train/90494.png +../../data/yoloGtold1/train/90495.png +../../data/yoloGtold1/train/90496.png +../../data/yoloGtold1/train/90497.png +../../data/yoloGtold1/train/90498.png +../../data/yoloGtold1/train/90499.png +../../data/yoloGtold1/train/90500.png +../../data/yoloGtold1/train/90501.png +../../data/yoloGtold1/train/90502.png +../../data/yoloGtold1/train/90503.png +../../data/yoloGtold1/train/90504.png +../../data/yoloGtold1/train/90505.png +../../data/yoloGtold1/train/90506.png +../../data/yoloGtold1/train/90507.png +../../data/yoloGtold1/train/90508.png +../../data/yoloGtold1/train/90509.png +../../data/yoloGtold1/train/90510.png +../../data/yoloGtold1/train/90511.png +../../data/yoloGtold1/train/90512.png +../../data/yoloGtold1/train/90513.png +../../data/yoloGtold1/train/90514.png +../../data/yoloGtold1/train/90515.png +../../data/yoloGtold1/train/90516.png +../../data/yoloGtold1/train/90517.png +../../data/yoloGtold1/train/90518.png +../../data/yoloGtold1/train/90519.png +../../data/yoloGtold1/train/90520.png +../../data/yoloGtold1/train/90521.png +../../data/yoloGtold1/train/90522.png +../../data/yoloGtold1/train/90523.png +../../data/yoloGtold1/train/90524.png +../../data/yoloGtold1/train/90525.png +../../data/yoloGtold1/train/90526.png +../../data/yoloGtold1/train/90527.png +../../data/yoloGtold1/train/90528.png +../../data/yoloGtold1/train/90529.png +../../data/yoloGtold1/train/90530.png +../../data/yoloGtold1/train/90531.png +../../data/yoloGtold1/train/90532.png +../../data/yoloGtold1/train/90533.png +../../data/yoloGtold1/train/90534.png +../../data/yoloGtold1/train/90535.png +../../data/yoloGtold1/train/90536.png +../../data/yoloGtold1/train/90537.png +../../data/yoloGtold1/train/90538.png +../../data/yoloGtold1/train/90539.png +../../data/yoloGtold1/train/90540.png +../../data/yoloGtold1/train/90541.png +../../data/yoloGtold1/train/90542.png +../../data/yoloGtold1/train/90543.png +../../data/yoloGtold1/train/90544.png +../../data/yoloGtold1/train/90545.png +../../data/yoloGtold1/train/90546.png +../../data/yoloGtold1/train/90547.png +../../data/yoloGtold1/train/90548.png +../../data/yoloGtold1/train/90549.png +../../data/yoloGtold1/train/90550.png +../../data/yoloGtold1/train/90551.png +../../data/yoloGtold1/train/90552.png +../../data/yoloGtold1/train/90553.png +../../data/yoloGtold1/train/90554.png +../../data/yoloGtold1/train/90555.png +../../data/yoloGtold1/train/90556.png +../../data/yoloGtold1/train/90557.png +../../data/yoloGtold1/train/90558.png +../../data/yoloGtold1/train/90559.png +../../data/yoloGtold1/train/90560.png +../../data/yoloGtold1/train/90561.png +../../data/yoloGtold1/train/90562.png +../../data/yoloGtold1/train/90563.png +../../data/yoloGtold1/train/90564.png +../../data/yoloGtold1/train/90565.png +../../data/yoloGtold1/train/90566.png +../../data/yoloGtold1/train/90567.png +../../data/yoloGtold1/train/90568.png +../../data/yoloGtold1/train/90569.png +../../data/yoloGtold1/train/90570.png +../../data/yoloGtold1/train/90571.png +../../data/yoloGtold1/train/90572.png +../../data/yoloGtold1/train/90573.png +../../data/yoloGtold1/train/90574.png +../../data/yoloGtold1/train/90575.png +../../data/yoloGtold1/train/90576.png +../../data/yoloGtold1/train/90577.png +../../data/yoloGtold1/train/90578.png +../../data/yoloGtold1/train/90579.png +../../data/yoloGtold1/train/90580.png +../../data/yoloGtold1/train/90581.png +../../data/yoloGtold1/train/90582.png +../../data/yoloGtold1/train/90583.png +../../data/yoloGtold1/train/90584.png +../../data/yoloGtold1/train/90585.png +../../data/yoloGtold1/train/90586.png +../../data/yoloGtold1/train/90587.png +../../data/yoloGtold1/train/90588.png +../../data/yoloGtold1/train/90589.png +../../data/yoloGtold1/train/90590.png +../../data/yoloGtold1/train/90591.png +../../data/yoloGtold1/train/90592.png +../../data/yoloGtold1/train/90593.png +../../data/yoloGtold1/train/90594.png +../../data/yoloGtold1/train/90595.png +../../data/yoloGtold1/train/90596.png +../../data/yoloGtold1/train/90597.png +../../data/yoloGtold1/train/90598.png +../../data/yoloGtold1/train/90599.png +../../data/yoloGtold1/train/90600.png +../../data/yoloGtold1/train/90601.png +../../data/yoloGtold1/train/90602.png +../../data/yoloGtold1/train/90603.png +../../data/yoloGtold1/train/90604.png +../../data/yoloGtold1/train/90605.png +../../data/yoloGtold1/train/90606.png +../../data/yoloGtold1/train/90607.png +../../data/yoloGtold1/train/90608.png +../../data/yoloGtold1/train/90609.png +../../data/yoloGtold1/train/90610.png +../../data/yoloGtold1/train/90611.png +../../data/yoloGtold1/train/90612.png +../../data/yoloGtold1/train/90613.png +../../data/yoloGtold1/train/90614.png +../../data/yoloGtold1/train/90615.png +../../data/yoloGtold1/train/90616.png +../../data/yoloGtold1/train/90617.png +../../data/yoloGtold1/train/90618.png +../../data/yoloGtold1/train/90619.png +../../data/yoloGtold1/train/90620.png +../../data/yoloGtold1/train/90621.png +../../data/yoloGtold1/train/90622.png +../../data/yoloGtold1/train/90623.png +../../data/yoloGtold1/train/90624.png +../../data/yoloGtold1/train/90625.png +../../data/yoloGtold1/train/90626.png +../../data/yoloGtold1/train/90627.png +../../data/yoloGtold1/train/90628.png +../../data/yoloGtold1/train/90629.png +../../data/yoloGtold1/train/90630.png +../../data/yoloGtold1/train/90631.png +../../data/yoloGtold1/train/90632.png +../../data/yoloGtold1/train/90633.png +../../data/yoloGtold1/train/90634.png +../../data/yoloGtold1/train/90635.png +../../data/yoloGtold1/train/90636.png +../../data/yoloGtold1/train/90637.png +../../data/yoloGtold1/train/90638.png +../../data/yoloGtold1/train/90639.png +../../data/yoloGtold1/train/90640.png +../../data/yoloGtold1/train/90641.png +../../data/yoloGtold1/train/90642.png +../../data/yoloGtold1/train/90643.png +../../data/yoloGtold1/train/90644.png +../../data/yoloGtold1/train/90645.png +../../data/yoloGtold1/train/90646.png +../../data/yoloGtold1/train/90647.png +../../data/yoloGtold1/train/90648.png +../../data/yoloGtold1/train/90649.png +../../data/yoloGtold1/train/90650.png +../../data/yoloGtold1/train/90651.png +../../data/yoloGtold1/train/90652.png +../../data/yoloGtold1/train/90653.png +../../data/yoloGtold1/train/90654.png +../../data/yoloGtold1/train/90655.png +../../data/yoloGtold1/train/90656.png +../../data/yoloGtold1/train/90657.png +../../data/yoloGtold1/train/90658.png +../../data/yoloGtold1/train/90659.png +../../data/yoloGtold1/train/90660.png +../../data/yoloGtold1/train/90661.png +../../data/yoloGtold1/train/90662.png +../../data/yoloGtold1/train/90663.png +../../data/yoloGtold1/train/90664.png +../../data/yoloGtold1/train/90665.png +../../data/yoloGtold1/train/90666.png +../../data/yoloGtold1/train/90667.png +../../data/yoloGtold1/train/90668.png +../../data/yoloGtold1/train/90669.png +../../data/yoloGtold1/train/90670.png +../../data/yoloGtold1/train/90671.png +../../data/yoloGtold1/train/90672.png +../../data/yoloGtold1/train/90673.png +../../data/yoloGtold1/train/90674.png +../../data/yoloGtold1/train/90675.png +../../data/yoloGtold1/train/90676.png +../../data/yoloGtold1/train/90677.png +../../data/yoloGtold1/train/90678.png +../../data/yoloGtold1/train/90679.png +../../data/yoloGtold1/train/90680.png +../../data/yoloGtold1/train/90681.png +../../data/yoloGtold1/train/90682.png +../../data/yoloGtold1/train/90683.png +../../data/yoloGtold1/train/90684.png +../../data/yoloGtold1/train/90685.png +../../data/yoloGtold1/train/90686.png +../../data/yoloGtold1/train/90687.png +../../data/yoloGtold1/train/90688.png +../../data/yoloGtold1/train/90689.png +../../data/yoloGtold1/train/90690.png +../../data/yoloGtold1/train/90691.png +../../data/yoloGtold1/train/90692.png +../../data/yoloGtold1/train/90693.png +../../data/yoloGtold1/train/90694.png +../../data/yoloGtold1/train/90695.png +../../data/yoloGtold1/train/90696.png +../../data/yoloGtold1/train/90697.png +../../data/yoloGtold1/train/90698.png +../../data/yoloGtold1/train/90699.png +../../data/yoloGtold1/train/90700.png +../../data/yoloGtold1/train/90701.png +../../data/yoloGtold1/train/90702.png +../../data/yoloGtold1/train/90703.png +../../data/yoloGtold1/train/90704.png +../../data/yoloGtold1/train/90705.png +../../data/yoloGtold1/train/90706.png +../../data/yoloGtold1/train/90707.png +../../data/yoloGtold1/train/90708.png +../../data/yoloGtold1/train/90709.png +../../data/yoloGtold1/train/90710.png +../../data/yoloGtold1/train/90711.png +../../data/yoloGtold1/train/90712.png +../../data/yoloGtold1/train/90713.png +../../data/yoloGtold1/train/90714.png +../../data/yoloGtold1/train/90715.png +../../data/yoloGtold1/train/90716.png +../../data/yoloGtold1/train/90717.png +../../data/yoloGtold1/train/90718.png +../../data/yoloGtold1/train/90719.png +../../data/yoloGtold1/train/90720.png +../../data/yoloGtold1/train/90721.png +../../data/yoloGtold1/train/90722.png +../../data/yoloGtold1/train/90723.png +../../data/yoloGtold1/train/90724.png +../../data/yoloGtold1/train/90725.png +../../data/yoloGtold1/train/90726.png +../../data/yoloGtold1/train/90727.png +../../data/yoloGtold1/train/90728.png +../../data/yoloGtold1/train/90729.png +../../data/yoloGtold1/train/90730.png +../../data/yoloGtold1/train/90731.png +../../data/yoloGtold1/train/90732.png +../../data/yoloGtold1/train/90733.png +../../data/yoloGtold1/train/90734.png +../../data/yoloGtold1/train/90735.png +../../data/yoloGtold1/train/90736.png +../../data/yoloGtold1/train/90737.png +../../data/yoloGtold1/train/90738.png +../../data/yoloGtold1/train/90739.png +../../data/yoloGtold1/train/90740.png +../../data/yoloGtold1/train/90741.png +../../data/yoloGtold1/train/90742.png +../../data/yoloGtold1/train/90743.png +../../data/yoloGtold1/train/90744.png +../../data/yoloGtold1/train/90745.png +../../data/yoloGtold1/train/90746.png +../../data/yoloGtold1/train/90747.png +../../data/yoloGtold1/train/90748.png +../../data/yoloGtold1/train/90749.png +../../data/yoloGtold1/train/90750.png +../../data/yoloGtold1/train/90751.png +../../data/yoloGtold1/train/90752.png +../../data/yoloGtold1/train/90753.png +../../data/yoloGtold1/train/90754.png +../../data/yoloGtold1/train/90755.png +../../data/yoloGtold1/train/90756.png +../../data/yoloGtold1/train/90757.png +../../data/yoloGtold1/train/90758.png +../../data/yoloGtold1/train/90759.png +../../data/yoloGtold1/train/90760.png +../../data/yoloGtold1/train/90761.png +../../data/yoloGtold1/train/90762.png +../../data/yoloGtold1/train/90763.png +../../data/yoloGtold1/train/90764.png +../../data/yoloGtold1/train/90765.png +../../data/yoloGtold1/train/90766.png +../../data/yoloGtold1/train/90767.png +../../data/yoloGtold1/train/90768.png +../../data/yoloGtold1/train/90769.png +../../data/yoloGtold1/train/90770.png +../../data/yoloGtold1/train/90771.png +../../data/yoloGtold1/train/90772.png +../../data/yoloGtold1/train/90773.png +../../data/yoloGtold1/train/90774.png +../../data/yoloGtold1/train/90775.png +../../data/yoloGtold1/train/90776.png +../../data/yoloGtold1/train/90777.png +../../data/yoloGtold1/train/90778.png +../../data/yoloGtold1/train/90779.png +../../data/yoloGtold1/train/90780.png +../../data/yoloGtold1/train/90781.png +../../data/yoloGtold1/train/90782.png +../../data/yoloGtold1/train/90783.png +../../data/yoloGtold1/train/90784.png +../../data/yoloGtold1/train/90785.png +../../data/yoloGtold1/train/90786.png +../../data/yoloGtold1/train/90787.png +../../data/yoloGtold1/train/90788.png +../../data/yoloGtold1/train/90789.png +../../data/yoloGtold1/train/90790.png +../../data/yoloGtold1/train/90791.png +../../data/yoloGtold1/train/90792.png +../../data/yoloGtold1/train/90793.png +../../data/yoloGtold1/train/90794.png +../../data/yoloGtold1/train/90795.png +../../data/yoloGtold1/train/90796.png +../../data/yoloGtold1/train/90797.png +../../data/yoloGtold1/train/90798.png +../../data/yoloGtold1/train/90799.png +../../data/yoloGtold1/train/90800.png +../../data/yoloGtold1/train/90801.png +../../data/yoloGtold1/train/90802.png +../../data/yoloGtold1/train/90803.png +../../data/yoloGtold1/train/90804.png +../../data/yoloGtold1/train/90805.png +../../data/yoloGtold1/train/90806.png +../../data/yoloGtold1/train/90807.png +../../data/yoloGtold1/train/90808.png +../../data/yoloGtold1/train/90809.png +../../data/yoloGtold1/train/90810.png +../../data/yoloGtold1/train/90811.png +../../data/yoloGtold1/train/90812.png +../../data/yoloGtold1/train/90813.png +../../data/yoloGtold1/train/90814.png +../../data/yoloGtold1/train/90815.png +../../data/yoloGtold1/train/90816.png +../../data/yoloGtold1/train/90817.png +../../data/yoloGtold1/train/90818.png +../../data/yoloGtold1/train/90819.png +../../data/yoloGtold1/train/90820.png +../../data/yoloGtold1/train/90821.png +../../data/yoloGtold1/train/90822.png +../../data/yoloGtold1/train/90823.png +../../data/yoloGtold1/train/90824.png +../../data/yoloGtold1/train/90825.png +../../data/yoloGtold1/train/90826.png +../../data/yoloGtold1/train/90827.png +../../data/yoloGtold1/train/90828.png +../../data/yoloGtold1/train/90829.png +../../data/yoloGtold1/train/90830.png +../../data/yoloGtold1/train/90831.png +../../data/yoloGtold1/train/90832.png +../../data/yoloGtold1/train/90833.png +../../data/yoloGtold1/train/90834.png +../../data/yoloGtold1/train/90835.png +../../data/yoloGtold1/train/90836.png +../../data/yoloGtold1/train/90837.png +../../data/yoloGtold1/train/90838.png +../../data/yoloGtold1/train/90839.png +../../data/yoloGtold1/train/90840.png +../../data/yoloGtold1/train/90841.png +../../data/yoloGtold1/train/90842.png +../../data/yoloGtold1/train/90843.png +../../data/yoloGtold1/train/90844.png +../../data/yoloGtold1/train/90845.png +../../data/yoloGtold1/train/90846.png +../../data/yoloGtold1/train/90847.png +../../data/yoloGtold1/train/90848.png +../../data/yoloGtold1/train/90849.png +../../data/yoloGtold1/train/90850.png +../../data/yoloGtold1/train/90851.png +../../data/yoloGtold1/train/90852.png +../../data/yoloGtold1/train/90853.png +../../data/yoloGtold1/train/90854.png +../../data/yoloGtold1/train/90855.png +../../data/yoloGtold1/train/90856.png +../../data/yoloGtold1/train/90857.png +../../data/yoloGtold1/train/90858.png +../../data/yoloGtold1/train/90859.png +../../data/yoloGtold1/train/90860.png +../../data/yoloGtold1/train/90861.png +../../data/yoloGtold1/train/90862.png +../../data/yoloGtold1/train/90863.png +../../data/yoloGtold1/train/90864.png +../../data/yoloGtold1/train/90865.png +../../data/yoloGtold1/train/90866.png +../../data/yoloGtold1/train/90867.png +../../data/yoloGtold1/train/90868.png +../../data/yoloGtold1/train/90869.png +../../data/yoloGtold1/train/90870.png +../../data/yoloGtold1/train/90871.png +../../data/yoloGtold1/train/90872.png +../../data/yoloGtold1/train/90873.png +../../data/yoloGtold1/train/90874.png +../../data/yoloGtold1/train/90875.png +../../data/yoloGtold1/train/90876.png +../../data/yoloGtold1/train/90877.png +../../data/yoloGtold1/train/90878.png +../../data/yoloGtold1/train/90879.png +../../data/yoloGtold1/train/90880.png +../../data/yoloGtold1/train/90881.png +../../data/yoloGtold1/train/90882.png +../../data/yoloGtold1/train/90883.png +../../data/yoloGtold1/train/90884.png +../../data/yoloGtold1/train/90885.png +../../data/yoloGtold1/train/90886.png +../../data/yoloGtold1/train/90887.png +../../data/yoloGtold1/train/90888.png +../../data/yoloGtold1/train/90889.png +../../data/yoloGtold1/train/90890.png +../../data/yoloGtold1/train/90891.png +../../data/yoloGtold1/train/90892.png +../../data/yoloGtold1/train/90893.png +../../data/yoloGtold1/train/90894.png +../../data/yoloGtold1/train/90895.png +../../data/yoloGtold1/train/90896.png +../../data/yoloGtold1/train/90897.png +../../data/yoloGtold1/train/90898.png +../../data/yoloGtold1/train/90899.png +../../data/yoloGtold1/train/90900.png +../../data/yoloGtold1/train/90901.png +../../data/yoloGtold1/train/90902.png +../../data/yoloGtold1/train/90903.png +../../data/yoloGtold1/train/90904.png +../../data/yoloGtold1/train/90905.png +../../data/yoloGtold1/train/90906.png +../../data/yoloGtold1/train/90907.png +../../data/yoloGtold1/train/90908.png +../../data/yoloGtold1/train/90909.png +../../data/yoloGtold1/train/90910.png +../../data/yoloGtold1/train/90911.png +../../data/yoloGtold1/train/90912.png +../../data/yoloGtold1/train/90913.png +../../data/yoloGtold1/train/90914.png +../../data/yoloGtold1/train/90915.png +../../data/yoloGtold1/train/90916.png +../../data/yoloGtold1/train/90917.png +../../data/yoloGtold1/train/90918.png +../../data/yoloGtold1/train/90919.png +../../data/yoloGtold1/train/90920.png +../../data/yoloGtold1/train/90921.png +../../data/yoloGtold1/train/90922.png +../../data/yoloGtold1/train/90923.png +../../data/yoloGtold1/train/90924.png +../../data/yoloGtold1/train/90925.png +../../data/yoloGtold1/train/90926.png +../../data/yoloGtold1/train/90927.png +../../data/yoloGtold1/train/90928.png +../../data/yoloGtold1/train/90929.png +../../data/yoloGtold1/train/90930.png +../../data/yoloGtold1/train/90931.png +../../data/yoloGtold1/train/90932.png +../../data/yoloGtold1/train/90933.png +../../data/yoloGtold1/train/90934.png +../../data/yoloGtold1/train/90935.png +../../data/yoloGtold1/train/90936.png +../../data/yoloGtold1/train/90937.png +../../data/yoloGtold1/train/90938.png +../../data/yoloGtold1/train/90939.png +../../data/yoloGtold1/train/90940.png +../../data/yoloGtold1/train/90941.png +../../data/yoloGtold1/train/90942.png +../../data/yoloGtold1/train/90943.png +../../data/yoloGtold1/train/90944.png +../../data/yoloGtold1/train/90945.png +../../data/yoloGtold1/train/90946.png +../../data/yoloGtold1/train/90947.png +../../data/yoloGtold1/train/90948.png +../../data/yoloGtold1/train/90949.png +../../data/yoloGtold1/train/90950.png +../../data/yoloGtold1/train/90951.png +../../data/yoloGtold1/train/90952.png +../../data/yoloGtold1/train/90953.png +../../data/yoloGtold1/train/90954.png +../../data/yoloGtold1/train/90955.png +../../data/yoloGtold1/train/90956.png +../../data/yoloGtold1/train/90957.png +../../data/yoloGtold1/train/90958.png +../../data/yoloGtold1/train/90959.png +../../data/yoloGtold1/train/90960.png +../../data/yoloGtold1/train/90961.png +../../data/yoloGtold1/train/90962.png +../../data/yoloGtold1/train/90963.png +../../data/yoloGtold1/train/90964.png +../../data/yoloGtold1/train/90965.png +../../data/yoloGtold1/train/90966.png +../../data/yoloGtold1/train/90967.png +../../data/yoloGtold1/train/90968.png +../../data/yoloGtold1/train/90969.png +../../data/yoloGtold1/train/90970.png +../../data/yoloGtold1/train/90971.png +../../data/yoloGtold1/train/90972.png +../../data/yoloGtold1/train/90973.png +../../data/yoloGtold1/train/90974.png +../../data/yoloGtold1/train/90975.png +../../data/yoloGtold1/train/90976.png +../../data/yoloGtold1/train/90977.png +../../data/yoloGtold1/train/90978.png +../../data/yoloGtold1/train/90979.png +../../data/yoloGtold1/train/90980.png +../../data/yoloGtold1/train/90981.png +../../data/yoloGtold1/train/90982.png +../../data/yoloGtold1/train/90983.png +../../data/yoloGtold1/train/90984.png +../../data/yoloGtold1/train/90985.png +../../data/yoloGtold1/train/90986.png +../../data/yoloGtold1/train/90987.png +../../data/yoloGtold1/train/90988.png +../../data/yoloGtold1/train/90989.png +../../data/yoloGtold1/train/90990.png +../../data/yoloGtold1/train/90991.png +../../data/yoloGtold1/train/90992.png +../../data/yoloGtold1/train/90993.png +../../data/yoloGtold1/train/90994.png +../../data/yoloGtold1/train/90995.png +../../data/yoloGtold1/train/90996.png +../../data/yoloGtold1/train/90997.png +../../data/yoloGtold1/train/90998.png +../../data/yoloGtold1/train/90999.png +../../data/yoloGtold1/train/91000.png +../../data/yoloGtold1/train/91001.png +../../data/yoloGtold1/train/91002.png +../../data/yoloGtold1/train/91003.png +../../data/yoloGtold1/train/91004.png +../../data/yoloGtold1/train/91005.png +../../data/yoloGtold1/train/91006.png +../../data/yoloGtold1/train/91007.png +../../data/yoloGtold1/train/91008.png +../../data/yoloGtold1/train/91009.png +../../data/yoloGtold1/train/91010.png +../../data/yoloGtold1/train/91011.png +../../data/yoloGtold1/train/91012.png +../../data/yoloGtold1/train/91013.png +../../data/yoloGtold1/train/91014.png +../../data/yoloGtold1/train/91015.png +../../data/yoloGtold1/train/91016.png +../../data/yoloGtold1/train/91017.png +../../data/yoloGtold1/train/91018.png +../../data/yoloGtold1/train/91019.png +../../data/yoloGtold1/train/91020.png +../../data/yoloGtold1/train/91021.png +../../data/yoloGtold1/train/91022.png +../../data/yoloGtold1/train/91023.png +../../data/yoloGtold1/train/91024.png +../../data/yoloGtold1/train/91025.png +../../data/yoloGtold1/train/91026.png +../../data/yoloGtold1/train/91027.png +../../data/yoloGtold1/train/91028.png +../../data/yoloGtold1/train/91029.png +../../data/yoloGtold1/train/91030.png +../../data/yoloGtold1/train/91031.png +../../data/yoloGtold1/train/91032.png +../../data/yoloGtold1/train/91033.png +../../data/yoloGtold1/train/91034.png +../../data/yoloGtold1/train/91035.png +../../data/yoloGtold1/train/91036.png +../../data/yoloGtold1/train/91037.png +../../data/yoloGtold1/train/91038.png +../../data/yoloGtold1/train/91039.png +../../data/yoloGtold1/train/91040.png +../../data/yoloGtold1/train/91041.png +../../data/yoloGtold1/train/91042.png +../../data/yoloGtold1/train/91043.png +../../data/yoloGtold1/train/91044.png +../../data/yoloGtold1/train/91045.png +../../data/yoloGtold1/train/91046.png +../../data/yoloGtold1/train/91047.png +../../data/yoloGtold1/train/91048.png +../../data/yoloGtold1/train/91049.png +../../data/yoloGtold1/train/91050.png +../../data/yoloGtold1/train/91051.png +../../data/yoloGtold1/train/91052.png +../../data/yoloGtold1/train/91053.png +../../data/yoloGtold1/train/91054.png +../../data/yoloGtold1/train/91055.png +../../data/yoloGtold1/train/91056.png +../../data/yoloGtold1/train/91057.png +../../data/yoloGtold1/train/91058.png +../../data/yoloGtold1/train/91059.png +../../data/yoloGtold1/train/91060.png +../../data/yoloGtold1/train/91061.png +../../data/yoloGtold1/train/91062.png +../../data/yoloGtold1/train/91063.png +../../data/yoloGtold1/train/91064.png +../../data/yoloGtold1/train/91065.png +../../data/yoloGtold1/train/91066.png +../../data/yoloGtold1/train/91067.png +../../data/yoloGtold1/train/91068.png +../../data/yoloGtold1/train/91069.png +../../data/yoloGtold1/train/91070.png +../../data/yoloGtold1/train/91071.png +../../data/yoloGtold1/train/91072.png +../../data/yoloGtold1/train/91073.png +../../data/yoloGtold1/train/91074.png +../../data/yoloGtold1/train/91075.png +../../data/yoloGtold1/train/91076.png +../../data/yoloGtold1/train/91077.png +../../data/yoloGtold1/train/91078.png +../../data/yoloGtold1/train/91079.png +../../data/yoloGtold1/train/91080.png +../../data/yoloGtold1/train/91081.png +../../data/yoloGtold1/train/91082.png +../../data/yoloGtold1/train/91083.png +../../data/yoloGtold1/train/91084.png +../../data/yoloGtold1/train/91085.png +../../data/yoloGtold1/train/91086.png +../../data/yoloGtold1/train/91087.png +../../data/yoloGtold1/train/91088.png +../../data/yoloGtold1/train/91089.png +../../data/yoloGtold1/train/91090.png +../../data/yoloGtold1/train/91091.png +../../data/yoloGtold1/train/91092.png +../../data/yoloGtold1/train/91093.png +../../data/yoloGtold1/train/91094.png +../../data/yoloGtold1/train/91095.png +../../data/yoloGtold1/train/91096.png +../../data/yoloGtold1/train/91097.png +../../data/yoloGtold1/train/91098.png +../../data/yoloGtold1/train/91099.png +../../data/yoloGtold1/train/91100.png +../../data/yoloGtold1/train/91101.png +../../data/yoloGtold1/train/91102.png +../../data/yoloGtold1/train/91103.png +../../data/yoloGtold1/train/91104.png +../../data/yoloGtold1/train/91105.png +../../data/yoloGtold1/train/91106.png +../../data/yoloGtold1/train/91107.png +../../data/yoloGtold1/train/91108.png +../../data/yoloGtold1/train/91109.png +../../data/yoloGtold1/train/91110.png +../../data/yoloGtold1/train/91111.png +../../data/yoloGtold1/train/91112.png +../../data/yoloGtold1/train/91113.png +../../data/yoloGtold1/train/91114.png +../../data/yoloGtold1/train/91115.png +../../data/yoloGtold1/train/91116.png +../../data/yoloGtold1/train/91117.png +../../data/yoloGtold1/train/91118.png +../../data/yoloGtold1/train/91119.png +../../data/yoloGtold1/train/91120.png +../../data/yoloGtold1/train/91121.png +../../data/yoloGtold1/train/91122.png +../../data/yoloGtold1/train/91123.png +../../data/yoloGtold1/train/91124.png +../../data/yoloGtold1/train/91125.png +../../data/yoloGtold1/train/91126.png +../../data/yoloGtold1/train/91127.png +../../data/yoloGtold1/train/91128.png +../../data/yoloGtold1/train/91129.png +../../data/yoloGtold1/train/91130.png +../../data/yoloGtold1/train/91131.png +../../data/yoloGtold1/train/91132.png +../../data/yoloGtold1/train/91133.png +../../data/yoloGtold1/train/91134.png +../../data/yoloGtold1/train/91135.png +../../data/yoloGtold1/train/91136.png +../../data/yoloGtold1/train/91137.png +../../data/yoloGtold1/train/91138.png +../../data/yoloGtold1/train/91139.png +../../data/yoloGtold1/train/91140.png +../../data/yoloGtold1/train/91141.png +../../data/yoloGtold1/train/91142.png +../../data/yoloGtold1/train/91143.png +../../data/yoloGtold1/train/91144.png +../../data/yoloGtold1/train/91145.png +../../data/yoloGtold1/train/91146.png +../../data/yoloGtold1/train/91147.png +../../data/yoloGtold1/train/91148.png +../../data/yoloGtold1/train/91149.png +../../data/yoloGtold1/train/91150.png +../../data/yoloGtold1/train/91151.png +../../data/yoloGtold1/train/91152.png +../../data/yoloGtold1/train/91153.png +../../data/yoloGtold1/train/91154.png +../../data/yoloGtold1/train/91155.png +../../data/yoloGtold1/train/91156.png +../../data/yoloGtold1/train/91157.png +../../data/yoloGtold1/train/91158.png +../../data/yoloGtold1/train/91159.png +../../data/yoloGtold1/train/91160.png +../../data/yoloGtold1/train/91161.png +../../data/yoloGtold1/train/91162.png +../../data/yoloGtold1/train/91163.png +../../data/yoloGtold1/train/91164.png +../../data/yoloGtold1/train/91165.png +../../data/yoloGtold1/train/91166.png +../../data/yoloGtold1/train/91167.png +../../data/yoloGtold1/train/91168.png +../../data/yoloGtold1/train/91169.png +../../data/yoloGtold1/train/91170.png +../../data/yoloGtold1/train/91171.png +../../data/yoloGtold1/train/91172.png +../../data/yoloGtold1/train/91173.png +../../data/yoloGtold1/train/91174.png +../../data/yoloGtold1/train/91175.png +../../data/yoloGtold1/train/91176.png +../../data/yoloGtold1/train/91177.png +../../data/yoloGtold1/train/91178.png +../../data/yoloGtold1/train/91179.png +../../data/yoloGtold1/train/91180.png +../../data/yoloGtold1/train/91181.png +../../data/yoloGtold1/train/91182.png +../../data/yoloGtold1/train/91183.png +../../data/yoloGtold1/train/91184.png +../../data/yoloGtold1/train/91185.png +../../data/yoloGtold1/train/91186.png +../../data/yoloGtold1/train/91187.png +../../data/yoloGtold1/train/91188.png +../../data/yoloGtold1/train/91189.png +../../data/yoloGtold1/train/91190.png +../../data/yoloGtold1/train/91191.png +../../data/yoloGtold1/train/91192.png +../../data/yoloGtold1/train/91193.png +../../data/yoloGtold1/train/91194.png +../../data/yoloGtold1/train/91195.png +../../data/yoloGtold1/train/91196.png +../../data/yoloGtold1/train/91197.png +../../data/yoloGtold1/train/91198.png +../../data/yoloGtold1/train/91199.png +../../data/yoloGtold1/train/91200.png +../../data/yoloGtold1/train/91201.png +../../data/yoloGtold1/train/91202.png +../../data/yoloGtold1/train/91203.png +../../data/yoloGtold1/train/91204.png +../../data/yoloGtold1/train/91205.png +../../data/yoloGtold1/train/91206.png +../../data/yoloGtold1/train/91207.png +../../data/yoloGtold1/train/91208.png +../../data/yoloGtold1/train/91209.png +../../data/yoloGtold1/train/91210.png +../../data/yoloGtold1/train/91211.png +../../data/yoloGtold1/train/91212.png +../../data/yoloGtold1/train/91213.png +../../data/yoloGtold1/train/91214.png +../../data/yoloGtold1/train/91215.png +../../data/yoloGtold1/train/91216.png +../../data/yoloGtold1/train/91217.png +../../data/yoloGtold1/train/91218.png +../../data/yoloGtold1/train/91219.png +../../data/yoloGtold1/train/91220.png +../../data/yoloGtold1/train/91221.png +../../data/yoloGtold1/train/91222.png +../../data/yoloGtold1/train/91223.png +../../data/yoloGtold1/train/91224.png +../../data/yoloGtold1/train/91225.png +../../data/yoloGtold1/train/91226.png +../../data/yoloGtold1/train/91227.png +../../data/yoloGtold1/train/91228.png +../../data/yoloGtold1/train/91229.png +../../data/yoloGtold1/train/91230.png +../../data/yoloGtold1/train/91231.png +../../data/yoloGtold1/train/91232.png +../../data/yoloGtold1/train/91233.png +../../data/yoloGtold1/train/91234.png +../../data/yoloGtold1/train/91235.png +../../data/yoloGtold1/train/91236.png +../../data/yoloGtold1/train/91237.png +../../data/yoloGtold1/train/91238.png +../../data/yoloGtold1/train/91239.png +../../data/yoloGtold1/train/91240.png +../../data/yoloGtold1/train/91241.png +../../data/yoloGtold1/train/91242.png +../../data/yoloGtold1/train/91243.png +../../data/yoloGtold1/train/91244.png +../../data/yoloGtold1/train/91245.png +../../data/yoloGtold1/train/91246.png +../../data/yoloGtold1/train/91247.png +../../data/yoloGtold1/train/91248.png +../../data/yoloGtold1/train/91249.png +../../data/yoloGtold1/train/91250.png +../../data/yoloGtold1/train/91251.png +../../data/yoloGtold1/train/91252.png +../../data/yoloGtold1/train/91253.png +../../data/yoloGtold1/train/91254.png +../../data/yoloGtold1/train/91255.png +../../data/yoloGtold1/train/91256.png +../../data/yoloGtold1/train/91257.png +../../data/yoloGtold1/train/91258.png +../../data/yoloGtold1/train/91259.png +../../data/yoloGtold1/train/91260.png +../../data/yoloGtold1/train/91261.png +../../data/yoloGtold1/train/91262.png +../../data/yoloGtold1/train/91263.png +../../data/yoloGtold1/train/91264.png +../../data/yoloGtold1/train/91265.png +../../data/yoloGtold1/train/91266.png +../../data/yoloGtold1/train/91267.png +../../data/yoloGtold1/train/91268.png +../../data/yoloGtold1/train/91269.png +../../data/yoloGtold1/train/91270.png +../../data/yoloGtold1/train/91271.png +../../data/yoloGtold1/train/91272.png +../../data/yoloGtold1/train/91273.png +../../data/yoloGtold1/train/91274.png +../../data/yoloGtold1/train/91275.png +../../data/yoloGtold1/train/91276.png +../../data/yoloGtold1/train/91277.png +../../data/yoloGtold1/train/91278.png +../../data/yoloGtold1/train/91279.png +../../data/yoloGtold1/train/91280.png +../../data/yoloGtold1/train/91281.png +../../data/yoloGtold1/train/91282.png +../../data/yoloGtold1/train/91283.png +../../data/yoloGtold1/train/91284.png +../../data/yoloGtold1/train/91285.png +../../data/yoloGtold1/train/91286.png +../../data/yoloGtold1/train/91287.png +../../data/yoloGtold1/train/91288.png +../../data/yoloGtold1/train/91289.png +../../data/yoloGtold1/train/91290.png +../../data/yoloGtold1/train/91291.png +../../data/yoloGtold1/train/91292.png +../../data/yoloGtold1/train/91293.png +../../data/yoloGtold1/train/91294.png +../../data/yoloGtold1/train/91295.png +../../data/yoloGtold1/train/91296.png +../../data/yoloGtold1/train/91297.png +../../data/yoloGtold1/train/91298.png +../../data/yoloGtold1/train/91299.png +../../data/yoloGtold1/train/91300.png +../../data/yoloGtold1/train/91301.png +../../data/yoloGtold1/train/91302.png +../../data/yoloGtold1/train/91303.png +../../data/yoloGtold1/train/91304.png +../../data/yoloGtold1/train/91305.png +../../data/yoloGtold1/train/91306.png +../../data/yoloGtold1/train/91307.png +../../data/yoloGtold1/train/91308.png +../../data/yoloGtold1/train/91309.png +../../data/yoloGtold1/train/91310.png +../../data/yoloGtold1/train/91311.png +../../data/yoloGtold1/train/91312.png +../../data/yoloGtold1/train/91313.png +../../data/yoloGtold1/train/91314.png +../../data/yoloGtold1/train/91315.png +../../data/yoloGtold1/train/91316.png +../../data/yoloGtold1/train/91317.png +../../data/yoloGtold1/train/91318.png +../../data/yoloGtold1/train/91319.png +../../data/yoloGtold1/train/91320.png +../../data/yoloGtold1/train/91321.png +../../data/yoloGtold1/train/91322.png +../../data/yoloGtold1/train/91323.png +../../data/yoloGtold1/train/91324.png +../../data/yoloGtold1/train/91325.png +../../data/yoloGtold1/train/91326.png +../../data/yoloGtold1/train/91327.png +../../data/yoloGtold1/train/91328.png +../../data/yoloGtold1/train/91329.png +../../data/yoloGtold1/train/91330.png +../../data/yoloGtold1/train/91331.png +../../data/yoloGtold1/train/91332.png +../../data/yoloGtold1/train/91333.png +../../data/yoloGtold1/train/91334.png +../../data/yoloGtold1/train/91335.png +../../data/yoloGtold1/train/91336.png +../../data/yoloGtold1/train/91337.png +../../data/yoloGtold1/train/91338.png +../../data/yoloGtold1/train/91339.png +../../data/yoloGtold1/train/91340.png +../../data/yoloGtold1/train/91341.png +../../data/yoloGtold1/train/91342.png +../../data/yoloGtold1/train/91343.png +../../data/yoloGtold1/train/91344.png +../../data/yoloGtold1/train/91345.png +../../data/yoloGtold1/train/91346.png +../../data/yoloGtold1/train/91347.png +../../data/yoloGtold1/train/91348.png +../../data/yoloGtold1/train/91349.png +../../data/yoloGtold1/train/91350.png +../../data/yoloGtold1/train/91351.png +../../data/yoloGtold1/train/91352.png +../../data/yoloGtold1/train/91353.png +../../data/yoloGtold1/train/91354.png +../../data/yoloGtold1/train/91355.png +../../data/yoloGtold1/train/91356.png +../../data/yoloGtold1/train/91357.png +../../data/yoloGtold1/train/91358.png +../../data/yoloGtold1/train/91359.png +../../data/yoloGtold1/train/91360.png +../../data/yoloGtold1/train/91361.png +../../data/yoloGtold1/train/91362.png +../../data/yoloGtold1/train/91363.png +../../data/yoloGtold1/train/91364.png +../../data/yoloGtold1/train/91365.png +../../data/yoloGtold1/train/91366.png +../../data/yoloGtold1/train/91367.png +../../data/yoloGtold1/train/91368.png +../../data/yoloGtold1/train/91369.png +../../data/yoloGtold1/train/91370.png +../../data/yoloGtold1/train/91371.png +../../data/yoloGtold1/train/91372.png +../../data/yoloGtold1/train/91373.png +../../data/yoloGtold1/train/91374.png +../../data/yoloGtold1/train/91375.png +../../data/yoloGtold1/train/91376.png +../../data/yoloGtold1/train/91377.png +../../data/yoloGtold1/train/91378.png +../../data/yoloGtold1/train/91379.png +../../data/yoloGtold1/train/91380.png +../../data/yoloGtold1/train/91381.png +../../data/yoloGtold1/train/91382.png +../../data/yoloGtold1/train/91383.png +../../data/yoloGtold1/train/91384.png +../../data/yoloGtold1/train/91385.png +../../data/yoloGtold1/train/91386.png +../../data/yoloGtold1/train/91387.png +../../data/yoloGtold1/train/91388.png +../../data/yoloGtold1/train/91389.png +../../data/yoloGtold1/train/91390.png +../../data/yoloGtold1/train/91391.png +../../data/yoloGtold1/train/91392.png +../../data/yoloGtold1/train/91393.png +../../data/yoloGtold1/train/91394.png +../../data/yoloGtold1/train/91395.png +../../data/yoloGtold1/train/91396.png +../../data/yoloGtold1/train/91397.png +../../data/yoloGtold1/train/91398.png +../../data/yoloGtold1/train/91399.png +../../data/yoloGtold1/train/91400.png +../../data/yoloGtold1/train/91401.png +../../data/yoloGtold1/train/91402.png +../../data/yoloGtold1/train/91403.png +../../data/yoloGtold1/train/91404.png +../../data/yoloGtold1/train/91405.png +../../data/yoloGtold1/train/91406.png +../../data/yoloGtold1/train/91407.png +../../data/yoloGtold1/train/91408.png +../../data/yoloGtold1/train/91409.png +../../data/yoloGtold1/train/91410.png +../../data/yoloGtold1/train/91411.png +../../data/yoloGtold1/train/91412.png +../../data/yoloGtold1/train/91413.png +../../data/yoloGtold1/train/91414.png +../../data/yoloGtold1/train/91415.png +../../data/yoloGtold1/train/91416.png +../../data/yoloGtold1/train/91417.png +../../data/yoloGtold1/train/91418.png +../../data/yoloGtold1/train/91419.png +../../data/yoloGtold1/train/91420.png +../../data/yoloGtold1/train/91421.png +../../data/yoloGtold1/train/91422.png +../../data/yoloGtold1/train/91423.png +../../data/yoloGtold1/train/91424.png +../../data/yoloGtold1/train/91425.png +../../data/yoloGtold1/train/91426.png +../../data/yoloGtold1/train/91427.png +../../data/yoloGtold1/train/91428.png +../../data/yoloGtold1/train/91429.png +../../data/yoloGtold1/train/91430.png +../../data/yoloGtold1/train/91431.png +../../data/yoloGtold1/train/91432.png +../../data/yoloGtold1/train/91433.png +../../data/yoloGtold1/train/91434.png +../../data/yoloGtold1/train/91435.png +../../data/yoloGtold1/train/91436.png +../../data/yoloGtold1/train/91437.png +../../data/yoloGtold1/train/91438.png +../../data/yoloGtold1/train/91439.png +../../data/yoloGtold1/train/91440.png +../../data/yoloGtold1/train/91441.png +../../data/yoloGtold1/train/91442.png +../../data/yoloGtold1/train/91443.png +../../data/yoloGtold1/train/91444.png +../../data/yoloGtold1/train/91445.png +../../data/yoloGtold1/train/91446.png +../../data/yoloGtold1/train/91447.png +../../data/yoloGtold1/train/91448.png +../../data/yoloGtold1/train/91449.png +../../data/yoloGtold1/train/91450.png +../../data/yoloGtold1/train/91451.png +../../data/yoloGtold1/train/91452.png +../../data/yoloGtold1/train/91453.png +../../data/yoloGtold1/train/91454.png +../../data/yoloGtold1/train/91455.png +../../data/yoloGtold1/train/91456.png +../../data/yoloGtold1/train/91457.png +../../data/yoloGtold1/train/91458.png +../../data/yoloGtold1/train/91459.png +../../data/yoloGtold1/train/91460.png +../../data/yoloGtold1/train/91461.png +../../data/yoloGtold1/train/91462.png +../../data/yoloGtold1/train/91463.png +../../data/yoloGtold1/train/91464.png +../../data/yoloGtold1/train/91465.png +../../data/yoloGtold1/train/91466.png +../../data/yoloGtold1/train/91467.png +../../data/yoloGtold1/train/91468.png +../../data/yoloGtold1/train/91469.png +../../data/yoloGtold1/train/91470.png +../../data/yoloGtold1/train/91471.png +../../data/yoloGtold1/train/91472.png +../../data/yoloGtold1/train/91473.png +../../data/yoloGtold1/train/91474.png +../../data/yoloGtold1/train/91475.png +../../data/yoloGtold1/train/91476.png +../../data/yoloGtold1/train/91477.png +../../data/yoloGtold1/train/91478.png +../../data/yoloGtold1/train/91479.png +../../data/yoloGtold1/train/91480.png +../../data/yoloGtold1/train/91481.png +../../data/yoloGtold1/train/91482.png +../../data/yoloGtold1/train/91483.png +../../data/yoloGtold1/train/91484.png +../../data/yoloGtold1/train/91485.png +../../data/yoloGtold1/train/91486.png +../../data/yoloGtold1/train/91487.png +../../data/yoloGtold1/train/91488.png +../../data/yoloGtold1/train/91489.png +../../data/yoloGtold1/train/91490.png +../../data/yoloGtold1/train/91491.png +../../data/yoloGtold1/train/91492.png +../../data/yoloGtold1/train/91493.png +../../data/yoloGtold1/train/91494.png +../../data/yoloGtold1/train/91495.png +../../data/yoloGtold1/train/91496.png +../../data/yoloGtold1/train/91497.png +../../data/yoloGtold1/train/91498.png +../../data/yoloGtold1/train/91499.png +../../data/yoloGtold1/train/91500.png +../../data/yoloGtold1/train/91501.png +../../data/yoloGtold1/train/91502.png +../../data/yoloGtold1/train/91503.png +../../data/yoloGtold1/train/91504.png +../../data/yoloGtold1/train/91505.png +../../data/yoloGtold1/train/91506.png +../../data/yoloGtold1/train/91507.png +../../data/yoloGtold1/train/91508.png +../../data/yoloGtold1/train/91509.png +../../data/yoloGtold1/train/91510.png +../../data/yoloGtold1/train/91511.png +../../data/yoloGtold1/train/91512.png +../../data/yoloGtold1/train/91513.png +../../data/yoloGtold1/train/91514.png +../../data/yoloGtold1/train/91515.png +../../data/yoloGtold1/train/91516.png +../../data/yoloGtold1/train/91517.png +../../data/yoloGtold1/train/91518.png +../../data/yoloGtold1/train/91519.png +../../data/yoloGtold1/train/91520.png +../../data/yoloGtold1/train/91521.png +../../data/yoloGtold1/train/91522.png +../../data/yoloGtold1/train/91523.png +../../data/yoloGtold1/train/91524.png +../../data/yoloGtold1/train/91525.png +../../data/yoloGtold1/train/91526.png +../../data/yoloGtold1/train/91527.png +../../data/yoloGtold1/train/91528.png +../../data/yoloGtold1/train/91529.png +../../data/yoloGtold1/train/91530.png +../../data/yoloGtold1/train/91531.png +../../data/yoloGtold1/train/91532.png +../../data/yoloGtold1/train/91533.png +../../data/yoloGtold1/train/91534.png +../../data/yoloGtold1/train/91535.png +../../data/yoloGtold1/train/91536.png +../../data/yoloGtold1/train/91537.png +../../data/yoloGtold1/train/91538.png +../../data/yoloGtold1/train/91539.png +../../data/yoloGtold1/train/91540.png +../../data/yoloGtold1/train/91541.png +../../data/yoloGtold1/train/91542.png +../../data/yoloGtold1/train/91543.png +../../data/yoloGtold1/train/91544.png +../../data/yoloGtold1/train/91545.png +../../data/yoloGtold1/train/91546.png +../../data/yoloGtold1/train/91547.png +../../data/yoloGtold1/train/91548.png +../../data/yoloGtold1/train/91549.png +../../data/yoloGtold1/train/91550.png +../../data/yoloGtold1/train/91551.png +../../data/yoloGtold1/train/91552.png +../../data/yoloGtold1/train/91553.png +../../data/yoloGtold1/train/91554.png +../../data/yoloGtold1/train/91555.png +../../data/yoloGtold1/train/91556.png +../../data/yoloGtold1/train/91557.png +../../data/yoloGtold1/train/91558.png +../../data/yoloGtold1/train/91559.png +../../data/yoloGtold1/train/91560.png +../../data/yoloGtold1/train/91561.png +../../data/yoloGtold1/train/91562.png +../../data/yoloGtold1/train/91563.png +../../data/yoloGtold1/train/91564.png +../../data/yoloGtold1/train/91565.png +../../data/yoloGtold1/train/91566.png +../../data/yoloGtold1/train/91567.png +../../data/yoloGtold1/train/91568.png +../../data/yoloGtold1/train/91569.png +../../data/yoloGtold1/train/91570.png +../../data/yoloGtold1/train/91571.png +../../data/yoloGtold1/train/91572.png +../../data/yoloGtold1/train/91573.png +../../data/yoloGtold1/train/91574.png +../../data/yoloGtold1/train/91575.png +../../data/yoloGtold1/train/91576.png +../../data/yoloGtold1/train/91577.png +../../data/yoloGtold1/train/91578.png +../../data/yoloGtold1/train/91579.png +../../data/yoloGtold1/train/91580.png +../../data/yoloGtold1/train/91581.png +../../data/yoloGtold1/train/91582.png +../../data/yoloGtold1/train/91583.png +../../data/yoloGtold1/train/91584.png +../../data/yoloGtold1/train/91585.png +../../data/yoloGtold1/train/91586.png +../../data/yoloGtold1/train/91587.png +../../data/yoloGtold1/train/91588.png +../../data/yoloGtold1/train/91589.png +../../data/yoloGtold1/train/91590.png +../../data/yoloGtold1/train/91591.png +../../data/yoloGtold1/train/91592.png +../../data/yoloGtold1/train/91593.png +../../data/yoloGtold1/train/91594.png +../../data/yoloGtold1/train/91595.png +../../data/yoloGtold1/train/91596.png +../../data/yoloGtold1/train/91597.png +../../data/yoloGtold1/train/91598.png +../../data/yoloGtold1/train/91599.png +../../data/yoloGtold1/train/91600.png +../../data/yoloGtold1/train/91601.png +../../data/yoloGtold1/train/91602.png +../../data/yoloGtold1/train/91603.png +../../data/yoloGtold1/train/91604.png +../../data/yoloGtold1/train/91605.png +../../data/yoloGtold1/train/91606.png +../../data/yoloGtold1/train/91607.png +../../data/yoloGtold1/train/91608.png +../../data/yoloGtold1/train/91609.png +../../data/yoloGtold1/train/91610.png +../../data/yoloGtold1/train/91611.png +../../data/yoloGtold1/train/91612.png +../../data/yoloGtold1/train/91613.png +../../data/yoloGtold1/train/91614.png +../../data/yoloGtold1/train/91615.png +../../data/yoloGtold1/train/91616.png +../../data/yoloGtold1/train/91617.png +../../data/yoloGtold1/train/91618.png +../../data/yoloGtold1/train/91619.png +../../data/yoloGtold1/train/91620.png +../../data/yoloGtold1/train/91621.png +../../data/yoloGtold1/train/91622.png +../../data/yoloGtold1/train/91623.png +../../data/yoloGtold1/train/91624.png +../../data/yoloGtold1/train/91625.png +../../data/yoloGtold1/train/91626.png +../../data/yoloGtold1/train/91627.png +../../data/yoloGtold1/train/91628.png +../../data/yoloGtold1/train/91629.png +../../data/yoloGtold1/train/91630.png +../../data/yoloGtold1/train/91631.png +../../data/yoloGtold1/train/91632.png +../../data/yoloGtold1/train/91633.png +../../data/yoloGtold1/train/91634.png +../../data/yoloGtold1/train/91635.png +../../data/yoloGtold1/train/91636.png +../../data/yoloGtold1/train/91637.png +../../data/yoloGtold1/train/91638.png +../../data/yoloGtold1/train/91639.png +../../data/yoloGtold1/train/91640.png +../../data/yoloGtold1/train/91641.png +../../data/yoloGtold1/train/91642.png +../../data/yoloGtold1/train/91643.png +../../data/yoloGtold1/train/91644.png +../../data/yoloGtold1/train/91645.png +../../data/yoloGtold1/train/91646.png +../../data/yoloGtold1/train/91647.png +../../data/yoloGtold1/train/91648.png +../../data/yoloGtold1/train/91649.png +../../data/yoloGtold1/train/91650.png +../../data/yoloGtold1/train/91651.png +../../data/yoloGtold1/train/91652.png +../../data/yoloGtold1/train/91653.png +../../data/yoloGtold1/train/91654.png +../../data/yoloGtold1/train/91655.png +../../data/yoloGtold1/train/91656.png +../../data/yoloGtold1/train/91657.png +../../data/yoloGtold1/train/91658.png +../../data/yoloGtold1/train/91659.png +../../data/yoloGtold1/train/91660.png +../../data/yoloGtold1/train/91661.png +../../data/yoloGtold1/train/91662.png +../../data/yoloGtold1/train/91663.png +../../data/yoloGtold1/train/91664.png +../../data/yoloGtold1/train/91665.png +../../data/yoloGtold1/train/91666.png +../../data/yoloGtold1/train/91667.png +../../data/yoloGtold1/train/91668.png +../../data/yoloGtold1/train/91669.png +../../data/yoloGtold1/train/91670.png +../../data/yoloGtold1/train/91671.png +../../data/yoloGtold1/train/91672.png +../../data/yoloGtold1/train/91673.png +../../data/yoloGtold1/train/91674.png +../../data/yoloGtold1/train/91675.png +../../data/yoloGtold1/train/91676.png +../../data/yoloGtold1/train/91677.png +../../data/yoloGtold1/train/91678.png +../../data/yoloGtold1/train/91679.png +../../data/yoloGtold1/train/91680.png +../../data/yoloGtold1/train/91681.png +../../data/yoloGtold1/train/91682.png +../../data/yoloGtold1/train/91683.png +../../data/yoloGtold1/train/91684.png +../../data/yoloGtold1/train/91685.png +../../data/yoloGtold1/train/91686.png +../../data/yoloGtold1/train/91687.png +../../data/yoloGtold1/train/91688.png +../../data/yoloGtold1/train/91689.png +../../data/yoloGtold1/train/91690.png +../../data/yoloGtold1/train/91691.png +../../data/yoloGtold1/train/91692.png +../../data/yoloGtold1/train/91693.png +../../data/yoloGtold1/train/91694.png +../../data/yoloGtold1/train/91695.png +../../data/yoloGtold1/train/91696.png +../../data/yoloGtold1/train/91697.png +../../data/yoloGtold1/train/91698.png +../../data/yoloGtold1/train/91699.png +../../data/yoloGtold1/train/91700.png +../../data/yoloGtold1/train/91701.png +../../data/yoloGtold1/train/91702.png +../../data/yoloGtold1/train/91703.png +../../data/yoloGtold1/train/91704.png +../../data/yoloGtold1/train/91705.png +../../data/yoloGtold1/train/91706.png +../../data/yoloGtold1/train/91707.png +../../data/yoloGtold1/train/91708.png +../../data/yoloGtold1/train/91709.png +../../data/yoloGtold1/train/91710.png +../../data/yoloGtold1/train/91711.png +../../data/yoloGtold1/train/91712.png +../../data/yoloGtold1/train/91713.png +../../data/yoloGtold1/train/91714.png +../../data/yoloGtold1/train/91715.png +../../data/yoloGtold1/train/91716.png +../../data/yoloGtold1/train/91717.png +../../data/yoloGtold1/train/91718.png +../../data/yoloGtold1/train/91719.png +../../data/yoloGtold1/train/91720.png +../../data/yoloGtold1/train/91721.png +../../data/yoloGtold1/train/91722.png +../../data/yoloGtold1/train/91723.png +../../data/yoloGtold1/train/91724.png +../../data/yoloGtold1/train/91725.png +../../data/yoloGtold1/train/91726.png +../../data/yoloGtold1/train/91727.png +../../data/yoloGtold1/train/91728.png +../../data/yoloGtold1/train/91729.png +../../data/yoloGtold1/train/91730.png +../../data/yoloGtold1/train/91731.png +../../data/yoloGtold1/train/91732.png +../../data/yoloGtold1/train/91733.png +../../data/yoloGtold1/train/91734.png +../../data/yoloGtold1/train/91735.png +../../data/yoloGtold1/train/91736.png +../../data/yoloGtold1/train/91737.png +../../data/yoloGtold1/train/91738.png +../../data/yoloGtold1/train/91739.png +../../data/yoloGtold1/train/91740.png +../../data/yoloGtold1/train/91741.png +../../data/yoloGtold1/train/91742.png +../../data/yoloGtold1/train/91743.png +../../data/yoloGtold1/train/91744.png +../../data/yoloGtold1/train/91745.png +../../data/yoloGtold1/train/91746.png +../../data/yoloGtold1/train/91747.png +../../data/yoloGtold1/train/91748.png +../../data/yoloGtold1/train/91749.png +../../data/yoloGtold1/train/91750.png +../../data/yoloGtold1/train/91751.png +../../data/yoloGtold1/train/91752.png +../../data/yoloGtold1/train/91753.png +../../data/yoloGtold1/train/91754.png +../../data/yoloGtold1/train/91755.png +../../data/yoloGtold1/train/91756.png +../../data/yoloGtold1/train/91757.png +../../data/yoloGtold1/train/91758.png +../../data/yoloGtold1/train/91759.png +../../data/yoloGtold1/train/91760.png +../../data/yoloGtold1/train/91761.png +../../data/yoloGtold1/train/91762.png +../../data/yoloGtold1/train/91763.png +../../data/yoloGtold1/train/91764.png +../../data/yoloGtold1/train/91765.png +../../data/yoloGtold1/train/91766.png +../../data/yoloGtold1/train/91767.png +../../data/yoloGtold1/train/91768.png +../../data/yoloGtold1/train/91769.png +../../data/yoloGtold1/train/91770.png +../../data/yoloGtold1/train/91771.png +../../data/yoloGtold1/train/91772.png +../../data/yoloGtold1/train/91773.png +../../data/yoloGtold1/train/91774.png +../../data/yoloGtold1/train/91775.png +../../data/yoloGtold1/train/91776.png +../../data/yoloGtold1/train/91777.png +../../data/yoloGtold1/train/91778.png +../../data/yoloGtold1/train/91779.png +../../data/yoloGtold1/train/91780.png +../../data/yoloGtold1/train/91781.png +../../data/yoloGtold1/train/91782.png +../../data/yoloGtold1/train/91783.png +../../data/yoloGtold1/train/91784.png +../../data/yoloGtold1/train/91785.png +../../data/yoloGtold1/train/91786.png +../../data/yoloGtold1/train/91787.png +../../data/yoloGtold1/train/91788.png +../../data/yoloGtold1/train/91789.png +../../data/yoloGtold1/train/91790.png +../../data/yoloGtold1/train/91791.png +../../data/yoloGtold1/train/91792.png +../../data/yoloGtold1/train/91793.png +../../data/yoloGtold1/train/91794.png +../../data/yoloGtold1/train/91795.png +../../data/yoloGtold1/train/91796.png +../../data/yoloGtold1/train/91797.png +../../data/yoloGtold1/train/91798.png +../../data/yoloGtold1/train/91799.png +../../data/yoloGtold1/train/91800.png +../../data/yoloGtold1/train/91801.png +../../data/yoloGtold1/train/91802.png +../../data/yoloGtold1/train/91803.png +../../data/yoloGtold1/train/91804.png +../../data/yoloGtold1/train/91805.png +../../data/yoloGtold1/train/91806.png +../../data/yoloGtold1/train/91807.png +../../data/yoloGtold1/train/91808.png +../../data/yoloGtold1/train/91809.png +../../data/yoloGtold1/train/91810.png +../../data/yoloGtold1/train/91811.png +../../data/yoloGtold1/train/91812.png +../../data/yoloGtold1/train/91813.png +../../data/yoloGtold1/train/91814.png +../../data/yoloGtold1/train/91815.png +../../data/yoloGtold1/train/91816.png +../../data/yoloGtold1/train/91817.png +../../data/yoloGtold1/train/91818.png +../../data/yoloGtold1/train/91819.png +../../data/yoloGtold1/train/91820.png +../../data/yoloGtold1/train/91821.png +../../data/yoloGtold1/train/91822.png +../../data/yoloGtold1/train/91823.png +../../data/yoloGtold1/train/91824.png +../../data/yoloGtold1/train/91825.png +../../data/yoloGtold1/train/91826.png +../../data/yoloGtold1/train/91827.png +../../data/yoloGtold1/train/91828.png +../../data/yoloGtold1/train/91829.png +../../data/yoloGtold1/train/91830.png +../../data/yoloGtold1/train/91831.png +../../data/yoloGtold1/train/91832.png +../../data/yoloGtold1/train/91833.png +../../data/yoloGtold1/train/91834.png +../../data/yoloGtold1/train/91835.png +../../data/yoloGtold1/train/91836.png +../../data/yoloGtold1/train/91837.png +../../data/yoloGtold1/train/91838.png +../../data/yoloGtold1/train/91839.png +../../data/yoloGtold1/train/91840.png +../../data/yoloGtold1/train/91841.png +../../data/yoloGtold1/train/91842.png +../../data/yoloGtold1/train/91843.png +../../data/yoloGtold1/train/91844.png +../../data/yoloGtold1/train/91845.png +../../data/yoloGtold1/train/91846.png +../../data/yoloGtold1/train/91847.png +../../data/yoloGtold1/train/91848.png +../../data/yoloGtold1/train/91849.png +../../data/yoloGtold1/train/91850.png +../../data/yoloGtold1/train/91851.png +../../data/yoloGtold1/train/91852.png +../../data/yoloGtold1/train/91853.png +../../data/yoloGtold1/train/91854.png +../../data/yoloGtold1/train/91855.png +../../data/yoloGtold1/train/91856.png +../../data/yoloGtold1/train/91857.png +../../data/yoloGtold1/train/91858.png +../../data/yoloGtold1/train/91859.png +../../data/yoloGtold1/train/91860.png +../../data/yoloGtold1/train/91861.png +../../data/yoloGtold1/train/91862.png +../../data/yoloGtold1/train/91863.png +../../data/yoloGtold1/train/91864.png +../../data/yoloGtold1/train/91865.png +../../data/yoloGtold1/train/91866.png +../../data/yoloGtold1/train/91867.png +../../data/yoloGtold1/train/91868.png +../../data/yoloGtold1/train/91869.png +../../data/yoloGtold1/train/91870.png +../../data/yoloGtold1/train/91871.png +../../data/yoloGtold1/train/91872.png +../../data/yoloGtold1/train/91873.png +../../data/yoloGtold1/train/91874.png +../../data/yoloGtold1/train/91875.png +../../data/yoloGtold1/train/91876.png +../../data/yoloGtold1/train/91877.png +../../data/yoloGtold1/train/91878.png +../../data/yoloGtold1/train/91879.png +../../data/yoloGtold1/train/91880.png +../../data/yoloGtold1/train/91881.png +../../data/yoloGtold1/train/91882.png +../../data/yoloGtold1/train/91883.png +../../data/yoloGtold1/train/91884.png +../../data/yoloGtold1/train/91885.png +../../data/yoloGtold1/train/91886.png +../../data/yoloGtold1/train/91887.png +../../data/yoloGtold1/train/91888.png +../../data/yoloGtold1/train/91889.png +../../data/yoloGtold1/train/91890.png +../../data/yoloGtold1/train/91891.png +../../data/yoloGtold1/train/91892.png +../../data/yoloGtold1/train/91893.png +../../data/yoloGtold1/train/91894.png +../../data/yoloGtold1/train/91895.png +../../data/yoloGtold1/train/91896.png +../../data/yoloGtold1/train/91897.png +../../data/yoloGtold1/train/91898.png +../../data/yoloGtold1/train/91899.png +../../data/yoloGtold1/train/91900.png +../../data/yoloGtold1/train/91901.png +../../data/yoloGtold1/train/91902.png +../../data/yoloGtold1/train/91903.png +../../data/yoloGtold1/train/91904.png +../../data/yoloGtold1/train/91905.png +../../data/yoloGtold1/train/91906.png +../../data/yoloGtold1/train/91907.png +../../data/yoloGtold1/train/91908.png +../../data/yoloGtold1/train/91909.png +../../data/yoloGtold1/train/91910.png +../../data/yoloGtold1/train/91911.png +../../data/yoloGtold1/train/91912.png +../../data/yoloGtold1/train/91913.png +../../data/yoloGtold1/train/91914.png +../../data/yoloGtold1/train/91915.png +../../data/yoloGtold1/train/91916.png +../../data/yoloGtold1/train/91917.png +../../data/yoloGtold1/train/91918.png +../../data/yoloGtold1/train/91919.png +../../data/yoloGtold1/train/91920.png +../../data/yoloGtold1/train/91921.png +../../data/yoloGtold1/train/91922.png +../../data/yoloGtold1/train/91923.png +../../data/yoloGtold1/train/91924.png +../../data/yoloGtold1/train/91925.png +../../data/yoloGtold1/train/91926.png +../../data/yoloGtold1/train/91927.png +../../data/yoloGtold1/train/91928.png +../../data/yoloGtold1/train/91929.png +../../data/yoloGtold1/train/91930.png +../../data/yoloGtold1/train/91931.png +../../data/yoloGtold1/train/91932.png +../../data/yoloGtold1/train/91933.png +../../data/yoloGtold1/train/91934.png +../../data/yoloGtold1/train/91935.png +../../data/yoloGtold1/train/91936.png +../../data/yoloGtold1/train/91937.png +../../data/yoloGtold1/train/91938.png +../../data/yoloGtold1/train/91939.png +../../data/yoloGtold1/train/91940.png +../../data/yoloGtold1/train/91941.png +../../data/yoloGtold1/train/91942.png +../../data/yoloGtold1/train/91943.png +../../data/yoloGtold1/train/91944.png +../../data/yoloGtold1/train/91945.png +../../data/yoloGtold1/train/91946.png +../../data/yoloGtold1/train/91947.png +../../data/yoloGtold1/train/91948.png +../../data/yoloGtold1/train/91949.png +../../data/yoloGtold1/train/91950.png +../../data/yoloGtold1/train/91951.png +../../data/yoloGtold1/train/91952.png +../../data/yoloGtold1/train/91953.png +../../data/yoloGtold1/train/91954.png +../../data/yoloGtold1/train/91955.png +../../data/yoloGtold1/train/91956.png +../../data/yoloGtold1/train/91957.png +../../data/yoloGtold1/train/91958.png +../../data/yoloGtold1/train/91959.png +../../data/yoloGtold1/train/91960.png +../../data/yoloGtold1/train/91961.png +../../data/yoloGtold1/train/91962.png +../../data/yoloGtold1/train/91963.png +../../data/yoloGtold1/train/91964.png +../../data/yoloGtold1/train/91965.png +../../data/yoloGtold1/train/91966.png +../../data/yoloGtold1/train/91967.png +../../data/yoloGtold1/train/91968.png +../../data/yoloGtold1/train/91969.png +../../data/yoloGtold1/train/91970.png +../../data/yoloGtold1/train/91971.png +../../data/yoloGtold1/train/91972.png +../../data/yoloGtold1/train/91973.png +../../data/yoloGtold1/train/91974.png +../../data/yoloGtold1/train/91975.png +../../data/yoloGtold1/train/91976.png +../../data/yoloGtold1/train/91977.png +../../data/yoloGtold1/train/91978.png +../../data/yoloGtold1/train/91979.png +../../data/yoloGtold1/train/91980.png +../../data/yoloGtold1/train/91981.png +../../data/yoloGtold1/train/91982.png +../../data/yoloGtold1/train/91983.png +../../data/yoloGtold1/train/91984.png +../../data/yoloGtold1/train/91985.png +../../data/yoloGtold1/train/91986.png +../../data/yoloGtold1/train/91987.png +../../data/yoloGtold1/train/91988.png +../../data/yoloGtold1/train/91989.png +../../data/yoloGtold1/train/91990.png +../../data/yoloGtold1/train/91991.png +../../data/yoloGtold1/train/91992.png +../../data/yoloGtold1/train/91993.png +../../data/yoloGtold1/train/91994.png +../../data/yoloGtold1/train/91995.png +../../data/yoloGtold1/train/91996.png +../../data/yoloGtold1/train/91997.png +../../data/yoloGtold1/train/91998.png +../../data/yoloGtold1/train/91999.png +../../data/yoloGtold1/train/92000.png +../../data/yoloGtold1/train/92001.png +../../data/yoloGtold1/train/92002.png +../../data/yoloGtold1/train/92003.png +../../data/yoloGtold1/train/92004.png +../../data/yoloGtold1/train/92005.png +../../data/yoloGtold1/train/92006.png +../../data/yoloGtold1/train/92007.png +../../data/yoloGtold1/train/92008.png +../../data/yoloGtold1/train/92009.png +../../data/yoloGtold1/train/92010.png +../../data/yoloGtold1/train/92011.png +../../data/yoloGtold1/train/92012.png +../../data/yoloGtold1/train/92013.png +../../data/yoloGtold1/train/92014.png +../../data/yoloGtold1/train/92015.png +../../data/yoloGtold1/train/92016.png +../../data/yoloGtold1/train/92017.png +../../data/yoloGtold1/train/92018.png +../../data/yoloGtold1/train/92019.png +../../data/yoloGtold1/train/92020.png +../../data/yoloGtold1/train/92021.png +../../data/yoloGtold1/train/92022.png +../../data/yoloGtold1/train/92023.png +../../data/yoloGtold1/train/92024.png +../../data/yoloGtold1/train/92025.png +../../data/yoloGtold1/train/92026.png +../../data/yoloGtold1/train/92027.png +../../data/yoloGtold1/train/92028.png +../../data/yoloGtold1/train/92029.png +../../data/yoloGtold1/train/92030.png +../../data/yoloGtold1/train/92031.png +../../data/yoloGtold1/train/92032.png +../../data/yoloGtold1/train/92033.png +../../data/yoloGtold1/train/92034.png +../../data/yoloGtold1/train/92035.png +../../data/yoloGtold1/train/92036.png +../../data/yoloGtold1/train/92037.png +../../data/yoloGtold1/train/92038.png +../../data/yoloGtold1/train/92039.png +../../data/yoloGtold1/train/92040.png +../../data/yoloGtold1/train/92041.png +../../data/yoloGtold1/train/92042.png +../../data/yoloGtold1/train/92043.png +../../data/yoloGtold1/train/92044.png +../../data/yoloGtold1/train/92045.png +../../data/yoloGtold1/train/92046.png +../../data/yoloGtold1/train/92047.png +../../data/yoloGtold1/train/92048.png +../../data/yoloGtold1/train/92049.png +../../data/yoloGtold1/train/92050.png +../../data/yoloGtold1/train/92051.png +../../data/yoloGtold1/train/92052.png +../../data/yoloGtold1/train/92053.png +../../data/yoloGtold1/train/92054.png +../../data/yoloGtold1/train/92055.png +../../data/yoloGtold1/train/92056.png +../../data/yoloGtold1/train/92057.png +../../data/yoloGtold1/train/92058.png +../../data/yoloGtold1/train/92059.png +../../data/yoloGtold1/train/92060.png +../../data/yoloGtold1/train/92061.png +../../data/yoloGtold1/train/92062.png +../../data/yoloGtold1/train/92063.png +../../data/yoloGtold1/train/92064.png +../../data/yoloGtold1/train/92065.png +../../data/yoloGtold1/train/92066.png +../../data/yoloGtold1/train/92067.png +../../data/yoloGtold1/train/92068.png +../../data/yoloGtold1/train/92069.png +../../data/yoloGtold1/train/92070.png +../../data/yoloGtold1/train/92071.png +../../data/yoloGtold1/train/92072.png +../../data/yoloGtold1/train/92073.png +../../data/yoloGtold1/train/92074.png +../../data/yoloGtold1/train/92075.png +../../data/yoloGtold1/train/92076.png +../../data/yoloGtold1/train/92077.png +../../data/yoloGtold1/train/92078.png +../../data/yoloGtold1/train/92079.png +../../data/yoloGtold1/train/92080.png +../../data/yoloGtold1/train/92081.png +../../data/yoloGtold1/train/92082.png +../../data/yoloGtold1/train/92083.png +../../data/yoloGtold1/train/92084.png +../../data/yoloGtold1/train/92085.png +../../data/yoloGtold1/train/92086.png +../../data/yoloGtold1/train/92087.png +../../data/yoloGtold1/train/92088.png +../../data/yoloGtold1/train/92089.png +../../data/yoloGtold1/train/92090.png +../../data/yoloGtold1/train/92091.png +../../data/yoloGtold1/train/92092.png +../../data/yoloGtold1/train/92093.png +../../data/yoloGtold1/train/92094.png +../../data/yoloGtold1/train/92095.png +../../data/yoloGtold1/train/92096.png +../../data/yoloGtold1/train/92097.png +../../data/yoloGtold1/train/92098.png +../../data/yoloGtold1/train/92099.png +../../data/yoloGtold1/train/92100.png +../../data/yoloGtold1/train/92101.png +../../data/yoloGtold1/train/92102.png +../../data/yoloGtold1/train/92103.png +../../data/yoloGtold1/train/92104.png +../../data/yoloGtold1/train/92105.png +../../data/yoloGtold1/train/92106.png +../../data/yoloGtold1/train/92107.png +../../data/yoloGtold1/train/92108.png +../../data/yoloGtold1/train/92109.png +../../data/yoloGtold1/train/92110.png +../../data/yoloGtold1/train/92111.png +../../data/yoloGtold1/train/92112.png +../../data/yoloGtold1/train/92113.png +../../data/yoloGtold1/train/92114.png +../../data/yoloGtold1/train/92115.png +../../data/yoloGtold1/train/92116.png +../../data/yoloGtold1/train/92117.png +../../data/yoloGtold1/train/92118.png +../../data/yoloGtold1/train/92119.png +../../data/yoloGtold1/train/92120.png +../../data/yoloGtold1/train/92121.png +../../data/yoloGtold1/train/92122.png +../../data/yoloGtold1/train/92123.png +../../data/yoloGtold1/train/92124.png +../../data/yoloGtold1/train/92125.png +../../data/yoloGtold1/train/92126.png +../../data/yoloGtold1/train/92127.png +../../data/yoloGtold1/train/92128.png +../../data/yoloGtold1/train/92129.png +../../data/yoloGtold1/train/92130.png +../../data/yoloGtold1/train/92131.png +../../data/yoloGtold1/train/92132.png +../../data/yoloGtold1/train/92133.png +../../data/yoloGtold1/train/92134.png +../../data/yoloGtold1/train/92135.png +../../data/yoloGtold1/train/92136.png +../../data/yoloGtold1/train/92137.png +../../data/yoloGtold1/train/92138.png +../../data/yoloGtold1/train/92139.png +../../data/yoloGtold1/train/92140.png +../../data/yoloGtold1/train/92141.png +../../data/yoloGtold1/train/92142.png +../../data/yoloGtold1/train/92143.png +../../data/yoloGtold1/train/92144.png +../../data/yoloGtold1/train/92145.png +../../data/yoloGtold1/train/92146.png +../../data/yoloGtold1/train/92147.png +../../data/yoloGtold1/train/92148.png +../../data/yoloGtold1/train/92149.png +../../data/yoloGtold1/train/92150.png +../../data/yoloGtold1/train/92151.png +../../data/yoloGtold1/train/92152.png +../../data/yoloGtold1/train/92153.png +../../data/yoloGtold1/train/92154.png +../../data/yoloGtold1/train/92155.png +../../data/yoloGtold1/train/92156.png +../../data/yoloGtold1/train/92157.png +../../data/yoloGtold1/train/92158.png +../../data/yoloGtold1/train/92159.png +../../data/yoloGtold1/train/92160.png +../../data/yoloGtold1/train/92161.png +../../data/yoloGtold1/train/92162.png +../../data/yoloGtold1/train/92163.png +../../data/yoloGtold1/train/92164.png +../../data/yoloGtold1/train/92165.png +../../data/yoloGtold1/train/92166.png +../../data/yoloGtold1/train/92167.png +../../data/yoloGtold1/train/92168.png +../../data/yoloGtold1/train/92169.png +../../data/yoloGtold1/train/92170.png +../../data/yoloGtold1/train/92171.png +../../data/yoloGtold1/train/92172.png +../../data/yoloGtold1/train/92173.png +../../data/yoloGtold1/train/92174.png +../../data/yoloGtold1/train/92175.png +../../data/yoloGtold1/train/92176.png +../../data/yoloGtold1/train/92177.png +../../data/yoloGtold1/train/92178.png +../../data/yoloGtold1/train/92179.png +../../data/yoloGtold1/train/92180.png +../../data/yoloGtold1/train/92181.png +../../data/yoloGtold1/train/92182.png +../../data/yoloGtold1/train/92183.png +../../data/yoloGtold1/train/92184.png +../../data/yoloGtold1/train/92185.png +../../data/yoloGtold1/train/92186.png +../../data/yoloGtold1/train/92187.png +../../data/yoloGtold1/train/92188.png +../../data/yoloGtold1/train/92189.png +../../data/yoloGtold1/train/92190.png +../../data/yoloGtold1/train/92191.png +../../data/yoloGtold1/train/92192.png +../../data/yoloGtold1/train/92193.png +../../data/yoloGtold1/train/92194.png +../../data/yoloGtold1/train/92195.png +../../data/yoloGtold1/train/92196.png +../../data/yoloGtold1/train/92197.png +../../data/yoloGtold1/train/92198.png +../../data/yoloGtold1/train/92199.png +../../data/yoloGtold1/train/92200.png +../../data/yoloGtold1/train/92201.png +../../data/yoloGtold1/train/92202.png +../../data/yoloGtold1/train/92203.png +../../data/yoloGtold1/train/92204.png +../../data/yoloGtold1/train/92205.png +../../data/yoloGtold1/train/92206.png +../../data/yoloGtold1/train/92207.png +../../data/yoloGtold1/train/92208.png +../../data/yoloGtold1/train/92209.png +../../data/yoloGtold1/train/92210.png +../../data/yoloGtold1/train/92211.png +../../data/yoloGtold1/train/92212.png +../../data/yoloGtold1/train/92213.png +../../data/yoloGtold1/train/92214.png +../../data/yoloGtold1/train/92215.png +../../data/yoloGtold1/train/92216.png +../../data/yoloGtold1/train/92217.png +../../data/yoloGtold1/train/92218.png +../../data/yoloGtold1/train/92219.png +../../data/yoloGtold1/train/92220.png +../../data/yoloGtold1/train/92221.png +../../data/yoloGtold1/train/92222.png +../../data/yoloGtold1/train/92223.png +../../data/yoloGtold1/train/92224.png +../../data/yoloGtold1/train/92225.png +../../data/yoloGtold1/train/92226.png +../../data/yoloGtold1/train/92227.png +../../data/yoloGtold1/train/92228.png +../../data/yoloGtold1/train/92229.png +../../data/yoloGtold1/train/92230.png +../../data/yoloGtold1/train/92231.png +../../data/yoloGtold1/train/92232.png +../../data/yoloGtold1/train/92233.png +../../data/yoloGtold1/train/92234.png +../../data/yoloGtold1/train/92235.png +../../data/yoloGtold1/train/92236.png +../../data/yoloGtold1/train/92237.png +../../data/yoloGtold1/train/92238.png +../../data/yoloGtold1/train/92239.png +../../data/yoloGtold1/train/92240.png +../../data/yoloGtold1/train/92241.png +../../data/yoloGtold1/train/92242.png +../../data/yoloGtold1/train/92243.png +../../data/yoloGtold1/train/92244.png +../../data/yoloGtold1/train/92245.png +../../data/yoloGtold1/train/92246.png +../../data/yoloGtold1/train/92247.png +../../data/yoloGtold1/train/92248.png +../../data/yoloGtold1/train/92249.png +../../data/yoloGtold1/train/92250.png +../../data/yoloGtold1/train/92251.png +../../data/yoloGtold1/train/92252.png +../../data/yoloGtold1/train/92253.png +../../data/yoloGtold1/train/92254.png +../../data/yoloGtold1/train/92255.png +../../data/yoloGtold1/train/92256.png +../../data/yoloGtold1/train/92257.png +../../data/yoloGtold1/train/92258.png +../../data/yoloGtold1/train/92259.png +../../data/yoloGtold1/train/92260.png +../../data/yoloGtold1/train/92261.png +../../data/yoloGtold1/train/92262.png +../../data/yoloGtold1/train/92263.png +../../data/yoloGtold1/train/92264.png +../../data/yoloGtold1/train/92265.png +../../data/yoloGtold1/train/92266.png +../../data/yoloGtold1/train/92267.png +../../data/yoloGtold1/train/92268.png +../../data/yoloGtold1/train/92269.png +../../data/yoloGtold1/train/92270.png +../../data/yoloGtold1/train/92271.png +../../data/yoloGtold1/train/92272.png +../../data/yoloGtold1/train/92273.png +../../data/yoloGtold1/train/92274.png +../../data/yoloGtold1/train/92275.png +../../data/yoloGtold1/train/92276.png +../../data/yoloGtold1/train/92277.png +../../data/yoloGtold1/train/92278.png +../../data/yoloGtold1/train/92279.png +../../data/yoloGtold1/train/92280.png +../../data/yoloGtold1/train/92281.png +../../data/yoloGtold1/train/92282.png +../../data/yoloGtold1/train/92283.png +../../data/yoloGtold1/train/92284.png +../../data/yoloGtold1/train/92285.png +../../data/yoloGtold1/train/92286.png +../../data/yoloGtold1/train/92287.png +../../data/yoloGtold1/train/92288.png +../../data/yoloGtold1/train/92289.png +../../data/yoloGtold1/train/92290.png +../../data/yoloGtold1/train/92291.png +../../data/yoloGtold1/train/92292.png +../../data/yoloGtold1/train/92293.png +../../data/yoloGtold1/train/92294.png +../../data/yoloGtold1/train/92295.png +../../data/yoloGtold1/train/92296.png +../../data/yoloGtold1/train/92297.png +../../data/yoloGtold1/train/92298.png +../../data/yoloGtold1/train/92299.png +../../data/yoloGtold1/train/92300.png +../../data/yoloGtold1/train/92301.png +../../data/yoloGtold1/train/92302.png +../../data/yoloGtold1/train/92303.png +../../data/yoloGtold1/train/92304.png +../../data/yoloGtold1/train/92305.png +../../data/yoloGtold1/train/92306.png +../../data/yoloGtold1/train/92307.png +../../data/yoloGtold1/train/92308.png +../../data/yoloGtold1/train/92309.png +../../data/yoloGtold1/train/92310.png +../../data/yoloGtold1/train/92311.png +../../data/yoloGtold1/train/92312.png +../../data/yoloGtold1/train/92313.png +../../data/yoloGtold1/train/92314.png +../../data/yoloGtold1/train/92315.png +../../data/yoloGtold1/train/92316.png +../../data/yoloGtold1/train/92317.png +../../data/yoloGtold1/train/92318.png +../../data/yoloGtold1/train/92319.png +../../data/yoloGtold1/train/92320.png +../../data/yoloGtold1/train/92321.png +../../data/yoloGtold1/train/92322.png +../../data/yoloGtold1/train/92323.png +../../data/yoloGtold1/train/92324.png +../../data/yoloGtold1/train/92325.png +../../data/yoloGtold1/train/92326.png +../../data/yoloGtold1/train/92327.png +../../data/yoloGtold1/train/92328.png +../../data/yoloGtold1/train/92329.png +../../data/yoloGtold1/train/92330.png +../../data/yoloGtold1/train/92331.png +../../data/yoloGtold1/train/92332.png +../../data/yoloGtold1/train/92333.png +../../data/yoloGtold1/train/92334.png +../../data/yoloGtold1/train/92335.png +../../data/yoloGtold1/train/92336.png +../../data/yoloGtold1/train/92337.png +../../data/yoloGtold1/train/92338.png +../../data/yoloGtold1/train/92339.png +../../data/yoloGtold1/train/92340.png +../../data/yoloGtold1/train/92341.png +../../data/yoloGtold1/train/92342.png +../../data/yoloGtold1/train/92343.png +../../data/yoloGtold1/train/92344.png +../../data/yoloGtold1/train/92345.png +../../data/yoloGtold1/train/92346.png +../../data/yoloGtold1/train/92347.png +../../data/yoloGtold1/train/92348.png +../../data/yoloGtold1/train/92349.png +../../data/yoloGtold1/train/92350.png +../../data/yoloGtold1/train/92351.png +../../data/yoloGtold1/train/92352.png +../../data/yoloGtold1/train/92353.png +../../data/yoloGtold1/train/92354.png +../../data/yoloGtold1/train/92355.png +../../data/yoloGtold1/train/92356.png +../../data/yoloGtold1/train/92357.png +../../data/yoloGtold1/train/92358.png +../../data/yoloGtold1/train/92359.png +../../data/yoloGtold1/train/92360.png +../../data/yoloGtold1/train/92361.png +../../data/yoloGtold1/train/92362.png +../../data/yoloGtold1/train/92363.png +../../data/yoloGtold1/train/92364.png +../../data/yoloGtold1/train/92365.png +../../data/yoloGtold1/train/92366.png +../../data/yoloGtold1/train/92367.png +../../data/yoloGtold1/train/92368.png +../../data/yoloGtold1/train/92369.png +../../data/yoloGtold1/train/92370.png +../../data/yoloGtold1/train/92371.png +../../data/yoloGtold1/train/92372.png +../../data/yoloGtold1/train/92373.png +../../data/yoloGtold1/train/92374.png +../../data/yoloGtold1/train/92375.png +../../data/yoloGtold1/train/92376.png +../../data/yoloGtold1/train/92377.png +../../data/yoloGtold1/train/92378.png +../../data/yoloGtold1/train/92379.png +../../data/yoloGtold1/train/92380.png +../../data/yoloGtold1/train/92381.png +../../data/yoloGtold1/train/92382.png +../../data/yoloGtold1/train/92383.png +../../data/yoloGtold1/train/92384.png +../../data/yoloGtold1/train/92385.png +../../data/yoloGtold1/train/92386.png +../../data/yoloGtold1/train/92387.png +../../data/yoloGtold1/train/92388.png +../../data/yoloGtold1/train/92389.png +../../data/yoloGtold1/train/92390.png +../../data/yoloGtold1/train/92391.png +../../data/yoloGtold1/train/92392.png +../../data/yoloGtold1/train/92393.png +../../data/yoloGtold1/train/92394.png +../../data/yoloGtold1/train/92395.png +../../data/yoloGtold1/train/92396.png +../../data/yoloGtold1/train/92397.png +../../data/yoloGtold1/train/92398.png +../../data/yoloGtold1/train/92399.png +../../data/yoloGtold1/train/92400.png +../../data/yoloGtold1/train/92401.png +../../data/yoloGtold1/train/92402.png +../../data/yoloGtold1/train/92403.png +../../data/yoloGtold1/train/92404.png +../../data/yoloGtold1/train/92405.png +../../data/yoloGtold1/train/92406.png +../../data/yoloGtold1/train/92407.png +../../data/yoloGtold1/train/92408.png +../../data/yoloGtold1/train/92409.png +../../data/yoloGtold1/train/92410.png +../../data/yoloGtold1/train/92411.png +../../data/yoloGtold1/train/92412.png +../../data/yoloGtold1/train/92413.png +../../data/yoloGtold1/train/92414.png +../../data/yoloGtold1/train/92415.png +../../data/yoloGtold1/train/92416.png +../../data/yoloGtold1/train/92417.png +../../data/yoloGtold1/train/92418.png +../../data/yoloGtold1/train/92419.png +../../data/yoloGtold1/train/92420.png +../../data/yoloGtold1/train/92421.png +../../data/yoloGtold1/train/92422.png +../../data/yoloGtold1/train/92423.png +../../data/yoloGtold1/train/92424.png +../../data/yoloGtold1/train/92425.png +../../data/yoloGtold1/train/92426.png +../../data/yoloGtold1/train/92427.png +../../data/yoloGtold1/train/92428.png +../../data/yoloGtold1/train/92429.png +../../data/yoloGtold1/train/92430.png +../../data/yoloGtold1/train/92431.png +../../data/yoloGtold1/train/92432.png +../../data/yoloGtold1/train/92433.png +../../data/yoloGtold1/train/92434.png +../../data/yoloGtold1/train/92435.png +../../data/yoloGtold1/train/92436.png +../../data/yoloGtold1/train/92437.png +../../data/yoloGtold1/train/92438.png +../../data/yoloGtold1/train/92439.png +../../data/yoloGtold1/train/92440.png +../../data/yoloGtold1/train/92441.png +../../data/yoloGtold1/train/92442.png +../../data/yoloGtold1/train/92443.png +../../data/yoloGtold1/train/92444.png +../../data/yoloGtold1/train/92445.png +../../data/yoloGtold1/train/92446.png +../../data/yoloGtold1/train/92447.png +../../data/yoloGtold1/train/92448.png +../../data/yoloGtold1/train/92449.png +../../data/yoloGtold1/train/92450.png +../../data/yoloGtold1/train/92451.png +../../data/yoloGtold1/train/92452.png +../../data/yoloGtold1/train/92453.png +../../data/yoloGtold1/train/92454.png +../../data/yoloGtold1/train/92455.png +../../data/yoloGtold1/train/92456.png +../../data/yoloGtold1/train/92457.png +../../data/yoloGtold1/train/92458.png +../../data/yoloGtold1/train/92459.png +../../data/yoloGtold1/train/92460.png +../../data/yoloGtold1/train/92461.png +../../data/yoloGtold1/train/92462.png +../../data/yoloGtold1/train/92463.png +../../data/yoloGtold1/train/92464.png +../../data/yoloGtold1/train/92465.png +../../data/yoloGtold1/train/92466.png +../../data/yoloGtold1/train/92467.png +../../data/yoloGtold1/train/92468.png +../../data/yoloGtold1/train/92469.png +../../data/yoloGtold1/train/92470.png +../../data/yoloGtold1/train/92471.png +../../data/yoloGtold1/train/92472.png +../../data/yoloGtold1/train/92473.png +../../data/yoloGtold1/train/92474.png +../../data/yoloGtold1/train/92475.png +../../data/yoloGtold1/train/92476.png +../../data/yoloGtold1/train/92477.png +../../data/yoloGtold1/train/92478.png +../../data/yoloGtold1/train/92479.png +../../data/yoloGtold1/train/92480.png +../../data/yoloGtold1/train/92481.png +../../data/yoloGtold1/train/92482.png +../../data/yoloGtold1/train/92483.png +../../data/yoloGtold1/train/92484.png +../../data/yoloGtold1/train/92485.png +../../data/yoloGtold1/train/92486.png +../../data/yoloGtold1/train/92487.png +../../data/yoloGtold1/train/92488.png +../../data/yoloGtold1/train/92489.png +../../data/yoloGtold1/train/92490.png +../../data/yoloGtold1/train/92491.png +../../data/yoloGtold1/train/92492.png +../../data/yoloGtold1/train/92493.png +../../data/yoloGtold1/train/92494.png +../../data/yoloGtold1/train/92495.png +../../data/yoloGtold1/train/92496.png +../../data/yoloGtold1/train/92497.png +../../data/yoloGtold1/train/92498.png +../../data/yoloGtold1/train/92499.png +../../data/yoloGtold1/train/92500.png +../../data/yoloGtold1/train/92501.png +../../data/yoloGtold1/train/92502.png +../../data/yoloGtold1/train/92503.png +../../data/yoloGtold1/train/92504.png +../../data/yoloGtold1/train/92505.png +../../data/yoloGtold1/train/92506.png +../../data/yoloGtold1/train/92507.png +../../data/yoloGtold1/train/92508.png +../../data/yoloGtold1/train/92509.png +../../data/yoloGtold1/train/92510.png +../../data/yoloGtold1/train/92511.png +../../data/yoloGtold1/train/92512.png +../../data/yoloGtold1/train/92513.png +../../data/yoloGtold1/train/92514.png +../../data/yoloGtold1/train/92515.png +../../data/yoloGtold1/train/92516.png +../../data/yoloGtold1/train/92517.png +../../data/yoloGtold1/train/92518.png +../../data/yoloGtold1/train/92519.png +../../data/yoloGtold1/train/92520.png +../../data/yoloGtold1/train/92521.png +../../data/yoloGtold1/train/92522.png +../../data/yoloGtold1/train/92523.png +../../data/yoloGtold1/train/92524.png +../../data/yoloGtold1/train/92525.png +../../data/yoloGtold1/train/92526.png +../../data/yoloGtold1/train/92527.png +../../data/yoloGtold1/train/92528.png +../../data/yoloGtold1/train/92529.png +../../data/yoloGtold1/train/92530.png +../../data/yoloGtold1/train/92531.png +../../data/yoloGtold1/train/92532.png +../../data/yoloGtold1/train/92533.png +../../data/yoloGtold1/train/92534.png +../../data/yoloGtold1/train/92535.png +../../data/yoloGtold1/train/92536.png +../../data/yoloGtold1/train/92537.png +../../data/yoloGtold1/train/92538.png +../../data/yoloGtold1/train/92539.png +../../data/yoloGtold1/train/92540.png +../../data/yoloGtold1/train/92541.png +../../data/yoloGtold1/train/92542.png +../../data/yoloGtold1/train/92543.png +../../data/yoloGtold1/train/92544.png +../../data/yoloGtold1/train/92545.png +../../data/yoloGtold1/train/92546.png +../../data/yoloGtold1/train/92547.png +../../data/yoloGtold1/train/92548.png +../../data/yoloGtold1/train/92549.png +../../data/yoloGtold1/train/92550.png +../../data/yoloGtold1/train/92551.png +../../data/yoloGtold1/train/92552.png +../../data/yoloGtold1/train/92553.png +../../data/yoloGtold1/train/92554.png +../../data/yoloGtold1/train/92555.png +../../data/yoloGtold1/train/92556.png +../../data/yoloGtold1/train/92557.png +../../data/yoloGtold1/train/92558.png +../../data/yoloGtold1/train/92559.png +../../data/yoloGtold1/train/92560.png +../../data/yoloGtold1/train/92561.png +../../data/yoloGtold1/train/92562.png +../../data/yoloGtold1/train/92563.png +../../data/yoloGtold1/train/92564.png +../../data/yoloGtold1/train/92565.png +../../data/yoloGtold1/train/92566.png +../../data/yoloGtold1/train/92567.png +../../data/yoloGtold1/train/92568.png +../../data/yoloGtold1/train/92569.png +../../data/yoloGtold1/train/92570.png +../../data/yoloGtold1/train/92571.png +../../data/yoloGtold1/train/92572.png +../../data/yoloGtold1/train/92573.png +../../data/yoloGtold1/train/92574.png +../../data/yoloGtold1/train/92575.png +../../data/yoloGtold1/train/92576.png +../../data/yoloGtold1/train/92577.png +../../data/yoloGtold1/train/92578.png +../../data/yoloGtold1/train/92579.png +../../data/yoloGtold1/train/92580.png +../../data/yoloGtold1/train/92581.png +../../data/yoloGtold1/train/92582.png +../../data/yoloGtold1/train/92583.png +../../data/yoloGtold1/train/92584.png +../../data/yoloGtold1/train/92585.png +../../data/yoloGtold1/train/92586.png +../../data/yoloGtold1/train/92587.png +../../data/yoloGtold1/train/92588.png +../../data/yoloGtold1/train/92589.png +../../data/yoloGtold1/train/92590.png +../../data/yoloGtold1/train/92591.png +../../data/yoloGtold1/train/92592.png +../../data/yoloGtold1/train/92593.png +../../data/yoloGtold1/train/92594.png +../../data/yoloGtold1/train/92595.png +../../data/yoloGtold1/train/92596.png +../../data/yoloGtold1/train/92597.png +../../data/yoloGtold1/train/92598.png +../../data/yoloGtold1/train/92599.png +../../data/yoloGtold1/train/92600.png +../../data/yoloGtold1/train/92601.png +../../data/yoloGtold1/train/92602.png +../../data/yoloGtold1/train/92603.png +../../data/yoloGtold1/train/92604.png +../../data/yoloGtold1/train/92605.png +../../data/yoloGtold1/train/92606.png +../../data/yoloGtold1/train/92607.png +../../data/yoloGtold1/train/92608.png +../../data/yoloGtold1/train/92609.png +../../data/yoloGtold1/train/92610.png +../../data/yoloGtold1/train/92611.png +../../data/yoloGtold1/train/92612.png +../../data/yoloGtold1/train/92613.png +../../data/yoloGtold1/train/92614.png +../../data/yoloGtold1/train/92615.png +../../data/yoloGtold1/train/92616.png +../../data/yoloGtold1/train/92617.png +../../data/yoloGtold1/train/92618.png +../../data/yoloGtold1/train/92619.png +../../data/yoloGtold1/train/92620.png +../../data/yoloGtold1/train/92621.png +../../data/yoloGtold1/train/92622.png +../../data/yoloGtold1/train/92623.png +../../data/yoloGtold1/train/92624.png +../../data/yoloGtold1/train/92625.png +../../data/yoloGtold1/train/92626.png +../../data/yoloGtold1/train/92627.png +../../data/yoloGtold1/train/92628.png +../../data/yoloGtold1/train/92629.png +../../data/yoloGtold1/train/92630.png +../../data/yoloGtold1/train/92631.png +../../data/yoloGtold1/train/92632.png +../../data/yoloGtold1/train/92633.png +../../data/yoloGtold1/train/92634.png +../../data/yoloGtold1/train/92635.png +../../data/yoloGtold1/train/92636.png +../../data/yoloGtold1/train/92637.png +../../data/yoloGtold1/train/92638.png +../../data/yoloGtold1/train/92639.png +../../data/yoloGtold1/train/92640.png +../../data/yoloGtold1/train/92641.png +../../data/yoloGtold1/train/92642.png +../../data/yoloGtold1/train/92643.png +../../data/yoloGtold1/train/92644.png +../../data/yoloGtold1/train/92645.png +../../data/yoloGtold1/train/92646.png +../../data/yoloGtold1/train/92647.png +../../data/yoloGtold1/train/92648.png +../../data/yoloGtold1/train/92649.png +../../data/yoloGtold1/train/92650.png +../../data/yoloGtold1/train/92651.png +../../data/yoloGtold1/train/92652.png +../../data/yoloGtold1/train/92653.png +../../data/yoloGtold1/train/92654.png +../../data/yoloGtold1/train/92655.png +../../data/yoloGtold1/train/92656.png +../../data/yoloGtold1/train/92657.png +../../data/yoloGtold1/train/92658.png +../../data/yoloGtold1/train/92659.png +../../data/yoloGtold1/train/92660.png +../../data/yoloGtold1/train/92661.png +../../data/yoloGtold1/train/92662.png +../../data/yoloGtold1/train/92663.png +../../data/yoloGtold1/train/92664.png +../../data/yoloGtold1/train/92665.png +../../data/yoloGtold1/train/92666.png +../../data/yoloGtold1/train/92667.png +../../data/yoloGtold1/train/92668.png +../../data/yoloGtold1/train/92669.png +../../data/yoloGtold1/train/92670.png +../../data/yoloGtold1/train/92671.png +../../data/yoloGtold1/train/92672.png +../../data/yoloGtold1/train/92673.png +../../data/yoloGtold1/train/92674.png +../../data/yoloGtold1/train/92675.png +../../data/yoloGtold1/train/92676.png +../../data/yoloGtold1/train/92677.png +../../data/yoloGtold1/train/92678.png +../../data/yoloGtold1/train/92679.png +../../data/yoloGtold1/train/92680.png +../../data/yoloGtold1/train/92681.png +../../data/yoloGtold1/train/92682.png +../../data/yoloGtold1/train/92683.png +../../data/yoloGtold1/train/92684.png +../../data/yoloGtold1/train/92685.png +../../data/yoloGtold1/train/92686.png +../../data/yoloGtold1/train/92687.png +../../data/yoloGtold1/train/92688.png +../../data/yoloGtold1/train/92689.png +../../data/yoloGtold1/train/92690.png +../../data/yoloGtold1/train/92691.png +../../data/yoloGtold1/train/92692.png +../../data/yoloGtold1/train/92693.png +../../data/yoloGtold1/train/92694.png +../../data/yoloGtold1/train/92695.png +../../data/yoloGtold1/train/92696.png +../../data/yoloGtold1/train/92697.png +../../data/yoloGtold1/train/92698.png +../../data/yoloGtold1/train/92699.png +../../data/yoloGtold1/train/92700.png +../../data/yoloGtold1/train/92701.png +../../data/yoloGtold1/train/92702.png +../../data/yoloGtold1/train/92703.png +../../data/yoloGtold1/train/92704.png +../../data/yoloGtold1/train/92705.png +../../data/yoloGtold1/train/92706.png +../../data/yoloGtold1/train/92707.png +../../data/yoloGtold1/train/92708.png +../../data/yoloGtold1/train/92709.png +../../data/yoloGtold1/train/92710.png +../../data/yoloGtold1/train/92711.png +../../data/yoloGtold1/train/92712.png +../../data/yoloGtold1/train/92713.png +../../data/yoloGtold1/train/92714.png +../../data/yoloGtold1/train/92715.png +../../data/yoloGtold1/train/92716.png +../../data/yoloGtold1/train/92717.png +../../data/yoloGtold1/train/92718.png +../../data/yoloGtold1/train/92719.png +../../data/yoloGtold1/train/92720.png +../../data/yoloGtold1/train/92721.png +../../data/yoloGtold1/train/92722.png +../../data/yoloGtold1/train/92723.png +../../data/yoloGtold1/train/92724.png +../../data/yoloGtold1/train/92725.png +../../data/yoloGtold1/train/92726.png +../../data/yoloGtold1/train/92727.png +../../data/yoloGtold1/train/92728.png +../../data/yoloGtold1/train/92729.png +../../data/yoloGtold1/train/92730.png +../../data/yoloGtold1/train/92731.png +../../data/yoloGtold1/train/92732.png +../../data/yoloGtold1/train/92733.png +../../data/yoloGtold1/train/92734.png +../../data/yoloGtold1/train/92735.png +../../data/yoloGtold1/train/92736.png +../../data/yoloGtold1/train/92737.png +../../data/yoloGtold1/train/92738.png +../../data/yoloGtold1/train/92739.png +../../data/yoloGtold1/train/92740.png +../../data/yoloGtold1/train/92741.png +../../data/yoloGtold1/train/92742.png +../../data/yoloGtold1/train/92743.png +../../data/yoloGtold1/train/92744.png +../../data/yoloGtold1/train/92745.png +../../data/yoloGtold1/train/92746.png +../../data/yoloGtold1/train/92747.png +../../data/yoloGtold1/train/92748.png +../../data/yoloGtold1/train/92749.png +../../data/yoloGtold1/train/92750.png +../../data/yoloGtold1/train/92751.png +../../data/yoloGtold1/train/92752.png +../../data/yoloGtold1/train/92753.png +../../data/yoloGtold1/train/92754.png +../../data/yoloGtold1/train/92755.png +../../data/yoloGtold1/train/92756.png +../../data/yoloGtold1/train/92757.png +../../data/yoloGtold1/train/92758.png +../../data/yoloGtold1/train/92759.png +../../data/yoloGtold1/train/92760.png +../../data/yoloGtold1/train/92761.png +../../data/yoloGtold1/train/92762.png +../../data/yoloGtold1/train/92763.png +../../data/yoloGtold1/train/92764.png +../../data/yoloGtold1/train/92765.png +../../data/yoloGtold1/train/92766.png +../../data/yoloGtold1/train/92767.png +../../data/yoloGtold1/train/92768.png +../../data/yoloGtold1/train/92769.png +../../data/yoloGtold1/train/92770.png +../../data/yoloGtold1/train/92771.png +../../data/yoloGtold1/train/92772.png +../../data/yoloGtold1/train/92773.png +../../data/yoloGtold1/train/92774.png +../../data/yoloGtold1/train/92775.png +../../data/yoloGtold1/train/92776.png +../../data/yoloGtold1/train/92777.png +../../data/yoloGtold1/train/92778.png +../../data/yoloGtold1/train/92779.png +../../data/yoloGtold1/train/92780.png +../../data/yoloGtold1/train/92781.png +../../data/yoloGtold1/train/92782.png +../../data/yoloGtold1/train/92783.png +../../data/yoloGtold1/train/92784.png +../../data/yoloGtold1/train/92785.png +../../data/yoloGtold1/train/92786.png +../../data/yoloGtold1/train/92787.png +../../data/yoloGtold1/train/92788.png +../../data/yoloGtold1/train/92789.png +../../data/yoloGtold1/train/92790.png +../../data/yoloGtold1/train/92791.png +../../data/yoloGtold1/train/92792.png +../../data/yoloGtold1/train/92793.png +../../data/yoloGtold1/train/92794.png +../../data/yoloGtold1/train/92795.png +../../data/yoloGtold1/train/92796.png +../../data/yoloGtold1/train/92797.png +../../data/yoloGtold1/train/92798.png +../../data/yoloGtold1/train/92799.png +../../data/yoloGtold1/train/92800.png +../../data/yoloGtold1/train/92801.png +../../data/yoloGtold1/train/92802.png +../../data/yoloGtold1/train/92803.png +../../data/yoloGtold1/train/92804.png +../../data/yoloGtold1/train/92805.png +../../data/yoloGtold1/train/92806.png +../../data/yoloGtold1/train/92807.png +../../data/yoloGtold1/train/92808.png +../../data/yoloGtold1/train/92809.png +../../data/yoloGtold1/train/92810.png +../../data/yoloGtold1/train/92811.png +../../data/yoloGtold1/train/92812.png +../../data/yoloGtold1/train/92813.png +../../data/yoloGtold1/train/92814.png +../../data/yoloGtold1/train/92815.png +../../data/yoloGtold1/train/92816.png +../../data/yoloGtold1/train/92817.png +../../data/yoloGtold1/train/92818.png +../../data/yoloGtold1/train/92819.png +../../data/yoloGtold1/train/92820.png +../../data/yoloGtold1/train/92821.png +../../data/yoloGtold1/train/92822.png +../../data/yoloGtold1/train/92823.png +../../data/yoloGtold1/train/92824.png +../../data/yoloGtold1/train/92825.png +../../data/yoloGtold1/train/92826.png +../../data/yoloGtold1/train/92827.png +../../data/yoloGtold1/train/92828.png +../../data/yoloGtold1/train/92829.png +../../data/yoloGtold1/train/92830.png +../../data/yoloGtold1/train/92831.png +../../data/yoloGtold1/train/92832.png +../../data/yoloGtold1/train/92833.png +../../data/yoloGtold1/train/92834.png +../../data/yoloGtold1/train/92835.png +../../data/yoloGtold1/train/92836.png +../../data/yoloGtold1/train/92837.png +../../data/yoloGtold1/train/92838.png +../../data/yoloGtold1/train/92839.png +../../data/yoloGtold1/train/92840.png +../../data/yoloGtold1/train/92841.png +../../data/yoloGtold1/train/92842.png +../../data/yoloGtold1/train/92843.png +../../data/yoloGtold1/train/92844.png +../../data/yoloGtold1/train/92845.png +../../data/yoloGtold1/train/92846.png +../../data/yoloGtold1/train/92847.png +../../data/yoloGtold1/train/92848.png +../../data/yoloGtold1/train/92849.png +../../data/yoloGtold1/train/92850.png +../../data/yoloGtold1/train/92851.png +../../data/yoloGtold1/train/92852.png +../../data/yoloGtold1/train/92853.png +../../data/yoloGtold1/train/92854.png +../../data/yoloGtold1/train/92855.png +../../data/yoloGtold1/train/92856.png +../../data/yoloGtold1/train/92857.png +../../data/yoloGtold1/train/92858.png +../../data/yoloGtold1/train/92859.png +../../data/yoloGtold1/train/92860.png +../../data/yoloGtold1/train/92861.png +../../data/yoloGtold1/train/92862.png +../../data/yoloGtold1/train/92863.png +../../data/yoloGtold1/train/92864.png +../../data/yoloGtold1/train/92865.png +../../data/yoloGtold1/train/92866.png +../../data/yoloGtold1/train/92867.png +../../data/yoloGtold1/train/92868.png +../../data/yoloGtold1/train/92869.png +../../data/yoloGtold1/train/92870.png +../../data/yoloGtold1/train/92871.png +../../data/yoloGtold1/train/92872.png +../../data/yoloGtold1/train/92873.png +../../data/yoloGtold1/train/92874.png +../../data/yoloGtold1/train/92875.png +../../data/yoloGtold1/train/92876.png +../../data/yoloGtold1/train/92877.png +../../data/yoloGtold1/train/92878.png +../../data/yoloGtold1/train/92879.png +../../data/yoloGtold1/train/92880.png +../../data/yoloGtold1/train/92881.png +../../data/yoloGtold1/train/92882.png +../../data/yoloGtold1/train/92883.png +../../data/yoloGtold1/train/92884.png +../../data/yoloGtold1/train/92885.png +../../data/yoloGtold1/train/92886.png +../../data/yoloGtold1/train/92887.png +../../data/yoloGtold1/train/92888.png +../../data/yoloGtold1/train/92889.png +../../data/yoloGtold1/train/92890.png +../../data/yoloGtold1/train/92891.png +../../data/yoloGtold1/train/92892.png +../../data/yoloGtold1/train/92893.png +../../data/yoloGtold1/train/92894.png +../../data/yoloGtold1/train/92895.png +../../data/yoloGtold1/train/92896.png +../../data/yoloGtold1/train/92897.png +../../data/yoloGtold1/train/92898.png +../../data/yoloGtold1/train/92899.png +../../data/yoloGtold1/train/92900.png +../../data/yoloGtold1/train/92901.png +../../data/yoloGtold1/train/92902.png +../../data/yoloGtold1/train/92903.png +../../data/yoloGtold1/train/92904.png +../../data/yoloGtold1/train/92905.png +../../data/yoloGtold1/train/92906.png +../../data/yoloGtold1/train/92907.png +../../data/yoloGtold1/train/92908.png +../../data/yoloGtold1/train/92909.png +../../data/yoloGtold1/train/92910.png +../../data/yoloGtold1/train/92911.png +../../data/yoloGtold1/train/92912.png +../../data/yoloGtold1/train/92913.png +../../data/yoloGtold1/train/92914.png +../../data/yoloGtold1/train/92915.png +../../data/yoloGtold1/train/92916.png +../../data/yoloGtold1/train/92917.png +../../data/yoloGtold1/train/92918.png +../../data/yoloGtold1/train/92919.png +../../data/yoloGtold1/train/92920.png +../../data/yoloGtold1/train/92921.png +../../data/yoloGtold1/train/92922.png +../../data/yoloGtold1/train/92923.png +../../data/yoloGtold1/train/92924.png +../../data/yoloGtold1/train/92925.png +../../data/yoloGtold1/train/92926.png +../../data/yoloGtold1/train/92927.png +../../data/yoloGtold1/train/92928.png +../../data/yoloGtold1/train/92929.png +../../data/yoloGtold1/train/92930.png +../../data/yoloGtold1/train/92931.png +../../data/yoloGtold1/train/92932.png +../../data/yoloGtold1/train/92933.png +../../data/yoloGtold1/train/92934.png +../../data/yoloGtold1/train/92935.png +../../data/yoloGtold1/train/92936.png +../../data/yoloGtold1/train/92937.png +../../data/yoloGtold1/train/92938.png +../../data/yoloGtold1/train/92939.png +../../data/yoloGtold1/train/92940.png +../../data/yoloGtold1/train/92941.png +../../data/yoloGtold1/train/92942.png +../../data/yoloGtold1/train/92943.png +../../data/yoloGtold1/train/92944.png +../../data/yoloGtold1/train/92945.png +../../data/yoloGtold1/train/92946.png +../../data/yoloGtold1/train/92947.png +../../data/yoloGtold1/train/92948.png +../../data/yoloGtold1/train/92949.png +../../data/yoloGtold1/train/92950.png +../../data/yoloGtold1/train/92951.png +../../data/yoloGtold1/train/92952.png +../../data/yoloGtold1/train/92953.png +../../data/yoloGtold1/train/92954.png +../../data/yoloGtold1/train/92955.png +../../data/yoloGtold1/train/92956.png +../../data/yoloGtold1/train/92957.png +../../data/yoloGtold1/train/92958.png +../../data/yoloGtold1/train/92959.png +../../data/yoloGtold1/train/92960.png +../../data/yoloGtold1/train/92961.png +../../data/yoloGtold1/train/92962.png +../../data/yoloGtold1/train/92963.png +../../data/yoloGtold1/train/92964.png +../../data/yoloGtold1/train/92965.png +../../data/yoloGtold1/train/92966.png +../../data/yoloGtold1/train/92967.png +../../data/yoloGtold1/train/92968.png +../../data/yoloGtold1/train/92969.png +../../data/yoloGtold1/train/92970.png +../../data/yoloGtold1/train/92971.png +../../data/yoloGtold1/train/92972.png +../../data/yoloGtold1/train/92973.png +../../data/yoloGtold1/train/92974.png +../../data/yoloGtold1/train/92975.png +../../data/yoloGtold1/train/92976.png +../../data/yoloGtold1/train/92977.png +../../data/yoloGtold1/train/92978.png +../../data/yoloGtold1/train/92979.png +../../data/yoloGtold1/train/92980.png +../../data/yoloGtold1/train/92981.png +../../data/yoloGtold1/train/92982.png +../../data/yoloGtold1/train/92983.png +../../data/yoloGtold1/train/92984.png +../../data/yoloGtold1/train/92985.png +../../data/yoloGtold1/train/92986.png +../../data/yoloGtold1/train/92987.png +../../data/yoloGtold1/train/92988.png +../../data/yoloGtold1/train/92989.png +../../data/yoloGtold1/train/92990.png +../../data/yoloGtold1/train/92991.png +../../data/yoloGtold1/train/92992.png +../../data/yoloGtold1/train/92993.png +../../data/yoloGtold1/train/92994.png +../../data/yoloGtold1/train/92995.png +../../data/yoloGtold1/train/92996.png +../../data/yoloGtold1/train/92997.png +../../data/yoloGtold1/train/92998.png +../../data/yoloGtold1/train/92999.png +../../data/yoloGtold1/train/93000.png +../../data/yoloGtold1/train/93001.png +../../data/yoloGtold1/train/93002.png +../../data/yoloGtold1/train/93003.png +../../data/yoloGtold1/train/93004.png +../../data/yoloGtold1/train/93005.png +../../data/yoloGtold1/train/93006.png +../../data/yoloGtold1/train/93007.png +../../data/yoloGtold1/train/93008.png +../../data/yoloGtold1/train/93009.png +../../data/yoloGtold1/train/93010.png +../../data/yoloGtold1/train/93011.png +../../data/yoloGtold1/train/93012.png +../../data/yoloGtold1/train/93013.png +../../data/yoloGtold1/train/93014.png +../../data/yoloGtold1/train/93015.png +../../data/yoloGtold1/train/93016.png +../../data/yoloGtold1/train/93017.png +../../data/yoloGtold1/train/93018.png +../../data/yoloGtold1/train/93019.png +../../data/yoloGtold1/train/93020.png +../../data/yoloGtold1/train/93021.png +../../data/yoloGtold1/train/93022.png +../../data/yoloGtold1/train/93023.png +../../data/yoloGtold1/train/93024.png +../../data/yoloGtold1/train/93025.png +../../data/yoloGtold1/train/93026.png +../../data/yoloGtold1/train/93027.png +../../data/yoloGtold1/train/93028.png +../../data/yoloGtold1/train/93029.png +../../data/yoloGtold1/train/93030.png +../../data/yoloGtold1/train/93031.png +../../data/yoloGtold1/train/93032.png +../../data/yoloGtold1/train/93033.png +../../data/yoloGtold1/train/93034.png +../../data/yoloGtold1/train/93035.png +../../data/yoloGtold1/train/93036.png +../../data/yoloGtold1/train/93037.png +../../data/yoloGtold1/train/93038.png +../../data/yoloGtold1/train/93039.png +../../data/yoloGtold1/train/93040.png +../../data/yoloGtold1/train/93041.png +../../data/yoloGtold1/train/93042.png +../../data/yoloGtold1/train/93043.png +../../data/yoloGtold1/train/93044.png +../../data/yoloGtold1/train/93045.png +../../data/yoloGtold1/train/93046.png +../../data/yoloGtold1/train/93047.png +../../data/yoloGtold1/train/93048.png +../../data/yoloGtold1/train/93049.png +../../data/yoloGtold1/train/93050.png +../../data/yoloGtold1/train/93051.png +../../data/yoloGtold1/train/93052.png +../../data/yoloGtold1/train/93053.png +../../data/yoloGtold1/train/93054.png +../../data/yoloGtold1/train/93055.png +../../data/yoloGtold1/train/93056.png +../../data/yoloGtold1/train/93057.png +../../data/yoloGtold1/train/93058.png +../../data/yoloGtold1/train/93059.png +../../data/yoloGtold1/train/93060.png +../../data/yoloGtold1/train/93061.png +../../data/yoloGtold1/train/93062.png +../../data/yoloGtold1/train/93063.png +../../data/yoloGtold1/train/93064.png +../../data/yoloGtold1/train/93065.png +../../data/yoloGtold1/train/93066.png +../../data/yoloGtold1/train/93067.png +../../data/yoloGtold1/train/93068.png +../../data/yoloGtold1/train/93069.png +../../data/yoloGtold1/train/93070.png +../../data/yoloGtold1/train/93071.png +../../data/yoloGtold1/train/93072.png +../../data/yoloGtold1/train/93073.png +../../data/yoloGtold1/train/93074.png +../../data/yoloGtold1/train/93075.png +../../data/yoloGtold1/train/93076.png +../../data/yoloGtold1/train/93077.png +../../data/yoloGtold1/train/93078.png +../../data/yoloGtold1/train/93079.png +../../data/yoloGtold1/train/93080.png +../../data/yoloGtold1/train/93081.png +../../data/yoloGtold1/train/93082.png +../../data/yoloGtold1/train/93083.png +../../data/yoloGtold1/train/93084.png +../../data/yoloGtold1/train/93085.png +../../data/yoloGtold1/train/93086.png +../../data/yoloGtold1/train/93087.png +../../data/yoloGtold1/train/93088.png +../../data/yoloGtold1/train/93089.png +../../data/yoloGtold1/train/93090.png +../../data/yoloGtold1/train/93091.png +../../data/yoloGtold1/train/93092.png +../../data/yoloGtold1/train/93093.png +../../data/yoloGtold1/train/93094.png +../../data/yoloGtold1/train/93095.png +../../data/yoloGtold1/train/93096.png +../../data/yoloGtold1/train/93097.png +../../data/yoloGtold1/train/93098.png +../../data/yoloGtold1/train/93099.png +../../data/yoloGtold1/train/93100.png +../../data/yoloGtold1/train/93101.png +../../data/yoloGtold1/train/93102.png +../../data/yoloGtold1/train/93103.png +../../data/yoloGtold1/train/93104.png +../../data/yoloGtold1/train/93105.png +../../data/yoloGtold1/train/93106.png +../../data/yoloGtold1/train/93107.png +../../data/yoloGtold1/train/93108.png +../../data/yoloGtold1/train/93109.png +../../data/yoloGtold1/train/93110.png +../../data/yoloGtold1/train/93111.png +../../data/yoloGtold1/train/93112.png +../../data/yoloGtold1/train/93113.png +../../data/yoloGtold1/train/93114.png +../../data/yoloGtold1/train/93115.png +../../data/yoloGtold1/train/93116.png +../../data/yoloGtold1/train/93117.png +../../data/yoloGtold1/train/93118.png +../../data/yoloGtold1/train/93119.png +../../data/yoloGtold1/train/93120.png +../../data/yoloGtold1/train/93121.png +../../data/yoloGtold1/train/93122.png +../../data/yoloGtold1/train/93123.png +../../data/yoloGtold1/train/93124.png +../../data/yoloGtold1/train/93125.png +../../data/yoloGtold1/train/93126.png +../../data/yoloGtold1/train/93127.png +../../data/yoloGtold1/train/93128.png +../../data/yoloGtold1/train/93129.png +../../data/yoloGtold1/train/93130.png +../../data/yoloGtold1/train/93131.png +../../data/yoloGtold1/train/93132.png +../../data/yoloGtold1/train/93133.png +../../data/yoloGtold1/train/93134.png +../../data/yoloGtold1/train/93135.png +../../data/yoloGtold1/train/93136.png +../../data/yoloGtold1/train/93137.png +../../data/yoloGtold1/train/93138.png +../../data/yoloGtold1/train/93139.png +../../data/yoloGtold1/train/93140.png +../../data/yoloGtold1/train/93141.png +../../data/yoloGtold1/train/93142.png +../../data/yoloGtold1/train/93143.png +../../data/yoloGtold1/train/93144.png +../../data/yoloGtold1/train/93145.png +../../data/yoloGtold1/train/93146.png +../../data/yoloGtold1/train/93147.png +../../data/yoloGtold1/train/93148.png +../../data/yoloGtold1/train/93149.png +../../data/yoloGtold1/train/93150.png +../../data/yoloGtold1/train/93151.png +../../data/yoloGtold1/train/93152.png +../../data/yoloGtold1/train/93153.png +../../data/yoloGtold1/train/93154.png +../../data/yoloGtold1/train/93155.png +../../data/yoloGtold1/train/93156.png +../../data/yoloGtold1/train/93157.png +../../data/yoloGtold1/train/93158.png +../../data/yoloGtold1/train/93159.png +../../data/yoloGtold1/train/93160.png +../../data/yoloGtold1/train/93161.png +../../data/yoloGtold1/train/93162.png +../../data/yoloGtold1/train/93163.png +../../data/yoloGtold1/train/93164.png +../../data/yoloGtold1/train/93165.png +../../data/yoloGtold1/train/93166.png +../../data/yoloGtold1/train/93167.png +../../data/yoloGtold1/train/93168.png +../../data/yoloGtold1/train/93169.png +../../data/yoloGtold1/train/93170.png +../../data/yoloGtold1/train/93171.png +../../data/yoloGtold1/train/93172.png +../../data/yoloGtold1/train/93173.png +../../data/yoloGtold1/train/93174.png +../../data/yoloGtold1/train/93175.png +../../data/yoloGtold1/train/93176.png +../../data/yoloGtold1/train/93177.png +../../data/yoloGtold1/train/93178.png +../../data/yoloGtold1/train/93179.png +../../data/yoloGtold1/train/93180.png +../../data/yoloGtold1/train/93181.png +../../data/yoloGtold1/train/93182.png +../../data/yoloGtold1/train/93183.png +../../data/yoloGtold1/train/93184.png +../../data/yoloGtold1/train/93185.png +../../data/yoloGtold1/train/93186.png +../../data/yoloGtold1/train/93187.png +../../data/yoloGtold1/train/93188.png +../../data/yoloGtold1/train/93189.png +../../data/yoloGtold1/train/93190.png +../../data/yoloGtold1/train/93191.png +../../data/yoloGtold1/train/93192.png +../../data/yoloGtold1/train/93193.png +../../data/yoloGtold1/train/93194.png +../../data/yoloGtold1/train/93195.png +../../data/yoloGtold1/train/93196.png +../../data/yoloGtold1/train/93197.png +../../data/yoloGtold1/train/93198.png +../../data/yoloGtold1/train/93199.png +../../data/yoloGtold1/train/93200.png +../../data/yoloGtold1/train/93201.png +../../data/yoloGtold1/train/93202.png +../../data/yoloGtold1/train/93203.png +../../data/yoloGtold1/train/93204.png +../../data/yoloGtold1/train/93205.png +../../data/yoloGtold1/train/93206.png +../../data/yoloGtold1/train/93207.png +../../data/yoloGtold1/train/93208.png +../../data/yoloGtold1/train/93209.png +../../data/yoloGtold1/train/93210.png +../../data/yoloGtold1/train/93211.png +../../data/yoloGtold1/train/93212.png +../../data/yoloGtold1/train/93213.png +../../data/yoloGtold1/train/93214.png +../../data/yoloGtold1/train/93215.png +../../data/yoloGtold1/train/93216.png +../../data/yoloGtold1/train/93217.png +../../data/yoloGtold1/train/93218.png +../../data/yoloGtold1/train/93219.png +../../data/yoloGtold1/train/93220.png +../../data/yoloGtold1/train/93221.png +../../data/yoloGtold1/train/93222.png +../../data/yoloGtold1/train/93223.png +../../data/yoloGtold1/train/93224.png +../../data/yoloGtold1/train/93225.png +../../data/yoloGtold1/train/93226.png +../../data/yoloGtold1/train/93227.png +../../data/yoloGtold1/train/93228.png +../../data/yoloGtold1/train/93229.png +../../data/yoloGtold1/train/93230.png +../../data/yoloGtold1/train/93231.png +../../data/yoloGtold1/train/93232.png +../../data/yoloGtold1/train/93233.png +../../data/yoloGtold1/train/93234.png +../../data/yoloGtold1/train/93235.png +../../data/yoloGtold1/train/93236.png +../../data/yoloGtold1/train/93237.png +../../data/yoloGtold1/train/93238.png +../../data/yoloGtold1/train/93239.png +../../data/yoloGtold1/train/93240.png +../../data/yoloGtold1/train/93241.png +../../data/yoloGtold1/train/93242.png +../../data/yoloGtold1/train/93243.png +../../data/yoloGtold1/train/93244.png +../../data/yoloGtold1/train/93245.png +../../data/yoloGtold1/train/93246.png +../../data/yoloGtold1/train/93247.png +../../data/yoloGtold1/train/93248.png +../../data/yoloGtold1/train/93249.png +../../data/yoloGtold1/train/93250.png +../../data/yoloGtold1/train/93251.png +../../data/yoloGtold1/train/93252.png +../../data/yoloGtold1/train/93253.png +../../data/yoloGtold1/train/93254.png +../../data/yoloGtold1/train/93255.png +../../data/yoloGtold1/train/93256.png +../../data/yoloGtold1/train/93257.png +../../data/yoloGtold1/train/93258.png +../../data/yoloGtold1/train/93259.png +../../data/yoloGtold1/train/93260.png +../../data/yoloGtold1/train/93261.png +../../data/yoloGtold1/train/93262.png +../../data/yoloGtold1/train/93263.png +../../data/yoloGtold1/train/93264.png +../../data/yoloGtold1/train/93265.png +../../data/yoloGtold1/train/93266.png +../../data/yoloGtold1/train/93267.png +../../data/yoloGtold1/train/93268.png +../../data/yoloGtold1/train/93269.png +../../data/yoloGtold1/train/93270.png +../../data/yoloGtold1/train/93271.png +../../data/yoloGtold1/train/93272.png +../../data/yoloGtold1/train/93273.png +../../data/yoloGtold1/train/93274.png +../../data/yoloGtold1/train/93275.png +../../data/yoloGtold1/train/93276.png +../../data/yoloGtold1/train/93277.png +../../data/yoloGtold1/train/93278.png +../../data/yoloGtold1/train/93279.png +../../data/yoloGtold1/train/93280.png +../../data/yoloGtold1/train/93281.png +../../data/yoloGtold1/train/93282.png +../../data/yoloGtold1/train/93283.png +../../data/yoloGtold1/train/93284.png +../../data/yoloGtold1/train/93285.png +../../data/yoloGtold1/train/93286.png +../../data/yoloGtold1/train/93287.png +../../data/yoloGtold1/train/93288.png +../../data/yoloGtold1/train/93289.png +../../data/yoloGtold1/train/93290.png +../../data/yoloGtold1/train/93291.png +../../data/yoloGtold1/train/93292.png +../../data/yoloGtold1/train/93293.png +../../data/yoloGtold1/train/93294.png +../../data/yoloGtold1/train/93295.png +../../data/yoloGtold1/train/93296.png +../../data/yoloGtold1/train/93297.png +../../data/yoloGtold1/train/93298.png +../../data/yoloGtold1/train/93299.png +../../data/yoloGtold1/train/93300.png +../../data/yoloGtold1/train/93301.png +../../data/yoloGtold1/train/93302.png +../../data/yoloGtold1/train/93303.png +../../data/yoloGtold1/train/93304.png +../../data/yoloGtold1/train/93305.png +../../data/yoloGtold1/train/93306.png +../../data/yoloGtold1/train/93307.png +../../data/yoloGtold1/train/93308.png +../../data/yoloGtold1/train/93309.png +../../data/yoloGtold1/train/93310.png +../../data/yoloGtold1/train/93311.png +../../data/yoloGtold1/train/93312.png +../../data/yoloGtold1/train/93313.png +../../data/yoloGtold1/train/93314.png +../../data/yoloGtold1/train/93315.png +../../data/yoloGtold1/train/93316.png +../../data/yoloGtold1/train/93317.png +../../data/yoloGtold1/train/93318.png +../../data/yoloGtold1/train/93319.png +../../data/yoloGtold1/train/93320.png +../../data/yoloGtold1/train/93321.png +../../data/yoloGtold1/train/93322.png +../../data/yoloGtold1/train/93323.png +../../data/yoloGtold1/train/93324.png +../../data/yoloGtold1/train/93325.png +../../data/yoloGtold1/train/93326.png +../../data/yoloGtold1/train/93327.png +../../data/yoloGtold1/train/93328.png +../../data/yoloGtold1/train/93329.png +../../data/yoloGtold1/train/93330.png +../../data/yoloGtold1/train/93331.png +../../data/yoloGtold1/train/93332.png +../../data/yoloGtold1/train/93333.png +../../data/yoloGtold1/train/93334.png +../../data/yoloGtold1/train/93335.png +../../data/yoloGtold1/train/93336.png +../../data/yoloGtold1/train/93337.png +../../data/yoloGtold1/train/93338.png +../../data/yoloGtold1/train/93339.png +../../data/yoloGtold1/train/93340.png +../../data/yoloGtold1/train/93341.png +../../data/yoloGtold1/train/93342.png +../../data/yoloGtold1/train/93343.png +../../data/yoloGtold1/train/93344.png +../../data/yoloGtold1/train/93345.png +../../data/yoloGtold1/train/93346.png +../../data/yoloGtold1/train/93347.png +../../data/yoloGtold1/train/93348.png +../../data/yoloGtold1/train/93349.png +../../data/yoloGtold1/train/93350.png +../../data/yoloGtold1/train/93351.png +../../data/yoloGtold1/train/93352.png +../../data/yoloGtold1/train/93353.png +../../data/yoloGtold1/train/93354.png +../../data/yoloGtold1/train/93355.png +../../data/yoloGtold1/train/93356.png +../../data/yoloGtold1/train/93357.png +../../data/yoloGtold1/train/93358.png +../../data/yoloGtold1/train/93359.png +../../data/yoloGtold1/train/93360.png +../../data/yoloGtold1/train/93361.png +../../data/yoloGtold1/train/93362.png +../../data/yoloGtold1/train/93363.png +../../data/yoloGtold1/train/93364.png +../../data/yoloGtold1/train/93365.png +../../data/yoloGtold1/train/93366.png +../../data/yoloGtold1/train/93367.png +../../data/yoloGtold1/train/93368.png +../../data/yoloGtold1/train/93369.png +../../data/yoloGtold1/train/93370.png +../../data/yoloGtold1/train/93371.png +../../data/yoloGtold1/train/93372.png +../../data/yoloGtold1/train/93373.png +../../data/yoloGtold1/train/93374.png +../../data/yoloGtold1/train/93375.png +../../data/yoloGtold1/train/93376.png +../../data/yoloGtold1/train/93377.png +../../data/yoloGtold1/train/93378.png +../../data/yoloGtold1/train/93379.png +../../data/yoloGtold1/train/93380.png +../../data/yoloGtold1/train/93381.png +../../data/yoloGtold1/train/93382.png +../../data/yoloGtold1/train/93383.png +../../data/yoloGtold1/train/93384.png +../../data/yoloGtold1/train/93385.png +../../data/yoloGtold1/train/93386.png +../../data/yoloGtold1/train/93387.png +../../data/yoloGtold1/train/93388.png +../../data/yoloGtold1/train/93389.png +../../data/yoloGtold1/train/93390.png +../../data/yoloGtold1/train/93391.png +../../data/yoloGtold1/train/93392.png +../../data/yoloGtold1/train/93393.png +../../data/yoloGtold1/train/93394.png +../../data/yoloGtold1/train/93395.png +../../data/yoloGtold1/train/93396.png +../../data/yoloGtold1/train/93397.png +../../data/yoloGtold1/train/93398.png +../../data/yoloGtold1/train/93399.png +../../data/yoloGtold1/train/93400.png +../../data/yoloGtold1/train/93401.png +../../data/yoloGtold1/train/93402.png +../../data/yoloGtold1/train/93403.png +../../data/yoloGtold1/train/93404.png +../../data/yoloGtold1/train/93405.png +../../data/yoloGtold1/train/93406.png +../../data/yoloGtold1/train/93407.png +../../data/yoloGtold1/train/93408.png +../../data/yoloGtold1/train/93409.png +../../data/yoloGtold1/train/93410.png +../../data/yoloGtold1/train/93411.png +../../data/yoloGtold1/train/93412.png +../../data/yoloGtold1/train/93413.png +../../data/yoloGtold1/train/93414.png +../../data/yoloGtold1/train/93415.png +../../data/yoloGtold1/train/93416.png +../../data/yoloGtold1/train/93417.png +../../data/yoloGtold1/train/93418.png +../../data/yoloGtold1/train/93419.png +../../data/yoloGtold1/train/93420.png +../../data/yoloGtold1/train/93421.png +../../data/yoloGtold1/train/93422.png +../../data/yoloGtold1/train/93423.png +../../data/yoloGtold1/train/93424.png +../../data/yoloGtold1/train/93425.png +../../data/yoloGtold1/train/93426.png +../../data/yoloGtold1/train/93427.png +../../data/yoloGtold1/train/93428.png +../../data/yoloGtold1/train/93429.png +../../data/yoloGtold1/train/93430.png +../../data/yoloGtold1/train/93431.png +../../data/yoloGtold1/train/93432.png +../../data/yoloGtold1/train/93433.png +../../data/yoloGtold1/train/93434.png +../../data/yoloGtold1/train/93435.png +../../data/yoloGtold1/train/93436.png +../../data/yoloGtold1/train/93437.png +../../data/yoloGtold1/train/93438.png +../../data/yoloGtold1/train/93439.png +../../data/yoloGtold1/train/93440.png +../../data/yoloGtold1/train/93441.png +../../data/yoloGtold1/train/93442.png +../../data/yoloGtold1/train/93443.png +../../data/yoloGtold1/train/93444.png +../../data/yoloGtold1/train/93445.png +../../data/yoloGtold1/train/93446.png +../../data/yoloGtold1/train/93447.png +../../data/yoloGtold1/train/93448.png +../../data/yoloGtold1/train/93449.png +../../data/yoloGtold1/train/93450.png +../../data/yoloGtold1/train/93451.png +../../data/yoloGtold1/train/93452.png +../../data/yoloGtold1/train/93453.png +../../data/yoloGtold1/train/93454.png +../../data/yoloGtold1/train/93455.png +../../data/yoloGtold1/train/93456.png +../../data/yoloGtold1/train/93457.png +../../data/yoloGtold1/train/93458.png +../../data/yoloGtold1/train/93459.png +../../data/yoloGtold1/train/93460.png +../../data/yoloGtold1/train/93461.png +../../data/yoloGtold1/train/93462.png +../../data/yoloGtold1/train/93463.png +../../data/yoloGtold1/train/93464.png +../../data/yoloGtold1/train/93465.png +../../data/yoloGtold1/train/93466.png +../../data/yoloGtold1/train/93467.png +../../data/yoloGtold1/train/93468.png +../../data/yoloGtold1/train/93469.png +../../data/yoloGtold1/train/93470.png +../../data/yoloGtold1/train/93471.png +../../data/yoloGtold1/train/93472.png +../../data/yoloGtold1/train/93473.png +../../data/yoloGtold1/train/93474.png +../../data/yoloGtold1/train/93475.png +../../data/yoloGtold1/train/93476.png +../../data/yoloGtold1/train/93477.png +../../data/yoloGtold1/train/93478.png +../../data/yoloGtold1/train/93479.png +../../data/yoloGtold1/train/93480.png +../../data/yoloGtold1/train/93481.png +../../data/yoloGtold1/train/93482.png +../../data/yoloGtold1/train/93483.png +../../data/yoloGtold1/train/93484.png +../../data/yoloGtold1/train/93485.png +../../data/yoloGtold1/train/93486.png +../../data/yoloGtold1/train/93487.png +../../data/yoloGtold1/train/93488.png +../../data/yoloGtold1/train/93489.png +../../data/yoloGtold1/train/93490.png +../../data/yoloGtold1/train/93491.png +../../data/yoloGtold1/train/93492.png +../../data/yoloGtold1/train/93493.png +../../data/yoloGtold1/train/93494.png +../../data/yoloGtold1/train/93495.png +../../data/yoloGtold1/train/93496.png +../../data/yoloGtold1/train/93497.png +../../data/yoloGtold1/train/93498.png +../../data/yoloGtold1/train/93499.png +../../data/yoloGtold1/train/93500.png +../../data/yoloGtold1/train/93501.png +../../data/yoloGtold1/train/93502.png +../../data/yoloGtold1/train/93503.png +../../data/yoloGtold1/train/93504.png +../../data/yoloGtold1/train/93505.png +../../data/yoloGtold1/train/93506.png +../../data/yoloGtold1/train/93507.png +../../data/yoloGtold1/train/93508.png +../../data/yoloGtold1/train/93509.png +../../data/yoloGtold1/train/93510.png +../../data/yoloGtold1/train/93511.png +../../data/yoloGtold1/train/93512.png +../../data/yoloGtold1/train/93513.png +../../data/yoloGtold1/train/93514.png +../../data/yoloGtold1/train/93515.png +../../data/yoloGtold1/train/93516.png +../../data/yoloGtold1/train/93517.png +../../data/yoloGtold1/train/93518.png +../../data/yoloGtold1/train/93519.png +../../data/yoloGtold1/train/93520.png +../../data/yoloGtold1/train/93521.png +../../data/yoloGtold1/train/93522.png +../../data/yoloGtold1/train/93523.png +../../data/yoloGtold1/train/93524.png +../../data/yoloGtold1/train/93525.png +../../data/yoloGtold1/train/93526.png +../../data/yoloGtold1/train/93527.png +../../data/yoloGtold1/train/93528.png +../../data/yoloGtold1/train/93529.png +../../data/yoloGtold1/train/93530.png +../../data/yoloGtold1/train/93531.png +../../data/yoloGtold1/train/93532.png +../../data/yoloGtold1/train/93533.png +../../data/yoloGtold1/train/93534.png +../../data/yoloGtold1/train/93535.png +../../data/yoloGtold1/train/93536.png +../../data/yoloGtold1/train/93537.png +../../data/yoloGtold1/train/93538.png +../../data/yoloGtold1/train/93539.png +../../data/yoloGtold1/train/93540.png +../../data/yoloGtold1/train/93541.png +../../data/yoloGtold1/train/93542.png +../../data/yoloGtold1/train/93543.png +../../data/yoloGtold1/train/93544.png +../../data/yoloGtold1/train/93545.png +../../data/yoloGtold1/train/93546.png +../../data/yoloGtold1/train/93547.png +../../data/yoloGtold1/train/93548.png +../../data/yoloGtold1/train/93549.png +../../data/yoloGtold1/train/93550.png +../../data/yoloGtold1/train/93551.png +../../data/yoloGtold1/train/93552.png +../../data/yoloGtold1/train/93553.png +../../data/yoloGtold1/train/93554.png +../../data/yoloGtold1/train/93555.png +../../data/yoloGtold1/train/93556.png +../../data/yoloGtold1/train/93557.png +../../data/yoloGtold1/train/93558.png +../../data/yoloGtold1/train/93559.png +../../data/yoloGtold1/train/93560.png +../../data/yoloGtold1/train/93561.png +../../data/yoloGtold1/train/93562.png +../../data/yoloGtold1/train/93563.png +../../data/yoloGtold1/train/93564.png +../../data/yoloGtold1/train/93565.png +../../data/yoloGtold1/train/93566.png +../../data/yoloGtold1/train/93567.png +../../data/yoloGtold1/train/93568.png +../../data/yoloGtold1/train/93569.png +../../data/yoloGtold1/train/93570.png +../../data/yoloGtold1/train/93571.png +../../data/yoloGtold1/train/93572.png +../../data/yoloGtold1/train/93573.png +../../data/yoloGtold1/train/93574.png +../../data/yoloGtold1/train/93575.png +../../data/yoloGtold1/train/93576.png +../../data/yoloGtold1/train/93577.png +../../data/yoloGtold1/train/93578.png +../../data/yoloGtold1/train/93579.png +../../data/yoloGtold1/train/93580.png +../../data/yoloGtold1/train/93581.png +../../data/yoloGtold1/train/93582.png +../../data/yoloGtold1/train/93583.png +../../data/yoloGtold1/train/93584.png +../../data/yoloGtold1/train/93585.png +../../data/yoloGtold1/train/93586.png +../../data/yoloGtold1/train/93587.png +../../data/yoloGtold1/train/93588.png +../../data/yoloGtold1/train/93589.png +../../data/yoloGtold1/train/93590.png +../../data/yoloGtold1/train/93591.png +../../data/yoloGtold1/train/93592.png +../../data/yoloGtold1/train/93593.png +../../data/yoloGtold1/train/93594.png +../../data/yoloGtold1/train/93595.png +../../data/yoloGtold1/train/93596.png +../../data/yoloGtold1/train/93597.png +../../data/yoloGtold1/train/93598.png +../../data/yoloGtold1/train/93599.png +../../data/yoloGtold1/train/93600.png +../../data/yoloGtold1/train/93601.png +../../data/yoloGtold1/train/93602.png +../../data/yoloGtold1/train/93603.png +../../data/yoloGtold1/train/93604.png +../../data/yoloGtold1/train/93605.png +../../data/yoloGtold1/train/93606.png +../../data/yoloGtold1/train/93607.png +../../data/yoloGtold1/train/93608.png +../../data/yoloGtold1/train/93609.png +../../data/yoloGtold1/train/93610.png +../../data/yoloGtold1/train/93611.png +../../data/yoloGtold1/train/93612.png +../../data/yoloGtold1/train/93613.png +../../data/yoloGtold1/train/93614.png +../../data/yoloGtold1/train/93615.png +../../data/yoloGtold1/train/93616.png +../../data/yoloGtold1/train/93617.png +../../data/yoloGtold1/train/93618.png +../../data/yoloGtold1/train/93619.png +../../data/yoloGtold1/train/93620.png +../../data/yoloGtold1/train/93621.png +../../data/yoloGtold1/train/93622.png +../../data/yoloGtold1/train/93623.png +../../data/yoloGtold1/train/93624.png +../../data/yoloGtold1/train/93625.png +../../data/yoloGtold1/train/93626.png +../../data/yoloGtold1/train/93627.png +../../data/yoloGtold1/train/93628.png +../../data/yoloGtold1/train/93629.png +../../data/yoloGtold1/train/93630.png +../../data/yoloGtold1/train/93631.png +../../data/yoloGtold1/train/93632.png +../../data/yoloGtold1/train/93633.png +../../data/yoloGtold1/train/93634.png +../../data/yoloGtold1/train/93635.png +../../data/yoloGtold1/train/93636.png +../../data/yoloGtold1/train/93637.png +../../data/yoloGtold1/train/93638.png +../../data/yoloGtold1/train/93639.png +../../data/yoloGtold1/train/93640.png +../../data/yoloGtold1/train/93641.png +../../data/yoloGtold1/train/93642.png +../../data/yoloGtold1/train/93643.png +../../data/yoloGtold1/train/93644.png +../../data/yoloGtold1/train/93645.png +../../data/yoloGtold1/train/93646.png +../../data/yoloGtold1/train/93647.png +../../data/yoloGtold1/train/93648.png +../../data/yoloGtold1/train/93649.png +../../data/yoloGtold1/train/93650.png +../../data/yoloGtold1/train/93651.png +../../data/yoloGtold1/train/93652.png +../../data/yoloGtold1/train/93653.png +../../data/yoloGtold1/train/93654.png +../../data/yoloGtold1/train/93655.png +../../data/yoloGtold1/train/93656.png +../../data/yoloGtold1/train/93657.png +../../data/yoloGtold1/train/93658.png +../../data/yoloGtold1/train/93659.png +../../data/yoloGtold1/train/93660.png +../../data/yoloGtold1/train/93661.png +../../data/yoloGtold1/train/93662.png +../../data/yoloGtold1/train/93663.png +../../data/yoloGtold1/train/93664.png +../../data/yoloGtold1/train/93665.png +../../data/yoloGtold1/train/93666.png +../../data/yoloGtold1/train/93667.png +../../data/yoloGtold1/train/93668.png +../../data/yoloGtold1/train/93669.png +../../data/yoloGtold1/train/93670.png +../../data/yoloGtold1/train/93671.png +../../data/yoloGtold1/train/93672.png +../../data/yoloGtold1/train/93673.png +../../data/yoloGtold1/train/93674.png +../../data/yoloGtold1/train/93675.png +../../data/yoloGtold1/train/93676.png +../../data/yoloGtold1/train/93677.png +../../data/yoloGtold1/train/93678.png +../../data/yoloGtold1/train/93679.png +../../data/yoloGtold1/train/93680.png +../../data/yoloGtold1/train/93681.png +../../data/yoloGtold1/train/93682.png +../../data/yoloGtold1/train/93683.png +../../data/yoloGtold1/train/93684.png +../../data/yoloGtold1/train/93685.png +../../data/yoloGtold1/train/93686.png +../../data/yoloGtold1/train/93687.png +../../data/yoloGtold1/train/93688.png +../../data/yoloGtold1/train/93689.png +../../data/yoloGtold1/train/93690.png +../../data/yoloGtold1/train/93691.png +../../data/yoloGtold1/train/93692.png +../../data/yoloGtold1/train/93693.png +../../data/yoloGtold1/train/93694.png +../../data/yoloGtold1/train/93695.png +../../data/yoloGtold1/train/93696.png +../../data/yoloGtold1/train/93697.png +../../data/yoloGtold1/train/93698.png +../../data/yoloGtold1/train/93699.png +../../data/yoloGtold1/train/93700.png +../../data/yoloGtold1/train/93701.png +../../data/yoloGtold1/train/93702.png +../../data/yoloGtold1/train/93703.png +../../data/yoloGtold1/train/93704.png +../../data/yoloGtold1/train/93705.png +../../data/yoloGtold1/train/93706.png +../../data/yoloGtold1/train/93707.png +../../data/yoloGtold1/train/93708.png +../../data/yoloGtold1/train/93709.png +../../data/yoloGtold1/train/93710.png +../../data/yoloGtold1/train/93711.png +../../data/yoloGtold1/train/93712.png +../../data/yoloGtold1/train/93713.png +../../data/yoloGtold1/train/93714.png +../../data/yoloGtold1/train/93715.png +../../data/yoloGtold1/train/93716.png +../../data/yoloGtold1/train/93717.png +../../data/yoloGtold1/train/93718.png +../../data/yoloGtold1/train/93719.png +../../data/yoloGtold1/train/93720.png +../../data/yoloGtold1/train/93721.png +../../data/yoloGtold1/train/93722.png +../../data/yoloGtold1/train/93723.png +../../data/yoloGtold1/train/93724.png +../../data/yoloGtold1/train/93725.png +../../data/yoloGtold1/train/93726.png +../../data/yoloGtold1/train/93727.png +../../data/yoloGtold1/train/93728.png +../../data/yoloGtold1/train/93729.png +../../data/yoloGtold1/train/93730.png +../../data/yoloGtold1/train/93731.png +../../data/yoloGtold1/train/93732.png +../../data/yoloGtold1/train/93733.png +../../data/yoloGtold1/train/93734.png +../../data/yoloGtold1/train/93735.png +../../data/yoloGtold1/train/93736.png +../../data/yoloGtold1/train/93737.png +../../data/yoloGtold1/train/93738.png +../../data/yoloGtold1/train/93739.png +../../data/yoloGtold1/train/93740.png +../../data/yoloGtold1/train/93741.png +../../data/yoloGtold1/train/93742.png +../../data/yoloGtold1/train/93743.png +../../data/yoloGtold1/train/93744.png +../../data/yoloGtold1/train/93745.png +../../data/yoloGtold1/train/93746.png +../../data/yoloGtold1/train/93747.png +../../data/yoloGtold1/train/93748.png +../../data/yoloGtold1/train/93749.png +../../data/yoloGtold1/train/93750.png +../../data/yoloGtold1/train/93751.png +../../data/yoloGtold1/train/93752.png +../../data/yoloGtold1/train/93753.png +../../data/yoloGtold1/train/93754.png +../../data/yoloGtold1/train/93755.png +../../data/yoloGtold1/train/93756.png +../../data/yoloGtold1/train/93757.png +../../data/yoloGtold1/train/93758.png +../../data/yoloGtold1/train/93759.png +../../data/yoloGtold1/train/93760.png +../../data/yoloGtold1/train/93761.png +../../data/yoloGtold1/train/93762.png +../../data/yoloGtold1/train/93763.png +../../data/yoloGtold1/train/93764.png +../../data/yoloGtold1/train/93765.png +../../data/yoloGtold1/train/93766.png +../../data/yoloGtold1/train/93767.png +../../data/yoloGtold1/train/93768.png +../../data/yoloGtold1/train/93769.png +../../data/yoloGtold1/train/93770.png +../../data/yoloGtold1/train/93771.png +../../data/yoloGtold1/train/93772.png +../../data/yoloGtold1/train/93773.png +../../data/yoloGtold1/train/93774.png +../../data/yoloGtold1/train/93775.png +../../data/yoloGtold1/train/93776.png +../../data/yoloGtold1/train/93777.png +../../data/yoloGtold1/train/93778.png +../../data/yoloGtold1/train/93779.png +../../data/yoloGtold1/train/93780.png +../../data/yoloGtold1/train/93781.png +../../data/yoloGtold1/train/93782.png +../../data/yoloGtold1/train/93783.png +../../data/yoloGtold1/train/93784.png +../../data/yoloGtold1/train/93785.png +../../data/yoloGtold1/train/93786.png +../../data/yoloGtold1/train/93787.png +../../data/yoloGtold1/train/93788.png +../../data/yoloGtold1/train/93789.png +../../data/yoloGtold1/train/93790.png +../../data/yoloGtold1/train/93791.png +../../data/yoloGtold1/train/93792.png +../../data/yoloGtold1/train/93793.png +../../data/yoloGtold1/train/93794.png +../../data/yoloGtold1/train/93795.png +../../data/yoloGtold1/train/93796.png +../../data/yoloGtold1/train/93797.png +../../data/yoloGtold1/train/93798.png +../../data/yoloGtold1/train/93799.png +../../data/yoloGtold1/train/93800.png +../../data/yoloGtold1/train/93801.png +../../data/yoloGtold1/train/93802.png +../../data/yoloGtold1/train/93803.png +../../data/yoloGtold1/train/93804.png +../../data/yoloGtold1/train/93805.png +../../data/yoloGtold1/train/93806.png +../../data/yoloGtold1/train/93807.png +../../data/yoloGtold1/train/93808.png +../../data/yoloGtold1/train/93809.png +../../data/yoloGtold1/train/93810.png +../../data/yoloGtold1/train/93811.png +../../data/yoloGtold1/train/93812.png +../../data/yoloGtold1/train/93813.png +../../data/yoloGtold1/train/93814.png +../../data/yoloGtold1/train/93815.png +../../data/yoloGtold1/train/93816.png +../../data/yoloGtold1/train/93817.png +../../data/yoloGtold1/train/93818.png +../../data/yoloGtold1/train/93819.png +../../data/yoloGtold1/train/93820.png +../../data/yoloGtold1/train/93821.png +../../data/yoloGtold1/train/93822.png +../../data/yoloGtold1/train/93823.png +../../data/yoloGtold1/train/93824.png +../../data/yoloGtold1/train/93825.png +../../data/yoloGtold1/train/93826.png +../../data/yoloGtold1/train/93827.png +../../data/yoloGtold1/train/93828.png +../../data/yoloGtold1/train/93829.png +../../data/yoloGtold1/train/93830.png +../../data/yoloGtold1/train/93831.png +../../data/yoloGtold1/train/93832.png +../../data/yoloGtold1/train/93833.png +../../data/yoloGtold1/train/93834.png +../../data/yoloGtold1/train/93835.png +../../data/yoloGtold1/train/93836.png +../../data/yoloGtold1/train/93837.png +../../data/yoloGtold1/train/93838.png +../../data/yoloGtold1/train/93839.png +../../data/yoloGtold1/train/93840.png +../../data/yoloGtold1/train/93841.png +../../data/yoloGtold1/train/93842.png +../../data/yoloGtold1/train/93843.png +../../data/yoloGtold1/train/93844.png +../../data/yoloGtold1/train/93845.png +../../data/yoloGtold1/train/93846.png +../../data/yoloGtold1/train/93847.png +../../data/yoloGtold1/train/93848.png +../../data/yoloGtold1/train/93849.png +../../data/yoloGtold1/train/93850.png +../../data/yoloGtold1/train/93851.png +../../data/yoloGtold1/train/93852.png +../../data/yoloGtold1/train/93853.png +../../data/yoloGtold1/train/93854.png +../../data/yoloGtold1/train/93855.png +../../data/yoloGtold1/train/93856.png +../../data/yoloGtold1/train/93857.png +../../data/yoloGtold1/train/93858.png +../../data/yoloGtold1/train/93859.png +../../data/yoloGtold1/train/93860.png +../../data/yoloGtold1/train/93861.png +../../data/yoloGtold1/train/93862.png +../../data/yoloGtold1/train/93863.png +../../data/yoloGtold1/train/93864.png +../../data/yoloGtold1/train/93865.png +../../data/yoloGtold1/train/93866.png +../../data/yoloGtold1/train/93867.png +../../data/yoloGtold1/train/93868.png +../../data/yoloGtold1/train/93869.png +../../data/yoloGtold1/train/93870.png +../../data/yoloGtold1/train/93871.png +../../data/yoloGtold1/train/93872.png +../../data/yoloGtold1/train/93873.png +../../data/yoloGtold1/train/93874.png +../../data/yoloGtold1/train/93875.png +../../data/yoloGtold1/train/93876.png +../../data/yoloGtold1/train/93877.png +../../data/yoloGtold1/train/93878.png +../../data/yoloGtold1/train/93879.png +../../data/yoloGtold1/train/93880.png +../../data/yoloGtold1/train/93881.png +../../data/yoloGtold1/train/93882.png +../../data/yoloGtold1/train/93883.png +../../data/yoloGtold1/train/93884.png +../../data/yoloGtold1/train/93885.png +../../data/yoloGtold1/train/93886.png +../../data/yoloGtold1/train/93887.png +../../data/yoloGtold1/train/93888.png +../../data/yoloGtold1/train/93889.png +../../data/yoloGtold1/train/93890.png +../../data/yoloGtold1/train/93891.png +../../data/yoloGtold1/train/93892.png +../../data/yoloGtold1/train/93893.png +../../data/yoloGtold1/train/93894.png +../../data/yoloGtold1/train/93895.png +../../data/yoloGtold1/train/93896.png +../../data/yoloGtold1/train/93897.png +../../data/yoloGtold1/train/93898.png +../../data/yoloGtold1/train/93899.png +../../data/yoloGtold1/train/93900.png +../../data/yoloGtold1/train/93901.png +../../data/yoloGtold1/train/93902.png +../../data/yoloGtold1/train/93903.png +../../data/yoloGtold1/train/93904.png +../../data/yoloGtold1/train/93905.png +../../data/yoloGtold1/train/93906.png +../../data/yoloGtold1/train/93907.png +../../data/yoloGtold1/train/93908.png +../../data/yoloGtold1/train/93909.png +../../data/yoloGtold1/train/93910.png +../../data/yoloGtold1/train/93911.png +../../data/yoloGtold1/train/93912.png +../../data/yoloGtold1/train/93913.png +../../data/yoloGtold1/train/93914.png +../../data/yoloGtold1/train/93915.png +../../data/yoloGtold1/train/93916.png +../../data/yoloGtold1/train/93917.png +../../data/yoloGtold1/train/93918.png +../../data/yoloGtold1/train/93919.png +../../data/yoloGtold1/train/93920.png +../../data/yoloGtold1/train/93921.png +../../data/yoloGtold1/train/93922.png +../../data/yoloGtold1/train/93923.png +../../data/yoloGtold1/train/93924.png +../../data/yoloGtold1/train/93925.png +../../data/yoloGtold1/train/93926.png +../../data/yoloGtold1/train/93927.png +../../data/yoloGtold1/train/93928.png +../../data/yoloGtold1/train/93929.png +../../data/yoloGtold1/train/93930.png +../../data/yoloGtold1/train/93931.png +../../data/yoloGtold1/train/93932.png +../../data/yoloGtold1/train/93933.png +../../data/yoloGtold1/train/93934.png +../../data/yoloGtold1/train/93935.png +../../data/yoloGtold1/train/93936.png +../../data/yoloGtold1/train/93937.png +../../data/yoloGtold1/train/93938.png +../../data/yoloGtold1/train/93939.png +../../data/yoloGtold1/train/93940.png +../../data/yoloGtold1/train/93941.png +../../data/yoloGtold1/train/93942.png +../../data/yoloGtold1/train/93943.png +../../data/yoloGtold1/train/93944.png +../../data/yoloGtold1/train/93945.png +../../data/yoloGtold1/train/93946.png +../../data/yoloGtold1/train/93947.png +../../data/yoloGtold1/train/93948.png +../../data/yoloGtold1/train/93949.png +../../data/yoloGtold1/train/93950.png +../../data/yoloGtold1/train/93951.png +../../data/yoloGtold1/train/93952.png +../../data/yoloGtold1/train/93953.png +../../data/yoloGtold1/train/93954.png +../../data/yoloGtold1/train/93955.png +../../data/yoloGtold1/train/93956.png +../../data/yoloGtold1/train/93957.png +../../data/yoloGtold1/train/93958.png +../../data/yoloGtold1/train/93959.png +../../data/yoloGtold1/train/93960.png +../../data/yoloGtold1/train/93961.png +../../data/yoloGtold1/train/93962.png +../../data/yoloGtold1/train/93963.png +../../data/yoloGtold1/train/93964.png +../../data/yoloGtold1/train/93965.png +../../data/yoloGtold1/train/93966.png +../../data/yoloGtold1/train/93967.png +../../data/yoloGtold1/train/93968.png +../../data/yoloGtold1/train/93969.png +../../data/yoloGtold1/train/93970.png +../../data/yoloGtold1/train/93971.png +../../data/yoloGtold1/train/93972.png +../../data/yoloGtold1/train/93973.png +../../data/yoloGtold1/train/93974.png +../../data/yoloGtold1/train/93975.png +../../data/yoloGtold1/train/93976.png +../../data/yoloGtold1/train/93977.png +../../data/yoloGtold1/train/93978.png +../../data/yoloGtold1/train/93979.png +../../data/yoloGtold1/train/93980.png +../../data/yoloGtold1/train/93981.png +../../data/yoloGtold1/train/93982.png +../../data/yoloGtold1/train/93983.png +../../data/yoloGtold1/train/93984.png +../../data/yoloGtold1/train/93985.png +../../data/yoloGtold1/train/93986.png +../../data/yoloGtold1/train/93987.png +../../data/yoloGtold1/train/93988.png +../../data/yoloGtold1/train/93989.png +../../data/yoloGtold1/train/93990.png +../../data/yoloGtold1/train/93991.png +../../data/yoloGtold1/train/93992.png +../../data/yoloGtold1/train/93993.png +../../data/yoloGtold1/train/93994.png +../../data/yoloGtold1/train/93995.png +../../data/yoloGtold1/train/93996.png +../../data/yoloGtold1/train/93997.png +../../data/yoloGtold1/train/93998.png +../../data/yoloGtold1/train/93999.png +../../data/yoloGtold1/train/94000.png +../../data/yoloGtold1/train/94001.png +../../data/yoloGtold1/train/94002.png +../../data/yoloGtold1/train/94003.png +../../data/yoloGtold1/train/94004.png +../../data/yoloGtold1/train/94005.png +../../data/yoloGtold1/train/94006.png +../../data/yoloGtold1/train/94007.png +../../data/yoloGtold1/train/94008.png +../../data/yoloGtold1/train/94009.png +../../data/yoloGtold1/train/94010.png +../../data/yoloGtold1/train/94011.png +../../data/yoloGtold1/train/94012.png +../../data/yoloGtold1/train/94013.png +../../data/yoloGtold1/train/94014.png +../../data/yoloGtold1/train/94015.png +../../data/yoloGtold1/train/94016.png +../../data/yoloGtold1/train/94017.png +../../data/yoloGtold1/train/94018.png +../../data/yoloGtold1/train/94019.png +../../data/yoloGtold1/train/94020.png +../../data/yoloGtold1/train/94021.png +../../data/yoloGtold1/train/94022.png +../../data/yoloGtold1/train/94023.png +../../data/yoloGtold1/train/94024.png +../../data/yoloGtold1/train/94025.png +../../data/yoloGtold1/train/94026.png +../../data/yoloGtold1/train/94027.png +../../data/yoloGtold1/train/94028.png +../../data/yoloGtold1/train/94029.png +../../data/yoloGtold1/train/94030.png +../../data/yoloGtold1/train/94031.png +../../data/yoloGtold1/train/94032.png +../../data/yoloGtold1/train/94033.png +../../data/yoloGtold1/train/94034.png +../../data/yoloGtold1/train/94035.png +../../data/yoloGtold1/train/94036.png +../../data/yoloGtold1/train/94037.png +../../data/yoloGtold1/train/94038.png +../../data/yoloGtold1/train/94039.png +../../data/yoloGtold1/train/94040.png +../../data/yoloGtold1/train/94041.png +../../data/yoloGtold1/train/94042.png +../../data/yoloGtold1/train/94043.png +../../data/yoloGtold1/train/94044.png +../../data/yoloGtold1/train/94045.png +../../data/yoloGtold1/train/94046.png +../../data/yoloGtold1/train/94047.png +../../data/yoloGtold1/train/94048.png +../../data/yoloGtold1/train/94049.png +../../data/yoloGtold1/train/94050.png +../../data/yoloGtold1/train/94051.png +../../data/yoloGtold1/train/94052.png +../../data/yoloGtold1/train/94053.png +../../data/yoloGtold1/train/94054.png +../../data/yoloGtold1/train/94055.png +../../data/yoloGtold1/train/94056.png +../../data/yoloGtold1/train/94057.png +../../data/yoloGtold1/train/94058.png +../../data/yoloGtold1/train/94059.png +../../data/yoloGtold1/train/94060.png +../../data/yoloGtold1/train/94061.png +../../data/yoloGtold1/train/94062.png +../../data/yoloGtold1/train/94063.png +../../data/yoloGtold1/train/94064.png +../../data/yoloGtold1/train/94065.png +../../data/yoloGtold1/train/94066.png +../../data/yoloGtold1/train/94067.png +../../data/yoloGtold1/train/94068.png +../../data/yoloGtold1/train/94069.png +../../data/yoloGtold1/train/94070.png +../../data/yoloGtold1/train/94071.png +../../data/yoloGtold1/train/94072.png +../../data/yoloGtold1/train/94073.png +../../data/yoloGtold1/train/94074.png +../../data/yoloGtold1/train/94075.png +../../data/yoloGtold1/train/94076.png +../../data/yoloGtold1/train/94077.png +../../data/yoloGtold1/train/94078.png +../../data/yoloGtold1/train/94079.png +../../data/yoloGtold1/train/94080.png +../../data/yoloGtold1/train/94081.png +../../data/yoloGtold1/train/94082.png +../../data/yoloGtold1/train/94083.png +../../data/yoloGtold1/train/94084.png +../../data/yoloGtold1/train/94085.png +../../data/yoloGtold1/train/94086.png +../../data/yoloGtold1/train/94087.png +../../data/yoloGtold1/train/94088.png +../../data/yoloGtold1/train/94089.png +../../data/yoloGtold1/train/94090.png +../../data/yoloGtold1/train/94091.png +../../data/yoloGtold1/train/94092.png +../../data/yoloGtold1/train/94093.png +../../data/yoloGtold1/train/94094.png +../../data/yoloGtold1/train/94095.png +../../data/yoloGtold1/train/94096.png +../../data/yoloGtold1/train/94097.png +../../data/yoloGtold1/train/94098.png +../../data/yoloGtold1/train/94099.png +../../data/yoloGtold1/train/94100.png +../../data/yoloGtold1/train/94101.png +../../data/yoloGtold1/train/94102.png +../../data/yoloGtold1/train/94103.png +../../data/yoloGtold1/train/94104.png +../../data/yoloGtold1/train/94105.png +../../data/yoloGtold1/train/94106.png +../../data/yoloGtold1/train/94107.png +../../data/yoloGtold1/train/94108.png +../../data/yoloGtold1/train/94109.png +../../data/yoloGtold1/train/94110.png +../../data/yoloGtold1/train/94111.png +../../data/yoloGtold1/train/94112.png +../../data/yoloGtold1/train/94113.png +../../data/yoloGtold1/train/94114.png +../../data/yoloGtold1/train/94115.png +../../data/yoloGtold1/train/94116.png +../../data/yoloGtold1/train/94117.png +../../data/yoloGtold1/train/94118.png +../../data/yoloGtold1/train/94119.png +../../data/yoloGtold1/train/94120.png +../../data/yoloGtold1/train/94121.png +../../data/yoloGtold1/train/94122.png +../../data/yoloGtold1/train/94123.png +../../data/yoloGtold1/train/94124.png +../../data/yoloGtold1/train/94125.png +../../data/yoloGtold1/train/94126.png +../../data/yoloGtold1/train/94127.png +../../data/yoloGtold1/train/94128.png +../../data/yoloGtold1/train/94129.png +../../data/yoloGtold1/train/94130.png +../../data/yoloGtold1/train/94131.png +../../data/yoloGtold1/train/94132.png +../../data/yoloGtold1/train/94133.png +../../data/yoloGtold1/train/94134.png +../../data/yoloGtold1/train/94135.png +../../data/yoloGtold1/train/94136.png +../../data/yoloGtold1/train/94137.png +../../data/yoloGtold1/train/94138.png +../../data/yoloGtold1/train/94139.png +../../data/yoloGtold1/train/94140.png +../../data/yoloGtold1/train/94141.png +../../data/yoloGtold1/train/94142.png +../../data/yoloGtold1/train/94143.png +../../data/yoloGtold1/train/94144.png +../../data/yoloGtold1/train/94145.png +../../data/yoloGtold1/train/94146.png +../../data/yoloGtold1/train/94147.png +../../data/yoloGtold1/train/94148.png +../../data/yoloGtold1/train/94149.png +../../data/yoloGtold1/train/94150.png +../../data/yoloGtold1/train/94151.png +../../data/yoloGtold1/train/94152.png +../../data/yoloGtold1/train/94153.png +../../data/yoloGtold1/train/94154.png +../../data/yoloGtold1/train/94155.png +../../data/yoloGtold1/train/94156.png +../../data/yoloGtold1/train/94157.png +../../data/yoloGtold1/train/94158.png +../../data/yoloGtold1/train/94159.png +../../data/yoloGtold1/train/94160.png +../../data/yoloGtold1/train/94161.png +../../data/yoloGtold1/train/94162.png +../../data/yoloGtold1/train/94163.png +../../data/yoloGtold1/train/94164.png +../../data/yoloGtold1/train/94165.png +../../data/yoloGtold1/train/94166.png +../../data/yoloGtold1/train/94167.png +../../data/yoloGtold1/train/94168.png +../../data/yoloGtold1/train/94169.png +../../data/yoloGtold1/train/94170.png +../../data/yoloGtold1/train/94171.png +../../data/yoloGtold1/train/94172.png +../../data/yoloGtold1/train/94173.png +../../data/yoloGtold1/train/94174.png +../../data/yoloGtold1/train/94175.png +../../data/yoloGtold1/train/94176.png +../../data/yoloGtold1/train/94177.png +../../data/yoloGtold1/train/94178.png +../../data/yoloGtold1/train/94179.png +../../data/yoloGtold1/train/94180.png +../../data/yoloGtold1/train/94181.png +../../data/yoloGtold1/train/94182.png +../../data/yoloGtold1/train/94183.png +../../data/yoloGtold1/train/94184.png +../../data/yoloGtold1/train/94185.png +../../data/yoloGtold1/train/94186.png +../../data/yoloGtold1/train/94187.png +../../data/yoloGtold1/train/94188.png +../../data/yoloGtold1/train/94189.png +../../data/yoloGtold1/train/94190.png +../../data/yoloGtold1/train/94191.png +../../data/yoloGtold1/train/94192.png +../../data/yoloGtold1/train/94193.png +../../data/yoloGtold1/train/94194.png +../../data/yoloGtold1/train/94195.png +../../data/yoloGtold1/train/94196.png +../../data/yoloGtold1/train/94197.png +../../data/yoloGtold1/train/94198.png +../../data/yoloGtold1/train/94199.png +../../data/yoloGtold1/train/94200.png +../../data/yoloGtold1/train/94201.png +../../data/yoloGtold1/train/94202.png +../../data/yoloGtold1/train/94203.png +../../data/yoloGtold1/train/94204.png +../../data/yoloGtold1/train/94205.png +../../data/yoloGtold1/train/94206.png +../../data/yoloGtold1/train/94207.png +../../data/yoloGtold1/train/94208.png +../../data/yoloGtold1/train/94209.png +../../data/yoloGtold1/train/94210.png +../../data/yoloGtold1/train/94211.png +../../data/yoloGtold1/train/94212.png +../../data/yoloGtold1/train/94213.png +../../data/yoloGtold1/train/94214.png +../../data/yoloGtold1/train/94215.png +../../data/yoloGtold1/train/94216.png +../../data/yoloGtold1/train/94217.png +../../data/yoloGtold1/train/94218.png +../../data/yoloGtold1/train/94219.png +../../data/yoloGtold1/train/94220.png +../../data/yoloGtold1/train/94221.png +../../data/yoloGtold1/train/94222.png +../../data/yoloGtold1/train/94223.png +../../data/yoloGtold1/train/94224.png +../../data/yoloGtold1/train/94225.png +../../data/yoloGtold1/train/94226.png +../../data/yoloGtold1/train/94227.png +../../data/yoloGtold1/train/94228.png +../../data/yoloGtold1/train/94229.png +../../data/yoloGtold1/train/94230.png +../../data/yoloGtold1/train/94231.png +../../data/yoloGtold1/train/94232.png +../../data/yoloGtold1/train/94233.png +../../data/yoloGtold1/train/94234.png +../../data/yoloGtold1/train/94235.png +../../data/yoloGtold1/train/94236.png +../../data/yoloGtold1/train/94237.png +../../data/yoloGtold1/train/94238.png +../../data/yoloGtold1/train/94239.png +../../data/yoloGtold1/train/94240.png +../../data/yoloGtold1/train/94241.png +../../data/yoloGtold1/train/94242.png +../../data/yoloGtold1/train/94243.png +../../data/yoloGtold1/train/94244.png +../../data/yoloGtold1/train/94245.png +../../data/yoloGtold1/train/94246.png +../../data/yoloGtold1/train/94247.png +../../data/yoloGtold1/train/94248.png +../../data/yoloGtold1/train/94249.png +../../data/yoloGtold1/train/94250.png +../../data/yoloGtold1/train/94251.png +../../data/yoloGtold1/train/94252.png +../../data/yoloGtold1/train/94253.png +../../data/yoloGtold1/train/94254.png +../../data/yoloGtold1/train/94255.png +../../data/yoloGtold1/train/94256.png +../../data/yoloGtold1/train/94257.png +../../data/yoloGtold1/train/94258.png +../../data/yoloGtold1/train/94259.png +../../data/yoloGtold1/train/94260.png +../../data/yoloGtold1/train/94261.png +../../data/yoloGtold1/train/94262.png +../../data/yoloGtold1/train/94263.png +../../data/yoloGtold1/train/94264.png +../../data/yoloGtold1/train/94265.png +../../data/yoloGtold1/train/94266.png +../../data/yoloGtold1/train/94267.png +../../data/yoloGtold1/train/94268.png +../../data/yoloGtold1/train/94269.png +../../data/yoloGtold1/train/94270.png +../../data/yoloGtold1/train/94271.png +../../data/yoloGtold1/train/94272.png +../../data/yoloGtold1/train/94273.png +../../data/yoloGtold1/train/94274.png +../../data/yoloGtold1/train/94275.png +../../data/yoloGtold1/train/94276.png +../../data/yoloGtold1/train/94277.png +../../data/yoloGtold1/train/94278.png +../../data/yoloGtold1/train/94279.png +../../data/yoloGtold1/train/94280.png +../../data/yoloGtold1/train/94281.png +../../data/yoloGtold1/train/94282.png +../../data/yoloGtold1/train/94283.png +../../data/yoloGtold1/train/94284.png +../../data/yoloGtold1/train/94285.png +../../data/yoloGtold1/train/94286.png +../../data/yoloGtold1/train/94287.png +../../data/yoloGtold1/train/94288.png +../../data/yoloGtold1/train/94289.png +../../data/yoloGtold1/train/94290.png +../../data/yoloGtold1/train/94291.png +../../data/yoloGtold1/train/94292.png +../../data/yoloGtold1/train/94293.png +../../data/yoloGtold1/train/94294.png +../../data/yoloGtold1/train/94295.png +../../data/yoloGtold1/train/94296.png +../../data/yoloGtold1/train/94297.png +../../data/yoloGtold1/train/94298.png +../../data/yoloGtold1/train/94299.png +../../data/yoloGtold1/train/94300.png +../../data/yoloGtold1/train/94301.png +../../data/yoloGtold1/train/94302.png +../../data/yoloGtold1/train/94303.png +../../data/yoloGtold1/train/94304.png +../../data/yoloGtold1/train/94305.png +../../data/yoloGtold1/train/94306.png +../../data/yoloGtold1/train/94307.png +../../data/yoloGtold1/train/94308.png +../../data/yoloGtold1/train/94309.png +../../data/yoloGtold1/train/94310.png +../../data/yoloGtold1/train/94311.png +../../data/yoloGtold1/train/94312.png +../../data/yoloGtold1/train/94313.png +../../data/yoloGtold1/train/94314.png +../../data/yoloGtold1/train/94315.png +../../data/yoloGtold1/train/94316.png +../../data/yoloGtold1/train/94317.png +../../data/yoloGtold1/train/94318.png +../../data/yoloGtold1/train/94319.png +../../data/yoloGtold1/train/94320.png +../../data/yoloGtold1/train/94321.png +../../data/yoloGtold1/train/94322.png +../../data/yoloGtold1/train/94323.png +../../data/yoloGtold1/train/94324.png +../../data/yoloGtold1/train/94325.png +../../data/yoloGtold1/train/94326.png +../../data/yoloGtold1/train/94327.png +../../data/yoloGtold1/train/94328.png +../../data/yoloGtold1/train/94329.png +../../data/yoloGtold1/train/94330.png +../../data/yoloGtold1/train/94331.png +../../data/yoloGtold1/train/94332.png +../../data/yoloGtold1/train/94333.png +../../data/yoloGtold1/train/94334.png +../../data/yoloGtold1/train/94335.png +../../data/yoloGtold1/train/94336.png +../../data/yoloGtold1/train/94337.png +../../data/yoloGtold1/train/94338.png +../../data/yoloGtold1/train/94339.png +../../data/yoloGtold1/train/94340.png +../../data/yoloGtold1/train/94341.png +../../data/yoloGtold1/train/94342.png +../../data/yoloGtold1/train/94343.png +../../data/yoloGtold1/train/94344.png +../../data/yoloGtold1/train/94345.png +../../data/yoloGtold1/train/94346.png +../../data/yoloGtold1/train/94347.png +../../data/yoloGtold1/train/94348.png +../../data/yoloGtold1/train/94349.png +../../data/yoloGtold1/train/94350.png +../../data/yoloGtold1/train/94351.png +../../data/yoloGtold1/train/94352.png +../../data/yoloGtold1/train/94353.png +../../data/yoloGtold1/train/94354.png +../../data/yoloGtold1/train/94355.png +../../data/yoloGtold1/train/94356.png +../../data/yoloGtold1/train/94357.png +../../data/yoloGtold1/train/94358.png +../../data/yoloGtold1/train/94359.png +../../data/yoloGtold1/train/94360.png +../../data/yoloGtold1/train/94361.png +../../data/yoloGtold1/train/94362.png +../../data/yoloGtold1/train/94363.png +../../data/yoloGtold1/train/94364.png +../../data/yoloGtold1/train/94365.png +../../data/yoloGtold1/train/94366.png +../../data/yoloGtold1/train/94367.png +../../data/yoloGtold1/train/94368.png +../../data/yoloGtold1/train/94369.png +../../data/yoloGtold1/train/94370.png +../../data/yoloGtold1/train/94371.png +../../data/yoloGtold1/train/94372.png +../../data/yoloGtold1/train/94373.png +../../data/yoloGtold1/train/94374.png +../../data/yoloGtold1/train/94375.png +../../data/yoloGtold1/train/94376.png +../../data/yoloGtold1/train/94377.png +../../data/yoloGtold1/train/94378.png +../../data/yoloGtold1/train/94379.png +../../data/yoloGtold1/train/94380.png +../../data/yoloGtold1/train/94381.png +../../data/yoloGtold1/train/94382.png +../../data/yoloGtold1/train/94383.png +../../data/yoloGtold1/train/94384.png +../../data/yoloGtold1/train/94385.png +../../data/yoloGtold1/train/94386.png +../../data/yoloGtold1/train/94387.png +../../data/yoloGtold1/train/94388.png +../../data/yoloGtold1/train/94389.png +../../data/yoloGtold1/train/94390.png +../../data/yoloGtold1/train/94391.png +../../data/yoloGtold1/train/94392.png +../../data/yoloGtold1/train/94393.png +../../data/yoloGtold1/train/94394.png +../../data/yoloGtold1/train/94395.png +../../data/yoloGtold1/train/94396.png +../../data/yoloGtold1/train/94397.png +../../data/yoloGtold1/train/94398.png +../../data/yoloGtold1/train/94399.png +../../data/yoloGtold1/train/94400.png +../../data/yoloGtold1/train/94401.png +../../data/yoloGtold1/train/94402.png +../../data/yoloGtold1/train/94403.png +../../data/yoloGtold1/train/94404.png +../../data/yoloGtold1/train/94405.png +../../data/yoloGtold1/train/94406.png +../../data/yoloGtold1/train/94407.png +../../data/yoloGtold1/train/94408.png +../../data/yoloGtold1/train/94409.png +../../data/yoloGtold1/train/94410.png +../../data/yoloGtold1/train/94411.png +../../data/yoloGtold1/train/94412.png +../../data/yoloGtold1/train/94413.png +../../data/yoloGtold1/train/94414.png +../../data/yoloGtold1/train/94415.png +../../data/yoloGtold1/train/94416.png +../../data/yoloGtold1/train/94417.png +../../data/yoloGtold1/train/94418.png +../../data/yoloGtold1/train/94419.png +../../data/yoloGtold1/train/94420.png +../../data/yoloGtold1/train/94421.png +../../data/yoloGtold1/train/94422.png +../../data/yoloGtold1/train/94423.png +../../data/yoloGtold1/train/94424.png +../../data/yoloGtold1/train/94425.png +../../data/yoloGtold1/train/94426.png +../../data/yoloGtold1/train/94427.png +../../data/yoloGtold1/train/94428.png +../../data/yoloGtold1/train/94429.png +../../data/yoloGtold1/train/94430.png +../../data/yoloGtold1/train/94431.png +../../data/yoloGtold1/train/94432.png +../../data/yoloGtold1/train/94433.png +../../data/yoloGtold1/train/94434.png +../../data/yoloGtold1/train/94435.png +../../data/yoloGtold1/train/94436.png +../../data/yoloGtold1/train/94437.png +../../data/yoloGtold1/train/94438.png +../../data/yoloGtold1/train/94439.png +../../data/yoloGtold1/train/94440.png +../../data/yoloGtold1/train/94441.png +../../data/yoloGtold1/train/94442.png +../../data/yoloGtold1/train/94443.png +../../data/yoloGtold1/train/94444.png +../../data/yoloGtold1/train/94445.png +../../data/yoloGtold1/train/94446.png +../../data/yoloGtold1/train/94447.png +../../data/yoloGtold1/train/94448.png +../../data/yoloGtold1/train/94449.png +../../data/yoloGtold1/train/94450.png +../../data/yoloGtold1/train/94451.png +../../data/yoloGtold1/train/94452.png +../../data/yoloGtold1/train/94453.png +../../data/yoloGtold1/train/94454.png +../../data/yoloGtold1/train/94455.png +../../data/yoloGtold1/train/94456.png +../../data/yoloGtold1/train/94457.png +../../data/yoloGtold1/train/94458.png +../../data/yoloGtold1/train/94459.png +../../data/yoloGtold1/train/94460.png +../../data/yoloGtold1/train/94461.png +../../data/yoloGtold1/train/94462.png +../../data/yoloGtold1/train/94463.png +../../data/yoloGtold1/train/94464.png +../../data/yoloGtold1/train/94465.png +../../data/yoloGtold1/train/94466.png +../../data/yoloGtold1/train/94467.png +../../data/yoloGtold1/train/94468.png +../../data/yoloGtold1/train/94469.png +../../data/yoloGtold1/train/94470.png +../../data/yoloGtold1/train/94471.png +../../data/yoloGtold1/train/94472.png +../../data/yoloGtold1/train/94473.png +../../data/yoloGtold1/train/94474.png +../../data/yoloGtold1/train/94475.png +../../data/yoloGtold1/train/94476.png +../../data/yoloGtold1/train/94477.png +../../data/yoloGtold1/train/94478.png +../../data/yoloGtold1/train/94479.png +../../data/yoloGtold1/train/94480.png +../../data/yoloGtold1/train/94481.png +../../data/yoloGtold1/train/94482.png +../../data/yoloGtold1/train/94483.png +../../data/yoloGtold1/train/94484.png +../../data/yoloGtold1/train/94485.png +../../data/yoloGtold1/train/94486.png +../../data/yoloGtold1/train/94487.png +../../data/yoloGtold1/train/94488.png +../../data/yoloGtold1/train/94489.png +../../data/yoloGtold1/train/94490.png +../../data/yoloGtold1/train/94491.png +../../data/yoloGtold1/train/94492.png +../../data/yoloGtold1/train/94493.png +../../data/yoloGtold1/train/94494.png +../../data/yoloGtold1/train/94495.png +../../data/yoloGtold1/train/94496.png +../../data/yoloGtold1/train/94497.png +../../data/yoloGtold1/train/94498.png +../../data/yoloGtold1/train/94499.png +../../data/yoloGtold1/train/94500.png +../../data/yoloGtold1/train/94501.png +../../data/yoloGtold1/train/94502.png +../../data/yoloGtold1/train/94503.png +../../data/yoloGtold1/train/94504.png +../../data/yoloGtold1/train/94505.png +../../data/yoloGtold1/train/94506.png +../../data/yoloGtold1/train/94507.png +../../data/yoloGtold1/train/94508.png +../../data/yoloGtold1/train/94509.png +../../data/yoloGtold1/train/94510.png +../../data/yoloGtold1/train/94511.png +../../data/yoloGtold1/train/94512.png +../../data/yoloGtold1/train/94513.png +../../data/yoloGtold1/train/94514.png +../../data/yoloGtold1/train/94515.png +../../data/yoloGtold1/train/94516.png +../../data/yoloGtold1/train/94517.png +../../data/yoloGtold1/train/94518.png +../../data/yoloGtold1/train/94519.png +../../data/yoloGtold1/train/94520.png +../../data/yoloGtold1/train/94521.png +../../data/yoloGtold1/train/94522.png +../../data/yoloGtold1/train/94523.png +../../data/yoloGtold1/train/94524.png +../../data/yoloGtold1/train/94525.png +../../data/yoloGtold1/train/94526.png +../../data/yoloGtold1/train/94527.png +../../data/yoloGtold1/train/94528.png +../../data/yoloGtold1/train/94529.png +../../data/yoloGtold1/train/94530.png +../../data/yoloGtold1/train/94531.png +../../data/yoloGtold1/train/94532.png +../../data/yoloGtold1/train/94533.png +../../data/yoloGtold1/train/94534.png +../../data/yoloGtold1/train/94535.png +../../data/yoloGtold1/train/94536.png +../../data/yoloGtold1/train/94537.png +../../data/yoloGtold1/train/94538.png +../../data/yoloGtold1/train/94539.png +../../data/yoloGtold1/train/94540.png +../../data/yoloGtold1/train/94541.png +../../data/yoloGtold1/train/94542.png +../../data/yoloGtold1/train/94543.png +../../data/yoloGtold1/train/94544.png +../../data/yoloGtold1/train/94545.png +../../data/yoloGtold1/train/94546.png +../../data/yoloGtold1/train/94547.png +../../data/yoloGtold1/train/94548.png +../../data/yoloGtold1/train/94549.png +../../data/yoloGtold1/train/94550.png +../../data/yoloGtold1/train/94551.png +../../data/yoloGtold1/train/94552.png +../../data/yoloGtold1/train/94553.png +../../data/yoloGtold1/train/94554.png +../../data/yoloGtold1/train/94555.png +../../data/yoloGtold1/train/94556.png +../../data/yoloGtold1/train/94557.png +../../data/yoloGtold1/train/94558.png +../../data/yoloGtold1/train/94559.png +../../data/yoloGtold1/train/94560.png +../../data/yoloGtold1/train/94561.png +../../data/yoloGtold1/train/94562.png +../../data/yoloGtold1/train/94563.png +../../data/yoloGtold1/train/94564.png +../../data/yoloGtold1/train/94565.png +../../data/yoloGtold1/train/94566.png +../../data/yoloGtold1/train/94567.png +../../data/yoloGtold1/train/94568.png +../../data/yoloGtold1/train/94569.png +../../data/yoloGtold1/train/94570.png +../../data/yoloGtold1/train/94571.png +../../data/yoloGtold1/train/94572.png +../../data/yoloGtold1/train/94573.png +../../data/yoloGtold1/train/94574.png +../../data/yoloGtold1/train/94575.png +../../data/yoloGtold1/train/94576.png +../../data/yoloGtold1/train/94577.png +../../data/yoloGtold1/train/94578.png +../../data/yoloGtold1/train/94579.png +../../data/yoloGtold1/train/94580.png +../../data/yoloGtold1/train/94581.png +../../data/yoloGtold1/train/94582.png +../../data/yoloGtold1/train/94583.png +../../data/yoloGtold1/train/94584.png +../../data/yoloGtold1/train/94585.png +../../data/yoloGtold1/train/94586.png +../../data/yoloGtold1/train/94587.png +../../data/yoloGtold1/train/94588.png +../../data/yoloGtold1/train/94589.png +../../data/yoloGtold1/train/94590.png +../../data/yoloGtold1/train/94591.png +../../data/yoloGtold1/train/94592.png +../../data/yoloGtold1/train/94593.png +../../data/yoloGtold1/train/94594.png +../../data/yoloGtold1/train/94595.png +../../data/yoloGtold1/train/94596.png +../../data/yoloGtold1/train/94597.png +../../data/yoloGtold1/train/94598.png +../../data/yoloGtold1/train/94599.png +../../data/yoloGtold1/train/94600.png +../../data/yoloGtold1/train/94601.png +../../data/yoloGtold1/train/94602.png +../../data/yoloGtold1/train/94603.png +../../data/yoloGtold1/train/94604.png +../../data/yoloGtold1/train/94605.png +../../data/yoloGtold1/train/94606.png +../../data/yoloGtold1/train/94607.png +../../data/yoloGtold1/train/94608.png +../../data/yoloGtold1/train/94609.png +../../data/yoloGtold1/train/94610.png +../../data/yoloGtold1/train/94611.png +../../data/yoloGtold1/train/94612.png +../../data/yoloGtold1/train/94613.png +../../data/yoloGtold1/train/94614.png +../../data/yoloGtold1/train/94615.png +../../data/yoloGtold1/train/94616.png +../../data/yoloGtold1/train/94617.png +../../data/yoloGtold1/train/94618.png +../../data/yoloGtold1/train/94619.png +../../data/yoloGtold1/train/94620.png +../../data/yoloGtold1/train/94621.png +../../data/yoloGtold1/train/94622.png +../../data/yoloGtold1/train/94623.png +../../data/yoloGtold1/train/94624.png +../../data/yoloGtold1/train/94625.png +../../data/yoloGtold1/train/94626.png +../../data/yoloGtold1/train/94627.png +../../data/yoloGtold1/train/94628.png +../../data/yoloGtold1/train/94629.png +../../data/yoloGtold1/train/94630.png +../../data/yoloGtold1/train/94631.png +../../data/yoloGtold1/train/94632.png +../../data/yoloGtold1/train/94633.png +../../data/yoloGtold1/train/94634.png +../../data/yoloGtold1/train/94635.png +../../data/yoloGtold1/train/94636.png +../../data/yoloGtold1/train/94637.png +../../data/yoloGtold1/train/94638.png +../../data/yoloGtold1/train/94639.png +../../data/yoloGtold1/train/94640.png +../../data/yoloGtold1/train/94641.png +../../data/yoloGtold1/train/94642.png +../../data/yoloGtold1/train/94643.png +../../data/yoloGtold1/train/94644.png +../../data/yoloGtold1/train/94645.png +../../data/yoloGtold1/train/94646.png +../../data/yoloGtold1/train/94647.png +../../data/yoloGtold1/train/94648.png +../../data/yoloGtold1/train/94649.png +../../data/yoloGtold1/train/94650.png +../../data/yoloGtold1/train/94651.png +../../data/yoloGtold1/train/94652.png +../../data/yoloGtold1/train/94653.png +../../data/yoloGtold1/train/94654.png +../../data/yoloGtold1/train/94655.png +../../data/yoloGtold1/train/94656.png +../../data/yoloGtold1/train/94657.png +../../data/yoloGtold1/train/94658.png +../../data/yoloGtold1/train/94659.png +../../data/yoloGtold1/train/94660.png +../../data/yoloGtold1/train/94661.png +../../data/yoloGtold1/train/94662.png +../../data/yoloGtold1/train/94663.png +../../data/yoloGtold1/train/94664.png +../../data/yoloGtold1/train/94665.png +../../data/yoloGtold1/train/94666.png +../../data/yoloGtold1/train/94667.png +../../data/yoloGtold1/train/94668.png +../../data/yoloGtold1/train/94669.png +../../data/yoloGtold1/train/94670.png +../../data/yoloGtold1/train/94671.png +../../data/yoloGtold1/train/94672.png +../../data/yoloGtold1/train/94673.png +../../data/yoloGtold1/train/94674.png +../../data/yoloGtold1/train/94675.png +../../data/yoloGtold1/train/94676.png +../../data/yoloGtold1/train/94677.png +../../data/yoloGtold1/train/94678.png +../../data/yoloGtold1/train/94679.png +../../data/yoloGtold1/train/94680.png +../../data/yoloGtold1/train/94681.png +../../data/yoloGtold1/train/94682.png +../../data/yoloGtold1/train/94683.png +../../data/yoloGtold1/train/94684.png +../../data/yoloGtold1/train/94685.png +../../data/yoloGtold1/train/94686.png +../../data/yoloGtold1/train/94687.png +../../data/yoloGtold1/train/94688.png +../../data/yoloGtold1/train/94689.png +../../data/yoloGtold1/train/94690.png +../../data/yoloGtold1/train/94691.png +../../data/yoloGtold1/train/94692.png +../../data/yoloGtold1/train/94693.png +../../data/yoloGtold1/train/94694.png +../../data/yoloGtold1/train/94695.png +../../data/yoloGtold1/train/94696.png +../../data/yoloGtold1/train/94697.png +../../data/yoloGtold1/train/94698.png +../../data/yoloGtold1/train/94699.png +../../data/yoloGtold1/train/94700.png +../../data/yoloGtold1/train/94701.png +../../data/yoloGtold1/train/94702.png +../../data/yoloGtold1/train/94703.png +../../data/yoloGtold1/train/94704.png +../../data/yoloGtold1/train/94705.png +../../data/yoloGtold1/train/94706.png +../../data/yoloGtold1/train/94707.png +../../data/yoloGtold1/train/94708.png +../../data/yoloGtold1/train/94709.png +../../data/yoloGtold1/train/94710.png +../../data/yoloGtold1/train/94711.png +../../data/yoloGtold1/train/94712.png +../../data/yoloGtold1/train/94713.png +../../data/yoloGtold1/train/94714.png +../../data/yoloGtold1/train/94715.png +../../data/yoloGtold1/train/94716.png +../../data/yoloGtold1/train/94717.png +../../data/yoloGtold1/train/94718.png +../../data/yoloGtold1/train/94719.png +../../data/yoloGtold1/train/94720.png +../../data/yoloGtold1/train/94721.png +../../data/yoloGtold1/train/94722.png +../../data/yoloGtold1/train/94723.png +../../data/yoloGtold1/train/94724.png +../../data/yoloGtold1/train/94725.png +../../data/yoloGtold1/train/94726.png +../../data/yoloGtold1/train/94727.png +../../data/yoloGtold1/train/94728.png +../../data/yoloGtold1/train/94729.png +../../data/yoloGtold1/train/94730.png +../../data/yoloGtold1/train/94731.png +../../data/yoloGtold1/train/94732.png +../../data/yoloGtold1/train/94733.png +../../data/yoloGtold1/train/94734.png +../../data/yoloGtold1/train/94735.png +../../data/yoloGtold1/train/94736.png +../../data/yoloGtold1/train/94737.png +../../data/yoloGtold1/train/94738.png +../../data/yoloGtold1/train/94739.png +../../data/yoloGtold1/train/94740.png +../../data/yoloGtold1/train/94741.png +../../data/yoloGtold1/train/94742.png +../../data/yoloGtold1/train/94743.png +../../data/yoloGtold1/train/94744.png +../../data/yoloGtold1/train/94745.png +../../data/yoloGtold1/train/94746.png +../../data/yoloGtold1/train/94747.png +../../data/yoloGtold1/train/94748.png +../../data/yoloGtold1/train/94749.png +../../data/yoloGtold1/train/94750.png +../../data/yoloGtold1/train/94751.png +../../data/yoloGtold1/train/94752.png +../../data/yoloGtold1/train/94753.png +../../data/yoloGtold1/train/94754.png +../../data/yoloGtold1/train/94755.png +../../data/yoloGtold1/train/94756.png +../../data/yoloGtold1/train/94757.png +../../data/yoloGtold1/train/94758.png +../../data/yoloGtold1/train/94759.png +../../data/yoloGtold1/train/94760.png +../../data/yoloGtold1/train/94761.png +../../data/yoloGtold1/train/94762.png +../../data/yoloGtold1/train/94763.png +../../data/yoloGtold1/train/94764.png +../../data/yoloGtold1/train/94765.png +../../data/yoloGtold1/train/94766.png +../../data/yoloGtold1/train/94767.png +../../data/yoloGtold1/train/94768.png +../../data/yoloGtold1/train/94769.png +../../data/yoloGtold1/train/94770.png +../../data/yoloGtold1/train/94771.png +../../data/yoloGtold1/train/94772.png +../../data/yoloGtold1/train/94773.png +../../data/yoloGtold1/train/94774.png +../../data/yoloGtold1/train/94775.png +../../data/yoloGtold1/train/94776.png +../../data/yoloGtold1/train/94777.png +../../data/yoloGtold1/train/94778.png +../../data/yoloGtold1/train/94779.png +../../data/yoloGtold1/train/94780.png +../../data/yoloGtold1/train/94781.png +../../data/yoloGtold1/train/94782.png +../../data/yoloGtold1/train/94783.png +../../data/yoloGtold1/train/94784.png +../../data/yoloGtold1/train/94785.png +../../data/yoloGtold1/train/94786.png +../../data/yoloGtold1/train/94787.png +../../data/yoloGtold1/train/94788.png +../../data/yoloGtold1/train/94789.png +../../data/yoloGtold1/train/94790.png +../../data/yoloGtold1/train/94791.png +../../data/yoloGtold1/train/94792.png +../../data/yoloGtold1/train/94793.png +../../data/yoloGtold1/train/94794.png +../../data/yoloGtold1/train/94795.png +../../data/yoloGtold1/train/94796.png +../../data/yoloGtold1/train/94797.png +../../data/yoloGtold1/train/94798.png +../../data/yoloGtold1/train/94799.png +../../data/yoloGtold1/train/94800.png +../../data/yoloGtold1/train/94801.png +../../data/yoloGtold1/train/94802.png +../../data/yoloGtold1/train/94803.png +../../data/yoloGtold1/train/94804.png +../../data/yoloGtold1/train/94805.png +../../data/yoloGtold1/train/94806.png +../../data/yoloGtold1/train/94807.png +../../data/yoloGtold1/train/94808.png +../../data/yoloGtold1/train/94809.png +../../data/yoloGtold1/train/94810.png +../../data/yoloGtold1/train/94811.png +../../data/yoloGtold1/train/94812.png +../../data/yoloGtold1/train/94813.png +../../data/yoloGtold1/train/94814.png +../../data/yoloGtold1/train/94815.png +../../data/yoloGtold1/train/94816.png +../../data/yoloGtold1/train/94817.png +../../data/yoloGtold1/train/94818.png +../../data/yoloGtold1/train/94819.png +../../data/yoloGtold1/train/94820.png +../../data/yoloGtold1/train/94821.png +../../data/yoloGtold1/train/94822.png +../../data/yoloGtold1/train/94823.png +../../data/yoloGtold1/train/94824.png +../../data/yoloGtold1/train/94825.png +../../data/yoloGtold1/train/94826.png +../../data/yoloGtold1/train/94827.png +../../data/yoloGtold1/train/94828.png +../../data/yoloGtold1/train/94829.png +../../data/yoloGtold1/train/94830.png +../../data/yoloGtold1/train/94831.png +../../data/yoloGtold1/train/94832.png +../../data/yoloGtold1/train/94833.png +../../data/yoloGtold1/train/94834.png +../../data/yoloGtold1/train/94835.png +../../data/yoloGtold1/train/94836.png +../../data/yoloGtold1/train/94837.png +../../data/yoloGtold1/train/94838.png +../../data/yoloGtold1/train/94839.png +../../data/yoloGtold1/train/94840.png +../../data/yoloGtold1/train/94841.png +../../data/yoloGtold1/train/94842.png +../../data/yoloGtold1/train/94843.png +../../data/yoloGtold1/train/94844.png +../../data/yoloGtold1/train/94845.png +../../data/yoloGtold1/train/94846.png +../../data/yoloGtold1/train/94847.png +../../data/yoloGtold1/train/94848.png +../../data/yoloGtold1/train/94849.png +../../data/yoloGtold1/train/94850.png +../../data/yoloGtold1/train/94851.png +../../data/yoloGtold1/train/94852.png +../../data/yoloGtold1/train/94853.png +../../data/yoloGtold1/train/94854.png +../../data/yoloGtold1/train/94855.png +../../data/yoloGtold1/train/94856.png +../../data/yoloGtold1/train/94857.png +../../data/yoloGtold1/train/94858.png +../../data/yoloGtold1/train/94859.png +../../data/yoloGtold1/train/94860.png +../../data/yoloGtold1/train/94861.png +../../data/yoloGtold1/train/94862.png +../../data/yoloGtold1/train/94863.png +../../data/yoloGtold1/train/94864.png +../../data/yoloGtold1/train/94865.png +../../data/yoloGtold1/train/94866.png +../../data/yoloGtold1/train/94867.png +../../data/yoloGtold1/train/94868.png +../../data/yoloGtold1/train/94869.png +../../data/yoloGtold1/train/94870.png +../../data/yoloGtold1/train/94871.png +../../data/yoloGtold1/train/94872.png +../../data/yoloGtold1/train/94873.png +../../data/yoloGtold1/train/94874.png +../../data/yoloGtold1/train/94875.png +../../data/yoloGtold1/train/94876.png +../../data/yoloGtold1/train/94877.png +../../data/yoloGtold1/train/94878.png +../../data/yoloGtold1/train/94879.png +../../data/yoloGtold1/train/94880.png +../../data/yoloGtold1/train/94881.png +../../data/yoloGtold1/train/94882.png +../../data/yoloGtold1/train/94883.png +../../data/yoloGtold1/train/94884.png +../../data/yoloGtold1/train/94885.png +../../data/yoloGtold1/train/94886.png +../../data/yoloGtold1/train/94887.png +../../data/yoloGtold1/train/94888.png +../../data/yoloGtold1/train/94889.png +../../data/yoloGtold1/train/94890.png +../../data/yoloGtold1/train/94891.png +../../data/yoloGtold1/train/94892.png +../../data/yoloGtold1/train/94893.png +../../data/yoloGtold1/train/94894.png +../../data/yoloGtold1/train/94895.png +../../data/yoloGtold1/train/94896.png +../../data/yoloGtold1/train/94897.png +../../data/yoloGtold1/train/94898.png +../../data/yoloGtold1/train/94899.png +../../data/yoloGtold1/train/94900.png +../../data/yoloGtold1/train/94901.png +../../data/yoloGtold1/train/94902.png +../../data/yoloGtold1/train/94903.png +../../data/yoloGtold1/train/94904.png +../../data/yoloGtold1/train/94905.png +../../data/yoloGtold1/train/94906.png +../../data/yoloGtold1/train/94907.png +../../data/yoloGtold1/train/94908.png +../../data/yoloGtold1/train/94909.png +../../data/yoloGtold1/train/94910.png +../../data/yoloGtold1/train/94911.png +../../data/yoloGtold1/train/94912.png +../../data/yoloGtold1/train/94913.png +../../data/yoloGtold1/train/94914.png +../../data/yoloGtold1/train/94915.png +../../data/yoloGtold1/train/94916.png +../../data/yoloGtold1/train/94917.png +../../data/yoloGtold1/train/94918.png +../../data/yoloGtold1/train/94919.png +../../data/yoloGtold1/train/94920.png +../../data/yoloGtold1/train/94921.png +../../data/yoloGtold1/train/94922.png +../../data/yoloGtold1/train/94923.png +../../data/yoloGtold1/train/94924.png +../../data/yoloGtold1/train/94925.png +../../data/yoloGtold1/train/94926.png +../../data/yoloGtold1/train/94927.png +../../data/yoloGtold1/train/94928.png +../../data/yoloGtold1/train/94929.png +../../data/yoloGtold1/train/94930.png +../../data/yoloGtold1/train/94931.png +../../data/yoloGtold1/train/94932.png +../../data/yoloGtold1/train/94933.png +../../data/yoloGtold1/train/94934.png +../../data/yoloGtold1/train/94935.png +../../data/yoloGtold1/train/94936.png +../../data/yoloGtold1/train/94937.png +../../data/yoloGtold1/train/94938.png +../../data/yoloGtold1/train/94939.png +../../data/yoloGtold1/train/94940.png +../../data/yoloGtold1/train/94941.png +../../data/yoloGtold1/train/94942.png +../../data/yoloGtold1/train/94943.png +../../data/yoloGtold1/train/94944.png +../../data/yoloGtold1/train/94945.png +../../data/yoloGtold1/train/94946.png +../../data/yoloGtold1/train/94947.png +../../data/yoloGtold1/train/94948.png +../../data/yoloGtold1/train/94949.png +../../data/yoloGtold1/train/94950.png +../../data/yoloGtold1/train/94951.png +../../data/yoloGtold1/train/94952.png +../../data/yoloGtold1/train/94953.png +../../data/yoloGtold1/train/94954.png +../../data/yoloGtold1/train/94955.png +../../data/yoloGtold1/train/94956.png +../../data/yoloGtold1/train/94957.png +../../data/yoloGtold1/train/94958.png +../../data/yoloGtold1/train/94959.png +../../data/yoloGtold1/train/94960.png +../../data/yoloGtold1/train/94961.png +../../data/yoloGtold1/train/94962.png +../../data/yoloGtold1/train/94963.png +../../data/yoloGtold1/train/94964.png +../../data/yoloGtold1/train/94965.png +../../data/yoloGtold1/train/94966.png +../../data/yoloGtold1/train/94967.png +../../data/yoloGtold1/train/94968.png +../../data/yoloGtold1/train/94969.png +../../data/yoloGtold1/train/94970.png +../../data/yoloGtold1/train/94971.png +../../data/yoloGtold1/train/94972.png +../../data/yoloGtold1/train/94973.png +../../data/yoloGtold1/train/94974.png +../../data/yoloGtold1/train/94975.png +../../data/yoloGtold1/train/94976.png +../../data/yoloGtold1/train/94977.png +../../data/yoloGtold1/train/94978.png +../../data/yoloGtold1/train/94979.png +../../data/yoloGtold1/train/94980.png +../../data/yoloGtold1/train/94981.png +../../data/yoloGtold1/train/94982.png +../../data/yoloGtold1/train/94983.png +../../data/yoloGtold1/train/94984.png +../../data/yoloGtold1/train/94985.png +../../data/yoloGtold1/train/94986.png +../../data/yoloGtold1/train/94987.png +../../data/yoloGtold1/train/94988.png +../../data/yoloGtold1/train/94989.png +../../data/yoloGtold1/train/94990.png +../../data/yoloGtold1/train/94991.png +../../data/yoloGtold1/train/94992.png +../../data/yoloGtold1/train/94993.png +../../data/yoloGtold1/train/94994.png +../../data/yoloGtold1/train/94995.png +../../data/yoloGtold1/train/94996.png +../../data/yoloGtold1/train/94997.png +../../data/yoloGtold1/train/94998.png +../../data/yoloGtold1/train/94999.png +../../data/yoloGtold1/train/95000.png +../../data/yoloGtold1/train/95001.png +../../data/yoloGtold1/train/95002.png +../../data/yoloGtold1/train/95003.png +../../data/yoloGtold1/train/95004.png +../../data/yoloGtold1/train/95005.png +../../data/yoloGtold1/train/95006.png +../../data/yoloGtold1/train/95007.png +../../data/yoloGtold1/train/95008.png +../../data/yoloGtold1/train/95009.png +../../data/yoloGtold1/train/95010.png +../../data/yoloGtold1/train/95011.png +../../data/yoloGtold1/train/95012.png +../../data/yoloGtold1/train/95013.png +../../data/yoloGtold1/train/95014.png +../../data/yoloGtold1/train/95015.png +../../data/yoloGtold1/train/95016.png +../../data/yoloGtold1/train/95017.png +../../data/yoloGtold1/train/95018.png +../../data/yoloGtold1/train/95019.png +../../data/yoloGtold1/train/95020.png +../../data/yoloGtold1/train/95021.png +../../data/yoloGtold1/train/95022.png +../../data/yoloGtold1/train/95023.png +../../data/yoloGtold1/train/95024.png +../../data/yoloGtold1/train/95025.png +../../data/yoloGtold1/train/95026.png +../../data/yoloGtold1/train/95027.png +../../data/yoloGtold1/train/95028.png +../../data/yoloGtold1/train/95029.png +../../data/yoloGtold1/train/95030.png +../../data/yoloGtold1/train/95031.png +../../data/yoloGtold1/train/95032.png +../../data/yoloGtold1/train/95033.png +../../data/yoloGtold1/train/95034.png +../../data/yoloGtold1/train/95035.png +../../data/yoloGtold1/train/95036.png +../../data/yoloGtold1/train/95037.png +../../data/yoloGtold1/train/95038.png +../../data/yoloGtold1/train/95039.png +../../data/yoloGtold1/train/95040.png +../../data/yoloGtold1/train/95041.png +../../data/yoloGtold1/train/95042.png +../../data/yoloGtold1/train/95043.png +../../data/yoloGtold1/train/95044.png +../../data/yoloGtold1/train/95045.png +../../data/yoloGtold1/train/95046.png +../../data/yoloGtold1/train/95047.png +../../data/yoloGtold1/train/95048.png +../../data/yoloGtold1/train/95049.png +../../data/yoloGtold1/train/95050.png +../../data/yoloGtold1/train/95051.png +../../data/yoloGtold1/train/95052.png +../../data/yoloGtold1/train/95053.png +../../data/yoloGtold1/train/95054.png +../../data/yoloGtold1/train/95055.png +../../data/yoloGtold1/train/95056.png +../../data/yoloGtold1/train/95057.png +../../data/yoloGtold1/train/95058.png +../../data/yoloGtold1/train/95059.png +../../data/yoloGtold1/train/95060.png +../../data/yoloGtold1/train/95061.png +../../data/yoloGtold1/train/95062.png +../../data/yoloGtold1/train/95063.png +../../data/yoloGtold1/train/95064.png +../../data/yoloGtold1/train/95065.png +../../data/yoloGtold1/train/95066.png +../../data/yoloGtold1/train/95067.png +../../data/yoloGtold1/train/95068.png +../../data/yoloGtold1/train/95069.png +../../data/yoloGtold1/train/95070.png +../../data/yoloGtold1/train/95071.png +../../data/yoloGtold1/train/95072.png +../../data/yoloGtold1/train/95073.png +../../data/yoloGtold1/train/95074.png +../../data/yoloGtold1/train/95075.png +../../data/yoloGtold1/train/95076.png +../../data/yoloGtold1/train/95077.png +../../data/yoloGtold1/train/95078.png +../../data/yoloGtold1/train/95079.png +../../data/yoloGtold1/train/95080.png +../../data/yoloGtold1/train/95081.png +../../data/yoloGtold1/train/95082.png +../../data/yoloGtold1/train/95083.png +../../data/yoloGtold1/train/95084.png +../../data/yoloGtold1/train/95085.png +../../data/yoloGtold1/train/95086.png +../../data/yoloGtold1/train/95087.png +../../data/yoloGtold1/train/95088.png +../../data/yoloGtold1/train/95089.png +../../data/yoloGtold1/train/95090.png +../../data/yoloGtold1/train/95091.png +../../data/yoloGtold1/train/95092.png +../../data/yoloGtold1/train/95093.png +../../data/yoloGtold1/train/95094.png +../../data/yoloGtold1/train/95095.png +../../data/yoloGtold1/train/95096.png +../../data/yoloGtold1/train/95097.png +../../data/yoloGtold1/train/95098.png +../../data/yoloGtold1/train/95099.png +../../data/yoloGtold1/train/95100.png +../../data/yoloGtold1/train/95101.png +../../data/yoloGtold1/train/95102.png +../../data/yoloGtold1/train/95103.png +../../data/yoloGtold1/train/95104.png +../../data/yoloGtold1/train/95105.png +../../data/yoloGtold1/train/95106.png +../../data/yoloGtold1/train/95107.png +../../data/yoloGtold1/train/95108.png +../../data/yoloGtold1/train/95109.png +../../data/yoloGtold1/train/95110.png +../../data/yoloGtold1/train/95111.png +../../data/yoloGtold1/train/95112.png +../../data/yoloGtold1/train/95113.png +../../data/yoloGtold1/train/95114.png +../../data/yoloGtold1/train/95115.png +../../data/yoloGtold1/train/95116.png +../../data/yoloGtold1/train/95117.png +../../data/yoloGtold1/train/95118.png +../../data/yoloGtold1/train/95119.png +../../data/yoloGtold1/train/95120.png +../../data/yoloGtold1/train/95121.png +../../data/yoloGtold1/train/95122.png +../../data/yoloGtold1/train/95123.png +../../data/yoloGtold1/train/95124.png +../../data/yoloGtold1/train/95125.png +../../data/yoloGtold1/train/95126.png +../../data/yoloGtold1/train/95127.png +../../data/yoloGtold1/train/95128.png +../../data/yoloGtold1/train/95129.png +../../data/yoloGtold1/train/95130.png +../../data/yoloGtold1/train/95131.png +../../data/yoloGtold1/train/95132.png +../../data/yoloGtold1/train/95133.png +../../data/yoloGtold1/train/95134.png +../../data/yoloGtold1/train/95135.png +../../data/yoloGtold1/train/95136.png +../../data/yoloGtold1/train/95137.png +../../data/yoloGtold1/train/95138.png +../../data/yoloGtold1/train/95139.png +../../data/yoloGtold1/train/95140.png +../../data/yoloGtold1/train/95141.png +../../data/yoloGtold1/train/95142.png +../../data/yoloGtold1/train/95143.png +../../data/yoloGtold1/train/95144.png +../../data/yoloGtold1/train/95145.png +../../data/yoloGtold1/train/95146.png +../../data/yoloGtold1/train/95147.png +../../data/yoloGtold1/train/95148.png +../../data/yoloGtold1/train/95149.png +../../data/yoloGtold1/train/95150.png +../../data/yoloGtold1/train/95151.png +../../data/yoloGtold1/train/95152.png +../../data/yoloGtold1/train/95153.png +../../data/yoloGtold1/train/95154.png +../../data/yoloGtold1/train/95155.png +../../data/yoloGtold1/train/95156.png +../../data/yoloGtold1/train/95157.png +../../data/yoloGtold1/train/95158.png +../../data/yoloGtold1/train/95159.png +../../data/yoloGtold1/train/95160.png +../../data/yoloGtold1/train/95161.png +../../data/yoloGtold1/train/95162.png +../../data/yoloGtold1/train/95163.png +../../data/yoloGtold1/train/95164.png +../../data/yoloGtold1/train/95165.png +../../data/yoloGtold1/train/95166.png +../../data/yoloGtold1/train/95167.png +../../data/yoloGtold1/train/95168.png +../../data/yoloGtold1/train/95169.png +../../data/yoloGtold1/train/95170.png +../../data/yoloGtold1/train/95171.png +../../data/yoloGtold1/train/95172.png +../../data/yoloGtold1/train/95173.png +../../data/yoloGtold1/train/95174.png +../../data/yoloGtold1/train/95175.png +../../data/yoloGtold1/train/95176.png +../../data/yoloGtold1/train/95177.png +../../data/yoloGtold1/train/95178.png +../../data/yoloGtold1/train/95179.png +../../data/yoloGtold1/train/95180.png +../../data/yoloGtold1/train/95181.png +../../data/yoloGtold1/train/95182.png +../../data/yoloGtold1/train/95183.png +../../data/yoloGtold1/train/95184.png +../../data/yoloGtold1/train/95185.png +../../data/yoloGtold1/train/95186.png +../../data/yoloGtold1/train/95187.png +../../data/yoloGtold1/train/95188.png +../../data/yoloGtold1/train/95189.png +../../data/yoloGtold1/train/95190.png +../../data/yoloGtold1/train/95191.png +../../data/yoloGtold1/train/95192.png +../../data/yoloGtold1/train/95193.png +../../data/yoloGtold1/train/95194.png +../../data/yoloGtold1/train/95195.png +../../data/yoloGtold1/train/95196.png +../../data/yoloGtold1/train/95197.png +../../data/yoloGtold1/train/95198.png +../../data/yoloGtold1/train/95199.png +../../data/yoloGtold1/train/95200.png +../../data/yoloGtold1/train/95201.png +../../data/yoloGtold1/train/95202.png +../../data/yoloGtold1/train/95203.png +../../data/yoloGtold1/train/95204.png +../../data/yoloGtold1/train/95205.png +../../data/yoloGtold1/train/95206.png +../../data/yoloGtold1/train/95207.png +../../data/yoloGtold1/train/95208.png +../../data/yoloGtold1/train/95209.png +../../data/yoloGtold1/train/95210.png +../../data/yoloGtold1/train/95211.png +../../data/yoloGtold1/train/95212.png +../../data/yoloGtold1/train/95213.png +../../data/yoloGtold1/train/95214.png +../../data/yoloGtold1/train/95215.png +../../data/yoloGtold1/train/95216.png +../../data/yoloGtold1/train/95217.png +../../data/yoloGtold1/train/95218.png +../../data/yoloGtold1/train/95219.png +../../data/yoloGtold1/train/95220.png +../../data/yoloGtold1/train/95221.png +../../data/yoloGtold1/train/95222.png +../../data/yoloGtold1/train/95223.png +../../data/yoloGtold1/train/95224.png +../../data/yoloGtold1/train/95225.png +../../data/yoloGtold1/train/95226.png +../../data/yoloGtold1/train/95227.png +../../data/yoloGtold1/train/95228.png +../../data/yoloGtold1/train/95229.png +../../data/yoloGtold1/train/95230.png +../../data/yoloGtold1/train/95231.png +../../data/yoloGtold1/train/95232.png +../../data/yoloGtold1/train/95233.png +../../data/yoloGtold1/train/95234.png +../../data/yoloGtold1/train/95235.png +../../data/yoloGtold1/train/95236.png +../../data/yoloGtold1/train/95237.png +../../data/yoloGtold1/train/95238.png +../../data/yoloGtold1/train/95239.png +../../data/yoloGtold1/train/95240.png +../../data/yoloGtold1/train/95241.png +../../data/yoloGtold1/train/95242.png +../../data/yoloGtold1/train/95243.png +../../data/yoloGtold1/train/95244.png +../../data/yoloGtold1/train/95245.png +../../data/yoloGtold1/train/95246.png +../../data/yoloGtold1/train/95247.png +../../data/yoloGtold1/train/95248.png +../../data/yoloGtold1/train/95249.png +../../data/yoloGtold1/train/95250.png +../../data/yoloGtold1/train/95251.png +../../data/yoloGtold1/train/95252.png +../../data/yoloGtold1/train/95253.png +../../data/yoloGtold1/train/95254.png +../../data/yoloGtold1/train/95255.png +../../data/yoloGtold1/train/95256.png +../../data/yoloGtold1/train/95257.png +../../data/yoloGtold1/train/95258.png +../../data/yoloGtold1/train/95259.png +../../data/yoloGtold1/train/95260.png +../../data/yoloGtold1/train/95261.png +../../data/yoloGtold1/train/95262.png +../../data/yoloGtold1/train/95263.png +../../data/yoloGtold1/train/95264.png +../../data/yoloGtold1/train/95265.png +../../data/yoloGtold1/train/95266.png +../../data/yoloGtold1/train/95267.png +../../data/yoloGtold1/train/95268.png +../../data/yoloGtold1/train/95269.png +../../data/yoloGtold1/train/95270.png +../../data/yoloGtold1/train/95271.png +../../data/yoloGtold1/train/95272.png +../../data/yoloGtold1/train/95273.png +../../data/yoloGtold1/train/95274.png +../../data/yoloGtold1/train/95275.png +../../data/yoloGtold1/train/95276.png +../../data/yoloGtold1/train/95277.png +../../data/yoloGtold1/train/95278.png +../../data/yoloGtold1/train/95279.png +../../data/yoloGtold1/train/95280.png +../../data/yoloGtold1/train/95281.png +../../data/yoloGtold1/train/95282.png +../../data/yoloGtold1/train/95283.png +../../data/yoloGtold1/train/95284.png +../../data/yoloGtold1/train/95285.png +../../data/yoloGtold1/train/95286.png +../../data/yoloGtold1/train/95287.png +../../data/yoloGtold1/train/95288.png +../../data/yoloGtold1/train/95289.png +../../data/yoloGtold1/train/95290.png +../../data/yoloGtold1/train/95291.png +../../data/yoloGtold1/train/95292.png +../../data/yoloGtold1/train/95293.png +../../data/yoloGtold1/train/95294.png +../../data/yoloGtold1/train/95295.png +../../data/yoloGtold1/train/95296.png +../../data/yoloGtold1/train/95297.png +../../data/yoloGtold1/train/95298.png +../../data/yoloGtold1/train/95299.png +../../data/yoloGtold1/train/95300.png +../../data/yoloGtold1/train/95301.png +../../data/yoloGtold1/train/95302.png +../../data/yoloGtold1/train/95303.png +../../data/yoloGtold1/train/95304.png +../../data/yoloGtold1/train/95305.png +../../data/yoloGtold1/train/95306.png +../../data/yoloGtold1/train/95307.png +../../data/yoloGtold1/train/95308.png +../../data/yoloGtold1/train/95309.png +../../data/yoloGtold1/train/95310.png +../../data/yoloGtold1/train/95311.png +../../data/yoloGtold1/train/95312.png +../../data/yoloGtold1/train/95313.png +../../data/yoloGtold1/train/95314.png +../../data/yoloGtold1/train/95315.png +../../data/yoloGtold1/train/95316.png +../../data/yoloGtold1/train/95317.png +../../data/yoloGtold1/train/95318.png +../../data/yoloGtold1/train/95319.png +../../data/yoloGtold1/train/95320.png +../../data/yoloGtold1/train/95321.png +../../data/yoloGtold1/train/95322.png +../../data/yoloGtold1/train/95323.png +../../data/yoloGtold1/train/95324.png +../../data/yoloGtold1/train/95325.png +../../data/yoloGtold1/train/95326.png +../../data/yoloGtold1/train/95327.png +../../data/yoloGtold1/train/95328.png +../../data/yoloGtold1/train/95329.png +../../data/yoloGtold1/train/95330.png +../../data/yoloGtold1/train/95331.png +../../data/yoloGtold1/train/95332.png +../../data/yoloGtold1/train/95333.png +../../data/yoloGtold1/train/95334.png +../../data/yoloGtold1/train/95335.png +../../data/yoloGtold1/train/95336.png +../../data/yoloGtold1/train/95337.png +../../data/yoloGtold1/train/95338.png +../../data/yoloGtold1/train/95339.png +../../data/yoloGtold1/train/95340.png +../../data/yoloGtold1/train/95341.png +../../data/yoloGtold1/train/95342.png +../../data/yoloGtold1/train/95343.png +../../data/yoloGtold1/train/95344.png +../../data/yoloGtold1/train/95345.png +../../data/yoloGtold1/train/95346.png +../../data/yoloGtold1/train/95347.png +../../data/yoloGtold1/train/95348.png +../../data/yoloGtold1/train/95349.png +../../data/yoloGtold1/train/95350.png +../../data/yoloGtold1/train/95351.png +../../data/yoloGtold1/train/95352.png +../../data/yoloGtold1/train/95353.png +../../data/yoloGtold1/train/95354.png +../../data/yoloGtold1/train/95355.png +../../data/yoloGtold1/train/95356.png +../../data/yoloGtold1/train/95357.png +../../data/yoloGtold1/train/95358.png +../../data/yoloGtold1/train/95359.png +../../data/yoloGtold1/train/95360.png +../../data/yoloGtold1/train/95361.png +../../data/yoloGtold1/train/95362.png +../../data/yoloGtold1/train/95363.png +../../data/yoloGtold1/train/95364.png +../../data/yoloGtold1/train/95365.png +../../data/yoloGtold1/train/95366.png +../../data/yoloGtold1/train/95367.png +../../data/yoloGtold1/train/95368.png +../../data/yoloGtold1/train/95369.png +../../data/yoloGtold1/train/95370.png +../../data/yoloGtold1/train/95371.png +../../data/yoloGtold1/train/95372.png +../../data/yoloGtold1/train/95373.png +../../data/yoloGtold1/train/95374.png +../../data/yoloGtold1/train/95375.png +../../data/yoloGtold1/train/95376.png +../../data/yoloGtold1/train/95377.png +../../data/yoloGtold1/train/95378.png +../../data/yoloGtold1/train/95379.png +../../data/yoloGtold1/train/95380.png +../../data/yoloGtold1/train/95381.png +../../data/yoloGtold1/train/95382.png +../../data/yoloGtold1/train/95383.png +../../data/yoloGtold1/train/95384.png +../../data/yoloGtold1/train/95385.png +../../data/yoloGtold1/train/95386.png +../../data/yoloGtold1/train/95387.png +../../data/yoloGtold1/train/95388.png +../../data/yoloGtold1/train/95389.png +../../data/yoloGtold1/train/95390.png +../../data/yoloGtold1/train/95391.png +../../data/yoloGtold1/train/95392.png +../../data/yoloGtold1/train/95393.png +../../data/yoloGtold1/train/95394.png +../../data/yoloGtold1/train/95395.png +../../data/yoloGtold1/train/95396.png +../../data/yoloGtold1/train/95397.png +../../data/yoloGtold1/train/95398.png +../../data/yoloGtold1/train/95399.png +../../data/yoloGtold1/train/95400.png +../../data/yoloGtold1/train/95401.png +../../data/yoloGtold1/train/95402.png +../../data/yoloGtold1/train/95403.png +../../data/yoloGtold1/train/95404.png +../../data/yoloGtold1/train/95405.png +../../data/yoloGtold1/train/95406.png +../../data/yoloGtold1/train/95407.png +../../data/yoloGtold1/train/95408.png +../../data/yoloGtold1/train/95409.png +../../data/yoloGtold1/train/95410.png +../../data/yoloGtold1/train/95411.png +../../data/yoloGtold1/train/95412.png +../../data/yoloGtold1/train/95413.png +../../data/yoloGtold1/train/95414.png +../../data/yoloGtold1/train/95415.png +../../data/yoloGtold1/train/95416.png +../../data/yoloGtold1/train/95417.png +../../data/yoloGtold1/train/95418.png +../../data/yoloGtold1/train/95419.png +../../data/yoloGtold1/train/95420.png +../../data/yoloGtold1/train/95421.png +../../data/yoloGtold1/train/95422.png +../../data/yoloGtold1/train/95423.png +../../data/yoloGtold1/train/95424.png +../../data/yoloGtold1/train/95425.png +../../data/yoloGtold1/train/95426.png +../../data/yoloGtold1/train/95427.png +../../data/yoloGtold1/train/95428.png +../../data/yoloGtold1/train/95429.png +../../data/yoloGtold1/train/95430.png +../../data/yoloGtold1/train/95431.png +../../data/yoloGtold1/train/95432.png +../../data/yoloGtold1/train/95433.png +../../data/yoloGtold1/train/95434.png +../../data/yoloGtold1/train/95435.png +../../data/yoloGtold1/train/95436.png +../../data/yoloGtold1/train/95437.png +../../data/yoloGtold1/train/95438.png +../../data/yoloGtold1/train/95439.png +../../data/yoloGtold1/train/95440.png +../../data/yoloGtold1/train/95441.png +../../data/yoloGtold1/train/95442.png +../../data/yoloGtold1/train/95443.png +../../data/yoloGtold1/train/95444.png +../../data/yoloGtold1/train/95445.png +../../data/yoloGtold1/train/95446.png +../../data/yoloGtold1/train/95447.png +../../data/yoloGtold1/train/95448.png +../../data/yoloGtold1/train/95449.png +../../data/yoloGtold1/train/95450.png +../../data/yoloGtold1/train/95451.png +../../data/yoloGtold1/train/95452.png +../../data/yoloGtold1/train/95453.png +../../data/yoloGtold1/train/95454.png +../../data/yoloGtold1/train/95455.png +../../data/yoloGtold1/train/95456.png +../../data/yoloGtold1/train/95457.png +../../data/yoloGtold1/train/95458.png +../../data/yoloGtold1/train/95459.png +../../data/yoloGtold1/train/95460.png +../../data/yoloGtold1/train/95461.png +../../data/yoloGtold1/train/95462.png +../../data/yoloGtold1/train/95463.png +../../data/yoloGtold1/train/95464.png +../../data/yoloGtold1/train/95465.png +../../data/yoloGtold1/train/95466.png +../../data/yoloGtold1/train/95467.png +../../data/yoloGtold1/train/95468.png +../../data/yoloGtold1/train/95469.png +../../data/yoloGtold1/train/95470.png +../../data/yoloGtold1/train/95471.png +../../data/yoloGtold1/train/95472.png +../../data/yoloGtold1/train/95473.png +../../data/yoloGtold1/train/95474.png +../../data/yoloGtold1/train/95475.png +../../data/yoloGtold1/train/95476.png +../../data/yoloGtold1/train/95477.png +../../data/yoloGtold1/train/95478.png +../../data/yoloGtold1/train/95479.png +../../data/yoloGtold1/train/95480.png +../../data/yoloGtold1/train/95481.png +../../data/yoloGtold1/train/95482.png +../../data/yoloGtold1/train/95483.png +../../data/yoloGtold1/train/95484.png +../../data/yoloGtold1/train/95485.png +../../data/yoloGtold1/train/95486.png +../../data/yoloGtold1/train/95487.png +../../data/yoloGtold1/train/95488.png +../../data/yoloGtold1/train/95489.png +../../data/yoloGtold1/train/95490.png +../../data/yoloGtold1/train/95491.png +../../data/yoloGtold1/train/95492.png +../../data/yoloGtold1/train/95493.png +../../data/yoloGtold1/train/95494.png +../../data/yoloGtold1/train/95495.png +../../data/yoloGtold1/train/95496.png +../../data/yoloGtold1/train/95497.png +../../data/yoloGtold1/train/95498.png +../../data/yoloGtold1/train/95499.png +../../data/yoloGtold1/train/95500.png +../../data/yoloGtold1/train/95501.png +../../data/yoloGtold1/train/95502.png +../../data/yoloGtold1/train/95503.png +../../data/yoloGtold1/train/95504.png +../../data/yoloGtold1/train/95505.png +../../data/yoloGtold1/train/95506.png +../../data/yoloGtold1/train/95507.png +../../data/yoloGtold1/train/95508.png +../../data/yoloGtold1/train/95509.png +../../data/yoloGtold1/train/95510.png +../../data/yoloGtold1/train/95511.png +../../data/yoloGtold1/train/95512.png +../../data/yoloGtold1/train/95513.png +../../data/yoloGtold1/train/95514.png +../../data/yoloGtold1/train/95515.png +../../data/yoloGtold1/train/95516.png +../../data/yoloGtold1/train/95517.png +../../data/yoloGtold1/train/95518.png +../../data/yoloGtold1/train/95519.png +../../data/yoloGtold1/train/95520.png +../../data/yoloGtold1/train/95521.png +../../data/yoloGtold1/train/95522.png +../../data/yoloGtold1/train/95523.png +../../data/yoloGtold1/train/95524.png +../../data/yoloGtold1/train/95525.png +../../data/yoloGtold1/train/95526.png +../../data/yoloGtold1/train/95527.png +../../data/yoloGtold1/train/95528.png +../../data/yoloGtold1/train/95529.png +../../data/yoloGtold1/train/95530.png +../../data/yoloGtold1/train/95531.png +../../data/yoloGtold1/train/95532.png +../../data/yoloGtold1/train/95533.png +../../data/yoloGtold1/train/95534.png +../../data/yoloGtold1/train/95535.png +../../data/yoloGtold1/train/95536.png +../../data/yoloGtold1/train/95537.png +../../data/yoloGtold1/train/95538.png +../../data/yoloGtold1/train/95539.png +../../data/yoloGtold1/train/95540.png +../../data/yoloGtold1/train/95541.png +../../data/yoloGtold1/train/95542.png +../../data/yoloGtold1/train/95543.png +../../data/yoloGtold1/train/95544.png +../../data/yoloGtold1/train/95545.png +../../data/yoloGtold1/train/95546.png +../../data/yoloGtold1/train/95547.png +../../data/yoloGtold1/train/95548.png +../../data/yoloGtold1/train/95549.png +../../data/yoloGtold1/train/95550.png +../../data/yoloGtold1/train/95551.png +../../data/yoloGtold1/train/95552.png +../../data/yoloGtold1/train/95553.png +../../data/yoloGtold1/train/95554.png +../../data/yoloGtold1/train/95555.png +../../data/yoloGtold1/train/95556.png +../../data/yoloGtold1/train/95557.png +../../data/yoloGtold1/train/95558.png +../../data/yoloGtold1/train/95559.png +../../data/yoloGtold1/train/95560.png +../../data/yoloGtold1/train/95561.png +../../data/yoloGtold1/train/95562.png +../../data/yoloGtold1/train/95563.png +../../data/yoloGtold1/train/95564.png +../../data/yoloGtold1/train/95565.png +../../data/yoloGtold1/train/95566.png +../../data/yoloGtold1/train/95567.png +../../data/yoloGtold1/train/95568.png +../../data/yoloGtold1/train/95569.png +../../data/yoloGtold1/train/95570.png +../../data/yoloGtold1/train/95571.png +../../data/yoloGtold1/train/95572.png +../../data/yoloGtold1/train/95573.png +../../data/yoloGtold1/train/95574.png +../../data/yoloGtold1/train/95575.png +../../data/yoloGtold1/train/95576.png +../../data/yoloGtold1/train/95577.png +../../data/yoloGtold1/train/95578.png +../../data/yoloGtold1/train/95579.png +../../data/yoloGtold1/train/95580.png +../../data/yoloGtold1/train/95581.png +../../data/yoloGtold1/train/95582.png +../../data/yoloGtold1/train/95583.png +../../data/yoloGtold1/train/95584.png +../../data/yoloGtold1/train/95585.png +../../data/yoloGtold1/train/95586.png +../../data/yoloGtold1/train/95587.png +../../data/yoloGtold1/train/95588.png +../../data/yoloGtold1/train/95589.png +../../data/yoloGtold1/train/95590.png +../../data/yoloGtold1/train/95591.png +../../data/yoloGtold1/train/95592.png +../../data/yoloGtold1/train/95593.png +../../data/yoloGtold1/train/95594.png +../../data/yoloGtold1/train/95595.png +../../data/yoloGtold1/train/95596.png +../../data/yoloGtold1/train/95597.png +../../data/yoloGtold1/train/95598.png +../../data/yoloGtold1/train/95599.png +../../data/yoloGtold1/train/95600.png +../../data/yoloGtold1/train/95601.png +../../data/yoloGtold1/train/95602.png +../../data/yoloGtold1/train/95603.png +../../data/yoloGtold1/train/95604.png +../../data/yoloGtold1/train/95605.png +../../data/yoloGtold1/train/95606.png +../../data/yoloGtold1/train/95607.png +../../data/yoloGtold1/train/95608.png +../../data/yoloGtold1/train/95609.png +../../data/yoloGtold1/train/95610.png +../../data/yoloGtold1/train/95611.png +../../data/yoloGtold1/train/95612.png +../../data/yoloGtold1/train/95613.png +../../data/yoloGtold1/train/95614.png +../../data/yoloGtold1/train/95615.png +../../data/yoloGtold1/train/95616.png +../../data/yoloGtold1/train/95617.png +../../data/yoloGtold1/train/95618.png +../../data/yoloGtold1/train/95619.png +../../data/yoloGtold1/train/95620.png +../../data/yoloGtold1/train/95621.png +../../data/yoloGtold1/train/95622.png +../../data/yoloGtold1/train/95623.png +../../data/yoloGtold1/train/95624.png +../../data/yoloGtold1/train/95625.png +../../data/yoloGtold1/train/95626.png +../../data/yoloGtold1/train/95627.png +../../data/yoloGtold1/train/95628.png +../../data/yoloGtold1/train/95629.png +../../data/yoloGtold1/train/95630.png +../../data/yoloGtold1/train/95631.png +../../data/yoloGtold1/train/95632.png +../../data/yoloGtold1/train/95633.png +../../data/yoloGtold1/train/95634.png +../../data/yoloGtold1/train/95635.png +../../data/yoloGtold1/train/95636.png +../../data/yoloGtold1/train/95637.png +../../data/yoloGtold1/train/95638.png +../../data/yoloGtold1/train/95639.png +../../data/yoloGtold1/train/95640.png +../../data/yoloGtold1/train/95641.png +../../data/yoloGtold1/train/95642.png +../../data/yoloGtold1/train/95643.png +../../data/yoloGtold1/train/95644.png +../../data/yoloGtold1/train/95645.png +../../data/yoloGtold1/train/95646.png +../../data/yoloGtold1/train/95647.png +../../data/yoloGtold1/train/95648.png +../../data/yoloGtold1/train/95649.png +../../data/yoloGtold1/train/95650.png +../../data/yoloGtold1/train/95651.png +../../data/yoloGtold1/train/95652.png +../../data/yoloGtold1/train/95653.png +../../data/yoloGtold1/train/95654.png +../../data/yoloGtold1/train/95655.png +../../data/yoloGtold1/train/95656.png +../../data/yoloGtold1/train/95657.png +../../data/yoloGtold1/train/95658.png +../../data/yoloGtold1/train/95659.png +../../data/yoloGtold1/train/95660.png +../../data/yoloGtold1/train/95661.png +../../data/yoloGtold1/train/95662.png +../../data/yoloGtold1/train/95663.png +../../data/yoloGtold1/train/95664.png +../../data/yoloGtold1/train/95665.png +../../data/yoloGtold1/train/95666.png +../../data/yoloGtold1/train/95667.png +../../data/yoloGtold1/train/95668.png +../../data/yoloGtold1/train/95669.png +../../data/yoloGtold1/train/95670.png +../../data/yoloGtold1/train/95671.png +../../data/yoloGtold1/train/95672.png +../../data/yoloGtold1/train/95673.png +../../data/yoloGtold1/train/95674.png +../../data/yoloGtold1/train/95675.png +../../data/yoloGtold1/train/95676.png +../../data/yoloGtold1/train/95677.png +../../data/yoloGtold1/train/95678.png +../../data/yoloGtold1/train/95679.png +../../data/yoloGtold1/train/95680.png +../../data/yoloGtold1/train/95681.png +../../data/yoloGtold1/train/95682.png +../../data/yoloGtold1/train/95683.png +../../data/yoloGtold1/train/95684.png +../../data/yoloGtold1/train/95685.png +../../data/yoloGtold1/train/95686.png +../../data/yoloGtold1/train/95687.png +../../data/yoloGtold1/train/95688.png +../../data/yoloGtold1/train/95689.png +../../data/yoloGtold1/train/95690.png +../../data/yoloGtold1/train/95691.png +../../data/yoloGtold1/train/95692.png +../../data/yoloGtold1/train/95693.png +../../data/yoloGtold1/train/95694.png +../../data/yoloGtold1/train/95695.png +../../data/yoloGtold1/train/95696.png +../../data/yoloGtold1/train/95697.png +../../data/yoloGtold1/train/95698.png +../../data/yoloGtold1/train/95699.png +../../data/yoloGtold1/train/95700.png +../../data/yoloGtold1/train/95701.png +../../data/yoloGtold1/train/95702.png +../../data/yoloGtold1/train/95703.png +../../data/yoloGtold1/train/95704.png +../../data/yoloGtold1/train/95705.png +../../data/yoloGtold1/train/95706.png +../../data/yoloGtold1/train/95707.png +../../data/yoloGtold1/train/95708.png +../../data/yoloGtold1/train/95709.png +../../data/yoloGtold1/train/95710.png +../../data/yoloGtold1/train/95711.png +../../data/yoloGtold1/train/95712.png +../../data/yoloGtold1/train/95713.png +../../data/yoloGtold1/train/95714.png +../../data/yoloGtold1/train/95715.png +../../data/yoloGtold1/train/95716.png +../../data/yoloGtold1/train/95717.png +../../data/yoloGtold1/train/95718.png +../../data/yoloGtold1/train/95719.png +../../data/yoloGtold1/train/95720.png +../../data/yoloGtold1/train/95721.png +../../data/yoloGtold1/train/95722.png +../../data/yoloGtold1/train/95723.png +../../data/yoloGtold1/train/95724.png +../../data/yoloGtold1/train/95725.png +../../data/yoloGtold1/train/95726.png +../../data/yoloGtold1/train/95727.png +../../data/yoloGtold1/train/95728.png +../../data/yoloGtold1/train/95729.png +../../data/yoloGtold1/train/95730.png +../../data/yoloGtold1/train/95731.png +../../data/yoloGtold1/train/95732.png +../../data/yoloGtold1/train/95733.png +../../data/yoloGtold1/train/95734.png +../../data/yoloGtold1/train/95735.png +../../data/yoloGtold1/train/95736.png +../../data/yoloGtold1/train/95737.png +../../data/yoloGtold1/train/95738.png +../../data/yoloGtold1/train/95739.png +../../data/yoloGtold1/train/95740.png +../../data/yoloGtold1/train/95741.png +../../data/yoloGtold1/train/95742.png +../../data/yoloGtold1/train/95743.png +../../data/yoloGtold1/train/95744.png +../../data/yoloGtold1/train/95745.png +../../data/yoloGtold1/train/95746.png +../../data/yoloGtold1/train/95747.png +../../data/yoloGtold1/train/95748.png +../../data/yoloGtold1/train/95749.png +../../data/yoloGtold1/train/95750.png +../../data/yoloGtold1/train/95751.png +../../data/yoloGtold1/train/95752.png +../../data/yoloGtold1/train/95753.png +../../data/yoloGtold1/train/95754.png +../../data/yoloGtold1/train/95755.png +../../data/yoloGtold1/train/95756.png +../../data/yoloGtold1/train/95757.png +../../data/yoloGtold1/train/95758.png +../../data/yoloGtold1/train/95759.png +../../data/yoloGtold1/train/95760.png +../../data/yoloGtold1/train/95761.png +../../data/yoloGtold1/train/95762.png +../../data/yoloGtold1/train/95763.png +../../data/yoloGtold1/train/95764.png +../../data/yoloGtold1/train/95765.png +../../data/yoloGtold1/train/95766.png +../../data/yoloGtold1/train/95767.png +../../data/yoloGtold1/train/95768.png +../../data/yoloGtold1/train/95769.png +../../data/yoloGtold1/train/95770.png +../../data/yoloGtold1/train/95771.png +../../data/yoloGtold1/train/95772.png +../../data/yoloGtold1/train/95773.png +../../data/yoloGtold1/train/95774.png +../../data/yoloGtold1/train/95775.png +../../data/yoloGtold1/train/95776.png +../../data/yoloGtold1/train/95777.png +../../data/yoloGtold1/train/95778.png +../../data/yoloGtold1/train/95779.png +../../data/yoloGtold1/train/95780.png +../../data/yoloGtold1/train/95781.png +../../data/yoloGtold1/train/95782.png +../../data/yoloGtold1/train/95783.png +../../data/yoloGtold1/train/95784.png +../../data/yoloGtold1/train/95785.png +../../data/yoloGtold1/train/95786.png +../../data/yoloGtold1/train/95787.png +../../data/yoloGtold1/train/95788.png +../../data/yoloGtold1/train/95789.png +../../data/yoloGtold1/train/95790.png +../../data/yoloGtold1/train/95791.png +../../data/yoloGtold1/train/95792.png +../../data/yoloGtold1/train/95793.png +../../data/yoloGtold1/train/95794.png +../../data/yoloGtold1/train/95795.png +../../data/yoloGtold1/train/95796.png +../../data/yoloGtold1/train/95797.png +../../data/yoloGtold1/train/95798.png +../../data/yoloGtold1/train/95799.png +../../data/yoloGtold1/train/95800.png +../../data/yoloGtold1/train/95801.png +../../data/yoloGtold1/train/95802.png +../../data/yoloGtold1/train/95803.png +../../data/yoloGtold1/train/95804.png +../../data/yoloGtold1/train/95805.png +../../data/yoloGtold1/train/95806.png +../../data/yoloGtold1/train/95807.png +../../data/yoloGtold1/train/95808.png +../../data/yoloGtold1/train/95809.png +../../data/yoloGtold1/train/95810.png +../../data/yoloGtold1/train/95811.png +../../data/yoloGtold1/train/95812.png +../../data/yoloGtold1/train/95813.png +../../data/yoloGtold1/train/95814.png +../../data/yoloGtold1/train/95815.png +../../data/yoloGtold1/train/95816.png +../../data/yoloGtold1/train/95817.png +../../data/yoloGtold1/train/95818.png +../../data/yoloGtold1/train/95819.png +../../data/yoloGtold1/train/95820.png +../../data/yoloGtold1/train/95821.png +../../data/yoloGtold1/train/95822.png +../../data/yoloGtold1/train/95823.png +../../data/yoloGtold1/train/95824.png +../../data/yoloGtold1/train/95825.png +../../data/yoloGtold1/train/95826.png +../../data/yoloGtold1/train/95827.png +../../data/yoloGtold1/train/95828.png +../../data/yoloGtold1/train/95829.png +../../data/yoloGtold1/train/95830.png +../../data/yoloGtold1/train/95831.png +../../data/yoloGtold1/train/95832.png +../../data/yoloGtold1/train/95833.png +../../data/yoloGtold1/train/95834.png +../../data/yoloGtold1/train/95835.png +../../data/yoloGtold1/train/95836.png +../../data/yoloGtold1/train/95837.png +../../data/yoloGtold1/train/95838.png +../../data/yoloGtold1/train/95839.png +../../data/yoloGtold1/train/95840.png +../../data/yoloGtold1/train/95841.png +../../data/yoloGtold1/train/95842.png +../../data/yoloGtold1/train/95843.png +../../data/yoloGtold1/train/95844.png +../../data/yoloGtold1/train/95845.png +../../data/yoloGtold1/train/95846.png +../../data/yoloGtold1/train/95847.png +../../data/yoloGtold1/train/95848.png +../../data/yoloGtold1/train/95849.png +../../data/yoloGtold1/train/95850.png +../../data/yoloGtold1/train/95851.png +../../data/yoloGtold1/train/95852.png +../../data/yoloGtold1/train/95853.png +../../data/yoloGtold1/train/95854.png +../../data/yoloGtold1/train/95855.png +../../data/yoloGtold1/train/95856.png +../../data/yoloGtold1/train/95857.png +../../data/yoloGtold1/train/95858.png +../../data/yoloGtold1/train/95859.png +../../data/yoloGtold1/train/95860.png +../../data/yoloGtold1/train/95861.png +../../data/yoloGtold1/train/95862.png +../../data/yoloGtold1/train/95863.png +../../data/yoloGtold1/train/95864.png +../../data/yoloGtold1/train/95865.png +../../data/yoloGtold1/train/95866.png +../../data/yoloGtold1/train/95867.png +../../data/yoloGtold1/train/95868.png +../../data/yoloGtold1/train/95869.png +../../data/yoloGtold1/train/95870.png +../../data/yoloGtold1/train/95871.png +../../data/yoloGtold1/train/95872.png +../../data/yoloGtold1/train/95873.png +../../data/yoloGtold1/train/95874.png +../../data/yoloGtold1/train/95875.png +../../data/yoloGtold1/train/95876.png +../../data/yoloGtold1/train/95877.png +../../data/yoloGtold1/train/95878.png +../../data/yoloGtold1/train/95879.png +../../data/yoloGtold1/train/95880.png +../../data/yoloGtold1/train/95881.png +../../data/yoloGtold1/train/95882.png +../../data/yoloGtold1/train/95883.png +../../data/yoloGtold1/train/95884.png +../../data/yoloGtold1/train/95885.png +../../data/yoloGtold1/train/95886.png +../../data/yoloGtold1/train/95887.png +../../data/yoloGtold1/train/95888.png +../../data/yoloGtold1/train/95889.png +../../data/yoloGtold1/train/95890.png +../../data/yoloGtold1/train/95891.png +../../data/yoloGtold1/train/95892.png +../../data/yoloGtold1/train/95893.png +../../data/yoloGtold1/train/95894.png +../../data/yoloGtold1/train/95895.png +../../data/yoloGtold1/train/95896.png +../../data/yoloGtold1/train/95897.png +../../data/yoloGtold1/train/95898.png +../../data/yoloGtold1/train/95899.png +../../data/yoloGtold1/train/95900.png +../../data/yoloGtold1/train/95901.png +../../data/yoloGtold1/train/95902.png +../../data/yoloGtold1/train/95903.png +../../data/yoloGtold1/train/95904.png +../../data/yoloGtold1/train/95905.png +../../data/yoloGtold1/train/95906.png +../../data/yoloGtold1/train/95907.png +../../data/yoloGtold1/train/95908.png +../../data/yoloGtold1/train/95909.png +../../data/yoloGtold1/train/95910.png +../../data/yoloGtold1/train/95911.png +../../data/yoloGtold1/train/95912.png +../../data/yoloGtold1/train/95913.png +../../data/yoloGtold1/train/95914.png +../../data/yoloGtold1/train/95915.png +../../data/yoloGtold1/train/95916.png +../../data/yoloGtold1/train/95917.png +../../data/yoloGtold1/train/95918.png +../../data/yoloGtold1/train/95919.png +../../data/yoloGtold1/train/95920.png +../../data/yoloGtold1/train/95921.png +../../data/yoloGtold1/train/95922.png +../../data/yoloGtold1/train/95923.png +../../data/yoloGtold1/train/95924.png +../../data/yoloGtold1/train/95925.png +../../data/yoloGtold1/train/95926.png +../../data/yoloGtold1/train/95927.png +../../data/yoloGtold1/train/95928.png +../../data/yoloGtold1/train/95929.png +../../data/yoloGtold1/train/95930.png +../../data/yoloGtold1/train/95931.png +../../data/yoloGtold1/train/95932.png +../../data/yoloGtold1/train/95933.png +../../data/yoloGtold1/train/95934.png +../../data/yoloGtold1/train/95935.png +../../data/yoloGtold1/train/95936.png +../../data/yoloGtold1/train/95937.png +../../data/yoloGtold1/train/95938.png +../../data/yoloGtold1/train/95939.png +../../data/yoloGtold1/train/95940.png +../../data/yoloGtold1/train/95941.png +../../data/yoloGtold1/train/95942.png +../../data/yoloGtold1/train/95943.png +../../data/yoloGtold1/train/95944.png +../../data/yoloGtold1/train/95945.png +../../data/yoloGtold1/train/95946.png +../../data/yoloGtold1/train/95947.png +../../data/yoloGtold1/train/95948.png +../../data/yoloGtold1/train/95949.png +../../data/yoloGtold1/train/95950.png +../../data/yoloGtold1/train/95951.png +../../data/yoloGtold1/train/95952.png +../../data/yoloGtold1/train/95953.png +../../data/yoloGtold1/train/95954.png +../../data/yoloGtold1/train/95955.png +../../data/yoloGtold1/train/95956.png +../../data/yoloGtold1/train/95957.png +../../data/yoloGtold1/train/95958.png +../../data/yoloGtold1/train/95959.png +../../data/yoloGtold1/train/95960.png +../../data/yoloGtold1/train/95961.png +../../data/yoloGtold1/train/95962.png +../../data/yoloGtold1/train/95963.png +../../data/yoloGtold1/train/95964.png +../../data/yoloGtold1/train/95965.png +../../data/yoloGtold1/train/95966.png +../../data/yoloGtold1/train/95967.png +../../data/yoloGtold1/train/95968.png +../../data/yoloGtold1/train/95969.png +../../data/yoloGtold1/train/95970.png +../../data/yoloGtold1/train/95971.png +../../data/yoloGtold1/train/95972.png +../../data/yoloGtold1/train/95973.png +../../data/yoloGtold1/train/95974.png +../../data/yoloGtold1/train/95975.png +../../data/yoloGtold1/train/95976.png +../../data/yoloGtold1/train/95977.png +../../data/yoloGtold1/train/95978.png +../../data/yoloGtold1/train/95979.png +../../data/yoloGtold1/train/95980.png +../../data/yoloGtold1/train/95981.png +../../data/yoloGtold1/train/95982.png +../../data/yoloGtold1/train/95983.png +../../data/yoloGtold1/train/95984.png +../../data/yoloGtold1/train/95985.png +../../data/yoloGtold1/train/95986.png +../../data/yoloGtold1/train/95987.png +../../data/yoloGtold1/train/95988.png +../../data/yoloGtold1/train/95989.png +../../data/yoloGtold1/train/95990.png +../../data/yoloGtold1/train/95991.png +../../data/yoloGtold1/train/95992.png +../../data/yoloGtold1/train/95993.png +../../data/yoloGtold1/train/95994.png +../../data/yoloGtold1/train/95995.png +../../data/yoloGtold1/train/95996.png +../../data/yoloGtold1/train/95997.png +../../data/yoloGtold1/train/95998.png +../../data/yoloGtold1/train/95999.png +../../data/yoloGtold1/train/96000.png +../../data/yoloGtold1/train/96001.png +../../data/yoloGtold1/train/96002.png +../../data/yoloGtold1/train/96003.png +../../data/yoloGtold1/train/96004.png +../../data/yoloGtold1/train/96005.png +../../data/yoloGtold1/train/96006.png +../../data/yoloGtold1/train/96007.png +../../data/yoloGtold1/train/96008.png +../../data/yoloGtold1/train/96009.png +../../data/yoloGtold1/train/96010.png +../../data/yoloGtold1/train/96011.png +../../data/yoloGtold1/train/96012.png +../../data/yoloGtold1/train/96013.png +../../data/yoloGtold1/train/96014.png +../../data/yoloGtold1/train/96015.png +../../data/yoloGtold1/train/96016.png +../../data/yoloGtold1/train/96017.png +../../data/yoloGtold1/train/96018.png +../../data/yoloGtold1/train/96019.png +../../data/yoloGtold1/train/96020.png +../../data/yoloGtold1/train/96021.png +../../data/yoloGtold1/train/96022.png +../../data/yoloGtold1/train/96023.png +../../data/yoloGtold1/train/96024.png +../../data/yoloGtold1/train/96025.png +../../data/yoloGtold1/train/96026.png +../../data/yoloGtold1/train/96027.png +../../data/yoloGtold1/train/96028.png +../../data/yoloGtold1/train/96029.png +../../data/yoloGtold1/train/96030.png +../../data/yoloGtold1/train/96031.png +../../data/yoloGtold1/train/96032.png +../../data/yoloGtold1/train/96033.png +../../data/yoloGtold1/train/96034.png +../../data/yoloGtold1/train/96035.png +../../data/yoloGtold1/train/96036.png +../../data/yoloGtold1/train/96037.png +../../data/yoloGtold1/train/96038.png +../../data/yoloGtold1/train/96039.png +../../data/yoloGtold1/train/96040.png +../../data/yoloGtold1/train/96041.png +../../data/yoloGtold1/train/96042.png +../../data/yoloGtold1/train/96043.png +../../data/yoloGtold1/train/96044.png +../../data/yoloGtold1/train/96045.png +../../data/yoloGtold1/train/96046.png +../../data/yoloGtold1/train/96047.png +../../data/yoloGtold1/train/96048.png +../../data/yoloGtold1/train/96049.png +../../data/yoloGtold1/train/96050.png +../../data/yoloGtold1/train/96051.png +../../data/yoloGtold1/train/96052.png +../../data/yoloGtold1/train/96053.png +../../data/yoloGtold1/train/96054.png +../../data/yoloGtold1/train/96055.png +../../data/yoloGtold1/train/96056.png +../../data/yoloGtold1/train/96057.png +../../data/yoloGtold1/train/96058.png +../../data/yoloGtold1/train/96059.png +../../data/yoloGtold1/train/96060.png +../../data/yoloGtold1/train/96061.png +../../data/yoloGtold1/train/96062.png +../../data/yoloGtold1/train/96063.png +../../data/yoloGtold1/train/96064.png +../../data/yoloGtold1/train/96065.png +../../data/yoloGtold1/train/96066.png +../../data/yoloGtold1/train/96067.png +../../data/yoloGtold1/train/96068.png +../../data/yoloGtold1/train/96069.png +../../data/yoloGtold1/train/96070.png +../../data/yoloGtold1/train/96071.png +../../data/yoloGtold1/train/96072.png +../../data/yoloGtold1/train/96073.png +../../data/yoloGtold1/train/96074.png +../../data/yoloGtold1/train/96075.png +../../data/yoloGtold1/train/96076.png +../../data/yoloGtold1/train/96077.png +../../data/yoloGtold1/train/96078.png +../../data/yoloGtold1/train/96079.png +../../data/yoloGtold1/train/96080.png +../../data/yoloGtold1/train/96081.png +../../data/yoloGtold1/train/96082.png +../../data/yoloGtold1/train/96083.png +../../data/yoloGtold1/train/96084.png +../../data/yoloGtold1/train/96085.png +../../data/yoloGtold1/train/96086.png +../../data/yoloGtold1/train/96087.png +../../data/yoloGtold1/train/96088.png +../../data/yoloGtold1/train/96089.png +../../data/yoloGtold1/train/96090.png +../../data/yoloGtold1/train/96091.png +../../data/yoloGtold1/train/96092.png +../../data/yoloGtold1/train/96093.png +../../data/yoloGtold1/train/96094.png +../../data/yoloGtold1/train/96095.png +../../data/yoloGtold1/train/96096.png +../../data/yoloGtold1/train/96097.png +../../data/yoloGtold1/train/96098.png +../../data/yoloGtold1/train/96099.png +../../data/yoloGtold1/train/96100.png +../../data/yoloGtold1/train/96101.png +../../data/yoloGtold1/train/96102.png +../../data/yoloGtold1/train/96103.png +../../data/yoloGtold1/train/96104.png +../../data/yoloGtold1/train/96105.png +../../data/yoloGtold1/train/96106.png +../../data/yoloGtold1/train/96107.png +../../data/yoloGtold1/train/96108.png +../../data/yoloGtold1/train/96109.png +../../data/yoloGtold1/train/96110.png +../../data/yoloGtold1/train/96111.png +../../data/yoloGtold1/train/96112.png +../../data/yoloGtold1/train/96113.png +../../data/yoloGtold1/train/96114.png +../../data/yoloGtold1/train/96115.png +../../data/yoloGtold1/train/96116.png +../../data/yoloGtold1/train/96117.png +../../data/yoloGtold1/train/96118.png +../../data/yoloGtold1/train/96119.png +../../data/yoloGtold1/train/96120.png +../../data/yoloGtold1/train/96121.png +../../data/yoloGtold1/train/96122.png +../../data/yoloGtold1/train/96123.png +../../data/yoloGtold1/train/96124.png +../../data/yoloGtold1/train/96125.png +../../data/yoloGtold1/train/96126.png +../../data/yoloGtold1/train/96127.png +../../data/yoloGtold1/train/96128.png +../../data/yoloGtold1/train/96129.png +../../data/yoloGtold1/train/96130.png +../../data/yoloGtold1/train/96131.png +../../data/yoloGtold1/train/96132.png +../../data/yoloGtold1/train/96133.png +../../data/yoloGtold1/train/96134.png +../../data/yoloGtold1/train/96135.png +../../data/yoloGtold1/train/96136.png +../../data/yoloGtold1/train/96137.png +../../data/yoloGtold1/train/96138.png +../../data/yoloGtold1/train/96139.png +../../data/yoloGtold1/train/96140.png +../../data/yoloGtold1/train/96141.png +../../data/yoloGtold1/train/96142.png +../../data/yoloGtold1/train/96143.png +../../data/yoloGtold1/train/96144.png +../../data/yoloGtold1/train/96145.png +../../data/yoloGtold1/train/96146.png +../../data/yoloGtold1/train/96147.png +../../data/yoloGtold1/train/96148.png +../../data/yoloGtold1/train/96149.png +../../data/yoloGtold1/train/96150.png +../../data/yoloGtold1/train/96151.png +../../data/yoloGtold1/train/96152.png +../../data/yoloGtold1/train/96153.png +../../data/yoloGtold1/train/96154.png +../../data/yoloGtold1/train/96155.png +../../data/yoloGtold1/train/96156.png +../../data/yoloGtold1/train/96157.png +../../data/yoloGtold1/train/96158.png +../../data/yoloGtold1/train/96159.png +../../data/yoloGtold1/train/96160.png +../../data/yoloGtold1/train/96161.png +../../data/yoloGtold1/train/96162.png +../../data/yoloGtold1/train/96163.png +../../data/yoloGtold1/train/96164.png +../../data/yoloGtold1/train/96165.png +../../data/yoloGtold1/train/96166.png +../../data/yoloGtold1/train/96167.png +../../data/yoloGtold1/train/96168.png +../../data/yoloGtold1/train/96169.png +../../data/yoloGtold1/train/96170.png +../../data/yoloGtold1/train/96171.png +../../data/yoloGtold1/train/96172.png +../../data/yoloGtold1/train/96173.png +../../data/yoloGtold1/train/96174.png +../../data/yoloGtold1/train/96175.png +../../data/yoloGtold1/train/96176.png +../../data/yoloGtold1/train/96177.png +../../data/yoloGtold1/train/96178.png +../../data/yoloGtold1/train/96179.png +../../data/yoloGtold1/train/96180.png +../../data/yoloGtold1/train/96181.png +../../data/yoloGtold1/train/96182.png +../../data/yoloGtold1/train/96183.png +../../data/yoloGtold1/train/96184.png +../../data/yoloGtold1/train/96185.png +../../data/yoloGtold1/train/96186.png +../../data/yoloGtold1/train/96187.png +../../data/yoloGtold1/train/96188.png +../../data/yoloGtold1/train/96189.png +../../data/yoloGtold1/train/96190.png +../../data/yoloGtold1/train/96191.png +../../data/yoloGtold1/train/96192.png +../../data/yoloGtold1/train/96193.png +../../data/yoloGtold1/train/96194.png +../../data/yoloGtold1/train/96195.png +../../data/yoloGtold1/train/96196.png +../../data/yoloGtold1/train/96197.png +../../data/yoloGtold1/train/96198.png +../../data/yoloGtold1/train/96199.png +../../data/yoloGtold1/train/96200.png +../../data/yoloGtold1/train/96201.png +../../data/yoloGtold1/train/96202.png +../../data/yoloGtold1/train/96203.png +../../data/yoloGtold1/train/96204.png +../../data/yoloGtold1/train/96205.png +../../data/yoloGtold1/train/96206.png +../../data/yoloGtold1/train/96207.png +../../data/yoloGtold1/train/96208.png +../../data/yoloGtold1/train/96209.png +../../data/yoloGtold1/train/96210.png +../../data/yoloGtold1/train/96211.png +../../data/yoloGtold1/train/96212.png +../../data/yoloGtold1/train/96213.png +../../data/yoloGtold1/train/96214.png +../../data/yoloGtold1/train/96215.png +../../data/yoloGtold1/train/96216.png +../../data/yoloGtold1/train/96217.png +../../data/yoloGtold1/train/96218.png +../../data/yoloGtold1/train/96219.png +../../data/yoloGtold1/train/96220.png +../../data/yoloGtold1/train/96221.png +../../data/yoloGtold1/train/96222.png +../../data/yoloGtold1/train/96223.png +../../data/yoloGtold1/train/96224.png +../../data/yoloGtold1/train/96225.png +../../data/yoloGtold1/train/96226.png +../../data/yoloGtold1/train/96227.png +../../data/yoloGtold1/train/96228.png +../../data/yoloGtold1/train/96229.png +../../data/yoloGtold1/train/96230.png +../../data/yoloGtold1/train/96231.png +../../data/yoloGtold1/train/96232.png +../../data/yoloGtold1/train/96233.png +../../data/yoloGtold1/train/96234.png +../../data/yoloGtold1/train/96235.png +../../data/yoloGtold1/train/96236.png +../../data/yoloGtold1/train/96237.png +../../data/yoloGtold1/train/96238.png +../../data/yoloGtold1/train/96239.png +../../data/yoloGtold1/train/96240.png +../../data/yoloGtold1/train/96241.png +../../data/yoloGtold1/train/96242.png +../../data/yoloGtold1/train/96243.png +../../data/yoloGtold1/train/96244.png +../../data/yoloGtold1/train/96245.png +../../data/yoloGtold1/train/96246.png +../../data/yoloGtold1/train/96247.png +../../data/yoloGtold1/train/96248.png +../../data/yoloGtold1/train/96249.png +../../data/yoloGtold1/train/96250.png +../../data/yoloGtold1/train/96251.png +../../data/yoloGtold1/train/96252.png +../../data/yoloGtold1/train/96253.png +../../data/yoloGtold1/train/96254.png +../../data/yoloGtold1/train/96255.png +../../data/yoloGtold1/train/96256.png +../../data/yoloGtold1/train/96257.png +../../data/yoloGtold1/train/96258.png +../../data/yoloGtold1/train/96259.png +../../data/yoloGtold1/train/96260.png +../../data/yoloGtold1/train/96261.png +../../data/yoloGtold1/train/96262.png +../../data/yoloGtold1/train/96263.png +../../data/yoloGtold1/train/96264.png +../../data/yoloGtold1/train/96265.png +../../data/yoloGtold1/train/96266.png +../../data/yoloGtold1/train/96267.png +../../data/yoloGtold1/train/96268.png +../../data/yoloGtold1/train/96269.png +../../data/yoloGtold1/train/96270.png +../../data/yoloGtold1/train/96271.png +../../data/yoloGtold1/train/96272.png +../../data/yoloGtold1/train/96273.png +../../data/yoloGtold1/train/96274.png +../../data/yoloGtold1/train/96275.png +../../data/yoloGtold1/train/96276.png +../../data/yoloGtold1/train/96277.png +../../data/yoloGtold1/train/96278.png +../../data/yoloGtold1/train/96279.png +../../data/yoloGtold1/train/96280.png +../../data/yoloGtold1/train/96281.png +../../data/yoloGtold1/train/96282.png +../../data/yoloGtold1/train/96283.png +../../data/yoloGtold1/train/96284.png +../../data/yoloGtold1/train/96285.png +../../data/yoloGtold1/train/96286.png +../../data/yoloGtold1/train/96287.png +../../data/yoloGtold1/train/96288.png +../../data/yoloGtold1/train/96289.png +../../data/yoloGtold1/train/96290.png +../../data/yoloGtold1/train/96291.png +../../data/yoloGtold1/train/96292.png +../../data/yoloGtold1/train/96293.png +../../data/yoloGtold1/train/96294.png +../../data/yoloGtold1/train/96295.png +../../data/yoloGtold1/train/96296.png +../../data/yoloGtold1/train/96297.png +../../data/yoloGtold1/train/96298.png +../../data/yoloGtold1/train/96299.png +../../data/yoloGtold1/train/96300.png +../../data/yoloGtold1/train/96301.png +../../data/yoloGtold1/train/96302.png +../../data/yoloGtold1/train/96303.png +../../data/yoloGtold1/train/96304.png +../../data/yoloGtold1/train/96305.png +../../data/yoloGtold1/train/96306.png +../../data/yoloGtold1/train/96307.png +../../data/yoloGtold1/train/96308.png +../../data/yoloGtold1/train/96309.png +../../data/yoloGtold1/train/96310.png +../../data/yoloGtold1/train/96311.png +../../data/yoloGtold1/train/96312.png +../../data/yoloGtold1/train/96313.png +../../data/yoloGtold1/train/96314.png +../../data/yoloGtold1/train/96315.png +../../data/yoloGtold1/train/96316.png +../../data/yoloGtold1/train/96317.png +../../data/yoloGtold1/train/96318.png +../../data/yoloGtold1/train/96319.png +../../data/yoloGtold1/train/96320.png +../../data/yoloGtold1/train/96321.png +../../data/yoloGtold1/train/96322.png +../../data/yoloGtold1/train/96323.png +../../data/yoloGtold1/train/96324.png +../../data/yoloGtold1/train/96325.png +../../data/yoloGtold1/train/96326.png +../../data/yoloGtold1/train/96327.png +../../data/yoloGtold1/train/96328.png +../../data/yoloGtold1/train/96329.png +../../data/yoloGtold1/train/96330.png +../../data/yoloGtold1/train/96331.png +../../data/yoloGtold1/train/96332.png +../../data/yoloGtold1/train/96333.png +../../data/yoloGtold1/train/96334.png +../../data/yoloGtold1/train/96335.png +../../data/yoloGtold1/train/96336.png +../../data/yoloGtold1/train/96337.png +../../data/yoloGtold1/train/96338.png +../../data/yoloGtold1/train/96339.png +../../data/yoloGtold1/train/96340.png +../../data/yoloGtold1/train/96341.png +../../data/yoloGtold1/train/96342.png +../../data/yoloGtold1/train/96343.png +../../data/yoloGtold1/train/96344.png +../../data/yoloGtold1/train/96345.png +../../data/yoloGtold1/train/96346.png +../../data/yoloGtold1/train/96347.png +../../data/yoloGtold1/train/96348.png +../../data/yoloGtold1/train/96349.png +../../data/yoloGtold1/train/96350.png +../../data/yoloGtold1/train/96351.png +../../data/yoloGtold1/train/96352.png +../../data/yoloGtold1/train/96353.png +../../data/yoloGtold1/train/96354.png +../../data/yoloGtold1/train/96355.png +../../data/yoloGtold1/train/96356.png +../../data/yoloGtold1/train/96357.png +../../data/yoloGtold1/train/96358.png +../../data/yoloGtold1/train/96359.png +../../data/yoloGtold1/train/96360.png +../../data/yoloGtold1/train/96361.png +../../data/yoloGtold1/train/96362.png +../../data/yoloGtold1/train/96363.png +../../data/yoloGtold1/train/96364.png +../../data/yoloGtold1/train/96365.png +../../data/yoloGtold1/train/96366.png +../../data/yoloGtold1/train/96367.png +../../data/yoloGtold1/train/96368.png +../../data/yoloGtold1/train/96369.png +../../data/yoloGtold1/train/96370.png +../../data/yoloGtold1/train/96371.png +../../data/yoloGtold1/train/96372.png +../../data/yoloGtold1/train/96373.png +../../data/yoloGtold1/train/96374.png +../../data/yoloGtold1/train/96375.png +../../data/yoloGtold1/train/96376.png +../../data/yoloGtold1/train/96377.png +../../data/yoloGtold1/train/96378.png +../../data/yoloGtold1/train/96379.png +../../data/yoloGtold1/train/96380.png +../../data/yoloGtold1/train/96381.png +../../data/yoloGtold1/train/96382.png +../../data/yoloGtold1/train/96383.png +../../data/yoloGtold1/train/96384.png +../../data/yoloGtold1/train/96385.png +../../data/yoloGtold1/train/96386.png +../../data/yoloGtold1/train/96387.png +../../data/yoloGtold1/train/96388.png +../../data/yoloGtold1/train/96389.png +../../data/yoloGtold1/train/96390.png +../../data/yoloGtold1/train/96391.png +../../data/yoloGtold1/train/96392.png +../../data/yoloGtold1/train/96393.png +../../data/yoloGtold1/train/96394.png +../../data/yoloGtold1/train/96395.png +../../data/yoloGtold1/train/96396.png +../../data/yoloGtold1/train/96397.png +../../data/yoloGtold1/train/96398.png +../../data/yoloGtold1/train/96399.png +../../data/yoloGtold1/train/96400.png +../../data/yoloGtold1/train/96401.png +../../data/yoloGtold1/train/96402.png +../../data/yoloGtold1/train/96403.png +../../data/yoloGtold1/train/96404.png +../../data/yoloGtold1/train/96405.png +../../data/yoloGtold1/train/96406.png +../../data/yoloGtold1/train/96407.png +../../data/yoloGtold1/train/96408.png +../../data/yoloGtold1/train/96409.png +../../data/yoloGtold1/train/96410.png +../../data/yoloGtold1/train/96411.png +../../data/yoloGtold1/train/96412.png +../../data/yoloGtold1/train/96413.png +../../data/yoloGtold1/train/96414.png +../../data/yoloGtold1/train/96415.png +../../data/yoloGtold1/train/96416.png +../../data/yoloGtold1/train/96417.png +../../data/yoloGtold1/train/96418.png +../../data/yoloGtold1/train/96419.png +../../data/yoloGtold1/train/96420.png +../../data/yoloGtold1/train/96421.png +../../data/yoloGtold1/train/96422.png +../../data/yoloGtold1/train/96423.png +../../data/yoloGtold1/train/96424.png +../../data/yoloGtold1/train/96425.png +../../data/yoloGtold1/train/96426.png +../../data/yoloGtold1/train/96427.png +../../data/yoloGtold1/train/96428.png +../../data/yoloGtold1/train/96429.png +../../data/yoloGtold1/train/96430.png +../../data/yoloGtold1/train/96431.png +../../data/yoloGtold1/train/96432.png +../../data/yoloGtold1/train/96433.png +../../data/yoloGtold1/train/96434.png +../../data/yoloGtold1/train/96435.png +../../data/yoloGtold1/train/96436.png +../../data/yoloGtold1/train/96437.png +../../data/yoloGtold1/train/96438.png +../../data/yoloGtold1/train/96439.png +../../data/yoloGtold1/train/96440.png +../../data/yoloGtold1/train/96441.png +../../data/yoloGtold1/train/96442.png +../../data/yoloGtold1/train/96443.png +../../data/yoloGtold1/train/96444.png +../../data/yoloGtold1/train/96445.png +../../data/yoloGtold1/train/96446.png +../../data/yoloGtold1/train/96447.png +../../data/yoloGtold1/train/96448.png +../../data/yoloGtold1/train/96449.png +../../data/yoloGtold1/train/96450.png +../../data/yoloGtold1/train/96451.png +../../data/yoloGtold1/train/96452.png +../../data/yoloGtold1/train/96453.png +../../data/yoloGtold1/train/96454.png +../../data/yoloGtold1/train/96455.png +../../data/yoloGtold1/train/96456.png +../../data/yoloGtold1/train/96457.png +../../data/yoloGtold1/train/96458.png +../../data/yoloGtold1/train/96459.png +../../data/yoloGtold1/train/96460.png +../../data/yoloGtold1/train/96461.png +../../data/yoloGtold1/train/96462.png +../../data/yoloGtold1/train/96463.png +../../data/yoloGtold1/train/96464.png +../../data/yoloGtold1/train/96465.png +../../data/yoloGtold1/train/96466.png +../../data/yoloGtold1/train/96467.png +../../data/yoloGtold1/train/96468.png +../../data/yoloGtold1/train/96469.png +../../data/yoloGtold1/train/96470.png +../../data/yoloGtold1/train/96471.png +../../data/yoloGtold1/train/96472.png +../../data/yoloGtold1/train/96473.png +../../data/yoloGtold1/train/96474.png +../../data/yoloGtold1/train/96475.png +../../data/yoloGtold1/train/96476.png +../../data/yoloGtold1/train/96477.png +../../data/yoloGtold1/train/96478.png +../../data/yoloGtold1/train/96479.png +../../data/yoloGtold1/train/96480.png +../../data/yoloGtold1/train/96481.png +../../data/yoloGtold1/train/96482.png +../../data/yoloGtold1/train/96483.png +../../data/yoloGtold1/train/96484.png +../../data/yoloGtold1/train/96485.png +../../data/yoloGtold1/train/96486.png +../../data/yoloGtold1/train/96487.png +../../data/yoloGtold1/train/96488.png +../../data/yoloGtold1/train/96489.png +../../data/yoloGtold1/train/96490.png +../../data/yoloGtold1/train/96491.png +../../data/yoloGtold1/train/96492.png +../../data/yoloGtold1/train/96493.png +../../data/yoloGtold1/train/96494.png +../../data/yoloGtold1/train/96495.png +../../data/yoloGtold1/train/96496.png +../../data/yoloGtold1/train/96497.png +../../data/yoloGtold1/train/96498.png +../../data/yoloGtold1/train/96499.png +../../data/yoloGtold1/train/96500.png +../../data/yoloGtold1/train/96501.png +../../data/yoloGtold1/train/96502.png +../../data/yoloGtold1/train/96503.png +../../data/yoloGtold1/train/96504.png +../../data/yoloGtold1/train/96505.png +../../data/yoloGtold1/train/96506.png +../../data/yoloGtold1/train/96507.png +../../data/yoloGtold1/train/96508.png +../../data/yoloGtold1/train/96509.png +../../data/yoloGtold1/train/96510.png +../../data/yoloGtold1/train/96511.png +../../data/yoloGtold1/train/96512.png +../../data/yoloGtold1/train/96513.png +../../data/yoloGtold1/train/96514.png +../../data/yoloGtold1/train/96515.png +../../data/yoloGtold1/train/96516.png +../../data/yoloGtold1/train/96517.png +../../data/yoloGtold1/train/96518.png +../../data/yoloGtold1/train/96519.png +../../data/yoloGtold1/train/96520.png +../../data/yoloGtold1/train/96521.png +../../data/yoloGtold1/train/96522.png +../../data/yoloGtold1/train/96523.png +../../data/yoloGtold1/train/96524.png +../../data/yoloGtold1/train/96525.png +../../data/yoloGtold1/train/96526.png +../../data/yoloGtold1/train/96527.png +../../data/yoloGtold1/train/96528.png +../../data/yoloGtold1/train/96529.png +../../data/yoloGtold1/train/96530.png +../../data/yoloGtold1/train/96531.png +../../data/yoloGtold1/train/96532.png +../../data/yoloGtold1/train/96533.png +../../data/yoloGtold1/train/96534.png +../../data/yoloGtold1/train/96535.png +../../data/yoloGtold1/train/96536.png +../../data/yoloGtold1/train/96537.png +../../data/yoloGtold1/train/96538.png +../../data/yoloGtold1/train/96539.png +../../data/yoloGtold1/train/96540.png +../../data/yoloGtold1/train/96541.png +../../data/yoloGtold1/train/96542.png +../../data/yoloGtold1/train/96543.png +../../data/yoloGtold1/train/96544.png +../../data/yoloGtold1/train/96545.png +../../data/yoloGtold1/train/96546.png +../../data/yoloGtold1/train/96547.png +../../data/yoloGtold1/train/96548.png +../../data/yoloGtold1/train/96549.png +../../data/yoloGtold1/train/96550.png +../../data/yoloGtold1/train/96551.png +../../data/yoloGtold1/train/96552.png +../../data/yoloGtold1/train/96553.png +../../data/yoloGtold1/train/96554.png +../../data/yoloGtold1/train/96555.png +../../data/yoloGtold1/train/96556.png +../../data/yoloGtold1/train/96557.png +../../data/yoloGtold1/train/96558.png +../../data/yoloGtold1/train/96559.png +../../data/yoloGtold1/train/96560.png +../../data/yoloGtold1/train/96561.png +../../data/yoloGtold1/train/96562.png +../../data/yoloGtold1/train/96563.png +../../data/yoloGtold1/train/96564.png +../../data/yoloGtold1/train/96565.png +../../data/yoloGtold1/train/96566.png +../../data/yoloGtold1/train/96567.png +../../data/yoloGtold1/train/96568.png +../../data/yoloGtold1/train/96569.png +../../data/yoloGtold1/train/96570.png +../../data/yoloGtold1/train/96571.png +../../data/yoloGtold1/train/96572.png +../../data/yoloGtold1/train/96573.png +../../data/yoloGtold1/train/96574.png +../../data/yoloGtold1/train/96575.png +../../data/yoloGtold1/train/96576.png +../../data/yoloGtold1/train/96577.png +../../data/yoloGtold1/train/96578.png +../../data/yoloGtold1/train/96579.png +../../data/yoloGtold1/train/96580.png +../../data/yoloGtold1/train/96581.png +../../data/yoloGtold1/train/96582.png +../../data/yoloGtold1/train/96583.png +../../data/yoloGtold1/train/96584.png +../../data/yoloGtold1/train/96585.png +../../data/yoloGtold1/train/96586.png +../../data/yoloGtold1/train/96587.png +../../data/yoloGtold1/train/96588.png +../../data/yoloGtold1/train/96589.png +../../data/yoloGtold1/train/96590.png +../../data/yoloGtold1/train/96591.png +../../data/yoloGtold1/train/96592.png +../../data/yoloGtold1/train/96593.png +../../data/yoloGtold1/train/96594.png +../../data/yoloGtold1/train/96595.png +../../data/yoloGtold1/train/96596.png +../../data/yoloGtold1/train/96597.png +../../data/yoloGtold1/train/96598.png +../../data/yoloGtold1/train/96599.png +../../data/yoloGtold1/train/96600.png +../../data/yoloGtold1/train/96601.png +../../data/yoloGtold1/train/96602.png +../../data/yoloGtold1/train/96603.png +../../data/yoloGtold1/train/96604.png +../../data/yoloGtold1/train/96605.png +../../data/yoloGtold1/train/96606.png +../../data/yoloGtold1/train/96607.png +../../data/yoloGtold1/train/96608.png +../../data/yoloGtold1/train/96609.png +../../data/yoloGtold1/train/96610.png +../../data/yoloGtold1/train/96611.png +../../data/yoloGtold1/train/96612.png +../../data/yoloGtold1/train/96613.png +../../data/yoloGtold1/train/96614.png +../../data/yoloGtold1/train/96615.png +../../data/yoloGtold1/train/96616.png +../../data/yoloGtold1/train/96617.png +../../data/yoloGtold1/train/96618.png +../../data/yoloGtold1/train/96619.png +../../data/yoloGtold1/train/96620.png +../../data/yoloGtold1/train/96621.png +../../data/yoloGtold1/train/96622.png +../../data/yoloGtold1/train/96623.png +../../data/yoloGtold1/train/96624.png +../../data/yoloGtold1/train/96625.png +../../data/yoloGtold1/train/96626.png +../../data/yoloGtold1/train/96627.png +../../data/yoloGtold1/train/96628.png +../../data/yoloGtold1/train/96629.png +../../data/yoloGtold1/train/96630.png +../../data/yoloGtold1/train/96631.png +../../data/yoloGtold1/train/96632.png +../../data/yoloGtold1/train/96633.png +../../data/yoloGtold1/train/96634.png +../../data/yoloGtold1/train/96635.png +../../data/yoloGtold1/train/96636.png +../../data/yoloGtold1/train/96637.png +../../data/yoloGtold1/train/96638.png +../../data/yoloGtold1/train/96639.png +../../data/yoloGtold1/train/96640.png +../../data/yoloGtold1/train/96641.png +../../data/yoloGtold1/train/96642.png +../../data/yoloGtold1/train/96643.png +../../data/yoloGtold1/train/96644.png +../../data/yoloGtold1/train/96645.png +../../data/yoloGtold1/train/96646.png +../../data/yoloGtold1/train/96647.png +../../data/yoloGtold1/train/96648.png +../../data/yoloGtold1/train/96649.png +../../data/yoloGtold1/train/96650.png +../../data/yoloGtold1/train/96651.png +../../data/yoloGtold1/train/96652.png +../../data/yoloGtold1/train/96653.png +../../data/yoloGtold1/train/96654.png +../../data/yoloGtold1/train/96655.png +../../data/yoloGtold1/train/96656.png +../../data/yoloGtold1/train/96657.png +../../data/yoloGtold1/train/96658.png +../../data/yoloGtold1/train/96659.png +../../data/yoloGtold1/train/96660.png +../../data/yoloGtold1/train/96661.png +../../data/yoloGtold1/train/96662.png +../../data/yoloGtold1/train/96663.png +../../data/yoloGtold1/train/96664.png +../../data/yoloGtold1/train/96665.png +../../data/yoloGtold1/train/96666.png +../../data/yoloGtold1/train/96667.png +../../data/yoloGtold1/train/96668.png +../../data/yoloGtold1/train/96669.png +../../data/yoloGtold1/train/96670.png +../../data/yoloGtold1/train/96671.png +../../data/yoloGtold1/train/96672.png +../../data/yoloGtold1/train/96673.png +../../data/yoloGtold1/train/96674.png +../../data/yoloGtold1/train/96675.png +../../data/yoloGtold1/train/96676.png +../../data/yoloGtold1/train/96677.png +../../data/yoloGtold1/train/96678.png +../../data/yoloGtold1/train/96679.png +../../data/yoloGtold1/train/96680.png +../../data/yoloGtold1/train/96681.png +../../data/yoloGtold1/train/96682.png +../../data/yoloGtold1/train/96683.png +../../data/yoloGtold1/train/96684.png +../../data/yoloGtold1/train/96685.png +../../data/yoloGtold1/train/96686.png +../../data/yoloGtold1/train/96687.png +../../data/yoloGtold1/train/96688.png +../../data/yoloGtold1/train/96689.png +../../data/yoloGtold1/train/96690.png +../../data/yoloGtold1/train/96691.png +../../data/yoloGtold1/train/96692.png +../../data/yoloGtold1/train/96693.png +../../data/yoloGtold1/train/96694.png +../../data/yoloGtold1/train/96695.png +../../data/yoloGtold1/train/96696.png +../../data/yoloGtold1/train/96697.png +../../data/yoloGtold1/train/96698.png +../../data/yoloGtold1/train/96699.png +../../data/yoloGtold1/train/96700.png +../../data/yoloGtold1/train/96701.png +../../data/yoloGtold1/train/96702.png +../../data/yoloGtold1/train/96703.png +../../data/yoloGtold1/train/96704.png +../../data/yoloGtold1/train/96705.png +../../data/yoloGtold1/train/96706.png +../../data/yoloGtold1/train/96707.png +../../data/yoloGtold1/train/96708.png +../../data/yoloGtold1/train/96709.png +../../data/yoloGtold1/train/96710.png +../../data/yoloGtold1/train/96711.png +../../data/yoloGtold1/train/96712.png +../../data/yoloGtold1/train/96713.png +../../data/yoloGtold1/train/96714.png +../../data/yoloGtold1/train/96715.png +../../data/yoloGtold1/train/96716.png +../../data/yoloGtold1/train/96717.png +../../data/yoloGtold1/train/96718.png +../../data/yoloGtold1/train/96719.png +../../data/yoloGtold1/train/96720.png +../../data/yoloGtold1/train/96721.png +../../data/yoloGtold1/train/96722.png +../../data/yoloGtold1/train/96723.png +../../data/yoloGtold1/train/96724.png +../../data/yoloGtold1/train/96725.png +../../data/yoloGtold1/train/96726.png +../../data/yoloGtold1/train/96727.png +../../data/yoloGtold1/train/96728.png +../../data/yoloGtold1/train/96729.png +../../data/yoloGtold1/train/96730.png +../../data/yoloGtold1/train/96731.png +../../data/yoloGtold1/train/96732.png +../../data/yoloGtold1/train/96733.png +../../data/yoloGtold1/train/96734.png +../../data/yoloGtold1/train/96735.png +../../data/yoloGtold1/train/96736.png +../../data/yoloGtold1/train/96737.png +../../data/yoloGtold1/train/96738.png +../../data/yoloGtold1/train/96739.png +../../data/yoloGtold1/train/96740.png +../../data/yoloGtold1/train/96741.png +../../data/yoloGtold1/train/96742.png +../../data/yoloGtold1/train/96743.png +../../data/yoloGtold1/train/96744.png +../../data/yoloGtold1/train/96745.png +../../data/yoloGtold1/train/96746.png +../../data/yoloGtold1/train/96747.png +../../data/yoloGtold1/train/96748.png +../../data/yoloGtold1/train/96749.png +../../data/yoloGtold1/train/96750.png +../../data/yoloGtold1/train/96751.png +../../data/yoloGtold1/train/96752.png +../../data/yoloGtold1/train/96753.png +../../data/yoloGtold1/train/96754.png +../../data/yoloGtold1/train/96755.png +../../data/yoloGtold1/train/96756.png +../../data/yoloGtold1/train/96757.png +../../data/yoloGtold1/train/96758.png +../../data/yoloGtold1/train/96759.png +../../data/yoloGtold1/train/96760.png +../../data/yoloGtold1/train/96761.png +../../data/yoloGtold1/train/96762.png +../../data/yoloGtold1/train/96763.png +../../data/yoloGtold1/train/96764.png +../../data/yoloGtold1/train/96765.png +../../data/yoloGtold1/train/96766.png +../../data/yoloGtold1/train/96767.png +../../data/yoloGtold1/train/96768.png +../../data/yoloGtold1/train/96769.png +../../data/yoloGtold1/train/96770.png +../../data/yoloGtold1/train/96771.png +../../data/yoloGtold1/train/96772.png +../../data/yoloGtold1/train/96773.png +../../data/yoloGtold1/train/96774.png +../../data/yoloGtold1/train/96775.png +../../data/yoloGtold1/train/96776.png +../../data/yoloGtold1/train/96777.png +../../data/yoloGtold1/train/96778.png +../../data/yoloGtold1/train/96779.png +../../data/yoloGtold1/train/96780.png +../../data/yoloGtold1/train/96781.png +../../data/yoloGtold1/train/96782.png +../../data/yoloGtold1/train/96783.png +../../data/yoloGtold1/train/96784.png +../../data/yoloGtold1/train/96785.png +../../data/yoloGtold1/train/96786.png +../../data/yoloGtold1/train/96787.png +../../data/yoloGtold1/train/96788.png +../../data/yoloGtold1/train/96789.png +../../data/yoloGtold1/train/96790.png +../../data/yoloGtold1/train/96791.png +../../data/yoloGtold1/train/96792.png +../../data/yoloGtold1/train/96793.png +../../data/yoloGtold1/train/96794.png +../../data/yoloGtold1/train/96795.png +../../data/yoloGtold1/train/96796.png +../../data/yoloGtold1/train/96797.png +../../data/yoloGtold1/train/96798.png +../../data/yoloGtold1/train/96799.png +../../data/yoloGtold1/train/96800.png +../../data/yoloGtold1/train/96801.png +../../data/yoloGtold1/train/96802.png +../../data/yoloGtold1/train/96803.png +../../data/yoloGtold1/train/96804.png +../../data/yoloGtold1/train/96805.png +../../data/yoloGtold1/train/96806.png +../../data/yoloGtold1/train/96807.png +../../data/yoloGtold1/train/96808.png +../../data/yoloGtold1/train/96809.png +../../data/yoloGtold1/train/96810.png +../../data/yoloGtold1/train/96811.png +../../data/yoloGtold1/train/96812.png +../../data/yoloGtold1/train/96813.png +../../data/yoloGtold1/train/96814.png +../../data/yoloGtold1/train/96815.png +../../data/yoloGtold1/train/96816.png +../../data/yoloGtold1/train/96817.png +../../data/yoloGtold1/train/96818.png +../../data/yoloGtold1/train/96819.png +../../data/yoloGtold1/train/96820.png +../../data/yoloGtold1/train/96821.png +../../data/yoloGtold1/train/96822.png +../../data/yoloGtold1/train/96823.png +../../data/yoloGtold1/train/96824.png +../../data/yoloGtold1/train/96825.png +../../data/yoloGtold1/train/96826.png +../../data/yoloGtold1/train/96827.png +../../data/yoloGtold1/train/96828.png +../../data/yoloGtold1/train/96829.png +../../data/yoloGtold1/train/96830.png +../../data/yoloGtold1/train/96831.png +../../data/yoloGtold1/train/96832.png +../../data/yoloGtold1/train/96833.png +../../data/yoloGtold1/train/96834.png +../../data/yoloGtold1/train/96835.png +../../data/yoloGtold1/train/96836.png +../../data/yoloGtold1/train/96837.png +../../data/yoloGtold1/train/96838.png +../../data/yoloGtold1/train/96839.png +../../data/yoloGtold1/train/96840.png +../../data/yoloGtold1/train/96841.png +../../data/yoloGtold1/train/96842.png +../../data/yoloGtold1/train/96843.png +../../data/yoloGtold1/train/96844.png +../../data/yoloGtold1/train/96845.png +../../data/yoloGtold1/train/96846.png +../../data/yoloGtold1/train/96847.png +../../data/yoloGtold1/train/96848.png +../../data/yoloGtold1/train/96849.png +../../data/yoloGtold1/train/96850.png +../../data/yoloGtold1/train/96851.png +../../data/yoloGtold1/train/96852.png +../../data/yoloGtold1/train/96853.png +../../data/yoloGtold1/train/96854.png +../../data/yoloGtold1/train/96855.png +../../data/yoloGtold1/train/96856.png +../../data/yoloGtold1/train/96857.png +../../data/yoloGtold1/train/96858.png +../../data/yoloGtold1/train/96859.png +../../data/yoloGtold1/train/96860.png +../../data/yoloGtold1/train/96861.png +../../data/yoloGtold1/train/96862.png +../../data/yoloGtold1/train/96863.png +../../data/yoloGtold1/train/96864.png +../../data/yoloGtold1/train/96865.png +../../data/yoloGtold1/train/96866.png +../../data/yoloGtold1/train/96867.png +../../data/yoloGtold1/train/96868.png +../../data/yoloGtold1/train/96869.png +../../data/yoloGtold1/train/96870.png +../../data/yoloGtold1/train/96871.png +../../data/yoloGtold1/train/96872.png +../../data/yoloGtold1/train/96873.png +../../data/yoloGtold1/train/96874.png +../../data/yoloGtold1/train/96875.png +../../data/yoloGtold1/train/96876.png +../../data/yoloGtold1/train/96877.png +../../data/yoloGtold1/train/96878.png +../../data/yoloGtold1/train/96879.png +../../data/yoloGtold1/train/96880.png +../../data/yoloGtold1/train/96881.png +../../data/yoloGtold1/train/96882.png +../../data/yoloGtold1/train/96883.png +../../data/yoloGtold1/train/96884.png +../../data/yoloGtold1/train/96885.png +../../data/yoloGtold1/train/96886.png +../../data/yoloGtold1/train/96887.png +../../data/yoloGtold1/train/96888.png +../../data/yoloGtold1/train/96889.png +../../data/yoloGtold1/train/96890.png +../../data/yoloGtold1/train/96891.png +../../data/yoloGtold1/train/96892.png +../../data/yoloGtold1/train/96893.png +../../data/yoloGtold1/train/96894.png +../../data/yoloGtold1/train/96895.png +../../data/yoloGtold1/train/96896.png +../../data/yoloGtold1/train/96897.png +../../data/yoloGtold1/train/96898.png +../../data/yoloGtold1/train/96899.png +../../data/yoloGtold1/train/96900.png +../../data/yoloGtold1/train/96901.png +../../data/yoloGtold1/train/96902.png +../../data/yoloGtold1/train/96903.png +../../data/yoloGtold1/train/96904.png +../../data/yoloGtold1/train/96905.png +../../data/yoloGtold1/train/96906.png +../../data/yoloGtold1/train/96907.png +../../data/yoloGtold1/train/96908.png +../../data/yoloGtold1/train/96909.png +../../data/yoloGtold1/train/96910.png +../../data/yoloGtold1/train/96911.png +../../data/yoloGtold1/train/96912.png +../../data/yoloGtold1/train/96913.png +../../data/yoloGtold1/train/96914.png +../../data/yoloGtold1/train/96915.png +../../data/yoloGtold1/train/96916.png +../../data/yoloGtold1/train/96917.png +../../data/yoloGtold1/train/96918.png +../../data/yoloGtold1/train/96919.png +../../data/yoloGtold1/train/96920.png +../../data/yoloGtold1/train/96921.png +../../data/yoloGtold1/train/96922.png +../../data/yoloGtold1/train/96923.png +../../data/yoloGtold1/train/96924.png +../../data/yoloGtold1/train/96925.png +../../data/yoloGtold1/train/96926.png +../../data/yoloGtold1/train/96927.png +../../data/yoloGtold1/train/96928.png +../../data/yoloGtold1/train/96929.png +../../data/yoloGtold1/train/96930.png +../../data/yoloGtold1/train/96931.png +../../data/yoloGtold1/train/96932.png +../../data/yoloGtold1/train/96933.png +../../data/yoloGtold1/train/96934.png +../../data/yoloGtold1/train/96935.png +../../data/yoloGtold1/train/96936.png +../../data/yoloGtold1/train/96937.png +../../data/yoloGtold1/train/96938.png +../../data/yoloGtold1/train/96939.png +../../data/yoloGtold1/train/96940.png +../../data/yoloGtold1/train/96941.png +../../data/yoloGtold1/train/96942.png +../../data/yoloGtold1/train/96943.png +../../data/yoloGtold1/train/96944.png +../../data/yoloGtold1/train/96945.png +../../data/yoloGtold1/train/96946.png +../../data/yoloGtold1/train/96947.png +../../data/yoloGtold1/train/96948.png +../../data/yoloGtold1/train/96949.png +../../data/yoloGtold1/train/96950.png +../../data/yoloGtold1/train/96951.png +../../data/yoloGtold1/train/96952.png +../../data/yoloGtold1/train/96953.png +../../data/yoloGtold1/train/96954.png +../../data/yoloGtold1/train/96955.png +../../data/yoloGtold1/train/96956.png +../../data/yoloGtold1/train/96957.png +../../data/yoloGtold1/train/96958.png +../../data/yoloGtold1/train/96959.png +../../data/yoloGtold1/train/96960.png +../../data/yoloGtold1/train/96961.png +../../data/yoloGtold1/train/96962.png +../../data/yoloGtold1/train/96963.png +../../data/yoloGtold1/train/96964.png +../../data/yoloGtold1/train/96965.png +../../data/yoloGtold1/train/96966.png +../../data/yoloGtold1/train/96967.png +../../data/yoloGtold1/train/96968.png +../../data/yoloGtold1/train/96969.png +../../data/yoloGtold1/train/96970.png +../../data/yoloGtold1/train/96971.png +../../data/yoloGtold1/train/96972.png +../../data/yoloGtold1/train/96973.png +../../data/yoloGtold1/train/96974.png +../../data/yoloGtold1/train/96975.png +../../data/yoloGtold1/train/96976.png +../../data/yoloGtold1/train/96977.png +../../data/yoloGtold1/train/96978.png +../../data/yoloGtold1/train/96979.png +../../data/yoloGtold1/train/96980.png +../../data/yoloGtold1/train/96981.png +../../data/yoloGtold1/train/96982.png +../../data/yoloGtold1/train/96983.png +../../data/yoloGtold1/train/96984.png +../../data/yoloGtold1/train/96985.png +../../data/yoloGtold1/train/96986.png +../../data/yoloGtold1/train/96987.png +../../data/yoloGtold1/train/96988.png +../../data/yoloGtold1/train/96989.png +../../data/yoloGtold1/train/96990.png +../../data/yoloGtold1/train/96991.png +../../data/yoloGtold1/train/96992.png +../../data/yoloGtold1/train/96993.png +../../data/yoloGtold1/train/96994.png +../../data/yoloGtold1/train/96995.png +../../data/yoloGtold1/train/96996.png +../../data/yoloGtold1/train/96997.png +../../data/yoloGtold1/train/96998.png +../../data/yoloGtold1/train/96999.png +../../data/yoloGtold1/train/97000.png +../../data/yoloGtold1/train/97001.png +../../data/yoloGtold1/train/97002.png +../../data/yoloGtold1/train/97003.png +../../data/yoloGtold1/train/97004.png +../../data/yoloGtold1/train/97005.png +../../data/yoloGtold1/train/97006.png +../../data/yoloGtold1/train/97007.png +../../data/yoloGtold1/train/97008.png +../../data/yoloGtold1/train/97009.png +../../data/yoloGtold1/train/97010.png +../../data/yoloGtold1/train/97011.png +../../data/yoloGtold1/train/97012.png +../../data/yoloGtold1/train/97013.png +../../data/yoloGtold1/train/97014.png +../../data/yoloGtold1/train/97015.png +../../data/yoloGtold1/train/97016.png +../../data/yoloGtold1/train/97017.png +../../data/yoloGtold1/train/97018.png +../../data/yoloGtold1/train/97019.png +../../data/yoloGtold1/train/97020.png +../../data/yoloGtold1/train/97021.png +../../data/yoloGtold1/train/97022.png +../../data/yoloGtold1/train/97023.png +../../data/yoloGtold1/train/97024.png +../../data/yoloGtold1/train/97025.png +../../data/yoloGtold1/train/97026.png +../../data/yoloGtold1/train/97027.png +../../data/yoloGtold1/train/97028.png +../../data/yoloGtold1/train/97029.png +../../data/yoloGtold1/train/97030.png +../../data/yoloGtold1/train/97031.png +../../data/yoloGtold1/train/97032.png +../../data/yoloGtold1/train/97033.png +../../data/yoloGtold1/train/97034.png +../../data/yoloGtold1/train/97035.png +../../data/yoloGtold1/train/97036.png +../../data/yoloGtold1/train/97037.png +../../data/yoloGtold1/train/97038.png +../../data/yoloGtold1/train/97039.png +../../data/yoloGtold1/train/97040.png +../../data/yoloGtold1/train/97041.png +../../data/yoloGtold1/train/97042.png +../../data/yoloGtold1/train/97043.png +../../data/yoloGtold1/train/97044.png +../../data/yoloGtold1/train/97045.png +../../data/yoloGtold1/train/97046.png +../../data/yoloGtold1/train/97047.png +../../data/yoloGtold1/train/97048.png +../../data/yoloGtold1/train/97049.png +../../data/yoloGtold1/train/97050.png +../../data/yoloGtold1/train/97051.png +../../data/yoloGtold1/train/97052.png +../../data/yoloGtold1/train/97053.png +../../data/yoloGtold1/train/97054.png +../../data/yoloGtold1/train/97055.png +../../data/yoloGtold1/train/97056.png +../../data/yoloGtold1/train/97057.png +../../data/yoloGtold1/train/97058.png +../../data/yoloGtold1/train/97059.png +../../data/yoloGtold1/train/97060.png +../../data/yoloGtold1/train/97061.png +../../data/yoloGtold1/train/97062.png +../../data/yoloGtold1/train/97063.png +../../data/yoloGtold1/train/97064.png +../../data/yoloGtold1/train/97065.png +../../data/yoloGtold1/train/97066.png +../../data/yoloGtold1/train/97067.png +../../data/yoloGtold1/train/97068.png +../../data/yoloGtold1/train/97069.png +../../data/yoloGtold1/train/97070.png +../../data/yoloGtold1/train/97071.png +../../data/yoloGtold1/train/97072.png +../../data/yoloGtold1/train/97073.png +../../data/yoloGtold1/train/97074.png +../../data/yoloGtold1/train/97075.png +../../data/yoloGtold1/train/97076.png +../../data/yoloGtold1/train/97077.png +../../data/yoloGtold1/train/97078.png +../../data/yoloGtold1/train/97079.png +../../data/yoloGtold1/train/97080.png +../../data/yoloGtold1/train/97081.png +../../data/yoloGtold1/train/97082.png +../../data/yoloGtold1/train/97083.png +../../data/yoloGtold1/train/97084.png +../../data/yoloGtold1/train/97085.png +../../data/yoloGtold1/train/97086.png +../../data/yoloGtold1/train/97087.png +../../data/yoloGtold1/train/97088.png +../../data/yoloGtold1/train/97089.png +../../data/yoloGtold1/train/97090.png +../../data/yoloGtold1/train/97091.png +../../data/yoloGtold1/train/97092.png +../../data/yoloGtold1/train/97093.png +../../data/yoloGtold1/train/97094.png +../../data/yoloGtold1/train/97095.png +../../data/yoloGtold1/train/97096.png +../../data/yoloGtold1/train/97097.png +../../data/yoloGtold1/train/97098.png +../../data/yoloGtold1/train/97099.png +../../data/yoloGtold1/train/97100.png +../../data/yoloGtold1/train/97101.png +../../data/yoloGtold1/train/97102.png +../../data/yoloGtold1/train/97103.png +../../data/yoloGtold1/train/97104.png +../../data/yoloGtold1/train/97105.png +../../data/yoloGtold1/train/97106.png +../../data/yoloGtold1/train/97107.png +../../data/yoloGtold1/train/97108.png +../../data/yoloGtold1/train/97109.png +../../data/yoloGtold1/train/97110.png +../../data/yoloGtold1/train/97111.png +../../data/yoloGtold1/train/97112.png +../../data/yoloGtold1/train/97113.png +../../data/yoloGtold1/train/97114.png +../../data/yoloGtold1/train/97115.png +../../data/yoloGtold1/train/97116.png +../../data/yoloGtold1/train/97117.png +../../data/yoloGtold1/train/97118.png +../../data/yoloGtold1/train/97119.png +../../data/yoloGtold1/train/97120.png +../../data/yoloGtold1/train/97121.png +../../data/yoloGtold1/train/97122.png +../../data/yoloGtold1/train/97123.png +../../data/yoloGtold1/train/97124.png +../../data/yoloGtold1/train/97125.png +../../data/yoloGtold1/train/97126.png +../../data/yoloGtold1/train/97127.png +../../data/yoloGtold1/train/97128.png +../../data/yoloGtold1/train/97129.png +../../data/yoloGtold1/train/97130.png +../../data/yoloGtold1/train/97131.png +../../data/yoloGtold1/train/97132.png +../../data/yoloGtold1/train/97133.png +../../data/yoloGtold1/train/97134.png +../../data/yoloGtold1/train/97135.png +../../data/yoloGtold1/train/97136.png +../../data/yoloGtold1/train/97137.png +../../data/yoloGtold1/train/97138.png +../../data/yoloGtold1/train/97139.png +../../data/yoloGtold1/train/97140.png +../../data/yoloGtold1/train/97141.png +../../data/yoloGtold1/train/97142.png +../../data/yoloGtold1/train/97143.png +../../data/yoloGtold1/train/97144.png +../../data/yoloGtold1/train/97145.png +../../data/yoloGtold1/train/97146.png +../../data/yoloGtold1/train/97147.png +../../data/yoloGtold1/train/97148.png +../../data/yoloGtold1/train/97149.png +../../data/yoloGtold1/train/97150.png +../../data/yoloGtold1/train/97151.png +../../data/yoloGtold1/train/97152.png +../../data/yoloGtold1/train/97153.png +../../data/yoloGtold1/train/97154.png +../../data/yoloGtold1/train/97155.png +../../data/yoloGtold1/train/97156.png +../../data/yoloGtold1/train/97157.png +../../data/yoloGtold1/train/97158.png +../../data/yoloGtold1/train/97159.png +../../data/yoloGtold1/train/97160.png +../../data/yoloGtold1/train/97161.png +../../data/yoloGtold1/train/97162.png +../../data/yoloGtold1/train/97163.png +../../data/yoloGtold1/train/97164.png +../../data/yoloGtold1/train/97165.png +../../data/yoloGtold1/train/97166.png +../../data/yoloGtold1/train/97167.png +../../data/yoloGtold1/train/97168.png +../../data/yoloGtold1/train/97169.png +../../data/yoloGtold1/train/97170.png +../../data/yoloGtold1/train/97171.png +../../data/yoloGtold1/train/97172.png +../../data/yoloGtold1/train/97173.png +../../data/yoloGtold1/train/97174.png +../../data/yoloGtold1/train/97175.png +../../data/yoloGtold1/train/97176.png +../../data/yoloGtold1/train/97177.png +../../data/yoloGtold1/train/97178.png +../../data/yoloGtold1/train/97179.png +../../data/yoloGtold1/train/97180.png +../../data/yoloGtold1/train/97181.png +../../data/yoloGtold1/train/97182.png +../../data/yoloGtold1/train/97183.png +../../data/yoloGtold1/train/97184.png +../../data/yoloGtold1/train/97185.png +../../data/yoloGtold1/train/97186.png +../../data/yoloGtold1/train/97187.png +../../data/yoloGtold1/train/97188.png +../../data/yoloGtold1/train/97189.png +../../data/yoloGtold1/train/97190.png +../../data/yoloGtold1/train/97191.png +../../data/yoloGtold1/train/97192.png +../../data/yoloGtold1/train/97193.png +../../data/yoloGtold1/train/97194.png +../../data/yoloGtold1/train/97195.png +../../data/yoloGtold1/train/97196.png +../../data/yoloGtold1/train/97197.png +../../data/yoloGtold1/train/97198.png +../../data/yoloGtold1/train/97199.png +../../data/yoloGtold1/train/97200.png +../../data/yoloGtold1/train/97201.png +../../data/yoloGtold1/train/97202.png +../../data/yoloGtold1/train/97203.png +../../data/yoloGtold1/train/97204.png +../../data/yoloGtold1/train/97205.png +../../data/yoloGtold1/train/97206.png +../../data/yoloGtold1/train/97207.png +../../data/yoloGtold1/train/97208.png +../../data/yoloGtold1/train/97209.png +../../data/yoloGtold1/train/97210.png +../../data/yoloGtold1/train/97211.png +../../data/yoloGtold1/train/97212.png +../../data/yoloGtold1/train/97213.png +../../data/yoloGtold1/train/97214.png +../../data/yoloGtold1/train/97215.png +../../data/yoloGtold1/train/97216.png +../../data/yoloGtold1/train/97217.png +../../data/yoloGtold1/train/97218.png +../../data/yoloGtold1/train/97219.png +../../data/yoloGtold1/train/97220.png +../../data/yoloGtold1/train/97221.png +../../data/yoloGtold1/train/97222.png +../../data/yoloGtold1/train/97223.png +../../data/yoloGtold1/train/97224.png +../../data/yoloGtold1/train/97225.png +../../data/yoloGtold1/train/97226.png +../../data/yoloGtold1/train/97227.png +../../data/yoloGtold1/train/97228.png +../../data/yoloGtold1/train/97229.png +../../data/yoloGtold1/train/97230.png +../../data/yoloGtold1/train/97231.png +../../data/yoloGtold1/train/97232.png +../../data/yoloGtold1/train/97233.png +../../data/yoloGtold1/train/97234.png +../../data/yoloGtold1/train/97235.png +../../data/yoloGtold1/train/97236.png +../../data/yoloGtold1/train/97237.png +../../data/yoloGtold1/train/97238.png +../../data/yoloGtold1/train/97239.png +../../data/yoloGtold1/train/97240.png +../../data/yoloGtold1/train/97241.png +../../data/yoloGtold1/train/97242.png +../../data/yoloGtold1/train/97243.png +../../data/yoloGtold1/train/97244.png +../../data/yoloGtold1/train/97245.png +../../data/yoloGtold1/train/97246.png +../../data/yoloGtold1/train/97247.png +../../data/yoloGtold1/train/97248.png +../../data/yoloGtold1/train/97249.png +../../data/yoloGtold1/train/97250.png +../../data/yoloGtold1/train/97251.png +../../data/yoloGtold1/train/97252.png +../../data/yoloGtold1/train/97253.png +../../data/yoloGtold1/train/97254.png +../../data/yoloGtold1/train/97255.png +../../data/yoloGtold1/train/97256.png +../../data/yoloGtold1/train/97257.png +../../data/yoloGtold1/train/97258.png +../../data/yoloGtold1/train/97259.png +../../data/yoloGtold1/train/97260.png +../../data/yoloGtold1/train/97261.png +../../data/yoloGtold1/train/97262.png +../../data/yoloGtold1/train/97263.png +../../data/yoloGtold1/train/97264.png +../../data/yoloGtold1/train/97265.png +../../data/yoloGtold1/train/97266.png +../../data/yoloGtold1/train/97267.png +../../data/yoloGtold1/train/97268.png +../../data/yoloGtold1/train/97269.png +../../data/yoloGtold1/train/97270.png +../../data/yoloGtold1/train/97271.png +../../data/yoloGtold1/train/97272.png +../../data/yoloGtold1/train/97273.png +../../data/yoloGtold1/train/97274.png +../../data/yoloGtold1/train/97275.png +../../data/yoloGtold1/train/97276.png +../../data/yoloGtold1/train/97277.png +../../data/yoloGtold1/train/97278.png +../../data/yoloGtold1/train/97279.png +../../data/yoloGtold1/train/97280.png +../../data/yoloGtold1/train/97281.png +../../data/yoloGtold1/train/97282.png +../../data/yoloGtold1/train/97283.png +../../data/yoloGtold1/train/97284.png +../../data/yoloGtold1/train/97285.png +../../data/yoloGtold1/train/97286.png +../../data/yoloGtold1/train/97287.png +../../data/yoloGtold1/train/97288.png +../../data/yoloGtold1/train/97289.png +../../data/yoloGtold1/train/97290.png +../../data/yoloGtold1/train/97291.png +../../data/yoloGtold1/train/97292.png +../../data/yoloGtold1/train/97293.png +../../data/yoloGtold1/train/97294.png +../../data/yoloGtold1/train/97295.png +../../data/yoloGtold1/train/97296.png +../../data/yoloGtold1/train/97297.png +../../data/yoloGtold1/train/97298.png +../../data/yoloGtold1/train/97299.png +../../data/yoloGtold1/train/97300.png +../../data/yoloGtold1/train/97301.png +../../data/yoloGtold1/train/97302.png +../../data/yoloGtold1/train/97303.png +../../data/yoloGtold1/train/97304.png +../../data/yoloGtold1/train/97305.png +../../data/yoloGtold1/train/97306.png +../../data/yoloGtold1/train/97307.png +../../data/yoloGtold1/train/97308.png +../../data/yoloGtold1/train/97309.png +../../data/yoloGtold1/train/97310.png +../../data/yoloGtold1/train/97311.png +../../data/yoloGtold1/train/97312.png +../../data/yoloGtold1/train/97313.png +../../data/yoloGtold1/train/97314.png +../../data/yoloGtold1/train/97315.png +../../data/yoloGtold1/train/97316.png +../../data/yoloGtold1/train/97317.png +../../data/yoloGtold1/train/97318.png +../../data/yoloGtold1/train/97319.png +../../data/yoloGtold1/train/97320.png +../../data/yoloGtold1/train/97321.png +../../data/yoloGtold1/train/97322.png +../../data/yoloGtold1/train/97323.png +../../data/yoloGtold1/train/97324.png +../../data/yoloGtold1/train/97325.png +../../data/yoloGtold1/train/97326.png +../../data/yoloGtold1/train/97327.png +../../data/yoloGtold1/train/97328.png +../../data/yoloGtold1/train/97329.png +../../data/yoloGtold1/train/97330.png +../../data/yoloGtold1/train/97331.png +../../data/yoloGtold1/train/97332.png +../../data/yoloGtold1/train/97333.png +../../data/yoloGtold1/train/97334.png +../../data/yoloGtold1/train/97335.png +../../data/yoloGtold1/train/97336.png +../../data/yoloGtold1/train/97337.png +../../data/yoloGtold1/train/97338.png +../../data/yoloGtold1/train/97339.png +../../data/yoloGtold1/train/97340.png +../../data/yoloGtold1/train/97341.png +../../data/yoloGtold1/train/97342.png +../../data/yoloGtold1/train/97343.png +../../data/yoloGtold1/train/97344.png +../../data/yoloGtold1/train/97345.png +../../data/yoloGtold1/train/97346.png +../../data/yoloGtold1/train/97347.png +../../data/yoloGtold1/train/97348.png +../../data/yoloGtold1/train/97349.png +../../data/yoloGtold1/train/97350.png +../../data/yoloGtold1/train/97351.png +../../data/yoloGtold1/train/97352.png +../../data/yoloGtold1/train/97353.png +../../data/yoloGtold1/train/97354.png +../../data/yoloGtold1/train/97355.png +../../data/yoloGtold1/train/97356.png +../../data/yoloGtold1/train/97357.png +../../data/yoloGtold1/train/97358.png +../../data/yoloGtold1/train/97359.png +../../data/yoloGtold1/train/97360.png +../../data/yoloGtold1/train/97361.png +../../data/yoloGtold1/train/97362.png +../../data/yoloGtold1/train/97363.png +../../data/yoloGtold1/train/97364.png +../../data/yoloGtold1/train/97365.png +../../data/yoloGtold1/train/97366.png +../../data/yoloGtold1/train/97367.png +../../data/yoloGtold1/train/97368.png +../../data/yoloGtold1/train/97369.png +../../data/yoloGtold1/train/97370.png +../../data/yoloGtold1/train/97371.png +../../data/yoloGtold1/train/97372.png +../../data/yoloGtold1/train/97373.png +../../data/yoloGtold1/train/97374.png +../../data/yoloGtold1/train/97375.png +../../data/yoloGtold1/train/97376.png +../../data/yoloGtold1/train/97377.png +../../data/yoloGtold1/train/97378.png +../../data/yoloGtold1/train/97379.png +../../data/yoloGtold1/train/97380.png +../../data/yoloGtold1/train/97381.png +../../data/yoloGtold1/train/97382.png +../../data/yoloGtold1/train/97383.png +../../data/yoloGtold1/train/97384.png +../../data/yoloGtold1/train/97385.png +../../data/yoloGtold1/train/97386.png +../../data/yoloGtold1/train/97387.png +../../data/yoloGtold1/train/97388.png +../../data/yoloGtold1/train/97389.png +../../data/yoloGtold1/train/97390.png +../../data/yoloGtold1/train/97391.png +../../data/yoloGtold1/train/97392.png +../../data/yoloGtold1/train/97393.png +../../data/yoloGtold1/train/97394.png +../../data/yoloGtold1/train/97395.png +../../data/yoloGtold1/train/97396.png +../../data/yoloGtold1/train/97397.png +../../data/yoloGtold1/train/97398.png +../../data/yoloGtold1/train/97399.png +../../data/yoloGtold1/train/97400.png +../../data/yoloGtold1/train/97401.png +../../data/yoloGtold1/train/97402.png +../../data/yoloGtold1/train/97403.png +../../data/yoloGtold1/train/97404.png +../../data/yoloGtold1/train/97405.png +../../data/yoloGtold1/train/97406.png +../../data/yoloGtold1/train/97407.png +../../data/yoloGtold1/train/97408.png +../../data/yoloGtold1/train/97409.png +../../data/yoloGtold1/train/97410.png +../../data/yoloGtold1/train/97411.png +../../data/yoloGtold1/train/97412.png +../../data/yoloGtold1/train/97413.png +../../data/yoloGtold1/train/97414.png +../../data/yoloGtold1/train/97415.png +../../data/yoloGtold1/train/97416.png +../../data/yoloGtold1/train/97417.png +../../data/yoloGtold1/train/97418.png +../../data/yoloGtold1/train/97419.png +../../data/yoloGtold1/train/97420.png +../../data/yoloGtold1/train/97421.png +../../data/yoloGtold1/train/97422.png +../../data/yoloGtold1/train/97423.png +../../data/yoloGtold1/train/97424.png +../../data/yoloGtold1/train/97425.png +../../data/yoloGtold1/train/97426.png +../../data/yoloGtold1/train/97427.png +../../data/yoloGtold1/train/97428.png +../../data/yoloGtold1/train/97429.png +../../data/yoloGtold1/train/97430.png +../../data/yoloGtold1/train/97431.png +../../data/yoloGtold1/train/97432.png +../../data/yoloGtold1/train/97433.png +../../data/yoloGtold1/train/97434.png +../../data/yoloGtold1/train/97435.png +../../data/yoloGtold1/train/97436.png +../../data/yoloGtold1/train/97437.png +../../data/yoloGtold1/train/97438.png +../../data/yoloGtold1/train/97439.png +../../data/yoloGtold1/train/97440.png +../../data/yoloGtold1/train/97441.png +../../data/yoloGtold1/train/97442.png +../../data/yoloGtold1/train/97443.png +../../data/yoloGtold1/train/97444.png +../../data/yoloGtold1/train/97445.png +../../data/yoloGtold1/train/97446.png +../../data/yoloGtold1/train/97447.png +../../data/yoloGtold1/train/97448.png +../../data/yoloGtold1/train/97449.png +../../data/yoloGtold1/train/97450.png +../../data/yoloGtold1/train/97451.png +../../data/yoloGtold1/train/97452.png +../../data/yoloGtold1/train/97453.png +../../data/yoloGtold1/train/97454.png +../../data/yoloGtold1/train/97455.png +../../data/yoloGtold1/train/97456.png +../../data/yoloGtold1/train/97457.png +../../data/yoloGtold1/train/97458.png +../../data/yoloGtold1/train/97459.png +../../data/yoloGtold1/train/97460.png +../../data/yoloGtold1/train/97461.png +../../data/yoloGtold1/train/97462.png +../../data/yoloGtold1/train/97463.png +../../data/yoloGtold1/train/97464.png +../../data/yoloGtold1/train/97465.png +../../data/yoloGtold1/train/97466.png +../../data/yoloGtold1/train/97467.png +../../data/yoloGtold1/train/97468.png +../../data/yoloGtold1/train/97469.png +../../data/yoloGtold1/train/97470.png +../../data/yoloGtold1/train/97471.png +../../data/yoloGtold1/train/97472.png +../../data/yoloGtold1/train/97473.png +../../data/yoloGtold1/train/97474.png +../../data/yoloGtold1/train/97475.png +../../data/yoloGtold1/train/97476.png +../../data/yoloGtold1/train/97477.png +../../data/yoloGtold1/train/97478.png +../../data/yoloGtold1/train/97479.png +../../data/yoloGtold1/train/97480.png +../../data/yoloGtold1/train/97481.png +../../data/yoloGtold1/train/97482.png +../../data/yoloGtold1/train/97483.png +../../data/yoloGtold1/train/97484.png +../../data/yoloGtold1/train/97485.png +../../data/yoloGtold1/train/97486.png +../../data/yoloGtold1/train/97487.png +../../data/yoloGtold1/train/97488.png +../../data/yoloGtold1/train/97489.png +../../data/yoloGtold1/train/97490.png +../../data/yoloGtold1/train/97491.png +../../data/yoloGtold1/train/97492.png +../../data/yoloGtold1/train/97493.png +../../data/yoloGtold1/train/97494.png +../../data/yoloGtold1/train/97495.png +../../data/yoloGtold1/train/97496.png +../../data/yoloGtold1/train/97497.png +../../data/yoloGtold1/train/97498.png +../../data/yoloGtold1/train/97499.png +../../data/yoloGtold1/train/97500.png +../../data/yoloGtold1/train/97501.png +../../data/yoloGtold1/train/97502.png +../../data/yoloGtold1/train/97503.png +../../data/yoloGtold1/train/97504.png +../../data/yoloGtold1/train/97505.png +../../data/yoloGtold1/train/97506.png +../../data/yoloGtold1/train/97507.png +../../data/yoloGtold1/train/97508.png +../../data/yoloGtold1/train/97509.png +../../data/yoloGtold1/train/97510.png +../../data/yoloGtold1/train/97511.png +../../data/yoloGtold1/train/97512.png +../../data/yoloGtold1/train/97513.png +../../data/yoloGtold1/train/97514.png +../../data/yoloGtold1/train/97515.png +../../data/yoloGtold1/train/97516.png +../../data/yoloGtold1/train/97517.png +../../data/yoloGtold1/train/97518.png +../../data/yoloGtold1/train/97519.png +../../data/yoloGtold1/train/97520.png +../../data/yoloGtold1/train/97521.png +../../data/yoloGtold1/train/97522.png +../../data/yoloGtold1/train/97523.png +../../data/yoloGtold1/train/97524.png +../../data/yoloGtold1/train/97525.png +../../data/yoloGtold1/train/97526.png +../../data/yoloGtold1/train/97527.png +../../data/yoloGtold1/train/97528.png +../../data/yoloGtold1/train/97529.png +../../data/yoloGtold1/train/97530.png +../../data/yoloGtold1/train/97531.png +../../data/yoloGtold1/train/97532.png +../../data/yoloGtold1/train/97533.png +../../data/yoloGtold1/train/97534.png +../../data/yoloGtold1/train/97535.png +../../data/yoloGtold1/train/97536.png +../../data/yoloGtold1/train/97537.png +../../data/yoloGtold1/train/97538.png +../../data/yoloGtold1/train/97539.png +../../data/yoloGtold1/train/97540.png +../../data/yoloGtold1/train/97541.png +../../data/yoloGtold1/train/97542.png +../../data/yoloGtold1/train/97543.png +../../data/yoloGtold1/train/97544.png +../../data/yoloGtold1/train/97545.png +../../data/yoloGtold1/train/97546.png +../../data/yoloGtold1/train/97547.png +../../data/yoloGtold1/train/97548.png +../../data/yoloGtold1/train/97549.png +../../data/yoloGtold1/train/97550.png +../../data/yoloGtold1/train/97551.png +../../data/yoloGtold1/train/97552.png +../../data/yoloGtold1/train/97553.png +../../data/yoloGtold1/train/97554.png +../../data/yoloGtold1/train/97555.png +../../data/yoloGtold1/train/97556.png +../../data/yoloGtold1/train/97557.png +../../data/yoloGtold1/train/97558.png +../../data/yoloGtold1/train/97559.png +../../data/yoloGtold1/train/97560.png +../../data/yoloGtold1/train/97561.png +../../data/yoloGtold1/train/97562.png +../../data/yoloGtold1/train/97563.png +../../data/yoloGtold1/train/97564.png +../../data/yoloGtold1/train/97565.png +../../data/yoloGtold1/train/97566.png +../../data/yoloGtold1/train/97567.png +../../data/yoloGtold1/train/97568.png +../../data/yoloGtold1/train/97569.png +../../data/yoloGtold1/train/97570.png +../../data/yoloGtold1/train/97571.png +../../data/yoloGtold1/train/97572.png +../../data/yoloGtold1/train/97573.png +../../data/yoloGtold1/train/97574.png +../../data/yoloGtold1/train/97575.png +../../data/yoloGtold1/train/97576.png +../../data/yoloGtold1/train/97577.png +../../data/yoloGtold1/train/97578.png +../../data/yoloGtold1/train/97579.png +../../data/yoloGtold1/train/97580.png +../../data/yoloGtold1/train/97581.png +../../data/yoloGtold1/train/97582.png +../../data/yoloGtold1/train/97583.png +../../data/yoloGtold1/train/97584.png +../../data/yoloGtold1/train/97585.png +../../data/yoloGtold1/train/97586.png +../../data/yoloGtold1/train/97587.png +../../data/yoloGtold1/train/97588.png +../../data/yoloGtold1/train/97589.png +../../data/yoloGtold1/train/97590.png +../../data/yoloGtold1/train/97591.png +../../data/yoloGtold1/train/97592.png +../../data/yoloGtold1/train/97593.png +../../data/yoloGtold1/train/97594.png +../../data/yoloGtold1/train/97595.png +../../data/yoloGtold1/train/97596.png +../../data/yoloGtold1/train/97597.png +../../data/yoloGtold1/train/97598.png +../../data/yoloGtold1/train/97599.png +../../data/yoloGtold1/train/97600.png +../../data/yoloGtold1/train/97601.png +../../data/yoloGtold1/train/97602.png +../../data/yoloGtold1/train/97603.png +../../data/yoloGtold1/train/97604.png +../../data/yoloGtold1/train/97605.png +../../data/yoloGtold1/train/97606.png +../../data/yoloGtold1/train/97607.png +../../data/yoloGtold1/train/97608.png +../../data/yoloGtold1/train/97609.png +../../data/yoloGtold1/train/97610.png +../../data/yoloGtold1/train/97611.png +../../data/yoloGtold1/train/97612.png +../../data/yoloGtold1/train/97613.png +../../data/yoloGtold1/train/97614.png +../../data/yoloGtold1/train/97615.png +../../data/yoloGtold1/train/97616.png +../../data/yoloGtold1/train/97617.png +../../data/yoloGtold1/train/97618.png +../../data/yoloGtold1/train/97619.png +../../data/yoloGtold1/train/97620.png +../../data/yoloGtold1/train/97621.png +../../data/yoloGtold1/train/97622.png +../../data/yoloGtold1/train/97623.png +../../data/yoloGtold1/train/97624.png +../../data/yoloGtold1/train/97625.png +../../data/yoloGtold1/train/97626.png +../../data/yoloGtold1/train/97627.png +../../data/yoloGtold1/train/97628.png +../../data/yoloGtold1/train/97629.png +../../data/yoloGtold1/train/97630.png +../../data/yoloGtold1/train/97631.png +../../data/yoloGtold1/train/97632.png +../../data/yoloGtold1/train/97633.png +../../data/yoloGtold1/train/97634.png +../../data/yoloGtold1/train/97635.png +../../data/yoloGtold1/train/97636.png +../../data/yoloGtold1/train/97637.png +../../data/yoloGtold1/train/97638.png +../../data/yoloGtold1/train/97639.png +../../data/yoloGtold1/train/97640.png +../../data/yoloGtold1/train/97641.png +../../data/yoloGtold1/train/97642.png +../../data/yoloGtold1/train/97643.png +../../data/yoloGtold1/train/97644.png +../../data/yoloGtold1/train/97645.png +../../data/yoloGtold1/train/97646.png +../../data/yoloGtold1/train/97647.png +../../data/yoloGtold1/train/97648.png +../../data/yoloGtold1/train/97649.png +../../data/yoloGtold1/train/97650.png +../../data/yoloGtold1/train/97651.png +../../data/yoloGtold1/train/97652.png +../../data/yoloGtold1/train/97653.png +../../data/yoloGtold1/train/97654.png +../../data/yoloGtold1/train/97655.png +../../data/yoloGtold1/train/97656.png +../../data/yoloGtold1/train/97657.png +../../data/yoloGtold1/train/97658.png +../../data/yoloGtold1/train/97659.png +../../data/yoloGtold1/train/97660.png +../../data/yoloGtold1/train/97661.png +../../data/yoloGtold1/train/97662.png +../../data/yoloGtold1/train/97663.png +../../data/yoloGtold1/train/97664.png +../../data/yoloGtold1/train/97665.png +../../data/yoloGtold1/train/97666.png +../../data/yoloGtold1/train/97667.png +../../data/yoloGtold1/train/97668.png +../../data/yoloGtold1/train/97669.png +../../data/yoloGtold1/train/97670.png +../../data/yoloGtold1/train/97671.png +../../data/yoloGtold1/train/97672.png +../../data/yoloGtold1/train/97673.png +../../data/yoloGtold1/train/97674.png +../../data/yoloGtold1/train/97675.png +../../data/yoloGtold1/train/97676.png +../../data/yoloGtold1/train/97677.png +../../data/yoloGtold1/train/97678.png +../../data/yoloGtold1/train/97679.png +../../data/yoloGtold1/train/97680.png +../../data/yoloGtold1/train/97681.png +../../data/yoloGtold1/train/97682.png +../../data/yoloGtold1/train/97683.png +../../data/yoloGtold1/train/97684.png +../../data/yoloGtold1/train/97685.png +../../data/yoloGtold1/train/97686.png +../../data/yoloGtold1/train/97687.png +../../data/yoloGtold1/train/97688.png +../../data/yoloGtold1/train/97689.png +../../data/yoloGtold1/train/97690.png +../../data/yoloGtold1/train/97691.png +../../data/yoloGtold1/train/97692.png +../../data/yoloGtold1/train/97693.png +../../data/yoloGtold1/train/97694.png +../../data/yoloGtold1/train/97695.png +../../data/yoloGtold1/train/97696.png +../../data/yoloGtold1/train/97697.png +../../data/yoloGtold1/train/97698.png +../../data/yoloGtold1/train/97699.png +../../data/yoloGtold1/train/97700.png +../../data/yoloGtold1/train/97701.png +../../data/yoloGtold1/train/97702.png +../../data/yoloGtold1/train/97703.png +../../data/yoloGtold1/train/97704.png +../../data/yoloGtold1/train/97705.png +../../data/yoloGtold1/train/97706.png +../../data/yoloGtold1/train/97707.png +../../data/yoloGtold1/train/97708.png +../../data/yoloGtold1/train/97709.png +../../data/yoloGtold1/train/97710.png +../../data/yoloGtold1/train/97711.png +../../data/yoloGtold1/train/97712.png +../../data/yoloGtold1/train/97713.png +../../data/yoloGtold1/train/97714.png +../../data/yoloGtold1/train/97715.png +../../data/yoloGtold1/train/97716.png +../../data/yoloGtold1/train/97717.png +../../data/yoloGtold1/train/97718.png +../../data/yoloGtold1/train/97719.png +../../data/yoloGtold1/train/97720.png +../../data/yoloGtold1/train/97721.png +../../data/yoloGtold1/train/97722.png +../../data/yoloGtold1/train/97723.png +../../data/yoloGtold1/train/97724.png +../../data/yoloGtold1/train/97725.png +../../data/yoloGtold1/train/97726.png +../../data/yoloGtold1/train/97727.png +../../data/yoloGtold1/train/97728.png +../../data/yoloGtold1/train/97729.png +../../data/yoloGtold1/train/97730.png +../../data/yoloGtold1/train/97731.png +../../data/yoloGtold1/train/97732.png +../../data/yoloGtold1/train/97733.png +../../data/yoloGtold1/train/97734.png +../../data/yoloGtold1/train/97735.png +../../data/yoloGtold1/train/97736.png +../../data/yoloGtold1/train/97737.png +../../data/yoloGtold1/train/97738.png +../../data/yoloGtold1/train/97739.png +../../data/yoloGtold1/train/97740.png +../../data/yoloGtold1/train/97741.png +../../data/yoloGtold1/train/97742.png +../../data/yoloGtold1/train/97743.png +../../data/yoloGtold1/train/97744.png +../../data/yoloGtold1/train/97745.png +../../data/yoloGtold1/train/97746.png +../../data/yoloGtold1/train/97747.png +../../data/yoloGtold1/train/97748.png +../../data/yoloGtold1/train/97749.png +../../data/yoloGtold1/train/97750.png +../../data/yoloGtold1/train/97751.png +../../data/yoloGtold1/train/97752.png +../../data/yoloGtold1/train/97753.png +../../data/yoloGtold1/train/97754.png +../../data/yoloGtold1/train/97755.png +../../data/yoloGtold1/train/97756.png +../../data/yoloGtold1/train/97757.png +../../data/yoloGtold1/train/97758.png +../../data/yoloGtold1/train/97759.png +../../data/yoloGtold1/train/97760.png +../../data/yoloGtold1/train/97761.png +../../data/yoloGtold1/train/97762.png +../../data/yoloGtold1/train/97763.png +../../data/yoloGtold1/train/97764.png +../../data/yoloGtold1/train/97765.png +../../data/yoloGtold1/train/97766.png +../../data/yoloGtold1/train/97767.png +../../data/yoloGtold1/train/97768.png +../../data/yoloGtold1/train/97769.png +../../data/yoloGtold1/train/97770.png +../../data/yoloGtold1/train/97771.png +../../data/yoloGtold1/train/97772.png +../../data/yoloGtold1/train/97773.png +../../data/yoloGtold1/train/97774.png +../../data/yoloGtold1/train/97775.png +../../data/yoloGtold1/train/97776.png +../../data/yoloGtold1/train/97777.png +../../data/yoloGtold1/train/97778.png +../../data/yoloGtold1/train/97779.png +../../data/yoloGtold1/train/97780.png +../../data/yoloGtold1/train/97781.png +../../data/yoloGtold1/train/97782.png +../../data/yoloGtold1/train/97783.png +../../data/yoloGtold1/train/97784.png +../../data/yoloGtold1/train/97785.png +../../data/yoloGtold1/train/97786.png +../../data/yoloGtold1/train/97787.png +../../data/yoloGtold1/train/97788.png +../../data/yoloGtold1/train/97789.png +../../data/yoloGtold1/train/97790.png +../../data/yoloGtold1/train/97791.png +../../data/yoloGtold1/train/97792.png +../../data/yoloGtold1/train/97793.png +../../data/yoloGtold1/train/97794.png +../../data/yoloGtold1/train/97795.png +../../data/yoloGtold1/train/97796.png +../../data/yoloGtold1/train/97797.png +../../data/yoloGtold1/train/97798.png +../../data/yoloGtold1/train/97799.png +../../data/yoloGtold1/train/97800.png +../../data/yoloGtold1/train/97801.png +../../data/yoloGtold1/train/97802.png +../../data/yoloGtold1/train/97803.png +../../data/yoloGtold1/train/97804.png +../../data/yoloGtold1/train/97805.png +../../data/yoloGtold1/train/97806.png +../../data/yoloGtold1/train/97807.png +../../data/yoloGtold1/train/97808.png +../../data/yoloGtold1/train/97809.png +../../data/yoloGtold1/train/97810.png +../../data/yoloGtold1/train/97811.png +../../data/yoloGtold1/train/97812.png +../../data/yoloGtold1/train/97813.png +../../data/yoloGtold1/train/97814.png +../../data/yoloGtold1/train/97815.png +../../data/yoloGtold1/train/97816.png +../../data/yoloGtold1/train/97817.png +../../data/yoloGtold1/train/97818.png +../../data/yoloGtold1/train/97819.png +../../data/yoloGtold1/train/97820.png +../../data/yoloGtold1/train/97821.png +../../data/yoloGtold1/train/97822.png +../../data/yoloGtold1/train/97823.png +../../data/yoloGtold1/train/97824.png +../../data/yoloGtold1/train/97825.png +../../data/yoloGtold1/train/97826.png +../../data/yoloGtold1/train/97827.png +../../data/yoloGtold1/train/97828.png +../../data/yoloGtold1/train/97829.png +../../data/yoloGtold1/train/97830.png +../../data/yoloGtold1/train/97831.png +../../data/yoloGtold1/train/97832.png +../../data/yoloGtold1/train/97833.png +../../data/yoloGtold1/train/97834.png +../../data/yoloGtold1/train/97835.png +../../data/yoloGtold1/train/97836.png +../../data/yoloGtold1/train/97837.png +../../data/yoloGtold1/train/97838.png +../../data/yoloGtold1/train/97839.png +../../data/yoloGtold1/train/97840.png +../../data/yoloGtold1/train/97841.png +../../data/yoloGtold1/train/97842.png +../../data/yoloGtold1/train/97843.png +../../data/yoloGtold1/train/97844.png +../../data/yoloGtold1/train/97845.png +../../data/yoloGtold1/train/97846.png +../../data/yoloGtold1/train/97847.png +../../data/yoloGtold1/train/97848.png +../../data/yoloGtold1/train/97849.png +../../data/yoloGtold1/train/97850.png +../../data/yoloGtold1/train/97851.png +../../data/yoloGtold1/train/97852.png +../../data/yoloGtold1/train/97853.png +../../data/yoloGtold1/train/97854.png +../../data/yoloGtold1/train/97855.png +../../data/yoloGtold1/train/97856.png +../../data/yoloGtold1/train/97857.png +../../data/yoloGtold1/train/97858.png +../../data/yoloGtold1/train/97859.png +../../data/yoloGtold1/train/97860.png +../../data/yoloGtold1/train/97861.png +../../data/yoloGtold1/train/97862.png +../../data/yoloGtold1/train/97863.png +../../data/yoloGtold1/train/97864.png +../../data/yoloGtold1/train/97865.png +../../data/yoloGtold1/train/97866.png +../../data/yoloGtold1/train/97867.png +../../data/yoloGtold1/train/97868.png +../../data/yoloGtold1/train/97869.png +../../data/yoloGtold1/train/97870.png +../../data/yoloGtold1/train/97871.png +../../data/yoloGtold1/train/97872.png +../../data/yoloGtold1/train/97873.png +../../data/yoloGtold1/train/97874.png +../../data/yoloGtold1/train/97875.png +../../data/yoloGtold1/train/97876.png +../../data/yoloGtold1/train/97877.png +../../data/yoloGtold1/train/97878.png +../../data/yoloGtold1/train/97879.png +../../data/yoloGtold1/train/97880.png +../../data/yoloGtold1/train/97881.png +../../data/yoloGtold1/train/97882.png +../../data/yoloGtold1/train/97883.png +../../data/yoloGtold1/train/97884.png +../../data/yoloGtold1/train/97885.png +../../data/yoloGtold1/train/97886.png +../../data/yoloGtold1/train/97887.png +../../data/yoloGtold1/train/97888.png +../../data/yoloGtold1/train/97889.png +../../data/yoloGtold1/train/97890.png +../../data/yoloGtold1/train/97891.png +../../data/yoloGtold1/train/97892.png +../../data/yoloGtold1/train/97893.png +../../data/yoloGtold1/train/97894.png +../../data/yoloGtold1/train/97895.png +../../data/yoloGtold1/train/97896.png +../../data/yoloGtold1/train/97897.png +../../data/yoloGtold1/train/97898.png +../../data/yoloGtold1/train/97899.png +../../data/yoloGtold1/train/97900.png +../../data/yoloGtold1/train/97901.png +../../data/yoloGtold1/train/97902.png +../../data/yoloGtold1/train/97903.png +../../data/yoloGtold1/train/97904.png +../../data/yoloGtold1/train/97905.png +../../data/yoloGtold1/train/97906.png +../../data/yoloGtold1/train/97907.png +../../data/yoloGtold1/train/97908.png +../../data/yoloGtold1/train/97909.png +../../data/yoloGtold1/train/97910.png +../../data/yoloGtold1/train/97911.png +../../data/yoloGtold1/train/97912.png +../../data/yoloGtold1/train/97913.png +../../data/yoloGtold1/train/97914.png +../../data/yoloGtold1/train/97915.png +../../data/yoloGtold1/train/97916.png +../../data/yoloGtold1/train/97917.png +../../data/yoloGtold1/train/97918.png +../../data/yoloGtold1/train/97919.png +../../data/yoloGtold1/train/97920.png +../../data/yoloGtold1/train/97921.png +../../data/yoloGtold1/train/97922.png +../../data/yoloGtold1/train/97923.png +../../data/yoloGtold1/train/97924.png +../../data/yoloGtold1/train/97925.png +../../data/yoloGtold1/train/97926.png +../../data/yoloGtold1/train/97927.png +../../data/yoloGtold1/train/97928.png +../../data/yoloGtold1/train/97929.png +../../data/yoloGtold1/train/97930.png +../../data/yoloGtold1/train/97931.png +../../data/yoloGtold1/train/97932.png +../../data/yoloGtold1/train/97933.png +../../data/yoloGtold1/train/97934.png +../../data/yoloGtold1/train/97935.png +../../data/yoloGtold1/train/97936.png +../../data/yoloGtold1/train/97937.png +../../data/yoloGtold1/train/97938.png +../../data/yoloGtold1/train/97939.png +../../data/yoloGtold1/train/97940.png +../../data/yoloGtold1/train/97941.png +../../data/yoloGtold1/train/97942.png +../../data/yoloGtold1/train/97943.png +../../data/yoloGtold1/train/97944.png +../../data/yoloGtold1/train/97945.png +../../data/yoloGtold1/train/97946.png +../../data/yoloGtold1/train/97947.png +../../data/yoloGtold1/train/97948.png +../../data/yoloGtold1/train/97949.png +../../data/yoloGtold1/train/97950.png +../../data/yoloGtold1/train/97951.png +../../data/yoloGtold1/train/97952.png +../../data/yoloGtold1/train/97953.png +../../data/yoloGtold1/train/97954.png +../../data/yoloGtold1/train/97955.png +../../data/yoloGtold1/train/97956.png +../../data/yoloGtold1/train/97957.png +../../data/yoloGtold1/train/97958.png +../../data/yoloGtold1/train/97959.png +../../data/yoloGtold1/train/97960.png +../../data/yoloGtold1/train/97961.png +../../data/yoloGtold1/train/97962.png +../../data/yoloGtold1/train/97963.png +../../data/yoloGtold1/train/97964.png +../../data/yoloGtold1/train/97965.png +../../data/yoloGtold1/train/97966.png +../../data/yoloGtold1/train/97967.png +../../data/yoloGtold1/train/97968.png +../../data/yoloGtold1/train/97969.png +../../data/yoloGtold1/train/97970.png +../../data/yoloGtold1/train/97971.png +../../data/yoloGtold1/train/97972.png +../../data/yoloGtold1/train/97973.png +../../data/yoloGtold1/train/97974.png +../../data/yoloGtold1/train/97975.png +../../data/yoloGtold1/train/97976.png +../../data/yoloGtold1/train/97977.png +../../data/yoloGtold1/train/97978.png +../../data/yoloGtold1/train/97979.png +../../data/yoloGtold1/train/97980.png +../../data/yoloGtold1/train/97981.png +../../data/yoloGtold1/train/97982.png +../../data/yoloGtold1/train/97983.png +../../data/yoloGtold1/train/97984.png +../../data/yoloGtold1/train/97985.png +../../data/yoloGtold1/train/97986.png +../../data/yoloGtold1/train/97987.png +../../data/yoloGtold1/train/97988.png +../../data/yoloGtold1/train/97989.png +../../data/yoloGtold1/train/97990.png +../../data/yoloGtold1/train/97991.png +../../data/yoloGtold1/train/97992.png +../../data/yoloGtold1/train/97993.png +../../data/yoloGtold1/train/97994.png +../../data/yoloGtold1/train/97995.png +../../data/yoloGtold1/train/97996.png +../../data/yoloGtold1/train/97997.png +../../data/yoloGtold1/train/97998.png +../../data/yoloGtold1/train/97999.png +../../data/yoloGtold1/train/98000.png +../../data/yoloGtold1/train/98001.png +../../data/yoloGtold1/train/98002.png +../../data/yoloGtold1/train/98003.png +../../data/yoloGtold1/train/98004.png +../../data/yoloGtold1/train/98005.png +../../data/yoloGtold1/train/98006.png +../../data/yoloGtold1/train/98007.png +../../data/yoloGtold1/train/98008.png +../../data/yoloGtold1/train/98009.png +../../data/yoloGtold1/train/98010.png +../../data/yoloGtold1/train/98011.png +../../data/yoloGtold1/train/98012.png +../../data/yoloGtold1/train/98013.png +../../data/yoloGtold1/train/98014.png +../../data/yoloGtold1/train/98015.png +../../data/yoloGtold1/train/98016.png +../../data/yoloGtold1/train/98017.png +../../data/yoloGtold1/train/98018.png +../../data/yoloGtold1/train/98019.png +../../data/yoloGtold1/train/98020.png +../../data/yoloGtold1/train/98021.png +../../data/yoloGtold1/train/98022.png +../../data/yoloGtold1/train/98023.png +../../data/yoloGtold1/train/98024.png +../../data/yoloGtold1/train/98025.png +../../data/yoloGtold1/train/98026.png +../../data/yoloGtold1/train/98027.png +../../data/yoloGtold1/train/98028.png +../../data/yoloGtold1/train/98029.png +../../data/yoloGtold1/train/98030.png +../../data/yoloGtold1/train/98031.png +../../data/yoloGtold1/train/98032.png +../../data/yoloGtold1/train/98033.png +../../data/yoloGtold1/train/98034.png +../../data/yoloGtold1/train/98035.png +../../data/yoloGtold1/train/98036.png +../../data/yoloGtold1/train/98037.png +../../data/yoloGtold1/train/98038.png +../../data/yoloGtold1/train/98039.png +../../data/yoloGtold1/train/98040.png +../../data/yoloGtold1/train/98041.png +../../data/yoloGtold1/train/98042.png +../../data/yoloGtold1/train/98043.png +../../data/yoloGtold1/train/98044.png +../../data/yoloGtold1/train/98045.png +../../data/yoloGtold1/train/98046.png +../../data/yoloGtold1/train/98047.png +../../data/yoloGtold1/train/98048.png +../../data/yoloGtold1/train/98049.png +../../data/yoloGtold1/train/98050.png +../../data/yoloGtold1/train/98051.png +../../data/yoloGtold1/train/98052.png +../../data/yoloGtold1/train/98053.png +../../data/yoloGtold1/train/98054.png +../../data/yoloGtold1/train/98055.png +../../data/yoloGtold1/train/98056.png +../../data/yoloGtold1/train/98057.png +../../data/yoloGtold1/train/98058.png +../../data/yoloGtold1/train/98059.png +../../data/yoloGtold1/train/98060.png +../../data/yoloGtold1/train/98061.png +../../data/yoloGtold1/train/98062.png +../../data/yoloGtold1/train/98063.png +../../data/yoloGtold1/train/98064.png +../../data/yoloGtold1/train/98065.png +../../data/yoloGtold1/train/98066.png +../../data/yoloGtold1/train/98067.png +../../data/yoloGtold1/train/98068.png +../../data/yoloGtold1/train/98069.png +../../data/yoloGtold1/train/98070.png +../../data/yoloGtold1/train/98071.png +../../data/yoloGtold1/train/98072.png +../../data/yoloGtold1/train/98073.png +../../data/yoloGtold1/train/98074.png +../../data/yoloGtold1/train/98075.png +../../data/yoloGtold1/train/98076.png +../../data/yoloGtold1/train/98077.png +../../data/yoloGtold1/train/98078.png +../../data/yoloGtold1/train/98079.png +../../data/yoloGtold1/train/98080.png +../../data/yoloGtold1/train/98081.png +../../data/yoloGtold1/train/98082.png +../../data/yoloGtold1/train/98083.png +../../data/yoloGtold1/train/98084.png +../../data/yoloGtold1/train/98085.png +../../data/yoloGtold1/train/98086.png +../../data/yoloGtold1/train/98087.png +../../data/yoloGtold1/train/98088.png +../../data/yoloGtold1/train/98089.png +../../data/yoloGtold1/train/98090.png +../../data/yoloGtold1/train/98091.png +../../data/yoloGtold1/train/98092.png +../../data/yoloGtold1/train/98093.png +../../data/yoloGtold1/train/98094.png +../../data/yoloGtold1/train/98095.png +../../data/yoloGtold1/train/98096.png +../../data/yoloGtold1/train/98097.png +../../data/yoloGtold1/train/98098.png +../../data/yoloGtold1/train/98099.png +../../data/yoloGtold1/train/98100.png +../../data/yoloGtold1/train/98101.png +../../data/yoloGtold1/train/98102.png +../../data/yoloGtold1/train/98103.png +../../data/yoloGtold1/train/98104.png +../../data/yoloGtold1/train/98105.png +../../data/yoloGtold1/train/98106.png +../../data/yoloGtold1/train/98107.png +../../data/yoloGtold1/train/98108.png +../../data/yoloGtold1/train/98109.png +../../data/yoloGtold1/train/98110.png +../../data/yoloGtold1/train/98111.png +../../data/yoloGtold1/train/98112.png +../../data/yoloGtold1/train/98113.png +../../data/yoloGtold1/train/98114.png +../../data/yoloGtold1/train/98115.png +../../data/yoloGtold1/train/98116.png +../../data/yoloGtold1/train/98117.png +../../data/yoloGtold1/train/98118.png +../../data/yoloGtold1/train/98119.png +../../data/yoloGtold1/train/98120.png +../../data/yoloGtold1/train/98121.png +../../data/yoloGtold1/train/98122.png +../../data/yoloGtold1/train/98123.png +../../data/yoloGtold1/train/98124.png +../../data/yoloGtold1/train/98125.png +../../data/yoloGtold1/train/98126.png +../../data/yoloGtold1/train/98127.png +../../data/yoloGtold1/train/98128.png +../../data/yoloGtold1/train/98129.png +../../data/yoloGtold1/train/98130.png +../../data/yoloGtold1/train/98131.png +../../data/yoloGtold1/train/98132.png +../../data/yoloGtold1/train/98133.png +../../data/yoloGtold1/train/98134.png +../../data/yoloGtold1/train/98135.png +../../data/yoloGtold1/train/98136.png +../../data/yoloGtold1/train/98137.png +../../data/yoloGtold1/train/98138.png +../../data/yoloGtold1/train/98139.png +../../data/yoloGtold1/train/98140.png +../../data/yoloGtold1/train/98141.png +../../data/yoloGtold1/train/98142.png +../../data/yoloGtold1/train/98143.png +../../data/yoloGtold1/train/98144.png +../../data/yoloGtold1/train/98145.png +../../data/yoloGtold1/train/98146.png +../../data/yoloGtold1/train/98147.png +../../data/yoloGtold1/train/98148.png +../../data/yoloGtold1/train/98149.png +../../data/yoloGtold1/train/98150.png +../../data/yoloGtold1/train/98151.png +../../data/yoloGtold1/train/98152.png +../../data/yoloGtold1/train/98153.png +../../data/yoloGtold1/train/98154.png +../../data/yoloGtold1/train/98155.png +../../data/yoloGtold1/train/98156.png +../../data/yoloGtold1/train/98157.png +../../data/yoloGtold1/train/98158.png +../../data/yoloGtold1/train/98159.png +../../data/yoloGtold1/train/98160.png +../../data/yoloGtold1/train/98161.png +../../data/yoloGtold1/train/98162.png +../../data/yoloGtold1/train/98163.png +../../data/yoloGtold1/train/98164.png +../../data/yoloGtold1/train/98165.png +../../data/yoloGtold1/train/98166.png +../../data/yoloGtold1/train/98167.png +../../data/yoloGtold1/train/98168.png +../../data/yoloGtold1/train/98169.png +../../data/yoloGtold1/train/98170.png +../../data/yoloGtold1/train/98171.png +../../data/yoloGtold1/train/98172.png +../../data/yoloGtold1/train/98173.png +../../data/yoloGtold1/train/98174.png +../../data/yoloGtold1/train/98175.png +../../data/yoloGtold1/train/98176.png +../../data/yoloGtold1/train/98177.png +../../data/yoloGtold1/train/98178.png +../../data/yoloGtold1/train/98179.png +../../data/yoloGtold1/train/98180.png +../../data/yoloGtold1/train/98181.png +../../data/yoloGtold1/train/98182.png +../../data/yoloGtold1/train/98183.png +../../data/yoloGtold1/train/98184.png +../../data/yoloGtold1/train/98185.png +../../data/yoloGtold1/train/98186.png +../../data/yoloGtold1/train/98187.png +../../data/yoloGtold1/train/98188.png +../../data/yoloGtold1/train/98189.png +../../data/yoloGtold1/train/98190.png +../../data/yoloGtold1/train/98191.png +../../data/yoloGtold1/train/98192.png +../../data/yoloGtold1/train/98193.png +../../data/yoloGtold1/train/98194.png +../../data/yoloGtold1/train/98195.png +../../data/yoloGtold1/train/98196.png +../../data/yoloGtold1/train/98197.png +../../data/yoloGtold1/train/98198.png +../../data/yoloGtold1/train/98199.png +../../data/yoloGtold1/train/98200.png +../../data/yoloGtold1/train/98201.png +../../data/yoloGtold1/train/98202.png +../../data/yoloGtold1/train/98203.png +../../data/yoloGtold1/train/98204.png +../../data/yoloGtold1/train/98205.png +../../data/yoloGtold1/train/98206.png +../../data/yoloGtold1/train/98207.png +../../data/yoloGtold1/train/98208.png +../../data/yoloGtold1/train/98209.png +../../data/yoloGtold1/train/98210.png +../../data/yoloGtold1/train/98211.png +../../data/yoloGtold1/train/98212.png +../../data/yoloGtold1/train/98213.png +../../data/yoloGtold1/train/98214.png +../../data/yoloGtold1/train/98215.png +../../data/yoloGtold1/train/98216.png +../../data/yoloGtold1/train/98217.png +../../data/yoloGtold1/train/98218.png +../../data/yoloGtold1/train/98219.png +../../data/yoloGtold1/train/98220.png +../../data/yoloGtold1/train/98221.png +../../data/yoloGtold1/train/98222.png +../../data/yoloGtold1/train/98223.png +../../data/yoloGtold1/train/98224.png +../../data/yoloGtold1/train/98225.png +../../data/yoloGtold1/train/98226.png +../../data/yoloGtold1/train/98227.png +../../data/yoloGtold1/train/98228.png +../../data/yoloGtold1/train/98229.png +../../data/yoloGtold1/train/98230.png +../../data/yoloGtold1/train/98231.png +../../data/yoloGtold1/train/98232.png +../../data/yoloGtold1/train/98233.png +../../data/yoloGtold1/train/98234.png +../../data/yoloGtold1/train/98235.png +../../data/yoloGtold1/train/98236.png +../../data/yoloGtold1/train/98237.png +../../data/yoloGtold1/train/98238.png +../../data/yoloGtold1/train/98239.png +../../data/yoloGtold1/train/98240.png +../../data/yoloGtold1/train/98241.png +../../data/yoloGtold1/train/98242.png +../../data/yoloGtold1/train/98243.png +../../data/yoloGtold1/train/98244.png +../../data/yoloGtold1/train/98245.png +../../data/yoloGtold1/train/98246.png +../../data/yoloGtold1/train/98247.png +../../data/yoloGtold1/train/98248.png +../../data/yoloGtold1/train/98249.png +../../data/yoloGtold1/train/98250.png +../../data/yoloGtold1/train/98251.png +../../data/yoloGtold1/train/98252.png +../../data/yoloGtold1/train/98253.png +../../data/yoloGtold1/train/98254.png +../../data/yoloGtold1/train/98255.png +../../data/yoloGtold1/train/98256.png +../../data/yoloGtold1/train/98257.png +../../data/yoloGtold1/train/98258.png +../../data/yoloGtold1/train/98259.png +../../data/yoloGtold1/train/98260.png +../../data/yoloGtold1/train/98261.png +../../data/yoloGtold1/train/98262.png +../../data/yoloGtold1/train/98263.png +../../data/yoloGtold1/train/98264.png +../../data/yoloGtold1/train/98265.png +../../data/yoloGtold1/train/98266.png +../../data/yoloGtold1/train/98267.png +../../data/yoloGtold1/train/98268.png +../../data/yoloGtold1/train/98269.png +../../data/yoloGtold1/train/98270.png +../../data/yoloGtold1/train/98271.png +../../data/yoloGtold1/train/98272.png +../../data/yoloGtold1/train/98273.png +../../data/yoloGtold1/train/98274.png +../../data/yoloGtold1/train/98275.png +../../data/yoloGtold1/train/98276.png +../../data/yoloGtold1/train/98277.png +../../data/yoloGtold1/train/98278.png +../../data/yoloGtold1/train/98279.png +../../data/yoloGtold1/train/98280.png +../../data/yoloGtold1/train/98281.png +../../data/yoloGtold1/train/98282.png +../../data/yoloGtold1/train/98283.png +../../data/yoloGtold1/train/98284.png +../../data/yoloGtold1/train/98285.png +../../data/yoloGtold1/train/98286.png +../../data/yoloGtold1/train/98287.png +../../data/yoloGtold1/train/98288.png +../../data/yoloGtold1/train/98289.png +../../data/yoloGtold1/train/98290.png +../../data/yoloGtold1/train/98291.png +../../data/yoloGtold1/train/98292.png +../../data/yoloGtold1/train/98293.png +../../data/yoloGtold1/train/98294.png +../../data/yoloGtold1/train/98295.png +../../data/yoloGtold1/train/98296.png +../../data/yoloGtold1/train/98297.png +../../data/yoloGtold1/train/98298.png +../../data/yoloGtold1/train/98299.png +../../data/yoloGtold1/train/98300.png +../../data/yoloGtold1/train/98301.png +../../data/yoloGtold1/train/98302.png +../../data/yoloGtold1/train/98303.png +../../data/yoloGtold1/train/98304.png +../../data/yoloGtold1/train/98305.png +../../data/yoloGtold1/train/98306.png +../../data/yoloGtold1/train/98307.png +../../data/yoloGtold1/train/98308.png +../../data/yoloGtold1/train/98309.png +../../data/yoloGtold1/train/98310.png +../../data/yoloGtold1/train/98311.png +../../data/yoloGtold1/train/98312.png +../../data/yoloGtold1/train/98313.png +../../data/yoloGtold1/train/98314.png +../../data/yoloGtold1/train/98315.png +../../data/yoloGtold1/train/98316.png +../../data/yoloGtold1/train/98317.png +../../data/yoloGtold1/train/98318.png +../../data/yoloGtold1/train/98319.png +../../data/yoloGtold1/train/98320.png +../../data/yoloGtold1/train/98321.png +../../data/yoloGtold1/train/98322.png +../../data/yoloGtold1/train/98323.png +../../data/yoloGtold1/train/98324.png +../../data/yoloGtold1/train/98325.png +../../data/yoloGtold1/train/98326.png +../../data/yoloGtold1/train/98327.png +../../data/yoloGtold1/train/98328.png +../../data/yoloGtold1/train/98329.png +../../data/yoloGtold1/train/98330.png +../../data/yoloGtold1/train/98331.png +../../data/yoloGtold1/train/98332.png +../../data/yoloGtold1/train/98333.png +../../data/yoloGtold1/train/98334.png +../../data/yoloGtold1/train/98335.png +../../data/yoloGtold1/train/98336.png +../../data/yoloGtold1/train/98337.png +../../data/yoloGtold1/train/98338.png +../../data/yoloGtold1/train/98339.png +../../data/yoloGtold1/train/98340.png +../../data/yoloGtold1/train/98341.png +../../data/yoloGtold1/train/98342.png +../../data/yoloGtold1/train/98343.png +../../data/yoloGtold1/train/98344.png +../../data/yoloGtold1/train/98345.png +../../data/yoloGtold1/train/98346.png +../../data/yoloGtold1/train/98347.png +../../data/yoloGtold1/train/98348.png +../../data/yoloGtold1/train/98349.png +../../data/yoloGtold1/train/98350.png +../../data/yoloGtold1/train/98351.png +../../data/yoloGtold1/train/98352.png +../../data/yoloGtold1/train/98353.png +../../data/yoloGtold1/train/98354.png +../../data/yoloGtold1/train/98355.png +../../data/yoloGtold1/train/98356.png +../../data/yoloGtold1/train/98357.png +../../data/yoloGtold1/train/98358.png +../../data/yoloGtold1/train/98359.png +../../data/yoloGtold1/train/98360.png +../../data/yoloGtold1/train/98361.png +../../data/yoloGtold1/train/98362.png +../../data/yoloGtold1/train/98363.png +../../data/yoloGtold1/train/98364.png +../../data/yoloGtold1/train/98365.png +../../data/yoloGtold1/train/98366.png +../../data/yoloGtold1/train/98367.png +../../data/yoloGtold1/train/98368.png +../../data/yoloGtold1/train/98369.png +../../data/yoloGtold1/train/98370.png +../../data/yoloGtold1/train/98371.png +../../data/yoloGtold1/train/98372.png +../../data/yoloGtold1/train/98373.png +../../data/yoloGtold1/train/98374.png +../../data/yoloGtold1/train/98375.png +../../data/yoloGtold1/train/98376.png +../../data/yoloGtold1/train/98377.png +../../data/yoloGtold1/train/98378.png +../../data/yoloGtold1/train/98379.png +../../data/yoloGtold1/train/98380.png +../../data/yoloGtold1/train/98381.png +../../data/yoloGtold1/train/98382.png +../../data/yoloGtold1/train/98383.png +../../data/yoloGtold1/train/98384.png +../../data/yoloGtold1/train/98385.png +../../data/yoloGtold1/train/98386.png +../../data/yoloGtold1/train/98387.png +../../data/yoloGtold1/train/98388.png +../../data/yoloGtold1/train/98389.png +../../data/yoloGtold1/train/98390.png +../../data/yoloGtold1/train/98391.png +../../data/yoloGtold1/train/98392.png +../../data/yoloGtold1/train/98393.png +../../data/yoloGtold1/train/98394.png +../../data/yoloGtold1/train/98395.png +../../data/yoloGtold1/train/98396.png +../../data/yoloGtold1/train/98397.png +../../data/yoloGtold1/train/98398.png +../../data/yoloGtold1/train/98399.png +../../data/yoloGtold1/train/98400.png +../../data/yoloGtold1/train/98401.png +../../data/yoloGtold1/train/98402.png +../../data/yoloGtold1/train/98403.png +../../data/yoloGtold1/train/98404.png +../../data/yoloGtold1/train/98405.png +../../data/yoloGtold1/train/98406.png +../../data/yoloGtold1/train/98407.png +../../data/yoloGtold1/train/98408.png +../../data/yoloGtold1/train/98409.png +../../data/yoloGtold1/train/98410.png +../../data/yoloGtold1/train/98411.png +../../data/yoloGtold1/train/98412.png +../../data/yoloGtold1/train/98413.png +../../data/yoloGtold1/train/98414.png +../../data/yoloGtold1/train/98415.png +../../data/yoloGtold1/train/98416.png +../../data/yoloGtold1/train/98417.png +../../data/yoloGtold1/train/98418.png +../../data/yoloGtold1/train/98419.png +../../data/yoloGtold1/train/98420.png +../../data/yoloGtold1/train/98421.png +../../data/yoloGtold1/train/98422.png +../../data/yoloGtold1/train/98423.png +../../data/yoloGtold1/train/98424.png +../../data/yoloGtold1/train/98425.png +../../data/yoloGtold1/train/98426.png +../../data/yoloGtold1/train/98427.png +../../data/yoloGtold1/train/98428.png +../../data/yoloGtold1/train/98429.png +../../data/yoloGtold1/train/98430.png +../../data/yoloGtold1/train/98431.png +../../data/yoloGtold1/train/98432.png +../../data/yoloGtold1/train/98433.png +../../data/yoloGtold1/train/98434.png +../../data/yoloGtold1/train/98435.png +../../data/yoloGtold1/train/98436.png +../../data/yoloGtold1/train/98437.png +../../data/yoloGtold1/train/98438.png +../../data/yoloGtold1/train/98439.png +../../data/yoloGtold1/train/98440.png +../../data/yoloGtold1/train/98441.png +../../data/yoloGtold1/train/98442.png +../../data/yoloGtold1/train/98443.png +../../data/yoloGtold1/train/98444.png +../../data/yoloGtold1/train/98445.png +../../data/yoloGtold1/train/98446.png +../../data/yoloGtold1/train/98447.png +../../data/yoloGtold1/train/98448.png +../../data/yoloGtold1/train/98449.png +../../data/yoloGtold1/train/98450.png +../../data/yoloGtold1/train/98451.png +../../data/yoloGtold1/train/98452.png +../../data/yoloGtold1/train/98453.png +../../data/yoloGtold1/train/98454.png +../../data/yoloGtold1/train/98455.png +../../data/yoloGtold1/train/98456.png +../../data/yoloGtold1/train/98457.png +../../data/yoloGtold1/train/98458.png +../../data/yoloGtold1/train/98459.png +../../data/yoloGtold1/train/98460.png +../../data/yoloGtold1/train/98461.png +../../data/yoloGtold1/train/98462.png +../../data/yoloGtold1/train/98463.png +../../data/yoloGtold1/train/98464.png +../../data/yoloGtold1/train/98465.png +../../data/yoloGtold1/train/98466.png +../../data/yoloGtold1/train/98467.png +../../data/yoloGtold1/train/98468.png +../../data/yoloGtold1/train/98469.png +../../data/yoloGtold1/train/98470.png +../../data/yoloGtold1/train/98471.png +../../data/yoloGtold1/train/98472.png +../../data/yoloGtold1/train/98473.png +../../data/yoloGtold1/train/98474.png +../../data/yoloGtold1/train/98475.png +../../data/yoloGtold1/train/98476.png +../../data/yoloGtold1/train/98477.png +../../data/yoloGtold1/train/98478.png +../../data/yoloGtold1/train/98479.png +../../data/yoloGtold1/train/98480.png +../../data/yoloGtold1/train/98481.png +../../data/yoloGtold1/train/98482.png +../../data/yoloGtold1/train/98483.png +../../data/yoloGtold1/train/98484.png +../../data/yoloGtold1/train/98485.png +../../data/yoloGtold1/train/98486.png +../../data/yoloGtold1/train/98487.png +../../data/yoloGtold1/train/98488.png +../../data/yoloGtold1/train/98489.png +../../data/yoloGtold1/train/98490.png +../../data/yoloGtold1/train/98491.png +../../data/yoloGtold1/train/98492.png +../../data/yoloGtold1/train/98493.png +../../data/yoloGtold1/train/98494.png +../../data/yoloGtold1/train/98495.png +../../data/yoloGtold1/train/98496.png +../../data/yoloGtold1/train/98497.png +../../data/yoloGtold1/train/98498.png +../../data/yoloGtold1/train/98499.png +../../data/yoloGtold1/train/98500.png +../../data/yoloGtold1/train/98501.png +../../data/yoloGtold1/train/98502.png +../../data/yoloGtold1/train/98503.png +../../data/yoloGtold1/train/98504.png +../../data/yoloGtold1/train/98505.png +../../data/yoloGtold1/train/98506.png +../../data/yoloGtold1/train/98507.png +../../data/yoloGtold1/train/98508.png +../../data/yoloGtold1/train/98509.png +../../data/yoloGtold1/train/98510.png +../../data/yoloGtold1/train/98511.png +../../data/yoloGtold1/train/98512.png +../../data/yoloGtold1/train/98513.png +../../data/yoloGtold1/train/98514.png +../../data/yoloGtold1/train/98515.png +../../data/yoloGtold1/train/98516.png +../../data/yoloGtold1/train/98517.png +../../data/yoloGtold1/train/98518.png +../../data/yoloGtold1/train/98519.png +../../data/yoloGtold1/train/98520.png +../../data/yoloGtold1/train/98521.png +../../data/yoloGtold1/train/98522.png +../../data/yoloGtold1/train/98523.png +../../data/yoloGtold1/train/98524.png +../../data/yoloGtold1/train/98525.png +../../data/yoloGtold1/train/98526.png +../../data/yoloGtold1/train/98527.png +../../data/yoloGtold1/train/98528.png +../../data/yoloGtold1/train/98529.png +../../data/yoloGtold1/train/98530.png +../../data/yoloGtold1/train/98531.png +../../data/yoloGtold1/train/98532.png +../../data/yoloGtold1/train/98533.png +../../data/yoloGtold1/train/98534.png +../../data/yoloGtold1/train/98535.png +../../data/yoloGtold1/train/98536.png +../../data/yoloGtold1/train/98537.png +../../data/yoloGtold1/train/98538.png +../../data/yoloGtold1/train/98539.png +../../data/yoloGtold1/train/98540.png +../../data/yoloGtold1/train/98541.png +../../data/yoloGtold1/train/98542.png +../../data/yoloGtold1/train/98543.png +../../data/yoloGtold1/train/98544.png +../../data/yoloGtold1/train/98545.png +../../data/yoloGtold1/train/98546.png +../../data/yoloGtold1/train/98547.png +../../data/yoloGtold1/train/98548.png +../../data/yoloGtold1/train/98549.png +../../data/yoloGtold1/train/98550.png +../../data/yoloGtold1/train/98551.png +../../data/yoloGtold1/train/98552.png +../../data/yoloGtold1/train/98553.png +../../data/yoloGtold1/train/98554.png +../../data/yoloGtold1/train/98555.png +../../data/yoloGtold1/train/98556.png +../../data/yoloGtold1/train/98557.png +../../data/yoloGtold1/train/98558.png +../../data/yoloGtold1/train/98559.png +../../data/yoloGtold1/train/98560.png +../../data/yoloGtold1/train/98561.png +../../data/yoloGtold1/train/98562.png +../../data/yoloGtold1/train/98563.png +../../data/yoloGtold1/train/98564.png +../../data/yoloGtold1/train/98565.png +../../data/yoloGtold1/train/98566.png +../../data/yoloGtold1/train/98567.png +../../data/yoloGtold1/train/98568.png +../../data/yoloGtold1/train/98569.png +../../data/yoloGtold1/train/98570.png +../../data/yoloGtold1/train/98571.png +../../data/yoloGtold1/train/98572.png +../../data/yoloGtold1/train/98573.png +../../data/yoloGtold1/train/98574.png +../../data/yoloGtold1/train/98575.png +../../data/yoloGtold1/train/98576.png +../../data/yoloGtold1/train/98577.png +../../data/yoloGtold1/train/98578.png +../../data/yoloGtold1/train/98579.png +../../data/yoloGtold1/train/98580.png +../../data/yoloGtold1/train/98581.png +../../data/yoloGtold1/train/98582.png +../../data/yoloGtold1/train/98583.png +../../data/yoloGtold1/train/98584.png +../../data/yoloGtold1/train/98585.png +../../data/yoloGtold1/train/98586.png +../../data/yoloGtold1/train/98587.png +../../data/yoloGtold1/train/98588.png +../../data/yoloGtold1/train/98589.png +../../data/yoloGtold1/train/98590.png +../../data/yoloGtold1/train/98591.png +../../data/yoloGtold1/train/98592.png +../../data/yoloGtold1/train/98593.png +../../data/yoloGtold1/train/98594.png +../../data/yoloGtold1/train/98595.png +../../data/yoloGtold1/train/98596.png +../../data/yoloGtold1/train/98597.png +../../data/yoloGtold1/train/98598.png +../../data/yoloGtold1/train/98599.png +../../data/yoloGtold1/train/98600.png +../../data/yoloGtold1/train/98601.png +../../data/yoloGtold1/train/98602.png +../../data/yoloGtold1/train/98603.png +../../data/yoloGtold1/train/98604.png +../../data/yoloGtold1/train/98605.png +../../data/yoloGtold1/train/98606.png +../../data/yoloGtold1/train/98607.png +../../data/yoloGtold1/train/98608.png +../../data/yoloGtold1/train/98609.png +../../data/yoloGtold1/train/98610.png +../../data/yoloGtold1/train/98611.png +../../data/yoloGtold1/train/98612.png +../../data/yoloGtold1/train/98613.png +../../data/yoloGtold1/train/98614.png +../../data/yoloGtold1/train/98615.png +../../data/yoloGtold1/train/98616.png +../../data/yoloGtold1/train/98617.png +../../data/yoloGtold1/train/98618.png +../../data/yoloGtold1/train/98619.png +../../data/yoloGtold1/train/98620.png +../../data/yoloGtold1/train/98621.png +../../data/yoloGtold1/train/98622.png +../../data/yoloGtold1/train/98623.png +../../data/yoloGtold1/train/98624.png +../../data/yoloGtold1/train/98625.png +../../data/yoloGtold1/train/98626.png +../../data/yoloGtold1/train/98627.png +../../data/yoloGtold1/train/98628.png +../../data/yoloGtold1/train/98629.png +../../data/yoloGtold1/train/98630.png +../../data/yoloGtold1/train/98631.png +../../data/yoloGtold1/train/98632.png +../../data/yoloGtold1/train/98633.png +../../data/yoloGtold1/train/98634.png +../../data/yoloGtold1/train/98635.png +../../data/yoloGtold1/train/98636.png +../../data/yoloGtold1/train/98637.png +../../data/yoloGtold1/train/98638.png +../../data/yoloGtold1/train/98639.png +../../data/yoloGtold1/train/98640.png +../../data/yoloGtold1/train/98641.png +../../data/yoloGtold1/train/98642.png +../../data/yoloGtold1/train/98643.png +../../data/yoloGtold1/train/98644.png +../../data/yoloGtold1/train/98645.png +../../data/yoloGtold1/train/98646.png +../../data/yoloGtold1/train/98647.png +../../data/yoloGtold1/train/98648.png +../../data/yoloGtold1/train/98649.png +../../data/yoloGtold1/train/98650.png +../../data/yoloGtold1/train/98651.png +../../data/yoloGtold1/train/98652.png +../../data/yoloGtold1/train/98653.png +../../data/yoloGtold1/train/98654.png +../../data/yoloGtold1/train/98655.png +../../data/yoloGtold1/train/98656.png +../../data/yoloGtold1/train/98657.png +../../data/yoloGtold1/train/98658.png +../../data/yoloGtold1/train/98659.png +../../data/yoloGtold1/train/98660.png +../../data/yoloGtold1/train/98661.png +../../data/yoloGtold1/train/98662.png +../../data/yoloGtold1/train/98663.png +../../data/yoloGtold1/train/98664.png +../../data/yoloGtold1/train/98665.png +../../data/yoloGtold1/train/98666.png +../../data/yoloGtold1/train/98667.png +../../data/yoloGtold1/train/98668.png +../../data/yoloGtold1/train/98669.png +../../data/yoloGtold1/train/98670.png +../../data/yoloGtold1/train/98671.png +../../data/yoloGtold1/train/98672.png +../../data/yoloGtold1/train/98673.png +../../data/yoloGtold1/train/98674.png +../../data/yoloGtold1/train/98675.png +../../data/yoloGtold1/train/98676.png +../../data/yoloGtold1/train/98677.png +../../data/yoloGtold1/train/98678.png +../../data/yoloGtold1/train/98679.png +../../data/yoloGtold1/train/98680.png +../../data/yoloGtold1/train/98681.png +../../data/yoloGtold1/train/98682.png +../../data/yoloGtold1/train/98683.png +../../data/yoloGtold1/train/98684.png +../../data/yoloGtold1/train/98685.png +../../data/yoloGtold1/train/98686.png +../../data/yoloGtold1/train/98687.png +../../data/yoloGtold1/train/98688.png +../../data/yoloGtold1/train/98689.png +../../data/yoloGtold1/train/98690.png +../../data/yoloGtold1/train/98691.png +../../data/yoloGtold1/train/98692.png +../../data/yoloGtold1/train/98693.png +../../data/yoloGtold1/train/98694.png +../../data/yoloGtold1/train/98695.png +../../data/yoloGtold1/train/98696.png +../../data/yoloGtold1/train/98697.png +../../data/yoloGtold1/train/98698.png +../../data/yoloGtold1/train/98699.png +../../data/yoloGtold1/train/98700.png +../../data/yoloGtold1/train/98701.png +../../data/yoloGtold1/train/98702.png +../../data/yoloGtold1/train/98703.png +../../data/yoloGtold1/train/98704.png +../../data/yoloGtold1/train/98705.png +../../data/yoloGtold1/train/98706.png +../../data/yoloGtold1/train/98707.png +../../data/yoloGtold1/train/98708.png +../../data/yoloGtold1/train/98709.png +../../data/yoloGtold1/train/98710.png +../../data/yoloGtold1/train/98711.png +../../data/yoloGtold1/train/98712.png +../../data/yoloGtold1/train/98713.png +../../data/yoloGtold1/train/98714.png +../../data/yoloGtold1/train/98715.png +../../data/yoloGtold1/train/98716.png +../../data/yoloGtold1/train/98717.png +../../data/yoloGtold1/train/98718.png +../../data/yoloGtold1/train/98719.png +../../data/yoloGtold1/train/98720.png +../../data/yoloGtold1/train/98721.png +../../data/yoloGtold1/train/98722.png +../../data/yoloGtold1/train/98723.png +../../data/yoloGtold1/train/98724.png +../../data/yoloGtold1/train/98725.png +../../data/yoloGtold1/train/98726.png +../../data/yoloGtold1/train/98727.png +../../data/yoloGtold1/train/98728.png +../../data/yoloGtold1/train/98729.png +../../data/yoloGtold1/train/98730.png +../../data/yoloGtold1/train/98731.png +../../data/yoloGtold1/train/98732.png +../../data/yoloGtold1/train/98733.png +../../data/yoloGtold1/train/98734.png +../../data/yoloGtold1/train/98735.png +../../data/yoloGtold1/train/98736.png +../../data/yoloGtold1/train/98737.png +../../data/yoloGtold1/train/98738.png +../../data/yoloGtold1/train/98739.png +../../data/yoloGtold1/train/98740.png +../../data/yoloGtold1/train/98741.png +../../data/yoloGtold1/train/98742.png +../../data/yoloGtold1/train/98743.png +../../data/yoloGtold1/train/98744.png +../../data/yoloGtold1/train/98745.png +../../data/yoloGtold1/train/98746.png +../../data/yoloGtold1/train/98747.png +../../data/yoloGtold1/train/98748.png +../../data/yoloGtold1/train/98749.png +../../data/yoloGtold1/train/98750.png +../../data/yoloGtold1/train/98751.png +../../data/yoloGtold1/train/98752.png +../../data/yoloGtold1/train/98753.png +../../data/yoloGtold1/train/98754.png +../../data/yoloGtold1/train/98755.png +../../data/yoloGtold1/train/98756.png +../../data/yoloGtold1/train/98757.png +../../data/yoloGtold1/train/98758.png +../../data/yoloGtold1/train/98759.png +../../data/yoloGtold1/train/98760.png +../../data/yoloGtold1/train/98761.png +../../data/yoloGtold1/train/98762.png +../../data/yoloGtold1/train/98763.png +../../data/yoloGtold1/train/98764.png +../../data/yoloGtold1/train/98765.png +../../data/yoloGtold1/train/98766.png +../../data/yoloGtold1/train/98767.png +../../data/yoloGtold1/train/98768.png +../../data/yoloGtold1/train/98769.png +../../data/yoloGtold1/train/98770.png +../../data/yoloGtold1/train/98771.png +../../data/yoloGtold1/train/98772.png +../../data/yoloGtold1/train/98773.png +../../data/yoloGtold1/train/98774.png +../../data/yoloGtold1/train/98775.png +../../data/yoloGtold1/train/98776.png +../../data/yoloGtold1/train/98777.png +../../data/yoloGtold1/train/98778.png +../../data/yoloGtold1/train/98779.png +../../data/yoloGtold1/train/98780.png +../../data/yoloGtold1/train/98781.png +../../data/yoloGtold1/train/98782.png +../../data/yoloGtold1/train/98783.png +../../data/yoloGtold1/train/98784.png +../../data/yoloGtold1/train/98785.png +../../data/yoloGtold1/train/98786.png +../../data/yoloGtold1/train/98787.png +../../data/yoloGtold1/train/98788.png +../../data/yoloGtold1/train/98789.png +../../data/yoloGtold1/train/98790.png +../../data/yoloGtold1/train/98791.png +../../data/yoloGtold1/train/98792.png +../../data/yoloGtold1/train/98793.png +../../data/yoloGtold1/train/98794.png +../../data/yoloGtold1/train/98795.png +../../data/yoloGtold1/train/98796.png +../../data/yoloGtold1/train/98797.png +../../data/yoloGtold1/train/98798.png +../../data/yoloGtold1/train/98799.png +../../data/yoloGtold1/train/98800.png +../../data/yoloGtold1/train/98801.png +../../data/yoloGtold1/train/98802.png +../../data/yoloGtold1/train/98803.png +../../data/yoloGtold1/train/98804.png +../../data/yoloGtold1/train/98805.png +../../data/yoloGtold1/train/98806.png +../../data/yoloGtold1/train/98807.png +../../data/yoloGtold1/train/98808.png +../../data/yoloGtold1/train/98809.png +../../data/yoloGtold1/train/98810.png +../../data/yoloGtold1/train/98811.png +../../data/yoloGtold1/train/98812.png +../../data/yoloGtold1/train/98813.png +../../data/yoloGtold1/train/98814.png +../../data/yoloGtold1/train/98815.png +../../data/yoloGtold1/train/98816.png +../../data/yoloGtold1/train/98817.png +../../data/yoloGtold1/train/98818.png +../../data/yoloGtold1/train/98819.png +../../data/yoloGtold1/train/98820.png +../../data/yoloGtold1/train/98821.png +../../data/yoloGtold1/train/98822.png +../../data/yoloGtold1/train/98823.png +../../data/yoloGtold1/train/98824.png +../../data/yoloGtold1/train/98825.png +../../data/yoloGtold1/train/98826.png +../../data/yoloGtold1/train/98827.png +../../data/yoloGtold1/train/98828.png +../../data/yoloGtold1/train/98829.png +../../data/yoloGtold1/train/98830.png +../../data/yoloGtold1/train/98831.png +../../data/yoloGtold1/train/98832.png +../../data/yoloGtold1/train/98833.png +../../data/yoloGtold1/train/98834.png +../../data/yoloGtold1/train/98835.png +../../data/yoloGtold1/train/98836.png +../../data/yoloGtold1/train/98837.png +../../data/yoloGtold1/train/98838.png +../../data/yoloGtold1/train/98839.png +../../data/yoloGtold1/train/98840.png +../../data/yoloGtold1/train/98841.png +../../data/yoloGtold1/train/98842.png +../../data/yoloGtold1/train/98843.png +../../data/yoloGtold1/train/98844.png +../../data/yoloGtold1/train/98845.png +../../data/yoloGtold1/train/98846.png +../../data/yoloGtold1/train/98847.png +../../data/yoloGtold1/train/98848.png +../../data/yoloGtold1/train/98849.png +../../data/yoloGtold1/train/98850.png +../../data/yoloGtold1/train/98851.png +../../data/yoloGtold1/train/98852.png +../../data/yoloGtold1/train/98853.png +../../data/yoloGtold1/train/98854.png +../../data/yoloGtold1/train/98855.png +../../data/yoloGtold1/train/98856.png +../../data/yoloGtold1/train/98857.png +../../data/yoloGtold1/train/98858.png +../../data/yoloGtold1/train/98859.png +../../data/yoloGtold1/train/98860.png +../../data/yoloGtold1/train/98861.png +../../data/yoloGtold1/train/98862.png +../../data/yoloGtold1/train/98863.png +../../data/yoloGtold1/train/98864.png +../../data/yoloGtold1/train/98865.png +../../data/yoloGtold1/train/98866.png +../../data/yoloGtold1/train/98867.png +../../data/yoloGtold1/train/98868.png +../../data/yoloGtold1/train/98869.png +../../data/yoloGtold1/train/98870.png +../../data/yoloGtold1/train/98871.png +../../data/yoloGtold1/train/98872.png +../../data/yoloGtold1/train/98873.png +../../data/yoloGtold1/train/98874.png +../../data/yoloGtold1/train/98875.png +../../data/yoloGtold1/train/98876.png +../../data/yoloGtold1/train/98877.png +../../data/yoloGtold1/train/98878.png +../../data/yoloGtold1/train/98879.png +../../data/yoloGtold1/train/98880.png +../../data/yoloGtold1/train/98881.png +../../data/yoloGtold1/train/98882.png +../../data/yoloGtold1/train/98883.png +../../data/yoloGtold1/train/98884.png +../../data/yoloGtold1/train/98885.png +../../data/yoloGtold1/train/98886.png +../../data/yoloGtold1/train/98887.png +../../data/yoloGtold1/train/98888.png +../../data/yoloGtold1/train/98889.png +../../data/yoloGtold1/train/98890.png +../../data/yoloGtold1/train/98891.png +../../data/yoloGtold1/train/98892.png +../../data/yoloGtold1/train/98893.png +../../data/yoloGtold1/train/98894.png +../../data/yoloGtold1/train/98895.png +../../data/yoloGtold1/train/98896.png +../../data/yoloGtold1/train/98897.png +../../data/yoloGtold1/train/98898.png +../../data/yoloGtold1/train/98899.png +../../data/yoloGtold1/train/98900.png +../../data/yoloGtold1/train/98901.png +../../data/yoloGtold1/train/98902.png +../../data/yoloGtold1/train/98903.png +../../data/yoloGtold1/train/98904.png +../../data/yoloGtold1/train/98905.png +../../data/yoloGtold1/train/98906.png +../../data/yoloGtold1/train/98907.png +../../data/yoloGtold1/train/98908.png +../../data/yoloGtold1/train/98909.png +../../data/yoloGtold1/train/98910.png +../../data/yoloGtold1/train/98911.png +../../data/yoloGtold1/train/98912.png +../../data/yoloGtold1/train/98913.png +../../data/yoloGtold1/train/98914.png +../../data/yoloGtold1/train/98915.png +../../data/yoloGtold1/train/98916.png +../../data/yoloGtold1/train/98917.png +../../data/yoloGtold1/train/98918.png +../../data/yoloGtold1/train/98919.png +../../data/yoloGtold1/train/98920.png +../../data/yoloGtold1/train/98921.png +../../data/yoloGtold1/train/98922.png +../../data/yoloGtold1/train/98923.png +../../data/yoloGtold1/train/98924.png +../../data/yoloGtold1/train/98925.png +../../data/yoloGtold1/train/98926.png +../../data/yoloGtold1/train/98927.png +../../data/yoloGtold1/train/98928.png +../../data/yoloGtold1/train/98929.png +../../data/yoloGtold1/train/98930.png +../../data/yoloGtold1/train/98931.png +../../data/yoloGtold1/train/98932.png +../../data/yoloGtold1/train/98933.png +../../data/yoloGtold1/train/98934.png +../../data/yoloGtold1/train/98935.png +../../data/yoloGtold1/train/98936.png +../../data/yoloGtold1/train/98937.png +../../data/yoloGtold1/train/98938.png +../../data/yoloGtold1/train/98939.png +../../data/yoloGtold1/train/98940.png +../../data/yoloGtold1/train/98941.png +../../data/yoloGtold1/train/98942.png +../../data/yoloGtold1/train/98943.png +../../data/yoloGtold1/train/98944.png +../../data/yoloGtold1/train/98945.png +../../data/yoloGtold1/train/98946.png +../../data/yoloGtold1/train/98947.png +../../data/yoloGtold1/train/98948.png +../../data/yoloGtold1/train/98949.png +../../data/yoloGtold1/train/98950.png +../../data/yoloGtold1/train/98951.png +../../data/yoloGtold1/train/98952.png +../../data/yoloGtold1/train/98953.png +../../data/yoloGtold1/train/98954.png +../../data/yoloGtold1/train/98955.png +../../data/yoloGtold1/train/98956.png +../../data/yoloGtold1/train/98957.png +../../data/yoloGtold1/train/98958.png +../../data/yoloGtold1/train/98959.png +../../data/yoloGtold1/train/98960.png +../../data/yoloGtold1/train/98961.png +../../data/yoloGtold1/train/98962.png +../../data/yoloGtold1/train/98963.png +../../data/yoloGtold1/train/98964.png +../../data/yoloGtold1/train/98965.png +../../data/yoloGtold1/train/98966.png +../../data/yoloGtold1/train/98967.png +../../data/yoloGtold1/train/98968.png +../../data/yoloGtold1/train/98969.png +../../data/yoloGtold1/train/98970.png +../../data/yoloGtold1/train/98971.png +../../data/yoloGtold1/train/98972.png +../../data/yoloGtold1/train/98973.png +../../data/yoloGtold1/train/98974.png +../../data/yoloGtold1/train/98975.png +../../data/yoloGtold1/train/98976.png +../../data/yoloGtold1/train/98977.png +../../data/yoloGtold1/train/98978.png +../../data/yoloGtold1/train/98979.png +../../data/yoloGtold1/train/98980.png +../../data/yoloGtold1/train/98981.png +../../data/yoloGtold1/train/98982.png +../../data/yoloGtold1/train/98983.png +../../data/yoloGtold1/train/98984.png +../../data/yoloGtold1/train/98985.png +../../data/yoloGtold1/train/98986.png +../../data/yoloGtold1/train/98987.png +../../data/yoloGtold1/train/98988.png +../../data/yoloGtold1/train/98989.png +../../data/yoloGtold1/train/98990.png +../../data/yoloGtold1/train/98991.png +../../data/yoloGtold1/train/98992.png +../../data/yoloGtold1/train/98993.png +../../data/yoloGtold1/train/98994.png +../../data/yoloGtold1/train/98995.png +../../data/yoloGtold1/train/98996.png +../../data/yoloGtold1/train/98997.png +../../data/yoloGtold1/train/98998.png +../../data/yoloGtold1/train/98999.png +../../data/yoloGtold1/train/99000.png +../../data/yoloGtold1/train/99001.png +../../data/yoloGtold1/train/99002.png +../../data/yoloGtold1/train/99003.png +../../data/yoloGtold1/train/99004.png +../../data/yoloGtold1/train/99005.png +../../data/yoloGtold1/train/99006.png +../../data/yoloGtold1/train/99007.png +../../data/yoloGtold1/train/99008.png +../../data/yoloGtold1/train/99009.png +../../data/yoloGtold1/train/99010.png +../../data/yoloGtold1/train/99011.png +../../data/yoloGtold1/train/99012.png +../../data/yoloGtold1/train/99013.png +../../data/yoloGtold1/train/99014.png +../../data/yoloGtold1/train/99015.png +../../data/yoloGtold1/train/99016.png +../../data/yoloGtold1/train/99017.png +../../data/yoloGtold1/train/99018.png +../../data/yoloGtold1/train/99019.png +../../data/yoloGtold1/train/99020.png +../../data/yoloGtold1/train/99021.png +../../data/yoloGtold1/train/99022.png +../../data/yoloGtold1/train/99023.png +../../data/yoloGtold1/train/99024.png +../../data/yoloGtold1/train/99025.png +../../data/yoloGtold1/train/99026.png +../../data/yoloGtold1/train/99027.png +../../data/yoloGtold1/train/99028.png +../../data/yoloGtold1/train/99029.png +../../data/yoloGtold1/train/99030.png +../../data/yoloGtold1/train/99031.png +../../data/yoloGtold1/train/99032.png +../../data/yoloGtold1/train/99033.png +../../data/yoloGtold1/train/99034.png +../../data/yoloGtold1/train/99035.png +../../data/yoloGtold1/train/99036.png +../../data/yoloGtold1/train/99037.png +../../data/yoloGtold1/train/99038.png +../../data/yoloGtold1/train/99039.png +../../data/yoloGtold1/train/99040.png +../../data/yoloGtold1/train/99041.png +../../data/yoloGtold1/train/99042.png +../../data/yoloGtold1/train/99043.png +../../data/yoloGtold1/train/99044.png +../../data/yoloGtold1/train/99045.png +../../data/yoloGtold1/train/99046.png +../../data/yoloGtold1/train/99047.png +../../data/yoloGtold1/train/99048.png +../../data/yoloGtold1/train/99049.png +../../data/yoloGtold1/train/99050.png +../../data/yoloGtold1/train/99051.png +../../data/yoloGtold1/train/99052.png +../../data/yoloGtold1/train/99053.png +../../data/yoloGtold1/train/99054.png +../../data/yoloGtold1/train/99055.png +../../data/yoloGtold1/train/99056.png +../../data/yoloGtold1/train/99057.png +../../data/yoloGtold1/train/99058.png +../../data/yoloGtold1/train/99059.png +../../data/yoloGtold1/train/99060.png +../../data/yoloGtold1/train/99061.png +../../data/yoloGtold1/train/99062.png +../../data/yoloGtold1/train/99063.png +../../data/yoloGtold1/train/99064.png +../../data/yoloGtold1/train/99065.png +../../data/yoloGtold1/train/99066.png +../../data/yoloGtold1/train/99067.png +../../data/yoloGtold1/train/99068.png +../../data/yoloGtold1/train/99069.png +../../data/yoloGtold1/train/99070.png +../../data/yoloGtold1/train/99071.png +../../data/yoloGtold1/train/99072.png +../../data/yoloGtold1/train/99073.png +../../data/yoloGtold1/train/99074.png +../../data/yoloGtold1/train/99075.png +../../data/yoloGtold1/train/99076.png +../../data/yoloGtold1/train/99077.png +../../data/yoloGtold1/train/99078.png +../../data/yoloGtold1/train/99079.png +../../data/yoloGtold1/train/99080.png +../../data/yoloGtold1/train/99081.png +../../data/yoloGtold1/train/99082.png +../../data/yoloGtold1/train/99083.png +../../data/yoloGtold1/train/99084.png +../../data/yoloGtold1/train/99085.png +../../data/yoloGtold1/train/99086.png +../../data/yoloGtold1/train/99087.png +../../data/yoloGtold1/train/99088.png +../../data/yoloGtold1/train/99089.png +../../data/yoloGtold1/train/99090.png +../../data/yoloGtold1/train/99091.png +../../data/yoloGtold1/train/99092.png +../../data/yoloGtold1/train/99093.png +../../data/yoloGtold1/train/99094.png +../../data/yoloGtold1/train/99095.png +../../data/yoloGtold1/train/99096.png +../../data/yoloGtold1/train/99097.png +../../data/yoloGtold1/train/99098.png +../../data/yoloGtold1/train/99099.png +../../data/yoloGtold1/train/99100.png +../../data/yoloGtold1/train/99101.png +../../data/yoloGtold1/train/99102.png +../../data/yoloGtold1/train/99103.png +../../data/yoloGtold1/train/99104.png +../../data/yoloGtold1/train/99105.png +../../data/yoloGtold1/train/99106.png +../../data/yoloGtold1/train/99107.png +../../data/yoloGtold1/train/99108.png +../../data/yoloGtold1/train/99109.png +../../data/yoloGtold1/train/99110.png +../../data/yoloGtold1/train/99111.png +../../data/yoloGtold1/train/99112.png +../../data/yoloGtold1/train/99113.png +../../data/yoloGtold1/train/99114.png +../../data/yoloGtold1/train/99115.png +../../data/yoloGtold1/train/99116.png +../../data/yoloGtold1/train/99117.png +../../data/yoloGtold1/train/99118.png +../../data/yoloGtold1/train/99119.png +../../data/yoloGtold1/train/99120.png +../../data/yoloGtold1/train/99121.png +../../data/yoloGtold1/train/99122.png +../../data/yoloGtold1/train/99123.png +../../data/yoloGtold1/train/99124.png +../../data/yoloGtold1/train/99125.png +../../data/yoloGtold1/train/99126.png +../../data/yoloGtold1/train/99127.png +../../data/yoloGtold1/train/99128.png +../../data/yoloGtold1/train/99129.png +../../data/yoloGtold1/train/99130.png +../../data/yoloGtold1/train/99131.png +../../data/yoloGtold1/train/99132.png +../../data/yoloGtold1/train/99133.png +../../data/yoloGtold1/train/99134.png +../../data/yoloGtold1/train/99135.png +../../data/yoloGtold1/train/99136.png +../../data/yoloGtold1/train/99137.png +../../data/yoloGtold1/train/99138.png +../../data/yoloGtold1/train/99139.png +../../data/yoloGtold1/train/99140.png +../../data/yoloGtold1/train/99141.png +../../data/yoloGtold1/train/99142.png +../../data/yoloGtold1/train/99143.png +../../data/yoloGtold1/train/99144.png +../../data/yoloGtold1/train/99145.png +../../data/yoloGtold1/train/99146.png +../../data/yoloGtold1/train/99147.png +../../data/yoloGtold1/train/99148.png +../../data/yoloGtold1/train/99149.png +../../data/yoloGtold1/train/99150.png +../../data/yoloGtold1/train/99151.png +../../data/yoloGtold1/train/99152.png +../../data/yoloGtold1/train/99153.png +../../data/yoloGtold1/train/99154.png +../../data/yoloGtold1/train/99155.png +../../data/yoloGtold1/train/99156.png +../../data/yoloGtold1/train/99157.png +../../data/yoloGtold1/train/99158.png +../../data/yoloGtold1/train/99159.png +../../data/yoloGtold1/train/99160.png +../../data/yoloGtold1/train/99161.png +../../data/yoloGtold1/train/99162.png +../../data/yoloGtold1/train/99163.png +../../data/yoloGtold1/train/99164.png +../../data/yoloGtold1/train/99165.png +../../data/yoloGtold1/train/99166.png +../../data/yoloGtold1/train/99167.png +../../data/yoloGtold1/train/99168.png +../../data/yoloGtold1/train/99169.png +../../data/yoloGtold1/train/99170.png +../../data/yoloGtold1/train/99171.png +../../data/yoloGtold1/train/99172.png +../../data/yoloGtold1/train/99173.png +../../data/yoloGtold1/train/99174.png +../../data/yoloGtold1/train/99175.png +../../data/yoloGtold1/train/99176.png +../../data/yoloGtold1/train/99177.png +../../data/yoloGtold1/train/99178.png +../../data/yoloGtold1/train/99179.png +../../data/yoloGtold1/train/99180.png +../../data/yoloGtold1/train/99181.png +../../data/yoloGtold1/train/99182.png +../../data/yoloGtold1/train/99183.png +../../data/yoloGtold1/train/99184.png +../../data/yoloGtold1/train/99185.png +../../data/yoloGtold1/train/99186.png +../../data/yoloGtold1/train/99187.png +../../data/yoloGtold1/train/99188.png +../../data/yoloGtold1/train/99189.png +../../data/yoloGtold1/train/99190.png +../../data/yoloGtold1/train/99191.png +../../data/yoloGtold1/train/99192.png +../../data/yoloGtold1/train/99193.png +../../data/yoloGtold1/train/99194.png +../../data/yoloGtold1/train/99195.png +../../data/yoloGtold1/train/99196.png +../../data/yoloGtold1/train/99197.png +../../data/yoloGtold1/train/99198.png +../../data/yoloGtold1/train/99199.png +../../data/yoloGtold1/train/99200.png +../../data/yoloGtold1/train/99201.png +../../data/yoloGtold1/train/99202.png +../../data/yoloGtold1/train/99203.png +../../data/yoloGtold1/train/99204.png +../../data/yoloGtold1/train/99205.png +../../data/yoloGtold1/train/99206.png +../../data/yoloGtold1/train/99207.png +../../data/yoloGtold1/train/99208.png +../../data/yoloGtold1/train/99209.png +../../data/yoloGtold1/train/99210.png +../../data/yoloGtold1/train/99211.png +../../data/yoloGtold1/train/99212.png +../../data/yoloGtold1/train/99213.png +../../data/yoloGtold1/train/99214.png +../../data/yoloGtold1/train/99215.png +../../data/yoloGtold1/train/99216.png +../../data/yoloGtold1/train/99217.png +../../data/yoloGtold1/train/99218.png +../../data/yoloGtold1/train/99219.png +../../data/yoloGtold1/train/99220.png +../../data/yoloGtold1/train/99221.png +../../data/yoloGtold1/train/99222.png +../../data/yoloGtold1/train/99223.png +../../data/yoloGtold1/train/99224.png +../../data/yoloGtold1/train/99225.png +../../data/yoloGtold1/train/99226.png +../../data/yoloGtold1/train/99227.png +../../data/yoloGtold1/train/99228.png +../../data/yoloGtold1/train/99229.png +../../data/yoloGtold1/train/99230.png +../../data/yoloGtold1/train/99231.png +../../data/yoloGtold1/train/99232.png +../../data/yoloGtold1/train/99233.png +../../data/yoloGtold1/train/99234.png +../../data/yoloGtold1/train/99235.png +../../data/yoloGtold1/train/99236.png +../../data/yoloGtold1/train/99237.png +../../data/yoloGtold1/train/99238.png +../../data/yoloGtold1/train/99239.png +../../data/yoloGtold1/train/99240.png +../../data/yoloGtold1/train/99241.png +../../data/yoloGtold1/train/99242.png +../../data/yoloGtold1/train/99243.png +../../data/yoloGtold1/train/99244.png +../../data/yoloGtold1/train/99245.png +../../data/yoloGtold1/train/99246.png +../../data/yoloGtold1/train/99247.png +../../data/yoloGtold1/train/99248.png +../../data/yoloGtold1/train/99249.png +../../data/yoloGtold1/train/99250.png +../../data/yoloGtold1/train/99251.png +../../data/yoloGtold1/train/99252.png +../../data/yoloGtold1/train/99253.png +../../data/yoloGtold1/train/99254.png +../../data/yoloGtold1/train/99255.png +../../data/yoloGtold1/train/99256.png +../../data/yoloGtold1/train/99257.png +../../data/yoloGtold1/train/99258.png +../../data/yoloGtold1/train/99259.png +../../data/yoloGtold1/train/99260.png +../../data/yoloGtold1/train/99261.png +../../data/yoloGtold1/train/99262.png +../../data/yoloGtold1/train/99263.png +../../data/yoloGtold1/train/99264.png +../../data/yoloGtold1/train/99265.png +../../data/yoloGtold1/train/99266.png +../../data/yoloGtold1/train/99267.png +../../data/yoloGtold1/train/99268.png +../../data/yoloGtold1/train/99269.png +../../data/yoloGtold1/train/99270.png +../../data/yoloGtold1/train/99271.png +../../data/yoloGtold1/train/99272.png +../../data/yoloGtold1/train/99273.png +../../data/yoloGtold1/train/99274.png +../../data/yoloGtold1/train/99275.png +../../data/yoloGtold1/train/99276.png +../../data/yoloGtold1/train/99277.png +../../data/yoloGtold1/train/99278.png +../../data/yoloGtold1/train/99279.png +../../data/yoloGtold1/train/99280.png +../../data/yoloGtold1/train/99281.png +../../data/yoloGtold1/train/99282.png +../../data/yoloGtold1/train/99283.png +../../data/yoloGtold1/train/99284.png +../../data/yoloGtold1/train/99285.png +../../data/yoloGtold1/train/99286.png +../../data/yoloGtold1/train/99287.png +../../data/yoloGtold1/train/99288.png +../../data/yoloGtold1/train/99289.png +../../data/yoloGtold1/train/99290.png +../../data/yoloGtold1/train/99291.png +../../data/yoloGtold1/train/99292.png +../../data/yoloGtold1/train/99293.png +../../data/yoloGtold1/train/99294.png +../../data/yoloGtold1/train/99295.png +../../data/yoloGtold1/train/99296.png +../../data/yoloGtold1/train/99297.png +../../data/yoloGtold1/train/99298.png +../../data/yoloGtold1/train/99299.png +../../data/yoloGtold1/train/99300.png +../../data/yoloGtold1/train/99301.png +../../data/yoloGtold1/train/99302.png +../../data/yoloGtold1/train/99303.png +../../data/yoloGtold1/train/99304.png +../../data/yoloGtold1/train/99305.png +../../data/yoloGtold1/train/99306.png +../../data/yoloGtold1/train/99307.png +../../data/yoloGtold1/train/99308.png +../../data/yoloGtold1/train/99309.png +../../data/yoloGtold1/train/99310.png +../../data/yoloGtold1/train/99311.png +../../data/yoloGtold1/train/99312.png +../../data/yoloGtold1/train/99313.png +../../data/yoloGtold1/train/99314.png +../../data/yoloGtold1/train/99315.png +../../data/yoloGtold1/train/99316.png +../../data/yoloGtold1/train/99317.png +../../data/yoloGtold1/train/99318.png +../../data/yoloGtold1/train/99319.png +../../data/yoloGtold1/train/99320.png +../../data/yoloGtold1/train/99321.png +../../data/yoloGtold1/train/99322.png +../../data/yoloGtold1/train/99323.png +../../data/yoloGtold1/train/99324.png +../../data/yoloGtold1/train/99325.png +../../data/yoloGtold1/train/99326.png +../../data/yoloGtold1/train/99327.png +../../data/yoloGtold1/train/99328.png +../../data/yoloGtold1/train/99329.png +../../data/yoloGtold1/train/99330.png +../../data/yoloGtold1/train/99331.png +../../data/yoloGtold1/train/99332.png +../../data/yoloGtold1/train/99333.png +../../data/yoloGtold1/train/99334.png +../../data/yoloGtold1/train/99335.png +../../data/yoloGtold1/train/99336.png +../../data/yoloGtold1/train/99337.png +../../data/yoloGtold1/train/99338.png +../../data/yoloGtold1/train/99339.png +../../data/yoloGtold1/train/99340.png +../../data/yoloGtold1/train/99341.png +../../data/yoloGtold1/train/99342.png +../../data/yoloGtold1/train/99343.png +../../data/yoloGtold1/train/99344.png +../../data/yoloGtold1/train/99345.png +../../data/yoloGtold1/train/99346.png +../../data/yoloGtold1/train/99347.png +../../data/yoloGtold1/train/99348.png +../../data/yoloGtold1/train/99349.png +../../data/yoloGtold1/train/99350.png +../../data/yoloGtold1/train/99351.png +../../data/yoloGtold1/train/99352.png +../../data/yoloGtold1/train/99353.png +../../data/yoloGtold1/train/99354.png +../../data/yoloGtold1/train/99355.png +../../data/yoloGtold1/train/99356.png +../../data/yoloGtold1/train/99357.png +../../data/yoloGtold1/train/99358.png +../../data/yoloGtold1/train/99359.png +../../data/yoloGtold1/train/99360.png +../../data/yoloGtold1/train/99361.png +../../data/yoloGtold1/train/99362.png +../../data/yoloGtold1/train/99363.png +../../data/yoloGtold1/train/99364.png +../../data/yoloGtold1/train/99365.png +../../data/yoloGtold1/train/99366.png +../../data/yoloGtold1/train/99367.png +../../data/yoloGtold1/train/99368.png +../../data/yoloGtold1/train/99369.png +../../data/yoloGtold1/train/99370.png +../../data/yoloGtold1/train/99371.png +../../data/yoloGtold1/train/99372.png +../../data/yoloGtold1/train/99373.png +../../data/yoloGtold1/train/99374.png +../../data/yoloGtold1/train/99375.png +../../data/yoloGtold1/train/99376.png +../../data/yoloGtold1/train/99377.png +../../data/yoloGtold1/train/99378.png +../../data/yoloGtold1/train/99379.png +../../data/yoloGtold1/train/99380.png +../../data/yoloGtold1/train/99381.png +../../data/yoloGtold1/train/99382.png +../../data/yoloGtold1/train/99383.png +../../data/yoloGtold1/train/99384.png +../../data/yoloGtold1/train/99385.png +../../data/yoloGtold1/train/99386.png +../../data/yoloGtold1/train/99387.png +../../data/yoloGtold1/train/99388.png +../../data/yoloGtold1/train/99389.png +../../data/yoloGtold1/train/99390.png +../../data/yoloGtold1/train/99391.png +../../data/yoloGtold1/train/99392.png +../../data/yoloGtold1/train/99393.png +../../data/yoloGtold1/train/99394.png +../../data/yoloGtold1/train/99395.png +../../data/yoloGtold1/train/99396.png +../../data/yoloGtold1/train/99397.png +../../data/yoloGtold1/train/99398.png +../../data/yoloGtold1/train/99399.png +../../data/yoloGtold1/train/99400.png +../../data/yoloGtold1/train/99401.png +../../data/yoloGtold1/train/99402.png +../../data/yoloGtold1/train/99403.png +../../data/yoloGtold1/train/99404.png +../../data/yoloGtold1/train/99405.png +../../data/yoloGtold1/train/99406.png +../../data/yoloGtold1/train/99407.png +../../data/yoloGtold1/train/99408.png +../../data/yoloGtold1/train/99409.png +../../data/yoloGtold1/train/99410.png +../../data/yoloGtold1/train/99411.png +../../data/yoloGtold1/train/99412.png +../../data/yoloGtold1/train/99413.png +../../data/yoloGtold1/train/99414.png +../../data/yoloGtold1/train/99415.png +../../data/yoloGtold1/train/99416.png +../../data/yoloGtold1/train/99417.png +../../data/yoloGtold1/train/99418.png +../../data/yoloGtold1/train/99419.png +../../data/yoloGtold1/train/99420.png +../../data/yoloGtold1/train/99421.png +../../data/yoloGtold1/train/99422.png +../../data/yoloGtold1/train/99423.png +../../data/yoloGtold1/train/99424.png +../../data/yoloGtold1/train/99425.png +../../data/yoloGtold1/train/99426.png +../../data/yoloGtold1/train/99427.png +../../data/yoloGtold1/train/99428.png +../../data/yoloGtold1/train/99429.png +../../data/yoloGtold1/train/99430.png +../../data/yoloGtold1/train/99431.png +../../data/yoloGtold1/train/99432.png +../../data/yoloGtold1/train/99433.png +../../data/yoloGtold1/train/99434.png +../../data/yoloGtold1/train/99435.png +../../data/yoloGtold1/train/99436.png +../../data/yoloGtold1/train/99437.png +../../data/yoloGtold1/train/99438.png +../../data/yoloGtold1/train/99439.png +../../data/yoloGtold1/train/99440.png +../../data/yoloGtold1/train/99441.png +../../data/yoloGtold1/train/99442.png +../../data/yoloGtold1/train/99443.png +../../data/yoloGtold1/train/99444.png +../../data/yoloGtold1/train/99445.png +../../data/yoloGtold1/train/99446.png +../../data/yoloGtold1/train/99447.png +../../data/yoloGtold1/train/99448.png +../../data/yoloGtold1/train/99449.png +../../data/yoloGtold1/train/99450.png +../../data/yoloGtold1/train/99451.png +../../data/yoloGtold1/train/99452.png +../../data/yoloGtold1/train/99453.png +../../data/yoloGtold1/train/99454.png +../../data/yoloGtold1/train/99455.png +../../data/yoloGtold1/train/99456.png +../../data/yoloGtold1/train/99457.png +../../data/yoloGtold1/train/99458.png +../../data/yoloGtold1/train/99459.png +../../data/yoloGtold1/train/99460.png +../../data/yoloGtold1/train/99461.png +../../data/yoloGtold1/train/99462.png +../../data/yoloGtold1/train/99463.png +../../data/yoloGtold1/train/99464.png +../../data/yoloGtold1/train/99465.png +../../data/yoloGtold1/train/99466.png +../../data/yoloGtold1/train/99467.png +../../data/yoloGtold1/train/99468.png +../../data/yoloGtold1/train/99469.png +../../data/yoloGtold1/train/99470.png +../../data/yoloGtold1/train/99471.png +../../data/yoloGtold1/train/99472.png +../../data/yoloGtold1/train/99473.png +../../data/yoloGtold1/train/99474.png +../../data/yoloGtold1/train/99475.png +../../data/yoloGtold1/train/99476.png +../../data/yoloGtold1/train/99477.png +../../data/yoloGtold1/train/99478.png +../../data/yoloGtold1/train/99479.png +../../data/yoloGtold1/train/99480.png +../../data/yoloGtold1/train/99481.png +../../data/yoloGtold1/train/99482.png +../../data/yoloGtold1/train/99483.png +../../data/yoloGtold1/train/99484.png +../../data/yoloGtold1/train/99485.png +../../data/yoloGtold1/train/99486.png +../../data/yoloGtold1/train/99487.png +../../data/yoloGtold1/train/99488.png +../../data/yoloGtold1/train/99489.png +../../data/yoloGtold1/train/99490.png +../../data/yoloGtold1/train/99491.png +../../data/yoloGtold1/train/99492.png +../../data/yoloGtold1/train/99493.png +../../data/yoloGtold1/train/99494.png +../../data/yoloGtold1/train/99495.png +../../data/yoloGtold1/train/99496.png +../../data/yoloGtold1/train/99497.png +../../data/yoloGtold1/train/99498.png +../../data/yoloGtold1/train/99499.png +../../data/yoloGtold1/train/99500.png +../../data/yoloGtold1/train/99501.png +../../data/yoloGtold1/train/99502.png +../../data/yoloGtold1/train/99503.png +../../data/yoloGtold1/train/99504.png +../../data/yoloGtold1/train/99505.png +../../data/yoloGtold1/train/99506.png +../../data/yoloGtold1/train/99507.png +../../data/yoloGtold1/train/99508.png +../../data/yoloGtold1/train/99509.png +../../data/yoloGtold1/train/99510.png +../../data/yoloGtold1/train/99511.png +../../data/yoloGtold1/train/99512.png +../../data/yoloGtold1/train/99513.png +../../data/yoloGtold1/train/99514.png +../../data/yoloGtold1/train/99515.png +../../data/yoloGtold1/train/99516.png +../../data/yoloGtold1/train/99517.png +../../data/yoloGtold1/train/99518.png +../../data/yoloGtold1/train/99519.png +../../data/yoloGtold1/train/99520.png +../../data/yoloGtold1/train/99521.png +../../data/yoloGtold1/train/99522.png +../../data/yoloGtold1/train/99523.png +../../data/yoloGtold1/train/99524.png +../../data/yoloGtold1/train/99525.png +../../data/yoloGtold1/train/99526.png +../../data/yoloGtold1/train/99527.png +../../data/yoloGtold1/train/99528.png +../../data/yoloGtold1/train/99529.png +../../data/yoloGtold1/train/99530.png +../../data/yoloGtold1/train/99531.png +../../data/yoloGtold1/train/99532.png +../../data/yoloGtold1/train/99533.png +../../data/yoloGtold1/train/99534.png +../../data/yoloGtold1/train/99535.png +../../data/yoloGtold1/train/99536.png +../../data/yoloGtold1/train/99537.png +../../data/yoloGtold1/train/99538.png +../../data/yoloGtold1/train/99539.png +../../data/yoloGtold1/train/99540.png +../../data/yoloGtold1/train/99541.png +../../data/yoloGtold1/train/99542.png +../../data/yoloGtold1/train/99543.png +../../data/yoloGtold1/train/99544.png +../../data/yoloGtold1/train/99545.png +../../data/yoloGtold1/train/99546.png +../../data/yoloGtold1/train/99547.png +../../data/yoloGtold1/train/99548.png +../../data/yoloGtold1/train/99549.png +../../data/yoloGtold1/train/99550.png +../../data/yoloGtold1/train/99551.png +../../data/yoloGtold1/train/99552.png +../../data/yoloGtold1/train/99553.png +../../data/yoloGtold1/train/99554.png +../../data/yoloGtold1/train/99555.png +../../data/yoloGtold1/train/99556.png +../../data/yoloGtold1/train/99557.png +../../data/yoloGtold1/train/99558.png +../../data/yoloGtold1/train/99559.png +../../data/yoloGtold1/train/99560.png +../../data/yoloGtold1/train/99561.png +../../data/yoloGtold1/train/99562.png +../../data/yoloGtold1/train/99563.png +../../data/yoloGtold1/train/99564.png +../../data/yoloGtold1/train/99565.png +../../data/yoloGtold1/train/99566.png +../../data/yoloGtold1/train/99567.png +../../data/yoloGtold1/train/99568.png +../../data/yoloGtold1/train/99569.png +../../data/yoloGtold1/train/99570.png +../../data/yoloGtold1/train/99571.png +../../data/yoloGtold1/train/99572.png +../../data/yoloGtold1/train/99573.png +../../data/yoloGtold1/train/99574.png +../../data/yoloGtold1/train/99575.png +../../data/yoloGtold1/train/99576.png +../../data/yoloGtold1/train/99577.png +../../data/yoloGtold1/train/99578.png +../../data/yoloGtold1/train/99579.png +../../data/yoloGtold1/train/99580.png +../../data/yoloGtold1/train/99581.png +../../data/yoloGtold1/train/99582.png +../../data/yoloGtold1/train/99583.png +../../data/yoloGtold1/train/99584.png +../../data/yoloGtold1/train/99585.png +../../data/yoloGtold1/train/99586.png +../../data/yoloGtold1/train/99587.png +../../data/yoloGtold1/train/99588.png +../../data/yoloGtold1/train/99589.png +../../data/yoloGtold1/train/99590.png +../../data/yoloGtold1/train/99591.png +../../data/yoloGtold1/train/99592.png +../../data/yoloGtold1/train/99593.png +../../data/yoloGtold1/train/99594.png +../../data/yoloGtold1/train/99595.png +../../data/yoloGtold1/train/99596.png +../../data/yoloGtold1/train/99597.png +../../data/yoloGtold1/train/99598.png +../../data/yoloGtold1/train/99599.png +../../data/yoloGtold1/train/99600.png +../../data/yoloGtold1/train/99601.png +../../data/yoloGtold1/train/99602.png +../../data/yoloGtold1/train/99603.png +../../data/yoloGtold1/train/99604.png +../../data/yoloGtold1/train/99605.png +../../data/yoloGtold1/train/99606.png +../../data/yoloGtold1/train/99607.png +../../data/yoloGtold1/train/99608.png +../../data/yoloGtold1/train/99609.png +../../data/yoloGtold1/train/99610.png +../../data/yoloGtold1/train/99611.png +../../data/yoloGtold1/train/99612.png +../../data/yoloGtold1/train/99613.png +../../data/yoloGtold1/train/99614.png +../../data/yoloGtold1/train/99615.png +../../data/yoloGtold1/train/99616.png +../../data/yoloGtold1/train/99617.png +../../data/yoloGtold1/train/99618.png +../../data/yoloGtold1/train/99619.png +../../data/yoloGtold1/train/99620.png +../../data/yoloGtold1/train/99621.png +../../data/yoloGtold1/train/99622.png +../../data/yoloGtold1/train/99623.png +../../data/yoloGtold1/train/99624.png +../../data/yoloGtold1/train/99625.png +../../data/yoloGtold1/train/99626.png +../../data/yoloGtold1/train/99627.png +../../data/yoloGtold1/train/99628.png +../../data/yoloGtold1/train/99629.png +../../data/yoloGtold1/train/99630.png +../../data/yoloGtold1/train/99631.png +../../data/yoloGtold1/train/99632.png +../../data/yoloGtold1/train/99633.png +../../data/yoloGtold1/train/99634.png +../../data/yoloGtold1/train/99635.png +../../data/yoloGtold1/train/99636.png +../../data/yoloGtold1/train/99637.png +../../data/yoloGtold1/train/99638.png +../../data/yoloGtold1/train/99639.png +../../data/yoloGtold1/train/99640.png +../../data/yoloGtold1/train/99641.png +../../data/yoloGtold1/train/99642.png +../../data/yoloGtold1/train/99643.png +../../data/yoloGtold1/train/99644.png +../../data/yoloGtold1/train/99645.png +../../data/yoloGtold1/train/99646.png +../../data/yoloGtold1/train/99647.png +../../data/yoloGtold1/train/99648.png +../../data/yoloGtold1/train/99649.png +../../data/yoloGtold1/train/99650.png +../../data/yoloGtold1/train/99651.png +../../data/yoloGtold1/train/99652.png +../../data/yoloGtold1/train/99653.png +../../data/yoloGtold1/train/99654.png +../../data/yoloGtold1/train/99655.png +../../data/yoloGtold1/train/99656.png +../../data/yoloGtold1/train/99657.png +../../data/yoloGtold1/train/99658.png +../../data/yoloGtold1/train/99659.png +../../data/yoloGtold1/train/99660.png +../../data/yoloGtold1/train/99661.png +../../data/yoloGtold1/train/99662.png +../../data/yoloGtold1/train/99663.png +../../data/yoloGtold1/train/99664.png +../../data/yoloGtold1/train/99665.png +../../data/yoloGtold1/train/99666.png +../../data/yoloGtold1/train/99667.png +../../data/yoloGtold1/train/99668.png +../../data/yoloGtold1/train/99669.png +../../data/yoloGtold1/train/99670.png +../../data/yoloGtold1/train/99671.png +../../data/yoloGtold1/train/99672.png +../../data/yoloGtold1/train/99673.png +../../data/yoloGtold1/train/99674.png +../../data/yoloGtold1/train/99675.png +../../data/yoloGtold1/train/99676.png +../../data/yoloGtold1/train/99677.png +../../data/yoloGtold1/train/99678.png +../../data/yoloGtold1/train/99679.png +../../data/yoloGtold1/train/99680.png +../../data/yoloGtold1/train/99681.png +../../data/yoloGtold1/train/99682.png +../../data/yoloGtold1/train/99683.png +../../data/yoloGtold1/train/99684.png +../../data/yoloGtold1/train/99685.png +../../data/yoloGtold1/train/99686.png +../../data/yoloGtold1/train/99687.png +../../data/yoloGtold1/train/99688.png +../../data/yoloGtold1/train/99689.png +../../data/yoloGtold1/train/99690.png +../../data/yoloGtold1/train/99691.png +../../data/yoloGtold1/train/99692.png +../../data/yoloGtold1/train/99693.png +../../data/yoloGtold1/train/99694.png +../../data/yoloGtold1/train/99695.png +../../data/yoloGtold1/train/99696.png +../../data/yoloGtold1/train/99697.png +../../data/yoloGtold1/train/99698.png +../../data/yoloGtold1/train/99699.png +../../data/yoloGtold1/train/99700.png +../../data/yoloGtold1/train/99701.png +../../data/yoloGtold1/train/99702.png +../../data/yoloGtold1/train/99703.png +../../data/yoloGtold1/train/99704.png +../../data/yoloGtold1/train/99705.png +../../data/yoloGtold1/train/99706.png +../../data/yoloGtold1/train/99707.png +../../data/yoloGtold1/train/99708.png +../../data/yoloGtold1/train/99709.png +../../data/yoloGtold1/train/99710.png +../../data/yoloGtold1/train/99711.png +../../data/yoloGtold1/train/99712.png +../../data/yoloGtold1/train/99713.png +../../data/yoloGtold1/train/99714.png +../../data/yoloGtold1/train/99715.png +../../data/yoloGtold1/train/99716.png +../../data/yoloGtold1/train/99717.png +../../data/yoloGtold1/train/99718.png +../../data/yoloGtold1/train/99719.png +../../data/yoloGtold1/train/99720.png +../../data/yoloGtold1/train/99721.png +../../data/yoloGtold1/train/99722.png +../../data/yoloGtold1/train/99723.png +../../data/yoloGtold1/train/99724.png +../../data/yoloGtold1/train/99725.png +../../data/yoloGtold1/train/99726.png +../../data/yoloGtold1/train/99727.png +../../data/yoloGtold1/train/99728.png +../../data/yoloGtold1/train/99729.png +../../data/yoloGtold1/train/99730.png +../../data/yoloGtold1/train/99731.png +../../data/yoloGtold1/train/99732.png +../../data/yoloGtold1/train/99733.png +../../data/yoloGtold1/train/99734.png +../../data/yoloGtold1/train/99735.png +../../data/yoloGtold1/train/99736.png +../../data/yoloGtold1/train/99737.png +../../data/yoloGtold1/train/99738.png +../../data/yoloGtold1/train/99739.png +../../data/yoloGtold1/train/99740.png +../../data/yoloGtold1/train/99741.png +../../data/yoloGtold1/train/99742.png +../../data/yoloGtold1/train/99743.png +../../data/yoloGtold1/train/99744.png +../../data/yoloGtold1/train/99745.png +../../data/yoloGtold1/train/99746.png +../../data/yoloGtold1/train/99747.png +../../data/yoloGtold1/train/99748.png +../../data/yoloGtold1/train/99749.png +../../data/yoloGtold1/train/99750.png +../../data/yoloGtold1/train/99751.png +../../data/yoloGtold1/train/99752.png +../../data/yoloGtold1/train/99753.png +../../data/yoloGtold1/train/99754.png +../../data/yoloGtold1/train/99755.png +../../data/yoloGtold1/train/99756.png +../../data/yoloGtold1/train/99757.png +../../data/yoloGtold1/train/99758.png +../../data/yoloGtold1/train/99759.png +../../data/yoloGtold1/train/99760.png +../../data/yoloGtold1/train/99761.png +../../data/yoloGtold1/train/99762.png +../../data/yoloGtold1/train/99763.png +../../data/yoloGtold1/train/99764.png +../../data/yoloGtold1/train/99765.png +../../data/yoloGtold1/train/99766.png +../../data/yoloGtold1/train/99767.png +../../data/yoloGtold1/train/99768.png +../../data/yoloGtold1/train/99769.png +../../data/yoloGtold1/train/99770.png +../../data/yoloGtold1/train/99771.png +../../data/yoloGtold1/train/99772.png +../../data/yoloGtold1/train/99773.png +../../data/yoloGtold1/train/99774.png +../../data/yoloGtold1/train/99775.png +../../data/yoloGtold1/train/99776.png +../../data/yoloGtold1/train/99777.png +../../data/yoloGtold1/train/99778.png +../../data/yoloGtold1/train/99779.png +../../data/yoloGtold1/train/99780.png +../../data/yoloGtold1/train/99781.png +../../data/yoloGtold1/train/99782.png +../../data/yoloGtold1/train/99783.png +../../data/yoloGtold1/train/99784.png +../../data/yoloGtold1/train/99785.png +../../data/yoloGtold1/train/99786.png +../../data/yoloGtold1/train/99787.png +../../data/yoloGtold1/train/99788.png +../../data/yoloGtold1/train/99789.png +../../data/yoloGtold1/train/99790.png +../../data/yoloGtold1/train/99791.png +../../data/yoloGtold1/train/99792.png +../../data/yoloGtold1/train/99793.png +../../data/yoloGtold1/train/99794.png +../../data/yoloGtold1/train/99795.png +../../data/yoloGtold1/train/99796.png +../../data/yoloGtold1/train/99797.png +../../data/yoloGtold1/train/99798.png +../../data/yoloGtold1/train/99799.png +../../data/yoloGtold1/train/99800.png +../../data/yoloGtold1/train/99801.png +../../data/yoloGtold1/train/99802.png +../../data/yoloGtold1/train/99803.png +../../data/yoloGtold1/train/99804.png +../../data/yoloGtold1/train/99805.png +../../data/yoloGtold1/train/99806.png +../../data/yoloGtold1/train/99807.png +../../data/yoloGtold1/train/99808.png +../../data/yoloGtold1/train/99809.png +../../data/yoloGtold1/train/99810.png +../../data/yoloGtold1/train/99811.png +../../data/yoloGtold1/train/99812.png +../../data/yoloGtold1/train/99813.png +../../data/yoloGtold1/train/99814.png +../../data/yoloGtold1/train/99815.png +../../data/yoloGtold1/train/99816.png +../../data/yoloGtold1/train/99817.png +../../data/yoloGtold1/train/99818.png +../../data/yoloGtold1/train/99819.png +../../data/yoloGtold1/train/99820.png +../../data/yoloGtold1/train/99821.png +../../data/yoloGtold1/train/99822.png +../../data/yoloGtold1/train/99823.png +../../data/yoloGtold1/train/99824.png +../../data/yoloGtold1/train/99825.png +../../data/yoloGtold1/train/99826.png +../../data/yoloGtold1/train/99827.png +../../data/yoloGtold1/train/99828.png +../../data/yoloGtold1/train/99829.png +../../data/yoloGtold1/train/99830.png +../../data/yoloGtold1/train/99831.png +../../data/yoloGtold1/train/99832.png +../../data/yoloGtold1/train/99833.png +../../data/yoloGtold1/train/99834.png +../../data/yoloGtold1/train/99835.png +../../data/yoloGtold1/train/99836.png +../../data/yoloGtold1/train/99837.png +../../data/yoloGtold1/train/99838.png +../../data/yoloGtold1/train/99839.png +../../data/yoloGtold1/train/99840.png +../../data/yoloGtold1/train/99841.png +../../data/yoloGtold1/train/99842.png +../../data/yoloGtold1/train/99843.png +../../data/yoloGtold1/train/99844.png +../../data/yoloGtold1/train/99845.png +../../data/yoloGtold1/train/99846.png +../../data/yoloGtold1/train/99847.png +../../data/yoloGtold1/train/99848.png +../../data/yoloGtold1/train/99849.png +../../data/yoloGtold1/train/99850.png +../../data/yoloGtold1/train/99851.png +../../data/yoloGtold1/train/99852.png +../../data/yoloGtold1/train/99853.png +../../data/yoloGtold1/train/99854.png +../../data/yoloGtold1/train/99855.png +../../data/yoloGtold1/train/99856.png +../../data/yoloGtold1/train/99857.png +../../data/yoloGtold1/train/99858.png +../../data/yoloGtold1/train/99859.png +../../data/yoloGtold1/train/99860.png +../../data/yoloGtold1/train/99861.png +../../data/yoloGtold1/train/99862.png +../../data/yoloGtold1/train/99863.png +../../data/yoloGtold1/train/99864.png +../../data/yoloGtold1/train/99865.png +../../data/yoloGtold1/train/99866.png +../../data/yoloGtold1/train/99867.png +../../data/yoloGtold1/train/99868.png +../../data/yoloGtold1/train/99869.png +../../data/yoloGtold1/train/99870.png +../../data/yoloGtold1/train/99871.png +../../data/yoloGtold1/train/99872.png +../../data/yoloGtold1/train/99873.png +../../data/yoloGtold1/train/99874.png +../../data/yoloGtold1/train/99875.png +../../data/yoloGtold1/train/99876.png +../../data/yoloGtold1/train/99877.png +../../data/yoloGtold1/train/99878.png +../../data/yoloGtold1/train/99879.png +../../data/yoloGtold1/train/99880.png +../../data/yoloGtold1/train/99881.png +../../data/yoloGtold1/train/99882.png +../../data/yoloGtold1/train/99883.png +../../data/yoloGtold1/train/99884.png +../../data/yoloGtold1/train/99885.png +../../data/yoloGtold1/train/99886.png +../../data/yoloGtold1/train/99887.png +../../data/yoloGtold1/train/99888.png +../../data/yoloGtold1/train/99889.png +../../data/yoloGtold1/train/99890.png +../../data/yoloGtold1/train/99891.png +../../data/yoloGtold1/train/99892.png +../../data/yoloGtold1/train/99893.png +../../data/yoloGtold1/train/99894.png +../../data/yoloGtold1/train/99895.png +../../data/yoloGtold1/train/99896.png +../../data/yoloGtold1/train/99897.png +../../data/yoloGtold1/train/99898.png +../../data/yoloGtold1/train/99899.png +../../data/yoloGtold1/train/99900.png +../../data/yoloGtold1/train/99901.png +../../data/yoloGtold1/train/99902.png +../../data/yoloGtold1/train/99903.png +../../data/yoloGtold1/train/99904.png +../../data/yoloGtold1/train/99905.png +../../data/yoloGtold1/train/99906.png +../../data/yoloGtold1/train/99907.png +../../data/yoloGtold1/train/99908.png +../../data/yoloGtold1/train/99909.png +../../data/yoloGtold1/train/99910.png +../../data/yoloGtold1/train/99911.png +../../data/yoloGtold1/train/99912.png +../../data/yoloGtold1/train/99913.png +../../data/yoloGtold1/train/99914.png +../../data/yoloGtold1/train/99915.png +../../data/yoloGtold1/train/99916.png +../../data/yoloGtold1/train/99917.png +../../data/yoloGtold1/train/99918.png +../../data/yoloGtold1/train/99919.png +../../data/yoloGtold1/train/99920.png +../../data/yoloGtold1/train/99921.png +../../data/yoloGtold1/train/99922.png +../../data/yoloGtold1/train/99923.png +../../data/yoloGtold1/train/99924.png +../../data/yoloGtold1/train/99925.png +../../data/yoloGtold1/train/99926.png +../../data/yoloGtold1/train/99927.png +../../data/yoloGtold1/train/99928.png +../../data/yoloGtold1/train/99929.png +../../data/yoloGtold1/train/99930.png +../../data/yoloGtold1/train/99931.png +../../data/yoloGtold1/train/99932.png +../../data/yoloGtold1/train/99933.png +../../data/yoloGtold1/train/99934.png +../../data/yoloGtold1/train/99935.png +../../data/yoloGtold1/train/99936.png +../../data/yoloGtold1/train/99937.png +../../data/yoloGtold1/train/99938.png +../../data/yoloGtold1/train/99939.png +../../data/yoloGtold1/train/99940.png +../../data/yoloGtold1/train/99941.png +../../data/yoloGtold1/train/99942.png +../../data/yoloGtold1/train/99943.png +../../data/yoloGtold1/train/99944.png +../../data/yoloGtold1/train/99945.png +../../data/yoloGtold1/train/99946.png +../../data/yoloGtold1/train/99947.png +../../data/yoloGtold1/train/99948.png +../../data/yoloGtold1/train/99949.png +../../data/yoloGtold1/train/99950.png +../../data/yoloGtold1/train/99951.png +../../data/yoloGtold1/train/99952.png +../../data/yoloGtold1/train/99953.png +../../data/yoloGtold1/train/99954.png +../../data/yoloGtold1/train/99955.png +../../data/yoloGtold1/train/99956.png +../../data/yoloGtold1/train/99957.png +../../data/yoloGtold1/train/99958.png +../../data/yoloGtold1/train/99959.png +../../data/yoloGtold1/train/99960.png +../../data/yoloGtold1/train/99961.png +../../data/yoloGtold1/train/99962.png +../../data/yoloGtold1/train/99963.png +../../data/yoloGtold1/train/99964.png +../../data/yoloGtold1/train/99965.png +../../data/yoloGtold1/train/99966.png +../../data/yoloGtold1/train/99967.png +../../data/yoloGtold1/train/99968.png +../../data/yoloGtold1/train/99969.png +../../data/yoloGtold1/train/99970.png +../../data/yoloGtold1/train/99971.png +../../data/yoloGtold1/train/99972.png +../../data/yoloGtold1/train/99973.png +../../data/yoloGtold1/train/99974.png +../../data/yoloGtold1/train/99975.png +../../data/yoloGtold1/train/99976.png +../../data/yoloGtold1/train/99977.png +../../data/yoloGtold1/train/99978.png +../../data/yoloGtold1/train/99979.png +../../data/yoloGtold1/train/99980.png +../../data/yoloGtold1/train/99981.png +../../data/yoloGtold1/train/99982.png +../../data/yoloGtold1/train/99983.png +../../data/yoloGtold1/train/99984.png +../../data/yoloGtold1/train/99985.png +../../data/yoloGtold1/train/99986.png +../../data/yoloGtold1/train/99987.png +../../data/yoloGtold1/train/99988.png +../../data/yoloGtold1/train/99989.png +../../data/yoloGtold1/train/99990.png +../../data/yoloGtold1/train/99991.png +../../data/yoloGtold1/train/99992.png +../../data/yoloGtold1/train/99993.png +../../data/yoloGtold1/train/99994.png +../../data/yoloGtold1/train/99995.png +../../data/yoloGtold1/train/99996.png +../../data/yoloGtold1/train/99997.png +../../data/yoloGtold1/train/99998.png +../../data/yoloGtold1/train/99999.png diff --git "a/\346\225\264\347\220\206/yolo/my/txtCreate.py" "b/\346\225\264\347\220\206/yolo/my/txtCreate.py" new file mode 100644 index 0000000..5b41565 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/txtCreate.py" @@ -0,0 +1,19 @@ +import os + +fp = open("train.txt", "w") + +for i in range(1, 100000): + fp.write("../../data/yoloGtold1/train/"+str(i)+".png"+"\n") +fp.close() +fp = open("test.txt", "w") + +for i in range(100000, 101000+1): + fp.write("../../data/yoloGtold1/test/"+str(i)+".png"+"\n") +fp.close() + + +''' +darknet detector train ../my/obj.data ../my/yolov3.cfg ../my/weights/temp/yolov3_last.weights + +darknet detect ../my/yolov3.cfg ../my/weights/yolov3_final.weights ../my/question/FPK_01.jpg +''' \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/my/weights/needModel.txt" "b/\346\225\264\347\220\206/yolo/my/weights/needModel.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/yolo/my/yolo_cpp_dll.dll" "b/\346\225\264\347\220\206/yolo/my/yolo_cpp_dll.dll" new file mode 100644 index 0000000..e96949b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/my/yolo_cpp_dll.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/my/yolov3.cfg" "b/\346\225\264\347\220\206/yolo/my/yolov3.cfg" new file mode 100644 index 0000000..52f403c --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/yolov3.cfg" @@ -0,0 +1,791 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=32 +subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 12500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +show_receptive_field=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/my/yolov4.cfg" "b/\346\225\264\347\220\206/yolo/my/yolov4.cfg" new file mode 100644 index 0000000..f776b8d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/my/yolov4.cfg" @@ -0,0 +1,1156 @@ +[net] +batch=32 +subdivisions=17 +# Training +width=608 +height=608 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +burn_in=1000 +max_batches = 12500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#cutmix=1 +mosaic=1 + +#:104x104 54:52x52 85:26x26 104:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=mish + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 85 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 54 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=1 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + diff --git "a/\346\225\264\347\220\206/yolo/obj.data" "b/\346\225\264\347\220\206/yolo/obj.data" new file mode 100644 index 0000000..259789b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/obj.data" @@ -0,0 +1,5 @@ +classes= 1 +train = ./my/train.txt +valid = ./my/test.txt +names = ./my/obj.names +backup = ./my/weights/ \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu-1558722898.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu-1558722898.deps" new file mode 100644 index 0000000..a167eb0 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu-1558722898.deps" @@ -0,0 +1,91 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +C:\Users\endman100\Desktop\darknet-master\src\activation_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.cache" new file mode 100644 index 0000000..a553ce3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\activation_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\activation_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.obj" new file mode 100644 index 0000000..d512ad5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_layer.obj" new file mode 100644 index 0000000..ffa5fcb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activation_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/activations.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activations.obj" new file mode 100644 index 0000000..259ac49 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/activations.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/art.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/art.obj" new file mode 100644 index 0000000..d44d9dc Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/art.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer.obj" new file mode 100644 index 0000000..a7fb3ad Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.cache" new file mode 100644 index 0000000..ec68a15 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\avgpool_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\avgpool_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.obj" new file mode 100644 index 0000000..b7814a4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu2010195113.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu2010195113.deps" new file mode 100644 index 0000000..e874ad1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/avgpool_layer_kernels.cu2010195113.deps" @@ -0,0 +1,100 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\avgpool_layer.h +C:\Users\endman100\Desktop\darknet-master\src\avgpool_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/batchnorm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/batchnorm_layer.obj" new file mode 100644 index 0000000..9b35702 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/batchnorm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/blas.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas.obj" new file mode 100644 index 0000000..666fb8f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu-854067846.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu-854067846.deps" new file mode 100644 index 0000000..3d485e1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu-854067846.deps" @@ -0,0 +1,92 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\blas.h +C:\Users\endman100\Desktop\darknet-master\src\blas_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.cache" new file mode 100644 index 0000000..d1b9861 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\blas_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\blas_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.obj" new file mode 100644 index 0000000..e46bdf0 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/blas_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/box.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/box.obj" new file mode 100644 index 0000000..45cf5fc Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/box.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/captcha.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/captcha.obj" new file mode 100644 index 0000000..572b595 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/captcha.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/cifar.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cifar.obj" new file mode 100644 index 0000000..4dd7277 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cifar.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/classifier.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/classifier.obj" new file mode 100644 index 0000000..4711296 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/classifier.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/coco.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/coco.obj" new file mode 100644 index 0000000..7ee7328 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/coco.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im.obj" new file mode 100644 index 0000000..f6cf576 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu-106341760.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu-106341760.deps" new file mode 100644 index 0000000..8e6e377 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu-106341760.deps" @@ -0,0 +1,88 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +C:\Users\endman100\Desktop\darknet-master\src\col2im_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.cache" new file mode 100644 index 0000000..bceeb39 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\col2im_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\col2im_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.obj" new file mode 100644 index 0000000..d464f2a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/col2im_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/compare.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/compare.obj" new file mode 100644 index 0000000..c21bafc Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/compare.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/connected_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/connected_layer.obj" new file mode 100644 index 0000000..963713a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/connected_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/conv_lstm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/conv_lstm_layer.obj" new file mode 100644 index 0000000..fe912c4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/conv_lstm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.cache" new file mode 100644 index 0000000..dd031e3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\convolutional_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\convolutional_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.obj" new file mode 100644 index 0000000..ed4a253 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu1975876320.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu1975876320.deps" new file mode 100644 index 0000000..5e80add --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_kernels.cu1975876320.deps" @@ -0,0 +1,105 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\batchnorm_layer.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +C:\Users\endman100\Desktop\darknet-master\src\convolutional_kernels.cu +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\gemm.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_layer.obj" new file mode 100644 index 0000000..193cd62 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/convolutional_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/cost_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cost_layer.obj" new file mode 100644 index 0000000..fd79bb5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cost_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/cpu_gemm.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cpu_gemm.obj" new file mode 100644 index 0000000..2d0ecb3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/cpu_gemm.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/crnn_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crnn_layer.obj" new file mode 100644 index 0000000..639227f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crnn_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer.obj" new file mode 100644 index 0000000..3807400 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu-1627324360.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu-1627324360.deps" new file mode 100644 index 0000000..bbf17ea --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu-1627324360.deps" @@ -0,0 +1,100 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\crop_layer.h +C:\Users\endman100\Desktop\darknet-master\src\crop_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.cache" new file mode 100644 index 0000000..1ddefaf --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\crop_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\crop_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.obj" new file mode 100644 index 0000000..6b64d7b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/crop_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dark_cuda.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dark_cuda.obj" new file mode 100644 index 0000000..3463d18 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dark_cuda.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/darknet.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/darknet.obj" new file mode 100644 index 0000000..3f14e24 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/darknet.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/data.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/data.obj" new file mode 100644 index 0000000..174ae9f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/data.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.cache" new file mode 100644 index 0000000..c35c148 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\deconvolutional_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\deconvolutional_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.obj" new file mode 100644 index 0000000..5b8203d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu1524010227.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu1524010227.deps" new file mode 100644 index 0000000..d182661 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_kernels.cu1524010227.deps" @@ -0,0 +1,105 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +C:\Users\endman100\Desktop\darknet-master\src\deconvolutional_kernels.cu +c:\users\endman100\desktop\darknet-master\src\deconvolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\gemm.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_layer.obj" new file mode 100644 index 0000000..efce19f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/deconvolutional_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/demo.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/demo.obj" new file mode 100644 index 0000000..971843a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/demo.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/detection_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/detection_layer.obj" new file mode 100644 index 0000000..984da7f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/detection_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/detector.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/detector.obj" new file mode 100644 index 0000000..8ebbbf7 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/detector.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dice.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dice.obj" new file mode 100644 index 0000000..1bb11b9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dice.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer.obj" new file mode 100644 index 0000000..5dbf9b4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.cache" new file mode 100644 index 0000000..c9a9cd3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\dropout_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\dropout_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.obj" new file mode 100644 index 0000000..5e6b921 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu1828450460.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu1828450460.deps" new file mode 100644 index 0000000..30b2be3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/dropout_layer_kernels.cu1828450460.deps" @@ -0,0 +1,102 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstring +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\dropout_layer.h +C:\Users\endman100\Desktop\darknet-master\src\dropout_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/gaussian_yolo_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gaussian_yolo_layer.obj" new file mode 100644 index 0000000..c40e654 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gaussian_yolo_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/gemm.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gemm.obj" new file mode 100644 index 0000000..6b97c66 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gemm.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/getopt.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/getopt.obj" new file mode 100644 index 0000000..65d0e88 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/getopt.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/gettimeofday.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gettimeofday.obj" new file mode 100644 index 0000000..951bafa Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gettimeofday.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/go.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/go.obj" new file mode 100644 index 0000000..6ad445f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/go.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/gru_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gru_layer.obj" new file mode 100644 index 0000000..6391fcb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/gru_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/http_stream.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/http_stream.obj" new file mode 100644 index 0000000..80a61aa Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/http_stream.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col.obj" new file mode 100644 index 0000000..d4f8d7d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu-1948719745.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu-1948719745.deps" new file mode 100644 index 0000000..31bb0cc --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu-1948719745.deps" @@ -0,0 +1,90 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\mma.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\mma.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +C:\Users\endman100\Desktop\darknet-master\src\im2col_kernels.cu diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.cache" new file mode 100644 index 0000000..09f767b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\im2col_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\im2col_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.obj" new file mode 100644 index 0000000..34e6a10 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/im2col_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/image.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/image.obj" new file mode 100644 index 0000000..ba703ee Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/image.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/image_opencv.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/image_opencv.obj" new file mode 100644 index 0000000..c38014c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/image_opencv.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/layer.obj" new file mode 100644 index 0000000..1c48d77 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/list.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/list.obj" new file mode 100644 index 0000000..3b7d831 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/list.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/local_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/local_layer.obj" new file mode 100644 index 0000000..01afa97 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/local_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/lstm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/lstm_layer.obj" new file mode 100644 index 0000000..bb0f214 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/lstm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/matrix.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/matrix.obj" new file mode 100644 index 0000000..cf6499a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/matrix.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer.obj" new file mode 100644 index 0000000..3dd5205 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu-858763790.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu-858763790.deps" new file mode 100644 index 0000000..f2cac4d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu-858763790.deps" @@ -0,0 +1,102 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\maxpool_layer.h +C:\Users\endman100\Desktop\darknet-master\src\maxpool_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.cache" new file mode 100644 index 0000000..5d5588d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\maxpool_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\maxpool_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.obj" new file mode 100644 index 0000000..9eae521 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/maxpool_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/network.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network.obj" new file mode 100644 index 0000000..d4921c9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu-1705814200.deps" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu-1705814200.deps" new file mode 100644 index 0000000..2373a94 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu-1705814200.deps" @@ -0,0 +1,122 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\activation_layer.h +c:\users\endman100\desktop\darknet-master\src\avgpool_layer.h +c:\users\endman100\desktop\darknet-master\src\batchnorm_layer.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\connected_layer.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\cost_layer.h +c:\users\endman100\desktop\darknet-master\src\crnn_layer.h +c:\users\endman100\desktop\darknet-master\src\crop_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\detection_layer.h +c:\users\endman100\desktop\darknet-master\src\dropout_layer.h +c:\users\endman100\desktop\darknet-master\src\gru_layer.h +c:\users\endman100\desktop\darknet-master\src\http_stream.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\local_layer.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\maxpool_layer.h +c:\users\endman100\desktop\darknet-master\src\network.h +C:\Users\endman100\Desktop\darknet-master\src\network_kernels.cu +c:\users\endman100\desktop\darknet-master\src\normalization_layer.h +c:\users\endman100\desktop\darknet-master\src\parser.h +c:\users\endman100\desktop\darknet-master\src\region_layer.h +c:\users\endman100\desktop\darknet-master\src\reorg_layer.h +c:\users\endman100\desktop\darknet-master\src\rnn_layer.h +c:\users\endman100\desktop\darknet-master\src\route_layer.h +c:\users\endman100\desktop\darknet-master\src\shortcut_layer.h +c:\users\endman100\desktop\darknet-master\src\softmax_layer.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.cache" new file mode 100644 index 0000000..68674ae --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\network_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CodeGeneration=compute_30,sm_30;compute_75,sm_75 +CompileOut=x64\DLL_Release\network_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;CUDNN_HALF;CUDNN;GPU;LIB_EXPORTS;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;_WINDLL;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\DLL_Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.obj" new file mode 100644 index 0000000..66c083b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/network_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/nightmare.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/nightmare.obj" new file mode 100644 index 0000000..8819485 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/nightmare.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/normalization_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/normalization_layer.obj" new file mode 100644 index 0000000..9972591 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/normalization_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/option_list.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/option_list.obj" new file mode 100644 index 0000000..8261bf9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/option_list.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/parser.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/parser.obj" new file mode 100644 index 0000000..2df57bb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/parser.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/region_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/region_layer.obj" new file mode 100644 index 0000000..badff1f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/region_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_layer.obj" new file mode 100644 index 0000000..accb58e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_old_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_old_layer.obj" new file mode 100644 index 0000000..3287220 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/reorg_old_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn.obj" new file mode 100644 index 0000000..3c742ab Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_layer.obj" new file mode 100644 index 0000000..e5b3e8c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_vid.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_vid.obj" new file mode 100644 index 0000000..6760afe Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/rnn_vid.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/route_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/route_layer.obj" new file mode 100644 index 0000000..52b0328 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/route_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/sam_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/sam_layer.obj" new file mode 100644 index 0000000..8f82800 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/sam_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/scale_channels_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/scale_channels_layer.obj" new file mode 100644 index 0000000..087d3fe Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/scale_channels_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/shortcut_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/shortcut_layer.obj" new file mode 100644 index 0000000..d3d716a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/shortcut_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/softmax_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/softmax_layer.obj" new file mode 100644 index 0000000..26a38f3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/softmax_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/super.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/super.obj" new file mode 100644 index 0000000..2758d3f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/super.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/swag.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/swag.obj" new file mode 100644 index 0000000..7d872bc Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/swag.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/tag.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/tag.obj" new file mode 100644 index 0000000..a812bb9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/tag.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/tree.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/tree.obj" new file mode 100644 index 0000000..eb9190d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/tree.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/upsample_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/upsample_layer.obj" new file mode 100644 index 0000000..2003bec Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/upsample_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/utils.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/utils.obj" new file mode 100644 index 0000000..ebdc65b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/utils.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/vc140.pdb" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/vc140.pdb" new file mode 100644 index 0000000..161b92e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/vc140.pdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/voxel.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/voxel.obj" new file mode 100644 index 0000000..e8467cb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/voxel.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/writing.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/writing.obj" new file mode 100644 index 0000000..b97fe0c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/writing.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo.obj" new file mode 100644 index 0000000..53ccf8e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.log" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.log" new file mode 100644 index 0000000..3ee5af8 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.log" @@ -0,0 +1,3774 @@ + Compiling CUDA source file ..\..\src\dropout_layer_kernels.cu... + Compiling CUDA source file ..\..\src\deconvolutional_kernels.cu... + Compiling CUDA source file ..\..\src\crop_layer_kernels.cu... + Compiling CUDA source file ..\..\src\avgpool_layer_kernels.cu... + Compiling CUDA source file ..\..\src\convolutional_kernels.cu... + Compiling CUDA source file ..\..\src\blas_kernels.cu... + Compiling CUDA source file ..\..\src\col2im_kernels.cu... + Compiling CUDA source file ..\..\src\activation_kernels.cu... + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\deconvolutional_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\deconvolutional_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\col2im_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\col2im_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\blas_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\blas_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\convolutional_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\convolutional_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\crop_layer_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\crop_layer_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\dropout_layer_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\dropout_layer_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\activation_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\activation_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\avgpool_layer_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\avgpool_layer_kernels.cu" +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1086): warning : variable "out_index" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1130): warning : variable "step" was set but never used + +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1736): warning : variable "stage_id" was declared but never referenced + +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(140): warning : variable "cur_scale" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(245): warning : variable "cur_scale" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(262): warning : variable "block_prob" was declared but never referenced + +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/activation_kernels.cu(263): warning : variable "MISH_THRESHOLD" was declared but never referenced + +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(140): warning : variable "cur_scale" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(245): warning : variable "cur_scale" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(262): warning : variable "block_prob" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/activation_kernels.cu(263): warning : variable "MISH_THRESHOLD" was declared but never referenced + +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1086): warning : variable "out_index" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1130): warning : variable "step" was set but never used + +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1736): warning : variable "stage_id" was declared but never referenced + +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + deconvolutional_kernels.cu + avgpool_layer_kernels.cu + col2im_kernels.cu + convolutional_kernels.cu + dropout_layer_kernels.cu + crop_layer_kernels.cu +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + activation_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/deconvolutional_kernels.cu(42): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/crop_layer_kernels.cu(185): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + Compiling CUDA source file ..\..\src\im2col_kernels.cu... +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(127): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(142): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(143): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(146): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(147): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(239): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(247): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(248): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(251): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/dropout_layer_kernels.cu(252): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + Compiling CUDA source file ..\..\src\maxpool_layer_kernels.cu... +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/avgpool_layer_kernels.cu(48): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/avgpool_layer_kernels.cu(56): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + Compiling CUDA source file ..\..\src\network_kernels.cu... +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(114): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(137): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(149): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(288): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(296): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(353): warning C4267: '引數': 將 'size_t' 轉換為 'const int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(367): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(423): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(685): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1035): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1035): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'const int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1043): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1054): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1090): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1091): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1092): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1093): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1267): warning C4244: '引數': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1269): warning C4244: '引數': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1335): warning C4244: '引數': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/convolutional_kernels.cu(1337): warning C4244: '引數': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\im2col_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\im2col_kernels.cu" + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\maxpool_layer_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\maxpool_layer_kernels.cu" +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + + C:\Users\endman100\Desktop\darknet-master\build\darknet>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -DCUDNN_HALF -DCUDNN -DGPU -DLIB_EXPORTS -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\DLL_Release\vc140.pdb /FS /Zi /MD " -o x64\DLL_Release\network_kernels.cu.obj "C:\Users\endman100\Desktop\darknet-master\src\network_kernels.cu" +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(364): warning : variable "l" was declared but never referenced + +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(364): warning : variable "l" was declared but never referenced + +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + blas_kernels.cu +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + network_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(254): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1478): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1499): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1524): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1551): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1571): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(1590): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/blas_kernels.cu(2261): warning C4244: '引數': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + maxpool_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(97): warning C4244: '=': 將 'const double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(99): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(201): warning C4244: '=': 將 'const double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(203): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(268): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(268): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'const int',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/network_kernels.cu(574): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(158): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(195): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(199): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(240): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(247): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(251): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(376): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/maxpool_layer_kernels.cu(385): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(774): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt/device_functions.h(1629): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h(926): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + im2col_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu(433): warning C4267: '引數': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu(473): warning C4244: 'return': 將 'unsigned long' 轉換為 'unsigned char',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu(541): warning C4244: 'return': 將 'unsigned long' 轉換為 'uint8_t',由於類型不同,可能導致資料遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu(937): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +C:/Users/endman100/Desktop/darknet-master/src/im2col_kernels.cu(937): warning C4267: '正在初始化': 將 'size_t' 轉換為 'const int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(825): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(1760): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(2622): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(3461): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(4404): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(5302): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(6213): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7094): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h(7893): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 + activations.c + activation_layer.c + art.c + avgpool_layer.c + batchnorm_layer.c + blas.c + box.c + captcha.c +..\..\src\box.c : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activations.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\blas.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\avgpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +..\..\src\activations.c(193): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\batchnorm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\art.c) +..\..\src\activations.c(221): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\activation_layer.c) +..\..\src\activations.c(388): warning C4244: '正在初始化': 將 'double' 轉換為 'const float',由於類型不同,可能導致資料遺失 +..\..\src\activations.c(389): warning C4244: '正在初始化': 將 'double' 轉換為 'const float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(103): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\blas.c(171): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\box.c) +..\..\src\blas.c(255): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(278): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(271): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(292): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(313): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(399): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(392): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(409): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(410): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(420): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(431): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(463): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(537): warning C4018: '<': signed/unsigned 不相符 +..\..\src\blas.c(550): warning C4018: '<': signed/unsigned 不相符 +..\..\src\blas.c(574): warning C4267: 'return': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\blas.c(597): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'std::size_t' + ..\..\src\blas.c(597): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(597): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 2 的類型為 'std::size_t' + ..\..\src\blas.c(597): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(597): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 3 的類型為 'std::size_t' + ..\..\src\blas.c(597): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(611): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'std::size_t' + ..\..\src\blas.c(611): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(611): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 2 的類型為 'std::size_t' + ..\..\src\blas.c(611): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(611): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 3 的類型為 'std::size_t' + ..\..\src\blas.c(611): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(643): warning C4305: '=': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(39): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(641): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(40): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(41): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(674): warning C4305: '=': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(42): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(651): warning C4477: 'fprintf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'std::size_t' + ..\..\src\blas.c(651): note: 請考慮在格式字串中使用 '%zd' +..\..\src\blas.c(651): warning C4477: 'fprintf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 2 的類型為 'std::size_t' + ..\..\src\blas.c(651): note: 請考慮在格式字串中使用 '%zd' +..\..\src\batchnorm_layer.c(112): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\batchnorm_layer.c(127): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(672): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(103): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\batchnorm_layer.c(137): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(104): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(105): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(711): warning C4018: '<': signed/unsigned 不相符 +..\..\src\box.c(106): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(759): warning C4018: '<': signed/unsigned 不相符 +..\..\src\batchnorm_layer.c(190): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\batchnorm_layer.c(191): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\blas.c(780): warning C4477: 'fprintf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'std::size_t' + ..\..\src\blas.c(780): note: 請考慮在格式字串中使用 '%zd' +..\..\src\batchnorm_layer.c(192): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\blas.c(780): warning C4477: 'fprintf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 2 的類型為 'std::size_t' + ..\..\src\blas.c(780): note: 請考慮在格式字串中使用 '%zd' +..\..\src\batchnorm_layer.c(193): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(206): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(225): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(832): warning C4018: '<': signed/unsigned 不相符 +..\..\src\box.c(249): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(250): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\blas.c(875): warning C4018: '<': signed/unsigned 不相符 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\batchnorm_layer.c(206): warning C4028: 型式參數 1 與來自宣告的不同 +..\..\src\box.c(260): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(261): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(262): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(263): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(277): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(278): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(282): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\batchnorm_layer.c(279): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(283): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\batchnorm_layer.c(271): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(356): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(357): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(358): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\batchnorm_layer.c(350): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(359): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\batchnorm_layer.c(362): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(365): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(367): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(370): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(372): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(374): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\captcha.c) +..\..\src\box.c(376): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(379): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(381): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(433): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(434): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(435): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(436): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(585): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(633): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(634): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(635): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(636): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(620): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(621): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(622): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(623): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(625): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(655): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(656): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(657): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(658): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(642): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(643): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(644): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(645): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(647): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(684): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(685): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(686): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(687): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(667): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(668): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(669): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(670): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\box.c(672): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\captcha.c(31): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\captcha.c(87): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(896): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(897): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\captcha.c(41): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\box.c(898): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(937): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(938): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(947): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\box.c(948): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\captcha.c(88): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 5 的類型為 'uint64_t' + ..\..\src\captcha.c(88): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\captcha.c(88): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\captcha.c(88): note: 請考慮在格式字串中使用 '%I64d' + cifar.c + classifier.c + coco.c + col2im.c + compare.c + connected_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) + convolutional_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) + conv_lstm_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\coco.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\connected_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cifar.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +..\..\src\coco.c(22): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +..\..\src\coco.c(86): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\convolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\classifier.c) +..\..\src\coco.c(32): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +..\..\src\cifar.c(9): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(31): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(34): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +..\..\src\cifar.c(24): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\compare.c) +..\..\src\coco.c(117): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(118): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(110): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(111): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(112): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(32): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\cifar.c(32): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\cifar.c(32): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\cifar.c(32): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\coco.c(113): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(46): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(59): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(145): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(69): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(57): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(79): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(87): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(90): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(72): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(12): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(77): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\compare.c(56): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(65): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\connected_layer.c(93): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(70): warning C4305: '*=': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\coco.c(171): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\cifar.c(88): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\cifar.c(88): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\cifar.c(88): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\cifar.c(88): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\cifar.c(118): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(246): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(274): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\cifar.c(149): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(193): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\coco.c(343): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\connected_layer.c(251): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\cifar.c(220): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(43): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +..\..\src\coco.c(396): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\connected_layer.c(317): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\connected_layer.c(318): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\connected_layer.c(319): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(57): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 5 的類型為 'uint64_t' + ..\..\src\compare.c(57): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\compare.c(57): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\compare.c(57): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\compare.c(88): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(782): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(573): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(854): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(196): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(197): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(198): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(199): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\compare.c(234): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1048): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 + cost_layer.c +..\..\src\convolutional_layer.c(1070): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1081): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +..\..\src\convolutional_layer.c(1086): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\compare.c(266): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1200): warning C4267: '函式': 將 'size_t' 轉換為 'const int',資料可能遺失 +..\..\src\convolutional_layer.c(1207): warning C4028: 型式參數 1 與來自宣告的不同 +..\..\src\convolutional_layer.c(1279): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\convolutional_layer.c(1294): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\convolutional_layer.c(1297): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\convolutional_layer.c(1340): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +..\..\src\convolutional_layer.c(1441): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1429): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'const int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1437): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1464): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1465): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1466): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\convolutional_layer.c(1467): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) + cpu_gemm.c + crnn_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) + crop_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\conv_lstm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) + darknet.c + dark_cuda.c + data.c +..\..\src\conv_lstm_layer.c(237): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\conv_lstm_layer.c(238): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +..\..\src\conv_lstm_layer.c(728): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +..\..\src\conv_lstm_layer.c(1151): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(25): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +..\..\src\classifier.c(41): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(58): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(171): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(176): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(177): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\cost_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +..\..\src\classifier.c(211): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\classifier.c(211): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\classifier.c(211): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\classifier.c(211): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\classifier.c(394): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +..\..\src\classifier.c(463): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(537): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(611): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(684): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +..\..\src\classifier.c(777): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\classifier.c(778): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +..\..\src\classifier.c(855): warning C4101: 'time': 未參考的區域變數 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +..\..\src\classifier.c(913): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\classifier.c(951): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +..\..\src\classifier.c(1368): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +..\..\src\cost_layer.c(75): warning C4028: 型式參數 1 與來自宣告的不同 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +..\..\src\cost_layer.c(133): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) + deconvolutional_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dark_cuda.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\crop_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\data.c) + demo.c +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +..\..\src\dark_cuda.c(107): warning C4244: '函式': 將 'std::size_t' 轉換為 'double',由於類型不同,可能導致資料遺失 +..\..\src\dark_cuda.c(107): warning C4244: '=': 將 'double' 轉換為 'std::size_t',由於類型不同,可能導致資料遺失 +..\..\src\dark_cuda.c(112): warning C4267: '=': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +..\..\src\dark_cuda.c(113): warning C4267: '=': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\darknet.c) +..\..\src\darknet.c(75): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(76): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(78): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(79): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(80): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(84): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(85): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(281): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(282): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\dark_cuda.c(267): warning C4028: 型式參數 1 與來自宣告的不同 +..\..\src\crop_layer.c(54): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\crop_layer.c(55): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\dark_cuda.c(286): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'const std::size_t' + ..\..\src\dark_cuda.c(286): note: 請考慮在格式字串中使用 '%zd' +..\..\src\data.c(459): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(460): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(464): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(465): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(466): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\dark_cuda.c(307): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'std::size_t' + ..\..\src\dark_cuda.c(307): note: 請考慮在格式字串中使用 '%zd' +..\..\src\dark_cuda.c(322): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'const std::size_t' + ..\..\src\dark_cuda.c(322): note: 請考慮在格式字串中使用 '%zd' +..\..\src\dark_cuda.c(328): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'const std::size_t' + ..\..\src\dark_cuda.c(328): note: 請考慮在格式字串中使用 '%zd' +..\..\src\dark_cuda.c(418): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\dark_cuda.c(419): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 + detection_layer.c +..\..\src\data.c(723): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(724): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(725): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(726): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(745): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(720): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(721): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(723): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(495): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(724): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\darknet.c(524): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(725): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(726): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(842): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(843): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(844): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(845): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(863): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(839): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(840): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(842): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(843): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(844): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(845): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(962): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(970): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(974): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(976): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(982): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(986): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(988): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(989): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1024): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1025): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1026): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1027): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(945): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(946): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(947): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(948): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1449): warning C4244: '=': 將 'unsigned int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1459): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1460): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1461): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 + detector.c +..\..\src\data.c(1462): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1466): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1466): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1467): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1467): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1468): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1468): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1469): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1469): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1472): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1472): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1473): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1473): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1474): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1474): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1475): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1475): warning C4244: '+=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1488): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1489): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1496): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1497): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1518): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1518): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1424): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1425): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1429): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1430): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1433): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1434): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1459): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1460): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1461): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1462): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1543): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1544): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1545): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1546): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +..\..\src\data.c(1867): warning C4244: '函式': 將 'const float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1868): warning C4244: '函式': 將 'const float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1910): warning C4244: '函式': 將 'const float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1911): warning C4244: '函式': 將 'const float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\data.c(1865): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(1866): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(1909): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(2087): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(2091): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(2120): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(2121): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\data.c(2151): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\data.c(2158): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) + dice.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) + dropout_layer.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) + gaussian_yolo_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\demo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\deconvolutional_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +..\..\src\deconvolutional_layer.c(65): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detection_layer.c) +..\..\src\deconvolutional_layer.c(158): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\detector.c) +..\..\src\detection_layer.c(44): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(63): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(70): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(89): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(124): warning C4244: '=': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(125): warning C4244: '=': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(126): warning C4244: '=': 將 'int64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(252): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(295): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(84): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(301): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(99): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(303): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(160): warning C4244: '-=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(161): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(163): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(174): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(175): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(178): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(211): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(80): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(239): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(240): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(304): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detection_layer.c(305): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(195): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\detector.c(199): warning C4244: '正在初始化': 將 'long double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(200): warning C4244: '正在初始化': 將 'long double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(203): warning C4244: '正在初始化': 將 'long double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(204): warning C4244: '正在初始化': 將 'long double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(297): warning C4244: '正在初始化': 將 'int64_t' 轉換為 'const int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dice.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(465): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(466): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(458): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(459): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(460): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(461): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(495): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(496): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(488): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(489): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(490): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(491): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(516): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(517): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(509): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gaussian_yolo_layer.c) +..\..\src\detector.c(510): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(511): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(512): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +..\..\src\detector.c(545): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +..\..\src\detector.c(546): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\dropout_layer.c) +..\..\src\gaussian_yolo_layer.c(87): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\dropout_layer.c(29): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\dice.c(9): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\dice.c(35): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\dice.c(38): warning C4305: '*=': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\detector.c(538): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(539): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(540): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(541): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(607): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(608): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 + gemm.c +..\..\src\detector.c(600): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(601): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(602): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(603): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(645): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(715): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\dice.c(20): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(716): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\dice.c(36): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 5 的類型為 'uint64_t' + ..\..\src\dice.c(36): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\dice.c(36): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\dice.c(36): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\dice.c(53): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(834): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(139): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(849): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\detector.c(851): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(140): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(196): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(197): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(958): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(294): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(295): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(1383): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(986): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\detector.c(987): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(185): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(186): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(217): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(218): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(221): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(222): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(225): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(226): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(229): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(230): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(232): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(233): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(234): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(235): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(248): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(249): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(250): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(251): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(253): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(254): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(255): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(256): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(375): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(385): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(1433): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(384): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(507): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(538): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(539): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(544): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(545): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(548): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(549): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(685): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\detector.c(1629): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(468): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(499): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(521): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(567): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(600): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(663): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(682): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(687): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(736): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(737): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(823): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(824): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(848): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(852): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gaussian_yolo_layer.c(895): warning C4028: 型式參數 1 與來自宣告的不同 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) + getopt.c + gettimeofday.c + go.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) + gru_layer.c + im2col.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) + image.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gemm.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +..\..\src\gemm.c(526): warning C4244: 'return': 將 '__int64' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(928): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(929): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(930): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(931): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(932): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(933): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(934): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(935): warning C4244: '函式': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(1056): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\gemm.c(1040): warning C4101: 'all256_last_zero': 未參考的區域變數 +..\..\src\gemm.c(1045): warning C4101: 'all256_one': 未參考的區域變數 +..\..\src\gemm.c(1043): warning C4101: 'idx256': 未參考的區域變數 +..\..\src\gemm.c(1046): warning C4101: 'all256i_one': 未參考的區域變數 +..\..\src\gemm.c(1144): warning C4244: 'return': 將 'unsigned __int64' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +..\..\src\gemm.c(1644): warning C4101: 'all256_sing1': 未參考的區域變數 +..\..\src\gemm.c(1779): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) + layer.c +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\go.c) +..\..\src\go.c(118): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(144): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\go.c(147): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(137): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(145): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\go.c(145): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\go.c(145): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\go.c(145): note: 請考慮在格式字串中使用 '%I64d' +..\..\src\go.c(198): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(199): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +..\..\src\go.c(200): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(201): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +..\..\src\go.c(307): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\go.c(404): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +..\..\src\go.c(442): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(539): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\go.c(615): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(690): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\go.c(764): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\go.c(802): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) + list.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\im2col.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\gru_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) + local_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) + lstm_layer.c + matrix.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\gettimeofday.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +..\..\src\gettimeofday.c(39): warning C4244: '=': 將 'double' 轉換為 'long',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\list.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +..\..\src\image.c(31): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(32): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +..\..\src\image.c(119): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(136): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +..\..\src\image.c(205): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +..\..\src\image.c(256): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(257): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(258): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(259): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +..\..\src\image.c(429): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\image.c(447): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(449): warning C4305: '函式': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +..\..\src\image.c(454): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(369): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +..\..\src\image.c(395): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(396): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(397): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(398): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(485): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(519): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(482): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(502): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(503): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(504): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(505): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +..\..\src\image.c(585): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(589): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\layer.c) +..\..\src\image.c(807): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(818): warning C4244: '=': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(837): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(838): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(843): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(844): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(856): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(857): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(862): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(863): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(909): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +..\..\src\image.c(1062): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1065): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1067): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1068): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1118): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1142): warning C4244: '正在初始化': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1173): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\image.c(1189): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1333): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\image.c(1375): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 + maxpool_layer.c +..\..\src\image.c(1447): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\image.c(1448): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\image.c(1449): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +..\..\src\image.c(1450): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\image.c(1516): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +..\..\src\image.c(1702): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) + network.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\matrix.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\lstm_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\local_layer.c) +..\..\src\local_layer.c(57): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\local_layer.c(182): warning C4028: 型式參數 1 與來自宣告的不同 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) + nightmare.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) + normalization_layer.c + option_list.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) + parser.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) + region_layer.c +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\maxpool_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +..\..\src\maxpool_layer.c(145): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\network.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) + reorg_layer.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\nightmare.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\nightmare.c(14): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\network.c(67): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(180): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(197): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\nightmare.c(200): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\nightmare.c(201): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\nightmare.c(216): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(217): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(219): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(245): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\nightmare.c(272): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(297): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\network.c(115): warning C4244: '*=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\nightmare.c(297): warning C4244: '函式': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\network.c(120): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\network.c(136): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(141): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(151): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(153): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +..\..\src\network.c(157): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(159): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(171): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\option_list.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\network.c(951): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\network.c(979): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\network.c(980): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\network.c(1136): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(1137): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\network.c(1219): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\normalization_layer.c) +..\..\src\option_list.c(142): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(1241): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 + reorg_old_layer.c +..\..\src\option_list.c(149): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(1248): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\network.c(1246): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\network.c(1286): warning C4305: '正在初始化': 從 'double' 轉換為 'const float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) + rnn.c +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\parser.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) + rnn_layer.c +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) + rnn_vid.c +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +..\..\src\parser.c(189): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\region_layer.c) +..\..\src\parser.c(363): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(393): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(425): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(485): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(495): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(505): warning C4244: '函式': 將 'double' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(505): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(508): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\region_layer.c(50): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 + route_layer.c +..\..\src\parser.c(529): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(537): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(550): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(613): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(632): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(645): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(652): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(681): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(704): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(711): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(736): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +..\..\src\parser.c(872): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(875): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(897): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(937): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\region_layer.c(87): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(88): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(90): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(91): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(106): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(107): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(103): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +..\..\src\region_layer.c(104): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(167): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(172): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1060): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\region_layer.c(268): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(287): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(288): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(295): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\region_layer.c(313): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(314): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(364): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1133): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +..\..\src\parser.c(1134): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(1137): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(1138): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(1156): warning C4244: '=': 將 'float' 轉換為 'std::size_t',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(232): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1160): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(1161): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\region_layer.c(263): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1162): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\parser.c(1190): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(302): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +..\..\src\parser.c(1242): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1247): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\parser.c(1229): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +..\..\src\parser.c(1362): warning C4244: '正在初始化': 將 'float' 轉換為 'const int',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(495): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(496): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\region_layer.c(534): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +..\..\src\parser.c(2019): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(2023): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(2025): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(2027): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(2045): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\parser.c(2067): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_layer.c) +..\..\src\reorg_layer.c(26): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\reorg_old_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +..\..\src\reorg_old_layer.c(26): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 + sam_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) + scale_channels_layer.c +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +..\..\src\rnn.c(127): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +..\..\src\rnn.c(190): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\rnn_vid.c) +..\..\src\rnn.c(162): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\rnn.c(165): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 5 的類型為 'std::size_t' + ..\..\src\rnn.c(165): note: 請考慮在格式字串中使用 '%zd' +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\route_layer.c) +..\..\src\rnn.c(249): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\rnn.c(379): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\rnn.c(347): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\rnn.c(358): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 + shortcut_layer.c +..\..\src\rnn.c(420): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\rnn.c(399): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\rnn.c(410): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\rnn.c(438): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\rnn.c(451): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 + softmax_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +..\..\src\rnn.c(484): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\rnn.c(485): warning C4244: '函式': 將 'time_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) + super.c + swag.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) + tag.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) + tree.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\sam_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\shortcut_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\scale_channels_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +..\..\src\shortcut_layer.c(88): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\shortcut_layer.c(55): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\softmax_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) + upsample_layer.c +..\..\src\softmax_layer.c(202): warning C4477: 'fprintf' : 格式字串 '%4d' 需要 'int' 類型的引數,但 variadic 引數 7 的類型為 'const std::size_t' + ..\..\src\softmax_layer.c(202): note: 請考慮在格式字串中使用 '%zd' +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +..\..\src\softmax_layer.c(374): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\softmax_layer.c(426): warning C4267: '函式': 將 'size_t' 轉換為 'const int',資料可能遺失 +..\..\src\softmax_layer.c(464): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\softmax_layer.c(513): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\softmax_layer.c(516): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +..\..\src\softmax_layer.c(539): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\softmax_layer.c(420): warning C4477: 'printf' : 格式字串 '%d' 需要 'int' 類型的引數,但 variadic 引數 1 的類型為 'const std::size_t' + ..\..\src\softmax_layer.c(420): note: 請考慮在格式字串中使用 '%zd' +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) + utils.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\swag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +..\..\src\swag.c(12): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\swag.c(62): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +..\..\src\swag.c(22): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\super.c) + voxel.c +..\..\src\super.c(11): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\super.c(54): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +..\..\src\super.c(21): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\tag.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +..\..\src\tag.c(7): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\tag.c(65): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\tag.c(69): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 + writing.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\tree.c) +..\..\src\tag.c(54): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\tag.c(66): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\tag.c(66): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\tag.c(66): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\tag.c(66): note: 請考慮在格式字串中使用 '%I64d' + yolo.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) + yolo_layer.c +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\utils.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\voxel.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +..\..\src\voxel.c(46): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +..\..\src\voxel.c(89): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +..\..\src\voxel.c(56): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\upsample_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\writing.c) +..\..\src\writing.c(8): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\writing.c(67): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\writing.c(76): warning C4244: '=': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\writing.c(39): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\writing.c(68): warning C4477: 'printf' : 格式字串 '%ld' 需要 'long' 類型的引數,但 variadic 引數 7 的類型為 'uint64_t' + ..\..\src\writing.c(68): note: 請考慮在格式字串中使用 '%lld' + ..\..\src\writing.c(68): note: 請考慮在格式字串中使用 '%Id' + ..\..\src\writing.c(68): note: 請考慮在格式字串中使用 '%I64d' +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo.c) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\yolo.c(15): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(71): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\yolo.c(25): warning C4244: '正在初始化': 將 'uint64_t' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(97): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(98): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(90): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\yolo.c(91): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(92): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(93): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(115): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\yolo.c(141): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\yolo.c(215): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo.c(234): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\yolo.c(298): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +..\..\src\yolo.c(349): warning C4305: '函式': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(114): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(115): warning C4244: 'return': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_layer.c) +..\..\src\yolo_layer.c(81): warning C4244: '函式': 將 'time_t' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(139): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(140): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(216): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(217): warning C4244: '*=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(185): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(186): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(278): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(311): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(310): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(432): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(487): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(488): warning C4244: '=': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(646): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(396): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(460): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(482): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(504): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(513): warning C4244: '正在初始化': 將 'float' 轉換為 'const int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(561): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(638): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(640): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(716): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(717): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(704): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(706): warning C4244: '正在初始化': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(823): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(922): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_layer.c(958): warning C4028: 型式參數 1 與來自宣告的不同 +..\..\src\utils.c(144): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(249): warning C4244: '正在初始化': 將 '__int64' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(250): warning C4267: '正在初始化': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\utils.c(421): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\utils.c(435): warning C4267: '函式': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\utils.c(465): warning C4267: '函式': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +..\..\src\utils.c(476): warning C4267: '函式': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +..\..\src\utils.c(487): warning C4267: '函式': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +..\..\src\utils.c(497): warning C4267: '函式': 將 'size_t' 轉換為 'unsigned int',資料可能遺失 +..\..\src\utils.c(553): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(554): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(555): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(626): warning C4244: '+=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(627): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(635): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(642): warning C4244: '正在初始化': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(665): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(678): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(692): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(705): warning C4244: '函式': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(784): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(794): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(841): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(894): warning C4013: 'rand_s' 未定義; 假設 extern 傳回整數 +..\..\src\utils.c(1011): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(1012): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(1013): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(1014): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(1018): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\utils.c(1020): warning C4244: '=': 將 'int' 轉換為 'float',由於類型不同,可能導致資料遺失 + http_stream.cpp + image_opencv.cpp + yolo_v2_class.cpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\image_opencv.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Users\endman100\Desktop\darknet-master\include\yolo_v2_class.hpp(76): warning C4305: '正在初始化': 從 'double' 轉換為 'float',是由較大的類型轉換為較小的類型,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Users\endman100\Desktop\darknet-master\include\yolo_v2_class.hpp(104): warning C4244: '*=': 將 'float' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\activations.h(50): warning C4244: '正在初始化': 將 'float' 轉換為 'int',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\activations.h(72): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: '引數': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +c:\users\endman100\desktop\darknet-master\src\activations.h(126): warning C4244: 'return': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 (正在編譯原始程式檔 ..\..\src\yolo_v2_class.cpp) +..\..\src\yolo_v2_class.cpp(41): warning C4267: 'return': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\yolo_v2_class.cpp(239): warning C4244: '=': 將 'double' 轉換為 'float',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(329): warning C4244: '=': 將 'const double' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(330): warning C4244: '=': 將 'const double' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(331): warning C4244: '=': 將 'float' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(332): warning C4244: '=': 將 'float' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(384): warning C4244: '正在初始化': 將 'float' 轉換為 'unsigned int',由於類型不同,可能導致資料遺失 +..\..\src\yolo_v2_class.cpp(385): warning C4018: '<': signed/unsigned 不相符 +..\..\src\yolo_v2_class.cpp(387): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\http_stream.cpp(110): warning C4267: '=': 將 'size_t' 轉換為 'int',資料可能遺失 +..\..\src\http_stream.cpp(202): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(236): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(247): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(248): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(249): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(261): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(262): warning C4244: '引數': 將 'SOCKET' 轉換為 'int',由於類型不同,可能導致資料遺失 +..\..\src\http_stream.cpp(655): warning C4244: 'return': 將 '__int64' 轉換為 'double',由於類型不同,可能導致資料遺失 +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h : warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime_api.h(3354): warning C4819: 檔案含有無法在目前字碼頁 (950) 中表示的字元。請以 Unicode 格式儲存檔案以防止資料遺失 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h(78): warning C4190: 'cuda_gridsize' 已指定 C-連結,但傳回與 C 不相容的 UDT 'dim3' (正在編譯原始程式檔 ..\..\src\http_stream.cpp) + c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h(430): note: 請參閱 'dim3' 的宣告 (正在編譯原始程式檔 ..\..\src\http_stream.cpp) + 正在建立程式庫 C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\yolo_cpp_dll.lib 和物件 C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\yolo_cpp_dll.exp + 正在產生程式碼 +c:\users\endman100\desktop\darknet-master\src\gemm.c(796): warning C4752: 找到 Intel(R) Advanced Vector Extensions; 請考慮使用 /arch:AVX +c:\users\endman100\desktop\darknet-master\src\gemm.c(1197): warning C4752: 找到 Intel(R) Advanced Vector Extensions; 請考慮使用 /arch:AVX +c:\users\endman100\desktop\darknet-master\src\gemm.c(1883): warning C4752: 找到 Intel(R) Advanced Vector Extensions; 請考慮使用 /arch:AVX +c:\users\endman100\desktop\darknet-master\src\gemm.c(720): warning C4752: 找到 Intel(R) Advanced Vector Extensions; 請考慮使用 /arch:AVX + All 1825 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. + 已完成程式碼產生 + yolo_cpp_dll.vcxproj -> C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\yolo_cpp_dll.dll + yolo_cpp_dll.vcxproj -> C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\yolo_cpp_dll.pdb (Full PDB) diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.command.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.command.1.tlog" new file mode 100644 index 0000000..6673eae Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.command.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.read.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.read.1.tlog" new file mode 100644 index 0000000..011f2c3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.read.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.write.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.write.1.tlog" new file mode 100644 index 0000000..68d4a74 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CL.write.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.read.1u.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.read.1u.tlog" new file mode 100644 index 0000000..486f79c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.read.1u.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.write.1u.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.write.1u.tlog" new file mode 100644 index 0000000..24411cc Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/CudaCompile.write.1u.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.command.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.command.1.tlog" new file mode 100644 index 0000000..a327d6d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.command.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.read.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.read.1.tlog" new file mode 100644 index 0000000..b4e5b0e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.read.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.write.1.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.write.1.tlog" new file mode 100644 index 0000000..4170db7 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/link.write.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.lastbuildstate" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.lastbuildstate" new file mode 100644 index 0000000..08805fe --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.lastbuildstate" @@ -0,0 +1,2 @@ +#TargetFrameworkVersion=v4.0:PlatformToolSet=v140:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=8.1 +Release|x64|C:\Users\endman100\Desktop\darknet-master\build\darknet\| diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.write.1u.tlog" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.write.1u.tlog" new file mode 100644 index 0000000..394f525 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_cpp_dll.tlog/yolo_cpp_dll.write.1u.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_layer.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_layer.obj" new file mode 100644 index 0000000..5812e2d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_v2_class.obj" "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_v2_class.obj" new file mode 100644 index 0000000..e01d143 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/DLL_Release/yolo_v2_class.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu-1558722898.deps" "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu-1558722898.deps" new file mode 100644 index 0000000..a167eb0 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu-1558722898.deps" @@ -0,0 +1,91 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +C:\Users\endman100\Desktop\darknet-master\src\activation_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.cache" new file mode 100644 index 0000000..7628c0c --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\activation_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\activation_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.obj" new file mode 100644 index 0000000..653965d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/activation_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/activation_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/activation_layer.obj" new file mode 100644 index 0000000..01b9184 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/activation_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/activations.obj" "b/\346\225\264\347\220\206/yolo/train/Release/activations.obj" new file mode 100644 index 0000000..64e94f8 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/activations.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/art.obj" "b/\346\225\264\347\220\206/yolo/train/Release/art.obj" new file mode 100644 index 0000000..d7f69f5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/art.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer.obj" new file mode 100644 index 0000000..617344c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.cache" new file mode 100644 index 0000000..3786d1f --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\avgpool_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\avgpool_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.obj" new file mode 100644 index 0000000..23ffc62 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu2010195113.deps" "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu2010195113.deps" new file mode 100644 index 0000000..e874ad1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/avgpool_layer_kernels.cu2010195113.deps" @@ -0,0 +1,100 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\avgpool_layer.h +C:\Users\endman100\Desktop\darknet-master\src\avgpool_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/batchnorm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/batchnorm_layer.obj" new file mode 100644 index 0000000..362f1c2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/batchnorm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/blas.obj" "b/\346\225\264\347\220\206/yolo/train/Release/blas.obj" new file mode 100644 index 0000000..6ddc414 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/blas.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu-854067846.deps" "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu-854067846.deps" new file mode 100644 index 0000000..3d485e1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu-854067846.deps" @@ -0,0 +1,92 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\blas.h +C:\Users\endman100\Desktop\darknet-master\src\blas_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.cache" new file mode 100644 index 0000000..35ae6ff --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\blas_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\blas_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.obj" new file mode 100644 index 0000000..ccbae08 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/blas_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/box.obj" "b/\346\225\264\347\220\206/yolo/train/Release/box.obj" new file mode 100644 index 0000000..9c782d3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/box.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/captcha.obj" "b/\346\225\264\347\220\206/yolo/train/Release/captcha.obj" new file mode 100644 index 0000000..574b940 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/captcha.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/cifar.obj" "b/\346\225\264\347\220\206/yolo/train/Release/cifar.obj" new file mode 100644 index 0000000..ff919b9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/cifar.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/classifier.obj" "b/\346\225\264\347\220\206/yolo/train/Release/classifier.obj" new file mode 100644 index 0000000..da160ea Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/classifier.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/coco.obj" "b/\346\225\264\347\220\206/yolo/train/Release/coco.obj" new file mode 100644 index 0000000..f57dd83 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/coco.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/col2im.obj" "b/\346\225\264\347\220\206/yolo/train/Release/col2im.obj" new file mode 100644 index 0000000..f52d39e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/col2im.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu-106341760.deps" "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu-106341760.deps" new file mode 100644 index 0000000..8e6e377 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu-106341760.deps" @@ -0,0 +1,88 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +C:\Users\endman100\Desktop\darknet-master\src\col2im_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.cache" new file mode 100644 index 0000000..eae2586 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\col2im_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\col2im_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.obj" new file mode 100644 index 0000000..8b6324c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/col2im_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/compare.obj" "b/\346\225\264\347\220\206/yolo/train/Release/compare.obj" new file mode 100644 index 0000000..5deaa52 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/compare.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/connected_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/connected_layer.obj" new file mode 100644 index 0000000..3fa7d5a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/connected_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/conv_lstm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/conv_lstm_layer.obj" new file mode 100644 index 0000000..01c9ceb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/conv_lstm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.cache" new file mode 100644 index 0000000..b5ecf18 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\convolutional_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\convolutional_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.obj" new file mode 100644 index 0000000..59c4b45 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu1975876320.deps" "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu1975876320.deps" new file mode 100644 index 0000000..5e80add --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_kernels.cu1975876320.deps" @@ -0,0 +1,105 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\batchnorm_layer.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +C:\Users\endman100\Desktop\darknet-master\src\convolutional_kernels.cu +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\gemm.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/convolutional_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_layer.obj" new file mode 100644 index 0000000..eced678 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/convolutional_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/cost_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/cost_layer.obj" new file mode 100644 index 0000000..899e877 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/cost_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/cpu_gemm.obj" "b/\346\225\264\347\220\206/yolo/train/Release/cpu_gemm.obj" new file mode 100644 index 0000000..aacb2f5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/cpu_gemm.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/crnn_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/crnn_layer.obj" new file mode 100644 index 0000000..4d48b64 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/crnn_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/crop_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer.obj" new file mode 100644 index 0000000..81c2edb Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu-1627324360.deps" "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu-1627324360.deps" new file mode 100644 index 0000000..bbf17ea --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu-1627324360.deps" @@ -0,0 +1,100 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\crop_layer.h +C:\Users\endman100\Desktop\darknet-master\src\crop_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.cache" new file mode 100644 index 0000000..26d0599 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\crop_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\crop_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.obj" new file mode 100644 index 0000000..20c2f9d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/crop_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dark_cuda.obj" "b/\346\225\264\347\220\206/yolo/train/Release/dark_cuda.obj" new file mode 100644 index 0000000..e800a77 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/dark_cuda.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.Build.CppClean.log" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.Build.CppClean.log" new file mode 100644 index 0000000..9a9a733 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/darknet.Build.CppClean.log" @@ -0,0 +1,109 @@ +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\blas.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\connected_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\gemm.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\list.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\nightmare.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\rnn_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\swag.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\art.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\cost_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\demo.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\go.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\network.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\rnn.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\super.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\yolo.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\avgpool_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\coco.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\crnn_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\detection_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\getopt.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\local_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\option_list.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\route_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\upsample_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\captcha.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\convolutional_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\deconvolutional_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\gaussian_yolo_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\normalization_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\rnn_vid.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\tree.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\yolo_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\activations.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\cifar.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\cpu_gemm.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\crop_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\dice.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\im2col.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\lstm_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\region_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\sam_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\tag.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\box.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\compare.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\dark_cuda.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\dropout_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\image.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\reorg_old_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\softmax_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\voxel.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\activation_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\classifier.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\detector.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\gru_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\matrix.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\parser.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\shortcut_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\writing.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\batchnorm_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\col2im.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\conv_lstm_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\data.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\gettimeofday.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\maxpool_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\reorg_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\scale_channels_layer.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\utils.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\vc140.pdb +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\http_stream.obj +x64\release\activation_kernels.cu.obj +x64\release\avgpool_layer_kernels.cu.obj +x64\release\blas_kernels.cu.obj +x64\release\col2im_kernels.cu.obj +x64\release\convolutional_kernels.cu.obj +x64\release\crop_layer_kernels.cu.obj +x64\release\deconvolutional_kernels.cu.obj +x64\release\dropout_layer_kernels.cu.obj +x64\release\im2col_kernels.cu.obj +x64\release\maxpool_layer_kernels.cu.obj +x64\release\network_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\activation_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\avgpool_layer_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\blas_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\col2im_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\convolutional_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\crop_layer_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\deconvolutional_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\dropout_layer_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\im2col_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\maxpool_layer_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\network_kernels.cu.cache +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\activation_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\avgpool_layer_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\blas_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\col2im_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\convolutional_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\crop_layer_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\deconvolutional_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\dropout_layer_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\im2col_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\maxpool_layer_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\network_kernels.cu.obj +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.tlog\cl.command.1.tlog +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.tlog\cl.read.1.tlog +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.tlog\cl.write.1.tlog +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.tlog\cudacompile.read.1u.tlog +c:\users\endman100\desktop\darknet-master\build\darknet\x64\release\darknet.tlog\cudacompile.write.1u.tlog diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.log" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.log" new file mode 100644 index 0000000..97633c9 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/darknet.log" @@ -0,0 +1,8 @@ + 正在產生程式碼 +c:\users\endman100\desktop\darknet-master\src\gemm.c(1883): warning C4752: 找到 Intel(R) Advanced Vector Extensions; 請考慮使用 /arch:AVX + 283 of 4055 functions ( 7.0%) were compiled, the rest were copied from previous compilation. + 0 functions were new in current compilation + 114 functions had inline decision re-evaluated but remain unchanged + 已完成程式碼產生 + darknet.vcxproj -> C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\darknet.exe + darknet.vcxproj -> C:\Users\endman100\Desktop\darknet-master\build\darknet\x64\darknet.pdb (Full PDB) diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.obj" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.obj" new file mode 100644 index 0000000..4101941 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.command.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.command.1.tlog" new file mode 100644 index 0000000..9ea2ae0 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.command.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.read.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.read.1.tlog" new file mode 100644 index 0000000..967eeac Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.read.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.write.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.write.1.tlog" new file mode 100644 index 0000000..e14d56e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CL.write.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.read.1u.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.read.1u.tlog" new file mode 100644 index 0000000..58e640f Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.read.1u.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.write.1u.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.write.1u.tlog" new file mode 100644 index 0000000..b095464 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/CudaCompile.write.1u.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/darknet.lastbuildstate" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/darknet.lastbuildstate" new file mode 100644 index 0000000..08805fe --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/darknet.lastbuildstate" @@ -0,0 +1,2 @@ +#TargetFrameworkVersion=v4.0:PlatformToolSet=v140:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=8.1 +Release|x64|C:\Users\endman100\Desktop\darknet-master\build\darknet\| diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.command.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.command.1.tlog" new file mode 100644 index 0000000..63b837c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.command.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.read.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.read.1.tlog" new file mode 100644 index 0000000..073d46c Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.read.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.write.1.tlog" "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.write.1.tlog" new file mode 100644 index 0000000..5e8de3a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/darknet.tlog/link.write.1.tlog" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/data.obj" "b/\346\225\264\347\220\206/yolo/train/Release/data.obj" new file mode 100644 index 0000000..e0312df Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/data.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.cache" new file mode 100644 index 0000000..93e7c4e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\deconvolutional_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\deconvolutional_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.obj" new file mode 100644 index 0000000..d69f733 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu1524010227.deps" "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu1524010227.deps" new file mode 100644 index 0000000..d182661 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_kernels.cu1524010227.deps" @@ -0,0 +1,105 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\col2im.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +C:\Users\endman100\Desktop\darknet-master\src\deconvolutional_kernels.cu +c:\users\endman100\desktop\darknet-master\src\deconvolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\gemm.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_layer.obj" new file mode 100644 index 0000000..6a2b931 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/deconvolutional_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/demo.obj" "b/\346\225\264\347\220\206/yolo/train/Release/demo.obj" new file mode 100644 index 0000000..0ab8aa9 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/demo.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/detection_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/detection_layer.obj" new file mode 100644 index 0000000..e4e2dc3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/detection_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/detector.obj" "b/\346\225\264\347\220\206/yolo/train/Release/detector.obj" new file mode 100644 index 0000000..3f6e425 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/detector.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dice.obj" "b/\346\225\264\347\220\206/yolo/train/Release/dice.obj" new file mode 100644 index 0000000..c4d64fa Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/dice.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dropout_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer.obj" new file mode 100644 index 0000000..1188368 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.cache" new file mode 100644 index 0000000..a926ecb --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\dropout_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\dropout_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.obj" new file mode 100644 index 0000000..db912b0 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu1828450460.deps" "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu1828450460.deps" new file mode 100644 index 0000000..30b2be3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/dropout_layer_kernels.cu1828450460.deps" @@ -0,0 +1,102 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstring +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\dropout_layer.h +C:\Users\endman100\Desktop\darknet-master\src\dropout_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/gaussian_yolo_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/gaussian_yolo_layer.obj" new file mode 100644 index 0000000..c1844fd Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/gaussian_yolo_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/gemm.obj" "b/\346\225\264\347\220\206/yolo/train/Release/gemm.obj" new file mode 100644 index 0000000..57342f3 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/gemm.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/getopt.obj" "b/\346\225\264\347\220\206/yolo/train/Release/getopt.obj" new file mode 100644 index 0000000..1861b89 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/getopt.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/gettimeofday.obj" "b/\346\225\264\347\220\206/yolo/train/Release/gettimeofday.obj" new file mode 100644 index 0000000..ad8aced Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/gettimeofday.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/go.obj" "b/\346\225\264\347\220\206/yolo/train/Release/go.obj" new file mode 100644 index 0000000..a5a1870 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/go.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/gru_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/gru_layer.obj" new file mode 100644 index 0000000..bb305b8 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/gru_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/http_stream.obj" "b/\346\225\264\347\220\206/yolo/train/Release/http_stream.obj" new file mode 100644 index 0000000..1779633 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/http_stream.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/im2col.obj" "b/\346\225\264\347\220\206/yolo/train/Release/im2col.obj" new file mode 100644 index 0000000..8a9f0c8 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/im2col.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu-1948719745.deps" "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu-1948719745.deps" new file mode 100644 index 0000000..31bb0cc --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu-1948719745.deps" @@ -0,0 +1,90 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\mma.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\mma.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\im2col.h +C:\Users\endman100\Desktop\darknet-master\src\im2col_kernels.cu diff --git "a/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.cache" new file mode 100644 index 0000000..9d12fb1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\im2col_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\im2col_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.obj" new file mode 100644 index 0000000..0f1f4a4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/im2col_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/image.obj" "b/\346\225\264\347\220\206/yolo/train/Release/image.obj" new file mode 100644 index 0000000..ae5b163 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/image.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/image_opencv.obj" "b/\346\225\264\347\220\206/yolo/train/Release/image_opencv.obj" new file mode 100644 index 0000000..958ffcf Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/image_opencv.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/layer.obj" new file mode 100644 index 0000000..497136a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/list.obj" "b/\346\225\264\347\220\206/yolo/train/Release/list.obj" new file mode 100644 index 0000000..0e9beb4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/list.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/local_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/local_layer.obj" new file mode 100644 index 0000000..452ce34 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/local_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/lstm_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/lstm_layer.obj" new file mode 100644 index 0000000..fc0a00e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/lstm_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/matrix.obj" "b/\346\225\264\347\220\206/yolo/train/Release/matrix.obj" new file mode 100644 index 0000000..58b0558 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/matrix.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer.obj" new file mode 100644 index 0000000..8f5e0a0 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu-858763790.deps" "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu-858763790.deps" new file mode 100644 index 0000000..f2cac4d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu-858763790.deps" @@ -0,0 +1,102 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\maxpool_layer.h +C:\Users\endman100\Desktop\darknet-master\src\maxpool_layer_kernels.cu +c:\users\endman100\desktop\darknet-master\src\network.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.cache" new file mode 100644 index 0000000..5cd5441 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\maxpool_layer_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\maxpool_layer_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.obj" new file mode 100644 index 0000000..7546959 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/maxpool_layer_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/network.obj" "b/\346\225\264\347\220\206/yolo/train/Release/network.obj" new file mode 100644 index 0000000..f0831b4 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/network.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu-1705814200.deps" "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu-1705814200.deps" new file mode 100644 index 0000000..2373a94 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu-1705814200.deps" @@ -0,0 +1,122 @@ +..\..\3rdparty\pthreads\include\pthread.h +..\..\3rdparty\pthreads\include\sched.h +..\..\include\darknet.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cmath +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ConcurrencySal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\crtdefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdlib +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\limits.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\sal.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\use_ansi.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vadefs.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\vcruntime_string.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xkeycheck.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtgmath.h +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xtr1common +C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\yvals.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\assert.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_malloc.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memcpy_s.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_memory.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_search.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_stdio_config.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wstring.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\corecrt_wtime.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\errno.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\float.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\math.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stddef.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdio.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\stdlib.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\string.h +C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt\time.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\builtin_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\channel_descriptor.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\common_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_double_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\device_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_config.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\host_defines.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\math_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\crt\sm_70_rt.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cublas_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cublas_v2.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuComplex.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_device_runtime_api.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_fp16.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_fp16.hpp +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cuda_runtime.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_runtime_api.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\cuda_texture_types.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\cudnn.h +C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\curand.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_launch_parameters.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\device_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\driver_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\library_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_20_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_30_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_32_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_35_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_60_atomic_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\sm_61_intrinsics.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\surface_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_fetch_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_indirect_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\texture_types.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.h +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_functions.hpp +c:\program files\nvidia gpu computing toolkit\cuda\v10.1\include\vector_types.h +c:\users\endman100\desktop\darknet-master\src\activations.h +c:\users\endman100\desktop\darknet-master\src\activation_layer.h +c:\users\endman100\desktop\darknet-master\src\avgpool_layer.h +c:\users\endman100\desktop\darknet-master\src\batchnorm_layer.h +c:\users\endman100\desktop\darknet-master\src\blas.h +c:\users\endman100\desktop\darknet-master\src\box.h +c:\users\endman100\desktop\darknet-master\src\connected_layer.h +c:\users\endman100\desktop\darknet-master\src\convolutional_layer.h +c:\users\endman100\desktop\darknet-master\src\cost_layer.h +c:\users\endman100\desktop\darknet-master\src\crnn_layer.h +c:\users\endman100\desktop\darknet-master\src\crop_layer.h +c:\users\endman100\desktop\darknet-master\src\dark_cuda.h +c:\users\endman100\desktop\darknet-master\src\data.h +c:\users\endman100\desktop\darknet-master\src\detection_layer.h +c:\users\endman100\desktop\darknet-master\src\dropout_layer.h +c:\users\endman100\desktop\darknet-master\src\gru_layer.h +c:\users\endman100\desktop\darknet-master\src\http_stream.h +c:\users\endman100\desktop\darknet-master\src\image.h +c:\users\endman100\desktop\darknet-master\src\image_opencv.h +c:\users\endman100\desktop\darknet-master\src\layer.h +c:\users\endman100\desktop\darknet-master\src\list.h +c:\users\endman100\desktop\darknet-master\src\local_layer.h +c:\users\endman100\desktop\darknet-master\src\matrix.h +c:\users\endman100\desktop\darknet-master\src\maxpool_layer.h +c:\users\endman100\desktop\darknet-master\src\network.h +C:\Users\endman100\Desktop\darknet-master\src\network_kernels.cu +c:\users\endman100\desktop\darknet-master\src\normalization_layer.h +c:\users\endman100\desktop\darknet-master\src\parser.h +c:\users\endman100\desktop\darknet-master\src\region_layer.h +c:\users\endman100\desktop\darknet-master\src\reorg_layer.h +c:\users\endman100\desktop\darknet-master\src\rnn_layer.h +c:\users\endman100\desktop\darknet-master\src\route_layer.h +c:\users\endman100\desktop\darknet-master\src\shortcut_layer.h +c:\users\endman100\desktop\darknet-master\src\softmax_layer.h +c:\users\endman100\desktop\darknet-master\src\tree.h +c:\users\endman100\desktop\darknet-master\src\utils.h diff --git "a/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.cache" "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.cache" new file mode 100644 index 0000000..bc04416 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.cache" @@ -0,0 +1,50 @@ +Identity=..\..\src\network_kernels.cu +AdditionalCompilerOptions= +AdditionalCompilerOptions= +AdditionalDependencies= +AdditionalDeps= +AdditionalLibraryDirectories= +AdditionalOptions= +AdditionalOptions= +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CodeGeneration=compute_35,sm_35;compute_75,sm_75 +CompileOut=x64\Release\network_kernels.cu.obj +CudaRuntime=Static +CudaToolkitCustomDir= +Defines=;OPENCV;CUDNN_HALF;CUDNN;_TIMESPEC_DEFINED;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;GPU;WIN32;_CONSOLE;_LIB;_MBCS; +Emulation=false +FastMath=false +GenerateLineInfo=false +GenerateRelocatableDeviceCode=false +GPUDebugInfo=false +GPUDebugInfo=false +HostDebugInfo=false +Include=;\include;C:\opencv_3.0\opencv\build\include;..\..\include;..\..\3rdparty\stb\include;..\..\3rdparty\pthreads\include;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include;\include;\include +Inputs= +InterleaveSourceInPTX=false +Keep=false +KeepDir=x64\Release +LinkOut= +MaxRegCount=0 +NvccCompilation=compile +NvccPath= +Optimization=O2 +Optimization=O2 +PerformDeviceLink= +ProgramDataBaseFileName=x64\Release\vc140.pdb +PtxAsOptionV=false +RequiredIncludes= +Runtime=MD +Runtime=MD +RuntimeChecks=Default +RuntimeChecks=Default +TargetMachinePlatform=64 +TargetMachinePlatform=64 +TypeInfo= +TypeInfo= +UseHostDefines=true +UseHostInclude=true +UseHostLibraryDependencies= +UseHostLibraryDirectories= +Warning=W3 +Warning=W3 diff --git "a/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.obj" "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.obj" new file mode 100644 index 0000000..75c6f6a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/network_kernels.cu.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/nightmare.obj" "b/\346\225\264\347\220\206/yolo/train/Release/nightmare.obj" new file mode 100644 index 0000000..1f9fb87 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/nightmare.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/normalization_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/normalization_layer.obj" new file mode 100644 index 0000000..5389ded Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/normalization_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/option_list.obj" "b/\346\225\264\347\220\206/yolo/train/Release/option_list.obj" new file mode 100644 index 0000000..0a18d6b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/option_list.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/parser.obj" "b/\346\225\264\347\220\206/yolo/train/Release/parser.obj" new file mode 100644 index 0000000..b37b505 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/parser.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/region_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/region_layer.obj" new file mode 100644 index 0000000..d25cc90 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/region_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/reorg_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/reorg_layer.obj" new file mode 100644 index 0000000..a0c9ab5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/reorg_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/reorg_old_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/reorg_old_layer.obj" new file mode 100644 index 0000000..2745f2e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/reorg_old_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/rnn.obj" "b/\346\225\264\347\220\206/yolo/train/Release/rnn.obj" new file mode 100644 index 0000000..a14b518 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/rnn.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/rnn_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/rnn_layer.obj" new file mode 100644 index 0000000..f23ea58 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/rnn_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/rnn_vid.obj" "b/\346\225\264\347\220\206/yolo/train/Release/rnn_vid.obj" new file mode 100644 index 0000000..321d889 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/rnn_vid.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/route_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/route_layer.obj" new file mode 100644 index 0000000..1a7760e Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/route_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/sam_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/sam_layer.obj" new file mode 100644 index 0000000..af792e2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/sam_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/scale_channels_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/scale_channels_layer.obj" new file mode 100644 index 0000000..e05006a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/scale_channels_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/shortcut_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/shortcut_layer.obj" new file mode 100644 index 0000000..53d6653 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/shortcut_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/softmax_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/softmax_layer.obj" new file mode 100644 index 0000000..1eee220 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/softmax_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/super.obj" "b/\346\225\264\347\220\206/yolo/train/Release/super.obj" new file mode 100644 index 0000000..02daf8d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/super.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/swag.obj" "b/\346\225\264\347\220\206/yolo/train/Release/swag.obj" new file mode 100644 index 0000000..da5910b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/swag.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/tag.obj" "b/\346\225\264\347\220\206/yolo/train/Release/tag.obj" new file mode 100644 index 0000000..4baadd0 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/tag.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/tree.obj" "b/\346\225\264\347\220\206/yolo/train/Release/tree.obj" new file mode 100644 index 0000000..534d13a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/tree.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/upsample_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/upsample_layer.obj" new file mode 100644 index 0000000..7e7282d Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/upsample_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/utils.obj" "b/\346\225\264\347\220\206/yolo/train/Release/utils.obj" new file mode 100644 index 0000000..08fb3f7 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/utils.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/vc140.pdb" "b/\346\225\264\347\220\206/yolo/train/Release/vc140.pdb" new file mode 100644 index 0000000..d50bf9b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/vc140.pdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/voxel.obj" "b/\346\225\264\347\220\206/yolo/train/Release/voxel.obj" new file mode 100644 index 0000000..bd92c24 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/voxel.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/writing.obj" "b/\346\225\264\347\220\206/yolo/train/Release/writing.obj" new file mode 100644 index 0000000..d5a8ccd Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/writing.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/yolo.obj" "b/\346\225\264\347\220\206/yolo/train/Release/yolo.obj" new file mode 100644 index 0000000..3d89501 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/yolo.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/Release/yolo_layer.obj" "b/\346\225\264\347\220\206/yolo/train/Release/yolo_layer.obj" new file mode 100644 index 0000000..e6997bf Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/Release/yolo_layer.obj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/backup/tmp.txt" "b/\346\225\264\347\220\206/yolo/train/backup/tmp.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/yolo/train/bad.list" "b/\346\225\264\347\220\206/yolo/train/bad.list" new file mode 100644 index 0000000..186d16b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/bad.list" @@ -0,0 +1,29 @@ +./data/135.png +./data/145.png +./data/112.png +./data/101.png +./data/106.png +./data/118.png +./data/102.png +./data/142.png +./data/102.png +./data/141.png +./data/133.png +./data/124.png +../../data/yoloGtold1/train/122.png +../../data/yoloGtold1/train/131.png +../../data/yoloGtold1/train/138.png +../../data/yoloGtold1/train/144.png +../../data/yoloGtold1/train/101.png +../../data/yoloGtold1/train/114.png +../../data/yoloGtold1/train/103.png +../../data/yoloGtold1/train/136.png +../../data/yoloGtold1/train/128.png +../../data/yoloGtold1/train/124.png +../../data/yoloGtold1/train/147.png +../../data/yoloGtold1/train/116.png +../../data/yoloGtold1/train/136.png +../../data/yoloGtold1/train/132.png +../../data/yoloGtold1/train/119.png +../../data/yoloGtold1/train/119.png +../../data/yoloGtold1/train/105.png diff --git "a/\346\225\264\347\220\206/yolo/train/calc_anchors.cmd" "b/\346\225\264\347\220\206/yolo/train/calc_anchors.cmd" new file mode 100644 index 0000000..45bb6ff --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/calc_anchors.cmd" @@ -0,0 +1,12 @@ +rem # How to calculate Yolo v2 anchors using K-means++ + + +darknet.exe detector calc_anchors data/voc.data -num_of_clusters 9 -width 416 -height 416 + + +rem darknet.exe detector calc_anchors data/voc.data -num_of_clusters 9 -width 416 -height 416 -show + + + + +pause diff --git "a/\346\225\264\347\220\206/yolo/train/calc_mAP.cmd" "b/\346\225\264\347\220\206/yolo/train/calc_mAP.cmd" new file mode 100644 index 0000000..a1bf2e5 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/calc_mAP.cmd" @@ -0,0 +1,11 @@ +rem # How to calculate mAP (mean average precision) + + +rem darknet.exe detector map cfg/voc.data cfg/yolov2-tiny-voc.cfg yolov2-tiny-voc.weights -points 11 + + +darknet.exe detector map cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights -points 11 + + + +pause diff --git "a/\346\225\264\347\220\206/yolo/train/calc_mAP_coco.cmd" "b/\346\225\264\347\220\206/yolo/train/calc_mAP_coco.cmd" new file mode 100644 index 0000000..e4bd32d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/calc_mAP_coco.cmd" @@ -0,0 +1,16 @@ +rem # How to calculate Yolo v3 mAP on MS COCO + +rem darknet.exe detector map cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights -points 101 + + +darknet.exe detector map cfg/coco.data cfg/yolov3-spp.cfg yolov3-spp.weights -points 101 + + +rem darknet.exe detector map cfg/coco.data cfg/yolov3.cfg yolov3.weights -points 101 + + +rem darknet.exe detector map cfg/coco.data cfg/yolov3.cfg yolov3.weights -iou_thresh 0.75 -points 101 + + + +pause diff --git "a/\346\225\264\347\220\206/yolo/train/calc_mAP_voc_py.cmd" "b/\346\225\264\347\220\206/yolo/train/calc_mAP_voc_py.cmd" new file mode 100644 index 0000000..cf73ffc --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/calc_mAP_voc_py.cmd" @@ -0,0 +1,16 @@ +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install numpy +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install cPickle +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install _pickle + + +rem darknet.exe detector valid cfg/voc.data cfg/yolov2-tiny-voc.cfg yolov2-tiny-voc.weights + +darknet.exe detector valid cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights + + +reval_voc_py3.py --year 2007 --classes data\voc.names --image_set test --voc_dir E:\VOC2007_2012\VOCtrainval_11-May-2012\VOCdevkit results + + + + +pause diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/Gaussian_yolov3_BDD.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/Gaussian_yolov3_BDD.cfg" new file mode 100644 index 0000000..2ca7ec6 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/Gaussian_yolov3_BDD.cfg" @@ -0,0 +1,807 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=512 +height=512 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 +max_epochs = 300 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=57 +activation=linear + + +[Gaussian_yolo] +mask = 6,7,8 +anchors = 7,10, 14,24, 27,43, 32,97, 57,64, 92,109, 73,175, 141,178, 144,291 +classes=10 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +iou_thresh=0.213 +uc_normalizer=1.0 +cls_normalizer=1.0 +iou_normalizer=0.5 +iou_loss=giou +scale_x_y=1.0 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=57 +activation=linear + + +[Gaussian_yolo] +mask = 3,4,5 +anchors = 7,10, 14,24, 27,43, 32,97, 57,64, 92,109, 73,175, 141,178, 144,291 +classes=10 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +iou_thresh=0.213 +uc_normalizer=1.0 +cls_normalizer=1.0 +iou_normalizer=0.5 +iou_loss=giou +scale_x_y=1.0 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=57 +activation=linear + + +[Gaussian_yolo] +mask = 0,1,2 +anchors = 7,10, 14,24, 27,43, 32,97, 57,64, 92,109, 73,175, 141,178, 144,291 +classes=10 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +iou_thresh=0.213 +uc_normalizer=1.0 +cls_normalizer=1.0 +iou_normalizer=0.5 +iou_loss=giou +scale_x_y=1.0 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/alexnet.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/alexnet.cfg" new file mode 100644 index 0000000..7e5a9b2 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/alexnet.cfg" @@ -0,0 +1,95 @@ +[net] +batch=128 +subdivisions=1 +height=227 +width=227 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=256 + +learning_rate=0.01 +policy=poly +power=4 +max_batches=800000 + +angle=7 +hue = .1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +filters=96 +size=11 +stride=4 +pad=0 +activation=relu + +[maxpool] +size=3 +stride=2 +padding=0 + +[convolutional] +filters=256 +size=5 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=3 +stride=2 +padding=0 + +[convolutional] +filters=384 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=384 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=3 +stride=2 +padding=0 + +[connected] +output=4096 +activation=relu + +[dropout] +probability=.5 + +[connected] +output=4096 +activation=relu + +[dropout] +probability=.5 + +[connected] +output=1000 +activation=linear + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/cd53paspp-gamma.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/cd53paspp-gamma.cfg" new file mode 100644 index 0000000..be3dbff --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/cd53paspp-gamma.cfg" @@ -0,0 +1,1153 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=8 +width=512 +height=512 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#cutmix=1 +mosaic=1 + +#:104x104 54:52x52 85:26x26 104:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 85 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 54 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/cifar.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/cifar.cfg" new file mode 100644 index 0000000..f2c801a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/cifar.cfg" @@ -0,0 +1,126 @@ +[net] +batch=128 +subdivisions=1 +height=32 +width=32 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.4 +policy=poly +power=4 +max_batches = 50000 + +[crop] +crop_width=28 +crop_height=28 +flip=1 +angle=0 +saturation = 1 +exposure = 1 +noadjust=1 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[dropout] +probability=.5 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[dropout] +probability=.5 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[dropout] +probability=.5 + +[convolutional] +filters=10 +size=1 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[softmax] +groups=1 + +[cost] + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/cifar.test.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/cifar.test.cfg" new file mode 100644 index 0000000..d3afcdd --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/cifar.test.cfg" @@ -0,0 +1,119 @@ +[net] +batch=128 +subdivisions=1 +height=32 +width=32 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.4 +policy=poly +power=4 +max_batches = 50000 + + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[dropout] +probability=.5 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[dropout] +probability=.5 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[dropout] +probability=.5 + +[convolutional] +filters=10 +size=1 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[softmax] +groups=1 +temperature=3 + +[cost] + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/coco.data" "b/\346\225\264\347\220\206/yolo/train/cfg/coco.data" new file mode 100644 index 0000000..f51d842 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/coco.data" @@ -0,0 +1,8 @@ +classes= 80 +train = E:/MSCOCO/trainvalno5k.txt +#train = E:/MSCOCO/5k.txt +valid = E:/MSCOCO/5k.txt +names = data/coco.names +backup = backup +eval=coco + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/combine9k.data" "b/\346\225\264\347\220\206/yolo/train/cfg/combine9k.data" new file mode 100644 index 0000000..06a3e76 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/combine9k.data" @@ -0,0 +1,10 @@ +classes= 9418 +#train = /home/pjreddie/data/coco/trainvalno5k.txt +train = data/combine9k.train.list +valid = /home/pjreddie/data/imagenet/det.val.files +labels = data/9k.labels +names = data/9k.names +backup = backup/ +map = data/inet9k.map +eval = imagenet +results = results diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/crnn.train.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/crnn.train.cfg" new file mode 100644 index 0000000..e0e0b54 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/crnn.train.cfg" @@ -0,0 +1,52 @@ +[net] +subdivisions=8 +inputs=256 +batch = 128 +momentum=0.9 +decay=0.001 +max_batches = 2000 +time_steps=576 +learning_rate=0.1 +policy=steps +steps=1000,1500 +scales=.1,.1 + +try_fix_nan=1 + +[connected] +output=256 +activation=leaky + +[crnn] +batch_normalize=1 +size=1 +pad=0 +output = 1024 +hidden=1024 +activation=leaky + +[crnn] +batch_normalize=1 +size=1 +pad=0 +output = 1024 +hidden=1024 +activation=leaky + +[crnn] +batch_normalize=1 +size=1 +pad=0 +output = 1024 +hidden=1024 +activation=leaky + +[connected] +output=256 +activation=leaky + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/csdarknet53-omega.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/csdarknet53-omega.cfg" new file mode 100644 index 0000000..3a3c073 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/csdarknet53-omega.cfg" @@ -0,0 +1,762 @@ +[net] +# Training +batch=128 +subdivisions=4 + +label_smooth_eps=0.1 + +# Testing +# batch=1 +# subdivisions=1 + +height=256 +width=256 +channels=3 +min_crop=128 +max_crop=448 + +mosaic=1 +cutmix=1 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=1200000 +momentum=0.9 +decay=0.0005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=mish + +[avgpool] + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[softmax] +groups=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp-original-optimal.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp-original-optimal.cfg" new file mode 100644 index 0000000..f0b78f9 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp-original-optimal.cfg" @@ -0,0 +1,1042 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=8 +width=608 +height=608 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#cutmix=1 +mosaic=1 + +#19:104x104 38:52x52 65:26x26 80:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +# 1-1 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-T + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +# 2-1 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-T + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +# 3-1 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-3 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-4 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-5 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-T + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-24 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +# 4-1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 4-2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 4-T + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-12 + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 65 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 38 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp.cfg" new file mode 100644 index 0000000..261d35b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/csresnext50-panet-spp.cfg" @@ -0,0 +1,1018 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=512 +height=512 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#19:104x104 38:52x52 65:26x26 80:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +# 1-1 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 1-T + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +# 2-1 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 2-T + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +# 3-1 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-3 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-4 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-5 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 3-T + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-24 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +# 4-1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 4-2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +groups=32 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +# 4-T + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-12 + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 65 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 38 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/darknet.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/darknet.cfg" new file mode 100644 index 0000000..60b939a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/darknet.cfg" @@ -0,0 +1,111 @@ +[net] +batch=128 +subdivisions=1 +height=224 +width=224 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=320 + +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 +padding=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/darknet19.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/darknet19.cfg" new file mode 100644 index 0000000..bf73fb7 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/darknet19.cfg" @@ -0,0 +1,194 @@ +[net] +batch=128 +subdivisions=1 +height=224 +width=224 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=448 + +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/darknet19_448.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/darknet19_448.cfg" new file mode 100644 index 0000000..1918a8b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/darknet19_448.cfg" @@ -0,0 +1,202 @@ +[net] +#batch=128 +#subdivisions=4 +batch=1 +subdivisions=1 +height=448 +width=448 +max_crop=512 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.001 +policy=poly +power=4 +max_batches=100000 + +angle=7 +hue = .1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/darknet53.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/darknet53.cfg" new file mode 100644 index 0000000..a1f084a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/darknet53.cfg" @@ -0,0 +1,566 @@ +[net] +# Training +batch=128 +subdivisions=8 + +# Testing +#batch=1 +#subdivisions=1 + +height=256 +width=256 +channels=3 +min_crop=128 +max_crop=448 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=800000 +momentum=0.9 +decay=0.0005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[avgpool] + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[softmax] +groups=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/darknet53_448_xnor.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/darknet53_448_xnor.cfg" new file mode 100644 index 0000000..a48ef69 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/darknet53_448_xnor.cfg" @@ -0,0 +1,619 @@ +[net] +# Training - start training with darknet53.weights +batch=120 +subdivisions=20 + +# Testing +#batch=1 +#subdivisions=1 + +height=448 +width=448 +channels=3 +min_crop=448 +max_crop=512 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=100000 +momentum=0.9 +decay=0.0005 + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +xnor=1 +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +xnor=1 +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +xnor=1 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +xnor=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[softmax] +groups=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/densenet201.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/densenet201.cfg" new file mode 100644 index 0000000..5e1e7dd --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/densenet201.cfg" @@ -0,0 +1,1954 @@ +[net] +# Training +# batch=128 +# subdivisions=4 + +# Testing +batch=1 +subdivisions=1 + +height=256 +width=256 +max_crop=448 +channels=3 +momentum=0.9 +decay=0.0005 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/efficientnet-lite3.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/efficientnet-lite3.cfg" new file mode 100644 index 0000000..e76bbe3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/efficientnet-lite3.cfg" @@ -0,0 +1,1009 @@ +# https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/lite/efficientnet_lite_builder.py +# (width_coefficient, depth_coefficient, resolution, dropout_rate) +# 'efficientnet-lite3': (1.2, 1.4, 280, 0.3), +# +#_DEFAULT_BLOCKS_ARGS = [ +# 'r1_k3_s11_e1_i32_o16_se0.25', 'r2_k3_s22_e6_i16_o24_se0.25', +# 'r2_k5_s22_e6_i24_o40_se0.25', 'r3_k3_s22_e6_i40_o80_se0.25', +# 'r3_k5_s11_e6_i80_o112_se0.25', 'r4_k5_s22_e6_i112_o192_se0.25', +# 'r1_k3_s11_e6_i192_o320_se0.25', +#] + +[net] +# Training +batch=120 +subdivisions=6 +height=288 +width=288 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=320 + +cutmix=1 +mosaic=1 +label_smooth_eps=0.1 + +burn_in=1000 +learning_rate=0.256 +policy=step +step=10000 +scale=0.96 +max_batches=1600000 +momentum=0.9 +decay=0.00005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + +### CONV1 - 1 (1) +# conv1 +[convolutional] +filters=40 #32 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=relu6 + + +### CONV2 - MBConv1 - 1 (2) +# conv2_1_expand +[convolutional] +filters=40 #32 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv2_1_dwise +[convolutional] +groups=40 #32 +filters=40 #32 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv2_1_linear +[convolutional] +filters=16 #16 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV2 - MBConv1 - 2 (2) +# conv2_1_expand +[convolutional] +filters=40 #32 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv2_1_dwise +[convolutional] +groups=40 #32 +filters=40 #32 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv2_1_linear +[convolutional] +filters=16 #16 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV3 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_3_1 +[shortcut] +from=-5 +activation=linear + +# conv2_2_expand +[convolutional] +filters=112 #96 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv2_2_dwise +[convolutional] +groups=112 #96 +filters=112 #96 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=relu6 + +# conv2_2_linear +[convolutional] +filters=32 #24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV3 - MBConv6 - 2 (3) +# conv3_1_expand +[convolutional] +filters=176 #144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv3_1_dwise +[convolutional] +groups=176 #144 +filters=176 #144 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv3_1_linear +[convolutional] +filters=32 #24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV3 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_3_1 +[shortcut] +from=-5 +activation=linear + +# conv3_1_expand +[convolutional] +filters=176 #144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv3_1_dwise +[convolutional] +groups=176 #144 +filters=176 #144 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv3_1_linear +[convolutional] +filters=32 #24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV4 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_3_1 +[shortcut] +from=-5 +activation=linear + +# conv_3_2_expand +[convolutional] +filters=176 #144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_3_2_dwise +[convolutional] +groups=176 #144 +filters=176 #144 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=relu6 + +# conv_3_2_linear +[convolutional] +filters=48 #40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV4 - MBConv6 - 2 (3) +# conv_4_1_expand +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_1_dwise +[convolutional] +groups=232 #192 +filters=232 #192 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_1_linear +[convolutional] +filters=48 #40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV4 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_2 +[shortcut] +from=-5 +activation=linear + +# conv_4_1_expand +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_1_dwise +[convolutional] +groups=232 #192 +filters=232 #192 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_1_linear +[convolutional] +filters=48 #40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + + +### CONV5 - MBConv6 - 1 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_2 +[shortcut] +from=-5 +activation=linear + +# conv_4_3_expand +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_3_dwise +[convolutional] +groups=232 #192 +filters=232 #192 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_3_linear +[convolutional] +filters=96 #80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 2 (5) +# conv_4_4_expand +[convolutional] +filters=464 #384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_4_dwise +[convolutional] +groups=464 #384 +filters=464 #384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_4_linear +[convolutional] +filters=96 #80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 3 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_4 +[shortcut] +from=-5 +activation=linear + +# conv_4_5_expand +[convolutional] +filters=464 #384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_5_dwise +[convolutional] +groups=464 #384 +filters=464 #384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_5_linear +[convolutional] +filters=96 #80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 4 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_4 +[shortcut] +from=-5 +activation=linear + +# conv_4_5_expand +[convolutional] +filters=464 #384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_5_dwise +[convolutional] +groups=464 #384 +filters=464 #384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_5_linear +[convolutional] +filters=96 #80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV5 - MBConv6 - 5 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_4 +[shortcut] +from=-5 +activation=linear + +# conv_4_5_expand +[convolutional] +filters=464 #384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_5_dwise +[convolutional] +groups=464 #384 +filters=464 #384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_4_5_linear +[convolutional] +filters=96 #80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV6 - MBConv6 - 1 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_4_6 +[shortcut] +from=-5 +activation=linear + +# conv_4_7_expand +[convolutional] +filters=464 #384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_4_7_dwise +[convolutional] +groups=464 #384 +filters=464 #384 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=relu6 + +# conv_4_7_linear +[convolutional] +filters=136 #112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 2 (5) +# conv_5_1_expand +[convolutional] +filters=688 #576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_5_1_dwise +[convolutional] +groups=688 #576 +filters=688 #576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_5_1_linear +[convolutional] +filters=136 #112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 3 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_5_1 +[shortcut] +from=-5 +activation=linear + +# conv_5_2_expand +[convolutional] +filters=688 #576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_5_2_dwise +[convolutional] +groups=688 #576 +filters=688 #576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_5_2_linear +[convolutional] +filters=136 #112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV6 - MBConv6 - 4 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_5_1 +[shortcut] +from=-5 +activation=linear + +# conv_5_2_expand +[convolutional] +filters=688 #576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_5_2_dwise +[convolutional] +groups=688 #576 +filters=688 #576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_5_2_linear +[convolutional] +filters=136 #112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 5 (5) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_5_1 +[shortcut] +from=-5 +activation=linear + +# conv_5_2_expand +[convolutional] +filters=688 #576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_5_2_dwise +[convolutional] +groups=688 #576 +filters=688 #576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_5_2_linear +[convolutional] +filters=136 #112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV7 - MBConv6 - 1 (6) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_5_2 +[shortcut] +from=-5 +activation=linear + +# conv_5_3_expand +[convolutional] +filters=688 #576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_5_3_dwise +[convolutional] +groups=688 #576 +filters=688 #576 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=relu6 + + +# conv_5_3_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 2 (6) +# conv_6_1_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_1_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_6_1_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 3 (6) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_6_1 +[shortcut] +from=-5 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_2_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_6_2_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 4 (6) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_6_1 +[shortcut] +from=-5 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_2_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_6_2_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 5 (6) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_6_1 +[shortcut] +from=-5 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_2_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + +# conv_6_2_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 6 (6) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_6_1 +[shortcut] +from=-5 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_2_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + + + +# conv_6_2_linear +[convolutional] +filters=232 #192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV8 - MBConv6 - 1 (1) +# dropout only before residual connection +[dropout] +probability=.3 + +# block_6_2 +[shortcut] +from=-5 +activation=linear + +# conv_6_3_expand +[convolutional] +filters=1152 #960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + +# conv_6_3_dwise +[convolutional] +groups=1152 #960 +filters=1152 #960 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=relu6 + + + +# conv_6_3_linear +[convolutional] +filters=384 #320 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + + +### CONV9 - Conv2d 1x1 +# conv_6_4 +[convolutional] +filters=1536 #1280 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=relu6 + + +[avgpool] + +[dropout] +probability=.3 + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=0 +activation=linear + +[softmax] +groups=1 + +#[cost] +#type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/efficientnet_b0.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/efficientnet_b0.cfg" new file mode 100644 index 0000000..70f7806 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/efficientnet_b0.cfg" @@ -0,0 +1,1009 @@ +[net] +# Training +batch=120 +subdivisions=4 +# Testing +#batch=1 +#subdivisions=1 +height=224 +width=224 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=256 +#mixup=4 +blur=1 +cutmix=1 +mosaic=1 + +burn_in=1000 +#burn_in=100 +learning_rate=0.256 +policy=poly +power=4 +max_batches=800000 +momentum=0.9 +decay=0.00005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + +### CONV1 - 1 (1) +# conv1 +[convolutional] +filters=32 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +### CONV2 - MBConv1 - 1 (1) +# conv2_1_expand +[convolutional] +filters=32 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv2_1_dwise +[convolutional] +groups=32 +filters=32 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=4 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=32 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv2_1_linear +[convolutional] +filters=16 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV3 - MBConv6 - 1 (2) +# conv2_2_expand +[convolutional] +filters=96 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv2_2_dwise +[convolutional] +groups=96 +filters=96 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=8 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=96 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv2_2_linear +[convolutional] +filters=24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV3 - MBConv6 - 2 (2) +# conv3_1_expand +[convolutional] +filters=144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv3_1_dwise +[convolutional] +groups=144 +filters=144 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=144 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv3_1_linear +[convolutional] +filters=24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV4 - MBConv6 - 1 (2) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_3_1 +[shortcut] +from=-9 +activation=linear + +# conv_3_2_expand +[convolutional] +filters=144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_3_2_dwise +[convolutional] +groups=144 +filters=144 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=144 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_3_2_linear +[convolutional] +filters=40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV4 - MBConv6 - 2 (2) +# conv_4_1_expand +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_1_dwise +[convolutional] +groups=192 +filters=192 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=192 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_1_linear +[convolutional] +filters=40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + + +### CONV5 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_4_2 +[shortcut] +from=-9 +activation=linear + +# conv_4_3_expand +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_3_dwise +[convolutional] +groups=192 +filters=192 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=192 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_3_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 2 (3) +# conv_4_4_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_4_dwise +[convolutional] +groups=384 +filters=384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_4_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_4_4 +[shortcut] +from=-9 +activation=linear + +# conv_4_5_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_5_dwise +[convolutional] +groups=384 +filters=384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_5_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV6 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_4_6 +[shortcut] +from=-9 +activation=linear + +# conv_4_7_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_7_dwise +[convolutional] +groups=384 +filters=384 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_7_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 2 (3) +# conv_5_1_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_1_dwise +[convolutional] +groups=576 +filters=576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_1_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_5_1 +[shortcut] +from=-9 +activation=linear + +# conv_5_2_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_2_dwise +[convolutional] +groups=576 +filters=576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_2_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 1 (4) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_5_2 +[shortcut] +from=-9 +activation=linear + +# conv_5_3_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_3_dwise +[convolutional] +groups=576 +filters=576 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_3_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 2 (4) +# conv_6_1_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_1_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_1_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 3 (4) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_6_1 +[shortcut] +from=-9 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_2_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_2_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 4 (4) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_6_1 +[shortcut] +from=-9 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_2_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_2_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV8 - MBConv6 - 1 (1) +# dropout only before residual connection +[dropout] +probability=.2 + +# block_6_2 +[shortcut] +from=-9 +activation=linear + +# conv_6_3_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_3_dwise +[convolutional] +groups=960 +filters=960 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_3_linear +[convolutional] +filters=320 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV9 - Conv2d 1x1 +# conv_6_4 +[convolutional] +filters=1280 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + + +[avgpool] + +[dropout] +probability=.2 + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=0 +activation=linear + +[softmax] +groups=1 + +#[cost] +#type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/enet-coco.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/enet-coco.cfg" new file mode 100644 index 0000000..b530ed3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/enet-coco.cfg" @@ -0,0 +1,1072 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +### CONV1 - 1 (1) +# conv1 +[convolutional] +filters=32 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +### CONV2 - MBConv1 - 1 (1) +# conv2_1_expand +[convolutional] +filters=32 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv2_1_dwise +[convolutional] +groups=32 +filters=32 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=4 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=32 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv2_1_linear +[convolutional] +filters=16 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV3 - MBConv6 - 1 (2) +# conv2_2_expand +[convolutional] +filters=96 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv2_2_dwise +[convolutional] +groups=96 +filters=96 +size=3 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=8 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=96 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv2_2_linear +[convolutional] +filters=24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV3 - MBConv6 - 2 (2) +# conv3_1_expand +[convolutional] +filters=144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv3_1_dwise +[convolutional] +groups=144 +filters=144 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=144 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv3_1_linear +[convolutional] +filters=24 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV4 - MBConv6 - 1 (2) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_3_1 +[shortcut] +from=-9 +activation=linear + +# conv_3_2_expand +[convolutional] +filters=144 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_3_2_dwise +[convolutional] +groups=144 +filters=144 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=8 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=144 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_3_2_linear +[convolutional] +filters=40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV4 - MBConv6 - 2 (2) +# conv_4_1_expand +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_1_dwise +[convolutional] +groups=192 +filters=192 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=192 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_1_linear +[convolutional] +filters=40 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + + +### CONV5 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_4_2 +[shortcut] +from=-9 +activation=linear + +# conv_4_3_expand +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_3_dwise +[convolutional] +groups=192 +filters=192 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=16 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=192 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_3_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 2 (3) +# conv_4_4_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_4_dwise +[convolutional] +groups=384 +filters=384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_4_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV5 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_4_4 +[shortcut] +from=-9 +activation=linear + +# conv_4_5_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_5_dwise +[convolutional] +groups=384 +filters=384 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_5_linear +[convolutional] +filters=80 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV6 - MBConv6 - 1 (3) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_4_6 +[shortcut] +from=-9 +activation=linear + +# conv_4_7_expand +[convolutional] +filters=384 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_4_7_dwise +[convolutional] +groups=384 +filters=384 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=24 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=384 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_4_7_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 2 (3) +# conv_5_1_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_1_dwise +[convolutional] +groups=576 +filters=576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_1_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV6 - MBConv6 - 3 (3) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_5_1 +[shortcut] +from=-9 +activation=linear + +# conv_5_2_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_2_dwise +[convolutional] +groups=576 +filters=576 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_2_linear +[convolutional] +filters=112 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 1 (4) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_5_2 +[shortcut] +from=-9 +activation=linear + +# conv_5_3_expand +[convolutional] +filters=576 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_5_3_dwise +[convolutional] +groups=576 +filters=576 +size=5 +pad=1 +stride=2 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=32 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=576 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_5_3_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 2 (4) +# conv_6_1_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_1_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_1_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 3 (4) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_6_1 +[shortcut] +from=-9 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_2_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_2_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV7 - MBConv6 - 4 (4) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_6_1 +[shortcut] +from=-9 +activation=linear + +# conv_6_2_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_2_dwise +[convolutional] +groups=960 +filters=960 +size=5 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_2_linear +[convolutional] +filters=192 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + + +### CONV8 - MBConv6 - 1 (1) +# dropout only before residual connection +[dropout] +probability=.0 + +# block_6_2 +[shortcut] +from=-9 +activation=linear + +# conv_6_3_expand +[convolutional] +filters=960 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +# conv_6_3_dwise +[convolutional] +groups=960 +filters=960 +size=3 +stride=1 +pad=1 +batch_normalize=1 +activation=swish + + +#squeeze-n-excitation +[avgpool] + +# squeeze ratio r=16 (recommended r=16) +[convolutional] +filters=64 +size=1 +stride=1 +activation=swish + +# excitation +[convolutional] +filters=960 +size=1 +stride=1 +activation=logistic + +# multiply channels +[scale_channels] +from=-4 + + +# conv_6_3_linear +[convolutional] +filters=320 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=linear + + +### CONV9 - Conv2d 1x1 +# conv_6_4 +[convolutional] +filters=1280 +size=1 +stride=1 +pad=0 +batch_normalize=1 +activation=swish + +########################## + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +activation=leaky +from=-2 + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[shortcut] +activation=leaky +from=90 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +activation=leaky +from=-3 + +[shortcut] +activation=leaky +from=90 + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 1,2,3 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/extraction.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/extraction.cfg" new file mode 100644 index 0000000..94e1067 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/extraction.cfg" @@ -0,0 +1,206 @@ +[net] +batch=128 +subdivisions=1 +height=224 +width=224 +max_crop=320 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=192 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/extraction.conv.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/extraction.conv.cfg" new file mode 100644 index 0000000..2a7d09e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/extraction.conv.cfg" @@ -0,0 +1,179 @@ +[net] +batch=1 +subdivisions=1 +height=256 +width=256 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.5 +policy=poly +power=6 +max_batches=500000 + +[convolutional] +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[connected] +output=1000 +activation=leaky + +[softmax] +groups=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/extraction22k.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/extraction22k.cfg" new file mode 100644 index 0000000..4cec6da --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/extraction22k.cfg" @@ -0,0 +1,209 @@ +[net] +batch=128 +subdivisions=1 +height=224 +width=224 +max_crop=320 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.01 +max_batches = 0 +policy=steps +steps=444000,590000,970000 +scales=.5,.2,.1 + +#policy=sigmoid +#gamma=.00008 +#step=100000 +#max_batches=200000 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=192 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=3 +stride=1 +pad=1 +activation=leaky + +[avgpool] + +[connected] +output=21842 +activation=leaky + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/go.test.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/go.test.cfg" new file mode 100644 index 0000000..6b92d33 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/go.test.cfg" @@ -0,0 +1,131 @@ +[net] +batch=1 +subdivisions=1 +height=19 +width=19 +channels=1 +momentum=0.9 +decay=0.0005 + +learning_rate=0.1 +policy=poly +power=4 +max_batches=400000 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + +[convolutional] +filters=192 +size=3 +stride=1 +pad=1 +activation=relu +batch_normalize=1 + + +[convolutional] +filters=1 +size=1 +stride=1 +pad=1 +activation=linear + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/gru.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/gru.cfg" new file mode 100644 index 0000000..f9a0699 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/gru.cfg" @@ -0,0 +1,34 @@ +[net] +subdivisions=1 +inputs=256 +batch = 1 +momentum=0.9 +decay=0.001 +time_steps=1 +learning_rate=0.5 + +policy=poly +power=4 +max_batches=2000 + +[gru] +batch_normalize=1 +output = 1024 + +[gru] +batch_normalize=1 +output = 1024 + +[gru] +batch_normalize=1 +output = 1024 + +[connected] +output=256 +activation=linear + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/imagenet1k.data" "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet1k.data" new file mode 100644 index 0000000..b01f2fa --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet1k.data" @@ -0,0 +1,9 @@ +classes=1000 +train = data/imagenet1k.train.list +#train = data/inet.val.list +valid = data/inet.val.list +backup = backup +labels = data/imagenet.labels.list +names = data/imagenet.shortnames.list +top=5 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/imagenet22k.dataset" "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet22k.dataset" new file mode 100644 index 0000000..920785d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet22k.dataset" @@ -0,0 +1,8 @@ +classes=21842 +train = /data/imagenet/imagenet22k.train.list +valid = /data/imagenet/imagenet22k.valid.list +backup = /home/pjreddie/backup/ +labels = data/imagenet.labels.list +names = data/imagenet.shortnames.list +top = 5 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/imagenet9k.hierarchy.dataset" "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet9k.hierarchy.dataset" new file mode 100644 index 0000000..41fb71b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/imagenet9k.hierarchy.dataset" @@ -0,0 +1,9 @@ +classes=9418 +train = data/9k.train.list +valid = /data/imagenet/imagenet1k.valid.list +leaves = data/imagenet1k.labels +backup = /home/pjreddie/backup/ +labels = data/9k.labels +names = data/9k.names +top=5 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/jnet-conv.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/jnet-conv.cfg" new file mode 100644 index 0000000..056f82a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/jnet-conv.cfg" @@ -0,0 +1,118 @@ +[net] +batch=1 +subdivisions=1 +height=10 +width=10 +channels=3 +learning_rate=0.01 +momentum=0.9 +decay=0.0005 + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +stride=2 +size=2 + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +stride=2 +size=2 + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +stride=2 +size=2 + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +stride=2 +size=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +stride=2 +size=2 + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/lstm.train.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/lstm.train.cfg" new file mode 100644 index 0000000..f0d4721 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/lstm.train.cfg" @@ -0,0 +1,35 @@ +[net] +subdivisions=8 +inputs=256 +batch = 128 +momentum=0.9 +decay=0.001 +max_batches = 2000 +time_steps=576 +learning_rate=0.5 +policy=steps +burn_in=10 +steps=1000,1500 +scales=.1,.1 + +[lstm] +batch_normalize=1 +output = 1024 + +[lstm] +batch_normalize=1 +output = 1024 + +[lstm] +batch_normalize=1 +output = 1024 + +[connected] +output=256 +activation=leaky + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/openimages.data" "b/\346\225\264\347\220\206/yolo/train/cfg/openimages.data" new file mode 100644 index 0000000..fa80e5a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/openimages.data" @@ -0,0 +1,8 @@ +classes= 601 +train = /home/pjreddie/data/openimsv4/openimages.train.list +#valid = coco_testdev +valid = data/coco_val_5k.list +names = data/openimages.names +backup = /home/pjreddie/backup/ +eval=coco + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/resnet101.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/resnet101.cfg" new file mode 100644 index 0000000..48dffbf --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/resnet101.cfg" @@ -0,0 +1,990 @@ +[net] +# Training +batch=128 +subdivisions=2 + +# Testing +#batch=1 +#subdivisions=1 + +height=256 +width=256 +channels=3 +min_crop=128 +max_crop=448 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=800000 +momentum=0.9 +decay=0.0005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +#Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + + + + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/resnet152.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/resnet152.cfg" new file mode 100644 index 0000000..d5fe909 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/resnet152.cfg" @@ -0,0 +1,1463 @@ +[net] +# Training +# batch=128 +# subdivisions=8 + +# Testing +batch=1 +subdivisions=1 + +height=256 +width=256 +max_crop=448 +channels=3 +momentum=0.9 +decay=0.0005 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +#Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + + + + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/resnet152_trident.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/resnet152_trident.cfg" new file mode 100644 index 0000000..1ac8cc7 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/resnet152_trident.cfg" @@ -0,0 +1,2177 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=64 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + + +learning_rate=0.001 +burn_in=1000 +max_batches = 10000 + +policy=sgdr +sgdr_cycle=1000 +sgdr_mult=2 +steps=4000,6000,8000,9000 +#scales=1, 1, 0.1, 0.1 + + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-2 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-2 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + + +### TridentNet - large objects - Start + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +## Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-2 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +dilation=3 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=2048 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=24 +activation=linear + +[yolo] +mask = 8,9,10,11 +anchors = 8,8, 10,13, 16,30, 33,23, 32,32, 30,61, 62,45, 59,119, 80,80, 116,90, 156,198, 373,326 +classes=1 +num=12 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + +### TridentNet - large objects - End + + + + + + + +### TridentNet - medium objects - Start + +[route] +layers = 165 + +[convolutional] +share_index=166 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=167 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=168 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=170 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=171 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=172 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=174 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=175 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=176 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=178 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=179 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=180 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=182 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=183 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=184 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=186 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=187 +dilation=2 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=188 +dilation=2 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +## Conv 5 +[convolutional] +share_index=190 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=191 +dilation=2 +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +share_index=192 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-2 +activation=leaky + +[convolutional] +share_index=194 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=195 +dilation=2 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=196 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=198 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=199 +dilation=2 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=200 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 49 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=24 +activation=linear + +[yolo] +mask = 4,5,6,7 +anchors = 8,8, 10,13, 16,30, 33,23, 32,32, 30,61, 62,45, 64,64, 59,119, 116,90, 156,198, 373,326 +classes=1 +num=12 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + +### TridentNet - medium objects - End + + + + + + + + + + + +### TridentNet - small objects - Start + +[route] +layers = 165 + +[convolutional] +share_index=166 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=167 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=168 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=170 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=171 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=172 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=174 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=175 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=176 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=178 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=179 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=180 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=182 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=183 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=184 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=186 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=187 +dilation=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=188 +dilation=1 +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +## Conv 5 +[convolutional] +share_index=190 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=191 +dilation=1 +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +share_index=192 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-2 +activation=leaky + +[convolutional] +share_index=194 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=195 +dilation=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=196 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +share_index=198 +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=199 +dilation=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +share_index=200 +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=512 +activation=leaky + +[upsample] +stride=4 + +[route] +layers = -1, 17 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=24 +activation=linear + +[yolo] +mask = 0,1,2,3 +anchors = 8,8, 10,13, 16,30, 33,23, 32,32, 30,61, 62,45, 64,64, 59,119, 116,90, 156,198, 373,326 +classes=1 +num=12 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + +### TridentNet - small objects - End + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/resnet50.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/resnet50.cfg" new file mode 100644 index 0000000..bfe69b1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/resnet50.cfg" @@ -0,0 +1,511 @@ +[net] +# Training +# batch=128 +# subdivisions=4 + +# Testing +batch=1 +subdivisions=1 + +height=256 +width=256 +max_crop=448 +channels=3 +momentum=0.9 +decay=0.0005 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +#Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + + + + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/resnext152-32x4d.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/resnext152-32x4d.cfg" new file mode 100644 index 0000000..48279fd --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/resnext152-32x4d.cfg" @@ -0,0 +1,1562 @@ +[net] +# Training +# batch=128 +# subdivisions=16 + +# Testing +batch=1 +subdivisions=1 + +height=256 +width=256 +channels=3 +min_crop=128 +max_crop=448 + +burn_in=1000 +learning_rate=0.1 +policy=poly +power=4 +max_batches=800000 +momentum=0.9 +decay=0.0005 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=4096 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=4096 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +groups = 32 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=4096 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + + + +[avgpool] + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[softmax] +groups=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/rnn.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/rnn.cfg" new file mode 100644 index 0000000..68c032d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/rnn.cfg" @@ -0,0 +1,40 @@ +[net] +subdivisions=1 +inputs=256 +batch = 1 +momentum=0.9 +decay=0.001 +max_batches = 2000 +time_steps=1 +learning_rate=0.1 +policy=steps +steps=1000,1500 +scales=.1,.1 + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[connected] +output=256 +activation=leaky + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/rnn.train.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/rnn.train.cfg" new file mode 100644 index 0000000..3c63956 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/rnn.train.cfg" @@ -0,0 +1,40 @@ +[net] +subdivisions=8 +inputs=256 +batch = 128 +momentum=0.9 +decay=0.001 +max_batches = 2000 +time_steps=576 +learning_rate=0.1 +policy=steps +steps=1000,1500 +scales=.1,.1 + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[rnn] +batch_normalize=1 +output = 1024 +hidden=1024 +activation=leaky + +[connected] +output=256 +activation=leaky + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/strided.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/strided.cfg" new file mode 100644 index 0000000..a52700b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/strided.cfg" @@ -0,0 +1,185 @@ +[net] +batch=128 +subdivisions=4 +height=256 +width=256 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.01 +policy=steps +scales=.1,.1,.1 +steps=200000,300000,400000 +max_batches=800000 + + +[crop] +crop_height=224 +crop_width=224 +flip=1 +angle=0 +saturation=1 +exposure=1 +shift=.2 + +[convolutional] +filters=64 +size=7 +stride=2 +pad=1 +activation=ramp + +[convolutional] +filters=192 +size=3 +stride=2 +pad=1 +activation=ramp + +[convolutional] +filters=128 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=3 +stride=2 +pad=1 +activation=ramp + +[convolutional] +filters=128 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=128 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=3 +stride=2 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=256 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=1024 +size=3 +stride=2 +pad=1 +activation=ramp + +[convolutional] +filters=512 +size=1 +stride=1 +pad=1 +activation=ramp + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=ramp + +[maxpool] +size=3 +stride=2 + +[connected] +output=4096 +activation=ramp + +[dropout] +probability=0.5 + +[connected] +output=1000 +activation=ramp + +[softmax] + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/t1.test.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/t1.test.cfg" new file mode 100644 index 0000000..b362811 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/t1.test.cfg" @@ -0,0 +1,117 @@ +[net] +batch=1 +subdivisions=1 +height=224 +width=224 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.0005 +policy=steps +steps=200,400,600,20000,30000 +scales=2.5,2,2,.1,.1 +max_batches = 40000 + +[convolutional] +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[connected] +output= 1470 +activation=linear + +[detection] +classes=20 +coords=4 +rescore=1 +side=7 +num=2 +softmax=0 +sqrt=1 +jitter=.2 + +object_scale=1 +noobject_scale=.5 +class_scale=1 +coord_scale=5 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo-voc.cfg" new file mode 100644 index 0000000..ab2c066 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo-voc.cfg" @@ -0,0 +1,134 @@ +[net] +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 40200 +policy=steps +steps=-1,100,20000,30000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + +[region] +anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo.cfg" new file mode 100644 index 0000000..5580098 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo.cfg" @@ -0,0 +1,134 @@ +[net] +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 120000 +policy=steps +steps=-1,100,80000,100000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.738768,0.874946, 2.42204,2.65704, 4.30971,7.04493, 10.246,4.59428, 12.6868,11.8741 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo_xnor.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo_xnor.cfg" new file mode 100644 index 0000000..42a9630 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/tiny-yolo_xnor.cfg" @@ -0,0 +1,148 @@ +[net] +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 40200 +policy=steps +steps=-1,100,20000,30000 +scales=.1,10,.1,.1 + +[convolutional] +#xnor=1 +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +xnor=1 +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.738768,0.874946, 2.42204,2.65704, 4.30971,7.04493, 10.246,4.59428, 12.6868,11.8741 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/tiny.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/tiny.cfg" new file mode 100644 index 0000000..99c2603 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/tiny.cfg" @@ -0,0 +1,172 @@ +[net] +batch=128 +subdivisions=1 +height=224 +width=224 +channels=3 +momentum=0.9 +decay=0.0005 +max_crop=320 + +learning_rate=0.1 +policy=poly +power=4 +max_batches=1600000 + +angle=7 +hue=.1 +saturation=.75 +exposure=.75 +aspect=.75 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=16 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=16 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1000 +size=1 +stride=1 +pad=1 +activation=linear + +[avgpool] + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/vgg-16.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/vgg-16.cfg" new file mode 100644 index 0000000..2b6f702 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/vgg-16.cfg" @@ -0,0 +1,153 @@ +[net] +batch=128 +subdivisions=4 +height=256 +width=256 +channels=3 +learning_rate=0.00001 +momentum=0.9 +decay=0.0005 + +[crop] +crop_height=224 +crop_width=224 +flip=1 +exposure=1 +saturation=1 +angle=0 + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[connected] +output=4096 +activation=relu + +[dropout] +probability=.5 + +[connected] +output=4096 +activation=relu + +[dropout] +probability=.5 + +[connected] +output=1000 +activation=linear + +[softmax] +groups=1 + +[cost] +type=sse + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/vgg-conv.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/vgg-conv.cfg" new file mode 100644 index 0000000..e173e28 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/vgg-conv.cfg" @@ -0,0 +1,123 @@ +[net] +batch=1 +subdivisions=1 +width=112 +height=112 +#width=224 +#height=224 +channels=3 +learning_rate=0.00001 +momentum=0.9 +decay=0.0005 + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=64 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=128 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=256 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[convolutional] +filters=512 +size=3 +stride=1 +pad=1 +activation=relu + +[maxpool] +size=2 +stride=2 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/voc.data" "b/\346\225\264\347\220\206/yolo/train/cfg/voc.data" new file mode 100644 index 0000000..d677587 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/voc.data" @@ -0,0 +1,7 @@ +classes= 20 +train = data/train_voc.txt +valid = data/2007_test.txt +#difficult = data/difficult_2007_test.txt +names = data/voc.names +backup = backup/ + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/writing.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/writing.cfg" new file mode 100644 index 0000000..1ed899b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/writing.cfg" @@ -0,0 +1,41 @@ +[net] +batch=128 +subdivisions=2 +height=256 +width=256 +channels=3 +learning_rate=0.00000001 +momentum=0.9 +decay=0.0005 +seen=0 + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=1 +size=3 +stride=1 +pad=1 +activation=logistic + +[cost] + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.2.0.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.2.0.cfg" new file mode 100644 index 0000000..ceb3f2a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.2.0.cfg" @@ -0,0 +1,244 @@ +[net] +batch=64 +subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +max_batches = 45000 +policy=steps +steps=100,25000,35000 +scales=10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[reorg] +stride=2 + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + +[region] +anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=0 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.cfg" new file mode 100644 index 0000000..dbf2de2 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolo-voc.cfg" @@ -0,0 +1,258 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 80200 +policy=steps +steps=40000,60000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolo.2.0.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolo.2.0.cfg" new file mode 100644 index 0000000..fda339a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolo.2.0.cfg" @@ -0,0 +1,244 @@ +[net] +batch=1 +subdivisions=1 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 120000 +policy=steps +steps=-1,100,80000,100000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[reorg] +stride=2 + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.738768,0.874946, 2.42204,2.65704, 4.30971,7.04493, 10.246,4.59428, 12.6868,11.8741 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=0 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolo.cfg" new file mode 100644 index 0000000..7001dfa --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolo.cfg" @@ -0,0 +1,258 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + + +[region] +anchors = 0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolo9000.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolo9000.cfg" new file mode 100644 index 0000000..e745f78 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolo9000.cfg" @@ -0,0 +1,218 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +batch=1 +subdivisions=1 +height=544 +width=544 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +hue=.1 +saturation=.75 +exposure=.75 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=28269 +size=1 +stride=1 +pad=1 +activation=linear + +[region] +anchors = 0.77871, 1.14074, 3.00525, 4.31277, 9.22725, 9.61974 +bias_match=1 +classes=9418 +coords=4 +num=3 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +thresh = .6 +absolute=1 +random=1 + +tree=data/9k.tree +map = data/coco9k.map diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny-voc.cfg" new file mode 100644 index 0000000..c4c127c --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny-voc.cfg" @@ -0,0 +1,138 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=2 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 40200 +policy=steps +steps=-1,100,20000,30000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + +[region] +anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny.cfg" new file mode 100644 index 0000000..81d0ac4 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-tiny.cfg" @@ -0,0 +1,139 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=2 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=0 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov2-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-voc.cfg" new file mode 100644 index 0000000..dbf2de2 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2-voc.cfg" @@ -0,0 +1,258 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 80200 +policy=steps +steps=40000,60000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov2.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2.cfg" new file mode 100644 index 0000000..2a0cd98 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov2.cfg" @@ -0,0 +1,258 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + + +[region] +anchors = 0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-openimages.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-openimages.cfg" new file mode 100644 index 0000000..65d241a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-openimages.cfg" @@ -0,0 +1,789 @@ +[net] +# Testing + batch=1 + subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=5000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=1818 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=601 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=1818 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=601 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=1818 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=601 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-spp.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-spp.cfg" new file mode 100644 index 0000000..4ad2a05 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-spp.cfg" @@ -0,0 +1,822 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 + +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny-prn.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny-prn.cfg" new file mode 100644 index 0000000..215162e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny-prn.cfg" @@ -0,0 +1,199 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +activation=leaky +from=-3 + +########### + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +activation=leaky +from=-2 + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[shortcut] +activation=leaky +from=8 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +activation=leaky +from=-3 + +[shortcut] +activation=leaky +from=8 + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 1,2,3 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny.cfg" new file mode 100644 index 0000000..cfca3cf --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny.cfg" @@ -0,0 +1,182 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=2 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 8 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_3l.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_3l.cfg" new file mode 100644 index 0000000..76aaa0d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_3l.cfg" @@ -0,0 +1,227 @@ +[net] +# Testing +# batch=1 +# subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 200000 +policy=steps +steps=180000,190000 +scales=.1,.1 + + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=21 +activation=linear + + + +[yolo] +mask = 6,7,8 +anchors = 4,7, 7,15, 13,25, 25,42, 41,67, 75,94, 91,162, 158,205, 250,332 +classes=2 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 8 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=21 +activation=linear + +[yolo] +mask = 3,4,5 +anchors = 4,7, 7,15, 13,25, 25,42, 41,67, 75,94, 91,162, 158,205, 250,332 +classes=2 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 6 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=21 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 4,7, 7,15, 13,25, 25,42, 41,67, 75,94, 91,162, 158,205, 250,332 +classes=2 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_obj.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_obj.cfg" new file mode 100644 index 0000000..8308e44 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_obj.cfg" @@ -0,0 +1,182 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=2 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 8 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_occlusion_track.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_occlusion_track.cfg" new file mode 100644 index 0000000..2ef2537 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_occlusion_track.cfg" @@ -0,0 +1,218 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=8 +subdivisions=4 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +track=1 +time_steps=20 +augment_speed=3 + +learning_rate=0.001 +burn_in=1000 +max_batches = 10000 +policy=steps +steps=9000,9500 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + + +[crnn] +batch_normalize=1 +size=3 +pad=1 +output=512 +hidden=256 +activation=leaky + +#[shortcut] +#from=-2 +#activation=linear + +########### + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=1 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 8 + +[crnn] +batch_normalize=1 +size=3 +pad=1 +output=256 +hidden=128 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + + +[convolutional] +size=1 +stride=1 +pad=1 +filters=18 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=1 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=0 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_xnor.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_xnor.cfg" new file mode 100644 index 0000000..725ce07 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-tiny_xnor.cfg" @@ -0,0 +1,197 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=2 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +xnor=1 +bin_output=1 +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +xnor=1 +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 8 + +[convolutional] +xnor=1 +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.cfg" new file mode 100644 index 0000000..3f3e8df --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.cfg" @@ -0,0 +1,785 @@ +[net] +# Testing + batch=1 + subdivisions=1 +# Training +# batch=64 +# subdivisions=16 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 50200 +policy=steps +steps=40000,45000 +scales=.1,.1 + + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.yolov3-giou-40.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.yolov3-giou-40.cfg" new file mode 100644 index 0000000..b56f8a5 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3-voc.yolov3-giou-40.cfg" @@ -0,0 +1,808 @@ +[net] +# Testing +# batch=1 +# subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +## single gpu +learning_rate=0.001 +burn_in=1000 +max_batches = 100400 + +## 2x +#learning_rate=0.0005 +#burn_in=2000 +#max_batches = 100400 +#max_batches = 200800 + +## 4x +#learning_rate=0.00025 +#burn_in=4000 +#max_batches = 50200 +##max_batches = 200800 + +policy=steps +steps=40000,45000 +scales=.1,.1 + + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 +iou_normalizer=0.25 +cls_normalizer=1.0 +iou_loss=giou + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 +iou_normalizer=0.25 +cls_normalizer=1.0 +iou_loss=giou + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 +iou_normalizer=0.25 +cls_normalizer=1.0 +iou_loss=giou + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3.cfg" new file mode 100644 index 0000000..4a0ecc3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3.cfg" @@ -0,0 +1,789 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=16 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3.coco-giou-12.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3.coco-giou-12.cfg" new file mode 100644 index 0000000..f3fd72d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3.coco-giou-12.cfg" @@ -0,0 +1,806 @@ +[net] +# Testing +# batch=1 +# subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +## single gpu +learning_rate=0.001 +burn_in=1000 +max_batches = 550400 + +## 2 gpu +#learning_rate=0.0005 +#burn_in=2000 +#max_batches = 500200 + +## 4 gpu +#learning_rate=0.00025 +#burn_in=4000 +#max_batches = 500200 +###max_batches = 2000800 + +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +iou_normalizer=0.5 +iou_loss=giou + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +iou_normalizer=0.5 +iou_loss=giou + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +iou_normalizer=0.5 +iou_loss=giou diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov3_5l.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3_5l.cfg" new file mode 100644 index 0000000..fec157e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov3_5l.cfg" @@ -0,0 +1,968 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 12,13,14 +anchors = 4,4, 5,5, 6,6, 7,7, 8,8, 9,9, 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=15 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 9,10,11 +anchors = 4,4, 5,5, 6,6, 7,7, 8,8, 9,9, 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=15 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 4,4, 5,5, 6,6, 7,7, 8,8, 9,9, 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=15 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +############### + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 11 + + + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=128 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=128 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=128 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 4,4, 5,5, 6,6, 7,7, 8,8, 9,9, 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=15 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 4 + + + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=64 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=64 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=64 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 4,4, 5,5, 6,6, 7,7, 8,8, 9,9, 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=15 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov4-custom.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-custom.cfg" new file mode 100644 index 0000000..32516bd --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-custom.cfg" @@ -0,0 +1,1160 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=608 +height=608 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#cutmix=1 +mosaic=1 + +#:104x104 54:52x52 85:26x26 104:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=mish +stopbackward=800 + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 85 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 54 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-3l.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-3l.cfg" new file mode 100644 index 0000000..1164070 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-3l.cfg" @@ -0,0 +1,332 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=1 +width=608 +height=608 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +################################## + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 23 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 + + +[route] +layers = -3 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 15 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 + diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-custom.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-custom.cfg" new file mode 100644 index 0000000..5c83be0 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny-custom.cfg" @@ -0,0 +1,281 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=1 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +################################## + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 23 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny.cfg" new file mode 100644 index 0000000..dc6f5bf --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4-tiny.cfg" @@ -0,0 +1,281 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=1 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1 +groups=2 +group_id=1 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1,-2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -6,-1 + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +################################## + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + + +[yolo] +mask = 3,4,5 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 23 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + +[yolo] +mask = 1,2,3 +anchors = 10,14, 23,27, 37,58, 81,82, 135,169, 344,319 +classes=80 +num=6 +jitter=.3 +scale_x_y = 1.05 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +ignore_thresh = .7 +truth_thresh = 1 +random=0 +resize=1.5 +nms_kind=greedynms +beta_nms=0.6 diff --git "a/\346\225\264\347\220\206/yolo/train/cfg/yolov4.cfg" "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4.cfg" new file mode 100644 index 0000000..e509cdd --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/cfg/yolov4.cfg" @@ -0,0 +1,1158 @@ +[net] +batch=8 +subdivisions=8 +# Training +#width=512 +#height=512 +width=608 +height=608 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0013 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +#cutmix=1 +mosaic=1 + +#:104x104 54:52x52 85:26x26 104:13x13 for 416 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=mish + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 85 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 54 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 +max_delta=5 + diff --git "a/\346\225\264\347\220\206/yolo/train/chart.png" "b/\346\225\264\347\220\206/yolo/train/chart.png" new file mode 100644 index 0000000..3a477ea Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/chart.png" differ diff --git "a/\346\225\264\347\220\206/yolo/train/chart_yolov3.png" "b/\346\225\264\347\220\206/yolo/train/chart_yolov3.png" new file mode 100644 index 0000000..3a477ea Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/chart_yolov3.png" differ diff --git "a/\346\225\264\347\220\206/yolo/train/classifier_densenet201.cmd" "b/\346\225\264\347\220\206/yolo/train/classifier_densenet201.cmd" new file mode 100644 index 0000000..4f2481b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/classifier_densenet201.cmd" @@ -0,0 +1,6 @@ +darknet.exe classifier predict cfg/imagenet1k.data cfg/densenet201.cfg densenet201.weights + + +pause + +REM Download weights for DenseNet201 and ResNet50 by this link: https://pjreddie.com/darknet/imagenet/ \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/classifier_resnet50.cmd" "b/\346\225\264\347\220\206/yolo/train/classifier_resnet50.cmd" new file mode 100644 index 0000000..7b85ac1 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/classifier_resnet50.cmd" @@ -0,0 +1,8 @@ +darknet.exe classifier predict cfg/imagenet1k.data cfg/resnet50.cfg resnet50.weights + +rem darknet.exe classifier predict cfg/imagenet1k.data cfg/resnet152.cfg resnet152.weights + + +pause + +REM Download weights for DenseNet201, ResNet50 and ResNet152 by this link: https://pjreddie.com/darknet/imagenet/ \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet.exe" "b/\346\225\264\347\220\206/yolo/train/darknet.exe" new file mode 100644 index 0000000..e58ed37 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/darknet.exe" differ diff --git "a/\346\225\264\347\220\206/yolo/train/darknet.iobj" "b/\346\225\264\347\220\206/yolo/train/darknet.iobj" new file mode 100644 index 0000000..2c78662 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/darknet.iobj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/darknet.ipdb" "b/\346\225\264\347\220\206/yolo/train/darknet.ipdb" new file mode 100644 index 0000000..4f71a55 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/darknet.ipdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/darknet.pdb" "b/\346\225\264\347\220\206/yolo/train/darknet.pdb" new file mode 100644 index 0000000..de138c5 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/darknet.pdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_coco.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_coco.cmd" new file mode 100644 index 0000000..01cd1aa --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_coco.cmd" @@ -0,0 +1,6 @@ + + +darknet.exe detector test cfg/coco.data cfg/yolov2.cfg yolov2.weights -i 0 -thresh 0.25 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_coco_9000.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_coco_9000.cmd" new file mode 100644 index 0000000..58fee2e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_coco_9000.cmd" @@ -0,0 +1,5 @@ + +darknet.exe detector test cfg/combine9k.data yolo9000.cfg yolo9000.weights data/dog.jpg + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_coco_9000_demo.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_coco_9000_demo.cmd" new file mode 100644 index 0000000..9f7f124 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_coco_9000_demo.cmd" @@ -0,0 +1,7 @@ + +darknet.exe detector demo cfg/combine9k.data yolo9000.cfg yolo9000.weights street4k.mp4 -out_filename res.avi + + + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_coco.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_coco.cmd" new file mode 100644 index 0000000..5223cac --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_coco.cmd" @@ -0,0 +1,6 @@ + + +darknet.exe detector demo cfg/coco.data cfg/yolov2.cfg yolov2.weights test.mp4 -i 0 -out_filename res.avi + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_json_stream.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_json_stream.cmd" new file mode 100644 index 0000000..dc96fba --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_json_stream.cmd" @@ -0,0 +1,7 @@ +rem Run this file and then open URL in Chrome/Firefox: rem http://localhost:8070 +rem Or open: http://ip-address:8070 + +darknet.exe detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights test.mp4 -i 0 -json_port 8070 -ext_output + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_mjpeg_stream.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_mjpeg_stream.cmd" new file mode 100644 index 0000000..a1dffac --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_mjpeg_stream.cmd" @@ -0,0 +1,7 @@ +rem Run this file and then open URL in Chrome/Firefox: rem http://localhost:8090 +rem Or open: http://ip-address:8090 + +darknet.exe detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights test.mp4 -i 0 -mjpeg_port 8090 -dont_show -ext_output + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_store.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_store.cmd" new file mode 100644 index 0000000..655c981 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_store.cmd" @@ -0,0 +1,4 @@ +darknet.exe detector demo cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights test.mp4 -i 0 -out_filename res.avi + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_voc.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc.cmd" new file mode 100644 index 0000000..ad8a42b --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc.cmd" @@ -0,0 +1,4 @@ +darknet.exe detector demo cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights test.mp4 -i 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_param.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_param.cmd" new file mode 100644 index 0000000..5142e9a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_param.cmd" @@ -0,0 +1,6 @@ + + +darknet.exe detector demo cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights %1 -i 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_tiny.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_tiny.cmd" new file mode 100644 index 0000000..b2b2bcb --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_demo_voc_tiny.cmd" @@ -0,0 +1,6 @@ + + +darknet.exe detector demo cfg/voc.data cfg/yolov2-tiny-voc.cfg yolov2-tiny-voc.weights test.mp4 -i 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_json_reslut.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_json_reslut.cmd" new file mode 100644 index 0000000..3ec6db7 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_json_reslut.cmd" @@ -0,0 +1,3 @@ +darknet.exe detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights -ext_output -dont_show -out result.json < data/train.txt + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_many_images.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_many_images.cmd" new file mode 100644 index 0000000..95eba44 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_many_images.cmd" @@ -0,0 +1,4 @@ +darknet.exe detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights -ext_output -dont_show < data/train.txt > result.txt + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_net_cam_coco.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_net_cam_coco.cmd" new file mode 100644 index 0000000..fcab6ae --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_net_cam_coco.cmd" @@ -0,0 +1,11 @@ +# Download for Android phone mjpeg-stream: IP Webcam / Smart WebCam +# +# Smart WebCam - preferably: https://play.google.com/store/apps/details?id=com.acontech.android.SmartWebCam +# IP Webcam: https://play.google.com/store/apps/details?id=com.pas.webcam +# +# Replace the address below, on shown in the phone application + +darknet.exe detector demo cfg/coco.data cfg/yolov2.cfg yolov2.weights http://192.168.0.80:8080/video?dummy=param.mjpg -i 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_net_cam_voc.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_net_cam_voc.cmd" new file mode 100644 index 0000000..82e4786 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_net_cam_voc.cmd" @@ -0,0 +1,11 @@ +# Download for Android phone mjpeg-stream: IP Webcam / Smart WebCam +# +# Smart WebCam - preferably: https://play.google.com/store/apps/details?id=com.acontech.android.SmartWebCam +# IP Webcam: https://play.google.com/store/apps/details?id=com.pas.webcam +# +# Replace the address below, on shown in the phone application + +darknet.exe detector demo cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights http://192.168.0.80:8080/video?dummy=param.mjpg -i 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_python.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_python.cmd" new file mode 100644 index 0000000..b2df11d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_python.cmd" @@ -0,0 +1,19 @@ +rem download Python 2.7.14 from: https://www.python.org/downloads/release/python-2714/ +rem C:\Python27\Scripts\pip install numpy +rem C:\Python27\Scripts\pip install scikit-image +rem C:\Python27\Scripts\pip install scipy +rem C:\Python27\Scripts\pip install opencv-python + +rem C:\Python27\python.exe darknet.py + + + +rem Python 3.6 +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install numpy +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install scikit-image +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install scipy +rem C:\Users\Alex\AppData\Local\Programs\Python\Python36\Scripts\pip install opencv-python + +C:\Users\Alex\AppData\Local\Programs\Python\Python36\python.exe darknet.py + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_tiny_v2.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_tiny_v2.cmd" new file mode 100644 index 0000000..777da26 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_tiny_v2.cmd" @@ -0,0 +1,7 @@ + +darknet.exe detector test cfg/coco.data cfg/yolov2-tiny.cfg yolov2-tiny.weights -i 0 dog.jpg -thresh 0.51 + + + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_video.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_video.cmd" new file mode 100644 index 0000000..1ed3384 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_video.cmd" @@ -0,0 +1,5 @@ +python.exe darknet_video.py --data_file cfg/coco.data --config_file cfg/yolov4.cfg --weights yolov4.weights --input test.mp4 + +rem C:\Python27\python.exe darknet_video.py --data_file cfg/coco.data --config_file cfg/yolov4.cfg --weights yolov4.weights --input test.mp4 + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_voc.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_voc.cmd" new file mode 100644 index 0000000..c7a6447 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_voc.cmd" @@ -0,0 +1,8 @@ + +rem darknet.exe detector test cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights 009460.jpg + + +darknet.exe detector test cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights -i 0 -thresh 0.24 dog.jpg + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_voc_tiny_v2.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_voc_tiny_v2.cmd" new file mode 100644 index 0000000..5198819 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_voc_tiny_v2.cmd" @@ -0,0 +1,6 @@ + +darknet.exe detector test cfg/voc.data cfg/yolov2-tiny-voc.cfg yolov2-tiny-voc.weights -i 0 dog.jpg + + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_web_cam_voc.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_web_cam_voc.cmd" new file mode 100644 index 0000000..42472bc --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_web_cam_voc.cmd" @@ -0,0 +1,9 @@ +# play video from Web-Camera number 0 + +rem darknet.exe detector demo cfg/voc.data cfg/yolov2-voc.cfg yolo-voc.weights -c 0 + + +darknet.exe detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights -c 0 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_openimages.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_openimages.cmd" new file mode 100644 index 0000000..06d10fe --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_openimages.cmd" @@ -0,0 +1,8 @@ + +darknet.exe detector test cfg/openimages.data cfg/yolov3-openimages.cfg yolov3-openimages.weights -i 0 -thresh 0.25 dog.jpg -ext_output + + + +darknet.exe detector demo cfg/openimages.data cfg/yolov3-openimages.cfg yolov3-openimages.weights -i 0 -thresh 0.25 street1k.mp4 -ext_output + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_video.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_video.cmd" new file mode 100644 index 0000000..88c5a69 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_yolo_v3_video.cmd" @@ -0,0 +1,5 @@ + +darknet.exe detector demo cfg/coco.data yolov3.cfg yolov3.weights -i 0 -thresh 0.25 -ext_output test.mp4 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/darknet_yolov3_pseudo_labeling.cmd" "b/\346\225\264\347\220\206/yolo/train/darknet_yolov3_pseudo_labeling.cmd" new file mode 100644 index 0000000..160d910 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/darknet_yolov3_pseudo_labeling.cmd" @@ -0,0 +1,10 @@ +darknet.exe detector test data/obj.data yolo-obj.cfg yolo-obj_8000.weights -thresh 0.25 -dont_show -save_labels < images.txt + + + +rem -thresh 0.1 + + + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/densenet201_yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/densenet201_yolo.cfg" new file mode 100644 index 0000000..2c78ec5 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/densenet201_yolo.cfg" @@ -0,0 +1,1978 @@ +[net] +batch=64 +subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +max_batches = 45000 +policy=steps +steps=100,25000,35000 +scales=10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[route] +layers=-1,-3 +#stopbackward=1 + + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=1024 +activation=leaky + + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + + + + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=0 + diff --git "a/\346\225\264\347\220\206/yolo/train/dog.jpg" "b/\346\225\264\347\220\206/yolo/train/dog.jpg" new file mode 100644 index 0000000..77b0381 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/dog.jpg" differ diff --git "a/\346\225\264\347\220\206/yolo/train/dogr.jpg" "b/\346\225\264\347\220\206/yolo/train/dogr.jpg" new file mode 100644 index 0000000..e920123 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/dogr.jpg" differ diff --git "a/\346\225\264\347\220\206/yolo/train/gen_anchors.py" "b/\346\225\264\347\220\206/yolo/train/gen_anchors.py" new file mode 100644 index 0000000..709cb88 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/gen_anchors.py" @@ -0,0 +1,165 @@ +''' +Created on Feb 20, 2017 + +@author: jumabek +''' +from os import listdir +from os.path import isfile, join +import argparse +#import cv2 +import numpy as np +import sys +import os +import shutil +import random +import math + +width_in_cfg_file = 416. +height_in_cfg_file = 416. + +def IOU(x,centroids): + similarities = [] + k = len(centroids) + for centroid in centroids: + c_w,c_h = centroid + w,h = x + if c_w>=w and c_h>=h: + similarity = w*h/(c_w*c_h) + elif c_w>=w and c_h<=h: + similarity = w*c_h/(w*h + (c_w-w)*c_h) + elif c_w<=w and c_h>=h: + similarity = c_w*h/(w*h + c_w*(c_h-h)) + else: #means both w,h are bigger than c_w and c_h respectively + similarity = (c_w*c_h)/(w*h) + similarities.append(similarity) # will become (k,) shape + return np.array(similarities) + +def avg_IOU(X,centroids): + n,d = X.shape + sum = 0. + for i in range(X.shape[0]): + #note IOU() will return array which contains IoU for each centroid and X[i] // slightly ineffective, but I am too lazy + sum+= max(IOU(X[i],centroids)) + return sum/n + +def write_anchors_to_file(centroids,X,anchor_file): + f = open(anchor_file,'w') + + anchors = centroids.copy() + print(anchors.shape) + + for i in range(anchors.shape[0]): + anchors[i][0]*=width_in_cfg_file/32. + anchors[i][1]*=height_in_cfg_file/32. + + + widths = anchors[:,0] + sorted_indices = np.argsort(widths) + + print('Anchors = ', anchors[sorted_indices]) + + for i in sorted_indices[:-1]: + f.write('%0.2f,%0.2f, '%(anchors[i,0],anchors[i,1])) + + #there should not be comma after last anchor, that's why + f.write('%0.2f,%0.2f\n'%(anchors[sorted_indices[-1:],0],anchors[sorted_indices[-1:],1])) + + f.write('%f\n'%(avg_IOU(X,centroids))) + print() + +def kmeans(X,centroids,eps,anchor_file): + + N = X.shape[0] + iterations = 0 + k,dim = centroids.shape + prev_assignments = np.ones(N)*(-1) + iter = 0 + old_D = np.zeros((N,k)) + + while True: + D = [] + iter+=1 + for i in range(N): + d = 1 - IOU(X[i],centroids) + D.append(d) + D = np.array(D) # D.shape = (N,k) + + print("iter {}: dists = {}".format(iter,np.sum(np.abs(old_D-D)))) + + #assign samples to centroids + assignments = np.argmin(D,axis=1) + + if (assignments == prev_assignments).all() : + print("Centroids = ",centroids) + write_anchors_to_file(centroids,X,anchor_file) + return + + #calculate new centroids + centroid_sums=np.zeros((k,dim),np.float) + for i in range(N): + centroid_sums[assignments[i]]+=X[i] + for j in range(k): + centroids[j] = centroid_sums[j]/(np.sum(assignments==j)) + + prev_assignments = assignments.copy() + old_D = D.copy() + +def main(argv): + parser = argparse.ArgumentParser() + parser.add_argument('-filelist', default = '\\path\\to\\voc\\filelist\\train.txt', + help='path to filelist\n' ) + parser.add_argument('-output_dir', default = 'generated_anchors/anchors', type = str, + help='Output anchor directory\n' ) + parser.add_argument('-num_clusters', default = 0, type = int, + help='number of clusters\n' ) + + + args = parser.parse_args() + + if not os.path.exists(args.output_dir): + os.mkdir(args.output_dir) + + f = open(args.filelist) + + lines = [line.rstrip('\n') for line in f.readlines()] + + annotation_dims = [] + + size = np.zeros((1,1,3)) + for line in lines: + + #line = line.replace('images','labels') + #line = line.replace('img1','labels') + line = line.replace('JPEGImages','labels') + + + line = line.replace('.jpg','.txt') + line = line.replace('.png','.txt') + print(line) + f2 = open(line) + for line in f2.readlines(): + line = line.rstrip('\n') + w,h = line.split(' ')[3:] + #print(w,h) + annotation_dims.append(tuple(map(float,(w,h)))) + annotation_dims = np.array(annotation_dims) + + eps = 0.005 + + if args.num_clusters == 0: + for num_clusters in range(1,11): #we make 1 through 10 clusters + anchor_file = join( args.output_dir,'anchors%d.txt'%(num_clusters)) + + indices = [ random.randrange(annotation_dims.shape[0]) for i in range(num_clusters)] + centroids = annotation_dims[indices] + kmeans(annotation_dims,centroids,eps,anchor_file) + print('centroids.shape', centroids.shape) + else: + anchor_file = join( args.output_dir,'anchors%d.txt'%(args.num_clusters)) + indices = [ random.randrange(annotation_dims.shape[0]) for i in range(args.num_clusters)] + centroids = annotation_dims[indices] + kmeans(annotation_dims,centroids,eps,anchor_file) + print('centroids.shape', centroids.shape) + +if __name__=="__main__": + main(sys.argv) diff --git "a/\346\225\264\347\220\206/yolo/train/partial.cmd" "b/\346\225\264\347\220\206/yolo/train/partial.cmd" new file mode 100644 index 0000000..26a701a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/partial.cmd" @@ -0,0 +1,74 @@ +rem Download weights for - DenseNet201, ResNet50 and ResNet152 by this link: https://pjreddie.com/darknet/imagenet/ +rem Download Yolo/Tiny-yolo: https://pjreddie.com/darknet/yolo/ +rem Download Yolo9000: http://pjreddie.com/media/files/yolo9000.weights + + +rem darknet.exe partial cfg/tiny-yolo-voc.cfg tiny-yolo-voc.weights tiny-yolo-voc.conv.13 13 + +darknet.exe partial cfg/yolov4-tiny.cfg yolov4-tiny.weights yolov4-tiny.conv.29 29 + + +darknet.exe partial cfg/yolov4-sam-mish.cfg cfg/yolov4-sam-mish.weights cfg/yolov4-sam-mish.conv.137 137 + +pause + +darknet.exe partial cfg/csdarknet53-omega.cfg csdarknet53-omega_final.weights csdarknet53-omega.conv.105 105 + + +darknet.exe partial cfg/cd53paspp-omega.cfg cd53paspp-omega_final.weights cd53paspp-omega.conv.137 137 + + +darknet.exe partial cfg/yolov4.cfg backup/yolov4_final.weights yolov4.conv.137 137 + + +darknet.exe partial cfg/csresnext50.cfg csresnext50.weights csresnext50.conv.75 75 + + +darknet.exe partial cfg/darknet53_448.cfg darknet53_448.weights darknet53.conv.74 74 + + +darknet.exe partial cfg/darknet53_448_xnor.cfg darknet53_448_xnor.weights darknet53_448_xnor.conv.74 74 + + +darknet.exe partial cfg/yolov2-tiny-voc.cfg yolov2-tiny-voc.weights yolov2-tiny-voc.conv.13 13 + + +darknet.exe partial cfg/yolov2-tiny.cfg yolov2-tiny.weights yolov2-tiny.conv.13 13 + + +darknet.exe partial cfg/yolo-voc.cfg yolo-voc.weights yolo-voc.conv.23 23 + + +darknet.exe partial cfg/yolov2.cfg yolov2.weights yolov2.conv.23 23 + + +darknet.exe partial cfg/yolov3.cfg yolov3.weights yolov3.conv.81 81 + + +darknet.exe partial cfg/yolov3-spp.cfg yolov3-spp.weights yolov3-spp.conv.85 85 + + +darknet.exe partial cfg/yolov3-tiny.cfg yolov3-tiny.weights yolov3-tiny.conv.15 15 + + +darknet.exe partial cfg/yolov3-tiny.cfg yolov3-tiny.weights yolov3-tiny.conv.14 14 + +darknet.exe partial cfg/yolov3-tiny.cfg yolov3-tiny.weights yolov3-tiny.conv.13 13 + + +darknet.exe partial cfg/yolo9000.cfg yolo9000.weights yolo9000.conv.22 22 + + +darknet.exe partial cfg/densenet201.cfg densenet201.weights densenet201.57 57 + + +darknet.exe partial cfg/densenet201.cfg densenet201.weights densenet201.300 300 + + +darknet.exe partial cfg/resnet50.cfg resnet50.weights resnet50.65 65 + + +darknet.exe partial cfg/resnet152.cfg resnet152.weights resnet152.201 201 + + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/predictions.jpg" "b/\346\225\264\347\220\206/yolo/train/predictions.jpg" new file mode 100644 index 0000000..af3af02 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/predictions.jpg" differ diff --git "a/\346\225\264\347\220\206/yolo/train/pthreadGC2.dll" "b/\346\225\264\347\220\206/yolo/train/pthreadGC2.dll" new file mode 100644 index 0000000..841d4a2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/pthreadGC2.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/train/pthreadVC2.dll" "b/\346\225\264\347\220\206/yolo/train/pthreadVC2.dll" new file mode 100644 index 0000000..165b4d2 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/pthreadVC2.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/train/resnet152_yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/resnet152_yolo.cfg" new file mode 100644 index 0000000..d766084 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/resnet152_yolo.cfg" @@ -0,0 +1,1473 @@ +[net] +batch=64 +subdivisions=32 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +max_batches = 45000 +policy=steps +steps=100,25000,35000 +scales=10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +#Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky +#stopbackward=1 + + + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=1024 +activation=leaky + + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 +#focal_loss=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/resnet50_yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/resnet50_yolo.cfg" new file mode 100644 index 0000000..44dc68e --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/resnet50_yolo.cfg" @@ -0,0 +1,520 @@ +[net] +batch=64 +subdivisions=32 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +max_batches = 45000 +policy=steps +steps=100,25000,35000 +scales=10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=64 +size=7 +stride=2 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + + +# Conv 4 +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +#Conv 5 +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=2048 +size=1 +stride=1 +pad=1 +activation=linear + +[shortcut] +from=-4 +activation=leaky +#stopbackward=1 + + + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=1024 +activation=leaky + + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/results/tmp.txt" "b/\346\225\264\347\220\206/yolo/train/results/tmp.txt" new file mode 100644 index 0000000..e69de29 diff --git "a/\346\225\264\347\220\206/yolo/train/reval_voc_py3.py" "b/\346\225\264\347\220\206/yolo/train/reval_voc_py3.py" new file mode 100644 index 0000000..23f9ce3 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/reval_voc_py3.py" @@ -0,0 +1,104 @@ +#!/usr/bin/env python + +# Adapt from -> +# -------------------------------------------------------- +# Fast R-CNN +# Copyright (c) 2015 Microsoft +# Licensed under The MIT License [see LICENSE for details] +# Written by Ross Girshick +# -------------------------------------------------------- +# <- Written by Yaping Sun + +"""Reval = re-eval. Re-evaluate saved detections.""" + +import os, sys, argparse +import numpy as np +import _pickle as cPickle +#import cPickle + +from voc_eval_py3 import voc_eval + +def parse_args(): + """ + Parse input arguments + """ + parser = argparse.ArgumentParser(description='Re-evaluate results') + parser.add_argument('output_dir', nargs=1, help='results directory', + type=str) + parser.add_argument('--voc_dir', dest='voc_dir', default='data/VOCdevkit', type=str) + parser.add_argument('--year', dest='year', default='2017', type=str) + parser.add_argument('--image_set', dest='image_set', default='test', type=str) + + parser.add_argument('--classes', dest='class_file', default='data/voc.names', type=str) + + if len(sys.argv) == 1: + parser.print_help() + sys.exit(1) + + args = parser.parse_args() + return args + +def get_voc_results_file_template(image_set, out_dir = 'results'): + filename = 'comp4_det_' + image_set + '_{:s}.txt' + path = os.path.join(out_dir, filename) + return path + +def do_python_eval(devkit_path, year, image_set, classes, output_dir = 'results'): + annopath = os.path.join( + devkit_path, + 'VOC' + year, + 'Annotations', + '{}.xml') + imagesetfile = os.path.join( + devkit_path, + 'VOC' + year, + 'ImageSets', + 'Main', + image_set + '.txt') + cachedir = os.path.join(devkit_path, 'annotations_cache') + aps = [] + # The PASCAL VOC metric changed in 2010 + use_07_metric = True if int(year) < 2010 else False + print('VOC07 metric? ' + ('Yes' if use_07_metric else 'No')) + print('devkit_path=',devkit_path,', year = ',year) + + if not os.path.isdir(output_dir): + os.mkdir(output_dir) + for i, cls in enumerate(classes): + if cls == '__background__': + continue + filename = get_voc_results_file_template(image_set).format(cls) + rec, prec, ap = voc_eval( + filename, annopath, imagesetfile, cls, cachedir, ovthresh=0.5, + use_07_metric=use_07_metric) + aps += [ap] + print('AP for {} = {:.4f}'.format(cls, ap)) + with open(os.path.join(output_dir, cls + '_pr.pkl'), 'wb') as f: + cPickle.dump({'rec': rec, 'prec': prec, 'ap': ap}, f) + print('Mean AP = {:.4f}'.format(np.mean(aps))) + print('~~~~~~~~') + print('Results:') + for ap in aps: + print('{:.3f}'.format(ap)) + print('{:.3f}'.format(np.mean(aps))) + print('~~~~~~~~') + print('') + print('--------------------------------------------------------------') + print('Results computed with the **unofficial** Python eval code.') + print('Results should be very close to the official MATLAB eval code.') + print('-- Thanks, The Management') + print('--------------------------------------------------------------') + + + +if __name__ == '__main__': + args = parse_args() + + output_dir = os.path.abspath(args.output_dir[0]) + with open(args.class_file, 'r') as f: + lines = f.readlines() + + classes = [t.strip('\n') for t in lines] + + print('Evaluating detections') + do_python_eval(args.voc_dir, args.year, args.image_set, classes, output_dir) diff --git "a/\346\225\264\347\220\206/yolo/train/rnn_lstm.cmd" "b/\346\225\264\347\220\206/yolo/train/rnn_lstm.cmd" new file mode 100644 index 0000000..de74c9d --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/rnn_lstm.cmd" @@ -0,0 +1,16 @@ +rem Create your own text.txt file with some text. + + +darknet.exe rnn train cfg/lstm.train.cfg -file text.txt + + +rem darknet.exe rnn train cfg/lstm.train.cfg backup/lstm.backup -file text.txt + + +pause + +darknet.exe rnn generate cfg/lstm.train.cfg backup/lstm.backup -len 500 -seed apple + +darknet.exe rnn generate cfg/lstm.train.cfg backup/lstm.backup -len 500 -seed apple > text_gen.txt + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/rnn_tolstoy.cmd" "b/\346\225\264\347\220\206/yolo/train/rnn_tolstoy.cmd" new file mode 100644 index 0000000..546c4ea --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/rnn_tolstoy.cmd" @@ -0,0 +1,3 @@ +darknet.exe rnn generate cfg/rnn.cfg tolstoy.weights -srand 2 -seed Chapter + +pause \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/tiny-yolo-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/tiny-yolo-voc.cfg" new file mode 100644 index 0000000..ab2c066 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/tiny-yolo-voc.cfg" @@ -0,0 +1,134 @@ +[net] +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 40200 +policy=steps +steps=-1,100,20000,30000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + +[region] +anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/tiny-yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/tiny-yolo.cfg" new file mode 100644 index 0000000..5580098 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/tiny-yolo.cfg" @@ -0,0 +1,134 @@ +[net] +batch=64 +subdivisions=8 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 120000 +policy=steps +steps=-1,100,80000,100000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=16 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=1 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +########### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.738768,0.874946, 2.42204,2.65704, 4.30971,7.04493, 10.246,4.59428, 12.6868,11.8741 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 diff --git "a/\346\225\264\347\220\206/yolo/train/train_voc.cmd" "b/\346\225\264\347\220\206/yolo/train/train_voc.cmd" new file mode 100644 index 0000000..c74d9ca --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/train_voc.cmd" @@ -0,0 +1 @@ +darknet.exe detector train cfg/voc.data yolo-voc.cfg darknet19_448.conv.23 \ No newline at end of file diff --git "a/\346\225\264\347\220\206/yolo/train/voc_eval_py3.py" "b/\346\225\264\347\220\206/yolo/train/voc_eval_py3.py" new file mode 100644 index 0000000..13d07a9 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/voc_eval_py3.py" @@ -0,0 +1,201 @@ +# -------------------------------------------------------- +# Fast/er R-CNN +# Licensed under The MIT License [see LICENSE for details] +# Written by Bharath Hariharan +# -------------------------------------------------------- + +import xml.etree.ElementTree as ET +import os +#import cPickle +import _pickle as cPickle +import numpy as np + +def parse_rec(filename): + """ Parse a PASCAL VOC xml file """ + tree = ET.parse(filename) + objects = [] + for obj in tree.findall('object'): + obj_struct = {} + obj_struct['name'] = obj.find('name').text + #obj_struct['pose'] = obj.find('pose').text + #obj_struct['truncated'] = int(obj.find('truncated').text) + obj_struct['difficult'] = int(obj.find('difficult').text) + bbox = obj.find('bndbox') + obj_struct['bbox'] = [int(bbox.find('xmin').text), + int(bbox.find('ymin').text), + int(bbox.find('xmax').text), + int(bbox.find('ymax').text)] + objects.append(obj_struct) + + return objects + +def voc_ap(rec, prec, use_07_metric=False): + """ ap = voc_ap(rec, prec, [use_07_metric]) + Compute VOC AP given precision and recall. + If use_07_metric is true, uses the + VOC 07 11 point method (default:False). + """ + if use_07_metric: + # 11 point metric + ap = 0. + for t in np.arange(0., 1.1, 0.1): + if np.sum(rec >= t) == 0: + p = 0 + else: + p = np.max(prec[rec >= t]) + ap = ap + p / 11. + else: + # correct AP calculation + # first append sentinel values at the end + mrec = np.concatenate(([0.], rec, [1.])) + mpre = np.concatenate(([0.], prec, [0.])) + + # compute the precision envelope + for i in range(mpre.size - 1, 0, -1): + mpre[i - 1] = np.maximum(mpre[i - 1], mpre[i]) + + # to calculate area under PR curve, look for points + # where X axis (recall) changes value + i = np.where(mrec[1:] != mrec[:-1])[0] + + # and sum (\Delta recall) * prec + ap = np.sum((mrec[i + 1] - mrec[i]) * mpre[i + 1]) + return ap + +def voc_eval(detpath, + annopath, + imagesetfile, + classname, + cachedir, + ovthresh=0.5, + use_07_metric=False): + """rec, prec, ap = voc_eval(detpath, + annopath, + imagesetfile, + classname, + [ovthresh], + [use_07_metric]) + + Top level function that does the PASCAL VOC evaluation. + + detpath: Path to detections + detpath.format(classname) should produce the detection results file. + annopath: Path to annotations + annopath.format(imagename) should be the xml annotations file. + imagesetfile: Text file containing the list of images, one image per line. + classname: Category name (duh) + cachedir: Directory for caching the annotations + [ovthresh]: Overlap threshold (default = 0.5) + [use_07_metric]: Whether to use VOC07's 11 point AP computation + (default False) + """ + # assumes detections are in detpath.format(classname) + # assumes annotations are in annopath.format(imagename) + # assumes imagesetfile is a text file with each line an image name + # cachedir caches the annotations in a pickle file + + # first load gt + if not os.path.isdir(cachedir): + os.mkdir(cachedir) + cachefile = os.path.join(cachedir, 'annots.pkl') + # read list of images + with open(imagesetfile, 'r') as f: + lines = f.readlines() + imagenames = [x.strip() for x in lines] + + if not os.path.isfile(cachefile): + # load annots + recs = {} + for i, imagename in enumerate(imagenames): + recs[imagename] = parse_rec(annopath.format(imagename)) + #if i % 100 == 0: + #print('Reading annotation for {:d}/{:d}').format(i + 1, len(imagenames)) + # save + #print('Saving cached annotations to {:s}').format(cachefile) + with open(cachefile, 'wb') as f: + cPickle.dump(recs, f) + else: + # load + print('!!! cachefile = ',cachefile) + with open(cachefile, 'rb') as f: + recs = cPickle.load(f) + + # extract gt objects for this class + class_recs = {} + npos = 0 + for imagename in imagenames: + R = [obj for obj in recs[imagename] if obj['name'] == classname] + bbox = np.array([x['bbox'] for x in R]) + difficult = np.array([x['difficult'] for x in R]).astype(np.bool) + det = [False] * len(R) + npos = npos + sum(~difficult) + class_recs[imagename] = {'bbox': bbox, + 'difficult': difficult, + 'det': det} + + # read dets + detfile = detpath.format(classname) + with open(detfile, 'r') as f: + lines = f.readlines() + + splitlines = [x.strip().split(' ') for x in lines] + image_ids = [x[0] for x in splitlines] + confidence = np.array([float(x[1]) for x in splitlines]) + BB = np.array([[float(z) for z in x[2:]] for x in splitlines]) + + # sort by confidence + sorted_ind = np.argsort(-confidence) + sorted_scores = np.sort(-confidence) + BB = BB[sorted_ind, :] + image_ids = [image_ids[x] for x in sorted_ind] + + # go down dets and mark TPs and FPs + nd = len(image_ids) + tp = np.zeros(nd) + fp = np.zeros(nd) + for d in range(nd): + R = class_recs[image_ids[d]] + bb = BB[d, :].astype(float) + ovmax = -np.inf + BBGT = R['bbox'].astype(float) + + if BBGT.size > 0: + # compute overlaps + # intersection + ixmin = np.maximum(BBGT[:, 0], bb[0]) + iymin = np.maximum(BBGT[:, 1], bb[1]) + ixmax = np.minimum(BBGT[:, 2], bb[2]) + iymax = np.minimum(BBGT[:, 3], bb[3]) + iw = np.maximum(ixmax - ixmin + 1., 0.) + ih = np.maximum(iymax - iymin + 1., 0.) + inters = iw * ih + + # union + uni = ((bb[2] - bb[0] + 1.) * (bb[3] - bb[1] + 1.) + + (BBGT[:, 2] - BBGT[:, 0] + 1.) * + (BBGT[:, 3] - BBGT[:, 1] + 1.) - inters) + + overlaps = inters / uni + ovmax = np.max(overlaps) + jmax = np.argmax(overlaps) + + if ovmax > ovthresh: + if not R['difficult'][jmax]: + if not R['det'][jmax]: + tp[d] = 1. + R['det'][jmax] = 1 + else: + fp[d] = 1. + else: + fp[d] = 1. + + # compute precision recall + fp = np.cumsum(fp) + tp = np.cumsum(tp) + rec = tp / float(npos) + # avoid divide by zero in case the first detection matches a difficult + # ground truth + prec = tp / np.maximum(tp + fp, np.finfo(np.float64).eps) + ap = voc_ap(rec, prec, use_07_metric) + + return rec, prec, ap diff --git "a/\346\225\264\347\220\206/yolo/train/yolo-voc.2.0.cfg" "b/\346\225\264\347\220\206/yolo/train/yolo-voc.2.0.cfg" new file mode 100644 index 0000000..ceb3f2a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolo-voc.2.0.cfg" @@ -0,0 +1,244 @@ +[net] +batch=64 +subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.0001 +max_batches = 45000 +policy=steps +steps=100,25000,35000 +scales=10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[reorg] +stride=2 + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + +[region] +anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=0 diff --git "a/\346\225\264\347\220\206/yolo/train/yolo-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/yolo-voc.cfg" new file mode 100644 index 0000000..5650b4c --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolo-voc.cfg" @@ -0,0 +1,259 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 80200 +policy=steps +steps=40000,60000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=125 +activation=linear + + +[region] +anchors = 1.3221, 1.73145, 3.19275, 4.00944, 5.05587, 8.09892, 9.47112, 4.84053, 11.2364, 10.0071 +bias_match=1 +classes=20 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/yolo.2.0.cfg" "b/\346\225\264\347\220\206/yolo/train/yolo.2.0.cfg" new file mode 100644 index 0000000..fda339a --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolo.2.0.cfg" @@ -0,0 +1,244 @@ +[net] +batch=1 +subdivisions=1 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +max_batches = 120000 +policy=steps +steps=-1,100,80000,100000 +scales=.1,10,.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[reorg] +stride=2 + +[route] +layers=-1,-3 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + +[region] +anchors = 0.738768,0.874946, 2.42204,2.65704, 4.30971,7.04493, 10.246,4.59428, 12.6868,11.8741 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=0 diff --git "a/\346\225\264\347\220\206/yolo/train/yolo.cfg" "b/\346\225\264\347\220\206/yolo/train/yolo.cfg" new file mode 100644 index 0000000..e4d93e5 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolo.cfg" @@ -0,0 +1,259 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +height=416 +width=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + + +####### + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[route] +layers=-9 + +[convolutional] +batch_normalize=1 +size=1 +stride=1 +pad=1 +filters=64 +activation=leaky + +[reorg] +stride=2 + +[route] +layers=-1,-4 + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=425 +activation=linear + + +[region] +anchors = 0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828 +bias_match=1 +classes=80 +coords=4 +num=5 +softmax=1 +jitter=.3 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +absolute=1 +thresh = .6 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/yolo9000.cfg" "b/\346\225\264\347\220\206/yolo/train/yolo9000.cfg" new file mode 100644 index 0000000..e745f78 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolo9000.cfg" @@ -0,0 +1,218 @@ +[net] +# Testing +batch=1 +subdivisions=1 +# Training +# batch=64 +# subdivisions=8 +batch=1 +subdivisions=1 +height=544 +width=544 +channels=3 +momentum=0.9 +decay=0.0005 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +hue=.1 +saturation=.75 +exposure=.75 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[maxpool] +size=2 +stride=2 + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[convolutional] +filters=28269 +size=1 +stride=1 +pad=1 +activation=linear + +[region] +anchors = 0.77871, 1.14074, 3.00525, 4.31277, 9.22725, 9.61974 +bias_match=1 +classes=9418 +coords=4 +num=3 +softmax=1 +jitter=.2 +rescore=1 + +object_scale=5 +noobject_scale=1 +class_scale=1 +coord_scale=1 + +thresh = .6 +absolute=1 +random=1 + +tree=data/9k.tree +map = data/coco9k.map diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.dll" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.dll" new file mode 100644 index 0000000..e96949b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.dll" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.exp" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.exp" new file mode 100644 index 0000000..fbcc29a Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.exp" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.iobj" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.iobj" new file mode 100644 index 0000000..2c6e299 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.iobj" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.ipdb" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.ipdb" new file mode 100644 index 0000000..230418b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.ipdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.lib" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.lib" new file mode 100644 index 0000000..0290037 Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.lib" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.pdb" "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.pdb" new file mode 100644 index 0000000..999d24b Binary files /dev/null and "b/\346\225\264\347\220\206/yolo/train/yolo_cpp_dll.pdb" differ diff --git "a/\346\225\264\347\220\206/yolo/train/yolov3-voc.cfg" "b/\346\225\264\347\220\206/yolo/train/yolov3-voc.cfg" new file mode 100644 index 0000000..8f7ba54 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolov3-voc.cfg" @@ -0,0 +1,785 @@ +[net] +# Testing +# batch=1 +# subdivisions=1 +# Training +batch=64 +subdivisions=32 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 50200 +policy=steps +steps=40000,45000 +scales=.1,.1 + + + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=75 +activation=linear + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=20 +num=9 +jitter=.3 +ignore_thresh = .5 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/yolov3.cfg" "b/\346\225\264\347\220\206/yolo/train/yolov3.cfg" new file mode 100644 index 0000000..1d94e66 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolov3.cfg" @@ -0,0 +1,791 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=16 +width=416 +height=416 +channels=3 +momentum=0.9 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.001 +burn_in=1000 +max_batches = 500200 +policy=steps +steps=400000,450000 +scales=.1,.1 + +show_receptive_field=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=leaky + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=1 +pad=1 +activation=leaky + +[shortcut] +from=-3 +activation=linear + +###################### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 61 + + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + + + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = -1, 36 + + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 + diff --git "a/\346\225\264\347\220\206/yolo/train/yolov4.cfg" "b/\346\225\264\347\220\206/yolo/train/yolov4.cfg" new file mode 100644 index 0000000..a9b9141 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/train/yolov4.cfg" @@ -0,0 +1,1152 @@ +[net] +# Testing +#batch=1 +#subdivisions=1 +# Training +batch=64 +subdivisions=8 +width=512 +height=512 +channels=3 +momentum=0.949 +decay=0.0005 +angle=0 +saturation = 1.5 +exposure = 1.5 +hue=.1 + +learning_rate=0.00261 +burn_in=1000 +max_batches = 500500 +policy=steps +steps=400000,450000 +scales=.1,.1 + +mosaic=1 + +[convolutional] +batch_normalize=1 +filters=32 +size=3 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=32 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-7 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=64 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=64 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-10 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=128 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=256 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-28 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +# Downsample + +[convolutional] +batch_normalize=1 +filters=1024 +size=3 +stride=2 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -2 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[convolutional] +batch_normalize=1 +filters=512 +size=3 +stride=1 +pad=1 +activation=mish + +[shortcut] +from=-3 +activation=linear + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=mish + +[route] +layers = -1,-16 + +[convolutional] +batch_normalize=1 +filters=1024 +size=1 +stride=1 +pad=1 +activation=mish + +########################## + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +### SPP ### +[maxpool] +stride=1 +size=5 + +[route] +layers=-2 + +[maxpool] +stride=1 +size=9 + +[route] +layers=-4 + +[maxpool] +stride=1 +size=13 + +[route] +layers=-1,-3,-5,-6 +### End SPP ### + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 85 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[upsample] +stride=2 + +[route] +layers = 54 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[route] +layers = -1, -3 + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=128 +size=1 +stride=1 +pad=1 +activation=leaky + +########################## + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=256 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 0,1,2 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.2 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=256 +activation=leaky + +[route] +layers = -1, -16 + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=256 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=512 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 3,4,5 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.1 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 + +[route] +layers = -4 + +[convolutional] +batch_normalize=1 +size=3 +stride=2 +pad=1 +filters=512 +activation=leaky + +[route] +layers = -1, -37 + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +batch_normalize=1 +filters=512 +size=1 +stride=1 +pad=1 +activation=leaky + +[convolutional] +batch_normalize=1 +size=3 +stride=1 +pad=1 +filters=1024 +activation=leaky + +[convolutional] +size=1 +stride=1 +pad=1 +filters=255 +activation=linear + + +[yolo] +mask = 6,7,8 +anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401 +classes=80 +num=9 +jitter=.3 +ignore_thresh = .7 +truth_thresh = 1 +random=1 +scale_x_y = 1.05 +iou_thresh=0.213 +cls_normalizer=1.0 +iou_normalizer=0.07 +iou_loss=ciou +nms_kind=greedynms +beta_nms=0.6 diff --git "a/\346\225\264\347\220\206/yolo/yolo.py" "b/\346\225\264\347\220\206/yolo/yolo.py" new file mode 100644 index 0000000..1d1c976 --- /dev/null +++ "b/\346\225\264\347\220\206/yolo/yolo.py" @@ -0,0 +1,281 @@ +import os +import cv2 +import numpy as np +import json +from PIL import Image + +from my import detectionYolo +from my import darknet +def drawCounters(counters, img, color=(0, 0, 255)): + for counter in counters: + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), color, 4) + return img +def drawFillCounters(counters, img): + for counter in counters: + cv2.rectangle(img, (counter[0], counter[1]), (counter[2], counter[3]), (255, 255, 255), -1) + return img +def NMS(dets, thresh=0.5): + x1, y1, x2, y2, scores = [], [], [], [], [] + for i in dets: + x1.append(i[0]) + y1.append(i[1]) + x2.append(i[2]) + y2.append(i[3]) + scores.append(i[4]) + x1, y1, x2, y2, scores = np.array(x1), np.array(y1), np.array(x2), np.array(y2), np.array(scores) + areas = (x2 - x1 + 1) * (y2 - y1 + 1) + + #打分从大到小排列,取index + order = scores.argsort()[::-1] + #keep为最后保留的边框 + keep = [] + while order.size > 0: + i = order[0] + keep.append(i) + #计算窗口i与其他所有窗口的交叠部分的面积 + xx1 = np.maximum(x1[i], x1[order[1:]]) + yy1 = np.maximum(y1[i], y1[order[1:]]) + xx2 = np.minimum(x2[i], x2[order[1:]]) + yy2 = np.minimum(y2[i], y2[order[1:]]) + + w = np.maximum(0.0, xx2 - xx1 + 1) + h = np.maximum(0.0, yy2 - yy1 + 1) + inter = w * h + #交/并得到iou值 + ovr = inter / (areas[i] + areas[order[1:]] - inter) + #inds为所有与窗口i的iou值小于threshold值的窗口的index,其他窗口此次都被窗口i吸收 + inds = np.where(ovr <= thresh)[0] + #order里面只保留与窗口i交叠面积小于threshold的那些窗口,由于ovr长度比order长度少1(不包含i),所以inds+1对应到保留的窗口 + order = order[inds + 1] + + return [dets[i] for i in keep] +def delLowScores(rects, thresh=0.4): + returnRects = [] + for rect in rects: + if(rect[4] > thresh): + returnRects.append(rect) + return returnRects +def delInclude(rects, includeThreshold=0.9): + rectSum = [] + + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + if(aArea <= intersect and aArea / intersect > includeThreshold): + j = -1 + break + elif(bArea <= intersect and bArea / intersect > includeThreshold): + rects[j][0] = -1 + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def countIOU(rec1, rec2): + S_rec1 = (rec1[2] - rec1[0]) * (rec1[3] - rec1[1]) + S_rec2 = (rec2[2] - rec2[0]) * (rec2[3] - rec2[1]) + sum_area = S_rec1 + S_rec2 + + left_line = max(rec1[1], rec2[1]) + right_line = min(rec1[3], rec2[3]) + top_line = max(rec1[0], rec2[0]) + bottom_line = min(rec1[2], rec2[2]) + if left_line >= right_line or top_line >= bottom_line: + return 0, -1, S_rec1, S_rec2 + else: + intersect = (right_line - left_line) * (bottom_line - top_line) + return (intersect / (sum_area - intersect))*1.0, intersect, S_rec1, S_rec2 +def delSmallerThan8X8(rects): + returnRects = [] + for rect in rects: + h = (rect[2]-rect[0]) + w = (rect[3]-rect[1]) + if(h >= 8 and w >= 8): + returnRects.append(rect) + return returnRects +def delUnreasonableRects(rects, ratio=4): + # print(type(rects)) + hList = [] + wList = [] + for rect in rects: + h = (rect[2]-rect[0])//2 + w = (rect[3]-rect[1])//2 + + hList.append(h) + wList.append(w) + + # hList = np.array(hList) + # wList = np.array(wList) + hStd = np.std(hList, ddof=0) + wStd = np.std(wList, ddof=0) + hMean = np.mean(hList) + wMean = np.mean(wList) + # print("hStd: {:.4f} wStd: {:.4f}".format(hStd, wStd)) + # print("hMean:{:.4f} wMean:{:.4f}".format(hMean, wMean)) + returnRects = [] + for i, (h, w) in enumerate(zip(hList, wList)): + if(h < hMean + hStd*ratio and h > hMean - hStd*ratio and w < wMean + wStd*ratio and w > wMean - wStd*ratio): + returnRects.append(rects[i]) + if(len(returnRects) < len(rects)): + return delUnreasonableRects(returnRects) + return returnRects +def margeRect(rects, IOUThreshold=0): + rectSum = [] + for i in range(len(rects)): + if(rects[i][0] == -1): + continue + for j in range(i + 1, len(rects)): + # print(rects[i], rects[j], j) + if(rects[j][0] == -1): + continue + IOU, intersect, aArea, bArea = countIOU(rects[i], rects[j]) + aIOU = intersect / aArea + bIOU = intersect / bArea + if(aIOU > IOUThreshold or bIOU > IOUThreshold): + rects[j][0] = min(rects[i][0], rects[j][0]) + rects[j][1] = min(rects[i][1], rects[j][1]) + rects[j][2] = max(rects[i][2], rects[j][2]) + rects[j][3] = max(rects[i][3], rects[j][3]) + rects[j][4] = max(rects[i][4], rects[j][4]) + j = -1 + break + if(j != -1): + rectSum.append(rects[i]) + return rectSum +def cutsizeTest(): + for i in range(600, 5000, 100): + if not os.path.exists(os.path.join(saveDir, str(i).zfill(5))): + os.makedirs(os.path.join(saveDir, str(i).zfill(5))) + print(i) + for fileName in os.listdir(imageFlooder): + name, ext = os.path.splitext(fileName) + print(fileName) + if(ext != ".jpg"): + continue + filePath = os.path.join(imageFlooder, fileName) + image = cv2.imread(filePath) + img, detect = yolov4.image_detection_cutresize(filePath, size=i) + + rectsTemp = [] + print(len(detect)) + for label, confidence, bbox in detect: + left, top, right, bottom = darknet.bbox2points(bbox) + rectsTemp.append([left, top, right, bottom, confidence]) + + savePath = os.path.join(saveDir, str(i).zfill(5), name+".json") + + with open(savePath, 'w') as f: + json.dump(rectsTemp, f) + img_save_path = os.path.join(saveDir, str(i).zfill(5), name+".png") + image = drawCounters(rectsTemp, image) + cv2.imwrite(img_save_path, image) +def test_sideWindow(): + if not os.path.exists(os.path.join(saveDir, "sidewindow")): + os.makedirs(os.path.join(saveDir, "sidewindow")) + for fileName in os.listdir(imageFlooder): + name, ext = os.path.splitext(fileName) + print(fileName) + if(ext != ".jpg"): + continue + filePath = os.path.join(imageFlooder, fileName) + image = cv2.imread(filePath) + img, detect = yolov4.image_detection_cut(filePath) + + rectsTemp = [] + print(len(detect)) + for label, confidence, bbox in detect: + left, top, right, bottom = darknet.bbox2points(bbox) + rectsTemp.append([left, top, right, bottom, confidence]) + + + # rectsTemp = delSmallerThan8X8(rectsTemp) + # rectsTemp = delUnreasonableRects(rectsTemp, ratio=6) + # rectsTemp = NMS(rectsTemp) + # rectsTemp = delLowScores(rectsTemp) + # rectsTemp = margeRect(rectsTemp) + + savePath = os.path.join(saveDir, "sidewindow", name+".json") + with open(savePath, 'w') as f: + json.dump(rectsTemp, f) + img_save_path = os.path.join(saveDir, "sidewindow", name+".png") + image = drawCounters(rectsTemp, image) + cv2.imwrite(img_save_path, image) +def test(): + if not os.path.exists(os.path.join(saveDir, "ori")): + os.makedirs(os.path.join(saveDir, "ori")) + for fileName in os.listdir(imageFlooder): + name, ext = os.path.splitext(fileName) + print(fileName) + if(ext != ".jpg"): + continue + filePath = os.path.join(imageFlooder, fileName) + image = cv2.imread(filePath) + img, detect = yolov4.image_detection(filePath) + + rectsTemp = [] + print(len(detect)) + for label, confidence, bbox in detect: + left, top, right, bottom = darknet.bbox2points(bbox) + rectsTemp.append([left, top, right, bottom, confidence]) + + + # rectsTemp = delSmallerThan8X8(rectsTemp) + # rectsTemp = delUnreasonableRects(rectsTemp, ratio=6) + # rectsTemp = NMS(rectsTemp) + # rectsTemp = delLowScores(rectsTemp) + # rectsTemp = margeRect(rectsTemp) + + savePath = os.path.join(saveDir, "ori", name+".json") + with open(savePath, 'w') as f: + json.dump(rectsTemp, f) + img_save_path = os.path.join(saveDir, "ori", name+".png") + image = drawCounters(rectsTemp, image) + cv2.imwrite(img_save_path, image) +def test_best(): + if not os.path.exists(saveDir): + os.makedirs(saveDir) + for fileName in os.listdir(imageFlooder): + name, ext = os.path.splitext(fileName) + print(fileName) + if(ext != ".jpg"): + continue + filePath = os.path.join(imageFlooder, fileName) + image = cv2.imread(filePath) + img, detect = yolov4.image_detection_cutresize(filePath, size=1208) + + rectsTemp = [] + print(len(detect)) + for label, confidence, bbox in detect: + left, top, right, bottom = darknet.bbox2points(bbox) + rectsTemp.append([left, top, right, bottom, confidence]) + + save_rects(image, rectsTemp, os.path.join(saveDir, name+"00.png")) + rectsTemp = delSmallerThan8X8(rectsTemp) + save_rects(image, rectsTemp, os.path.join(saveDir, name+"01delSmallerThan8X8.png")) + rectsTemp = delUnreasonableRects(rectsTemp, ratio=6) + save_rects(image, rectsTemp, os.path.join(saveDir, name+"02delUnreasonableRects.png")) + # rectsTemp = NMS(rectsTemp) + # rectsTemp = delLowScores(rectsTemp) + rectsTemp = margeRect(rectsTemp) + save_rects(image, rectsTemp, os.path.join(saveDir, name+"03margeRect.png")) + + # savePath = os.path.join(saveDir, name+".json") + # with open(savePath, 'w') as f: + # json.dump(rectsTemp, f) + img_save_path = os.path.join(saveDir, name+"04.png") + image = drawCounters(rectsTemp, image) + cv2.imwrite(img_save_path, image) +def save_rects(image, rects, savePath): + imageT = drawCounters(rects, image.copy()) + cv2.imwrite(savePath, imageT) +imageFlooder = r"../../groundtruth/image" +# saveDir = "../yolo-path/" +saveDir = "../yolo-Result-best-rulebase/" +yolov4 = detectionYolo.YoloPredict(weights="./my/weights/20210122yolov4/yolov4_final.weights", config_file="./my/yolov4.cfg", data_file="./obj.data") +# test_sideWindow() +# test() +# cutsizeTest() +test_best() \ No newline at end of file diff --git "a/\346\225\264\347\220\206/\347\250\213\345\274\217\350\252\252\346\230\216.docx" "b/\346\225\264\347\220\206/\347\250\213\345\274\217\350\252\252\346\230\216.docx" new file mode 100644 index 0000000..9aadd42 Binary files /dev/null and "b/\346\225\264\347\220\206/\347\250\213\345\274\217\350\252\252\346\230\216.docx" differ